This linear slide is sort of an ExoSlide knock-off (exoslide.com). It uses 12 tiny MR63 bearings to run on the outside of a square aluminum extrusion. The bearings only have a load rating of about 15 lb. but that should be ample for most 3D printer construction.
I've included versions for 2020 extrusions (20mm x 20mm) and also 1" square aluminum tube which is much cheaper and available in hardware stores. Each side has an adjustment screw so that you can tighten or loosen the fit on your particular extrusion (extrusions can vary in width by .4mm or so). The MR63 bearings are about $0.50 each and you will also need twelve 3mm x 12mm dowel pins, about $0.03 each. Overall, much cheaper than the Exoslides.
STEP format CAD files are also included for anyone wanting to make modifications.
12 MR63ZZ bearings (https://www.ebay.com/itm/162470097493)
12 3mm dia. x 12mm long dowel pins (https://www.ebay.com/itm/162715828703)
3 M3 x 10mm or 4-40 x 3/8" screws
You will notice that the mounting area for middle bearing on each side is actually a short flexure which prints small gaps on either side. Before assembly, you will need to slide a razor blade into each slot to free up the end of the flexure. Note that it doesn't need to flex a lot - just a few thousandths of an inch either way.
Before assembly, make sure your pins slide nicely into the bores of your bearings. It can be helpful to taper the leading end of the pins with a file or grinder. Position each bearing in the gap (overhanging towards the inside and then tap the pin into place. Tap until the pin is seated against the bottom of the hole. Note that for the middle bearing on each face, the top end of the pin needs to clear the hole for the adjustment screw.
With all bearings in place, slide the unit over your square extrusion. Insert M3 or 4-40 adjustment screws into each flexure and tighten to the desired running fit.