It is a common problem. There are typically two ways to have cases: sliding nuts (my preference) or a fixed row of holes. I don’t know which kind you have but if it has sliding nuts and the rows are completely filled, remove one or two of the nuts and then you can slide things around so they’re tight.
Every manufacturer has different tolerances for widths etc and it is not uncommon to have a tiny gap between modules. Sometimes you can sort this out by using the tolerance in the screw holes or a module with an oval screw hole to help get things closer.
Also there are some modules which require longer screws. In my own experience Analogue Systems, Recovery Effects, and Bastl (wood) will benefit from longer screws. Sometimes you can get them to stick by pushing hard and catching the thread but it’s easier to have some longer screws on hand.
To make it more insane, there are two types of threads you will encounter, M2.5 and whatever the other one is (I have M2.5 sliding nuts in my systems). All this means that to build your own case you’ll want to make some really boring decisions about:
- Sliding or fixed nuts (sliding will let you get the modules to sit together easier but that of course requires more fussing when you install things).
- Which threads you will use: M2.5 or whatever the other one is (I ended up with M2.5 by chance because that’s what the sliding nuts were, most modules come with free bolts of whatever the other size is).
Once you’ve made these super boring choices you’ll want to have a bunch of spare bolts and maybe washers and one or two appropriate drivers because sooner or later you’ll lose the one you have.
That’s my experience with this issue anyway. Good luck!