It's an effort, but I have used joy2key in the past and was pleased with results if you are willing to make some effort. Easiest thing is to map a "Basic" keymap that will be default and catch many games. Standard layout, but with common keys like enter and space bar mapped out. Then you dive into your games and make specialized keymaps for games that rely on special keys. Games that are action based but need keyboard aid are really fun on a cabinet (I'm looking at you, wolfenstein.) A couple suggestions
Keep it to just core games you want to have. The process takes time to map games.
Have Vice boot into savestates of the game stared up, not disk images themselves. This not only eliminates load times, but often there is a main menu (or a "crack" screen) that you can bypass and avoid needing to map keys to just get past the menu (Press F1 to begin, etc.)
Right away create an alternative default keymap where P2 is the default joystick. Many c64 games used port 2 as default.