Obvious answer is obvious. And one word.
Microgreens.
Putting together a complete healthy diet grown in minimal cubic footage per person would be easy. Water and mineral needs to sprout microgreens are recyclable[0]. Turn around time crop to crop is a week to ten days, two weeks on the outside for things like sunflower. Overlap harvests so you don't go hungry for a couple days after the occasional and inevitable operator error. Soil is not required, this can be done hydroponically. Note that the roots are also edible, in most cases. Fresh seed can be launched at several hundred G, making catching up with the crew fairly easy. Covers both resupply and the issue of long-term cosmic ray exposure. Harvest early for sprouts. Don't forget the herb seeds for flavo(u)r.
Rice and beans as the bulk of the diet to keep the plumbing fully functional. Can be mixed and matched in all kinds of ways to minimize boredom. Suggestion: hire a damn good cook for the duration of the voyage.
The only major issue is that I would imagine Johnson's leg would start to look awfully tasty after the first couple of years ... throwing twenty or thirty pounds of bacon, fat back and other seasoning meat into the seed, rice and bean supply rocket would go a long way to making this a non-problem.
By way of reference, a friend is feeding 28 horses with food grown in two 40ft shipping containers. He's been at it for a few years now, and the horses are thriving. Including a couple of pregnant and/or lactating mares per season. For info on how, see Cropbox.
[0] Seeds are self contained and only need water through their cotyledon leaves and up to about their first set of true leaves, after that they require additional nutrition for proper growth ... so if you want lettuce, you'll need to feed the seedlings. Humans waste plenty of easily collected nutrition, so that's hardly an issue.