I do it this way:
Rubbermaid Brute garbage can, and a fountain pump.
Fill the can with RO or a blend of RO + Tap if that is an option for you.
Set the GH (Seachem Equilibrium or Barr's GH booster) to suit the fish. 9 German degrees of hardness is OK for the Rainbows, but might be a bit high for the other fish.
Make the KH match the GH. (You should do a test with just half as much at first). You could use baking soda or potassium bicarbonate to do this.
Test the pH. For black water fish I add a knee-hi stocking of peat moss, and run the water through it overnight. For your Rainbows I would target a pH in the mid 7s or a bit higher. For the other fish, a lower pH, into the mid to upper 6s.
Add dechlor (if there is tap water in the mix.)
GH boosters can be hard to dissolve. I put the amount I want to use in a jar with a tight lid and some water and shake it a lot. Then pour the milky water into the can, but keep the undissolved material in the jar and add more water, shake....
If the house is cool, then I will hang an aquarium heater in the water to keep it warm overnight and circulate the water to be sure everything is well dissolved.
Use the fountain pump to put the water into the tank. I use a vinyl hose to reach the tank, and hold it so the incoming water will not disturb the substrate.
I keep slower acting materials in the filter. For hard water tanks I have coral sand or oyster shell grit (sold for small birds). These materials increase both the GH (with calcium and magnesium) and the KH (with carbonates). They are too slow to depend on at water change time, but are good to stabilize the water parameters through the week.
Your fish come from several different water types, you might double check each of their needs and make sure they are compatible:
and the social issues of keeping aggressive (Puffers) with slow moving long finned fish (Angels).
Colomesus asellus ? Amazon Puffer (Cheilichthys asellus, Chelichthys asellus) ? Seriously Fish
The Puffer Forum ? Colomesus asellus