Have a look on the Open Printing site to see if there's a driver that can be used with CUPS. Then have a look on toner seller sites to see if the carts can be refilled cheaply.
The Open Printing site tends to list any problems some printers / mutli-function devices have.
My Brother HL-2380DW black and white laser with flatbed scanner works great in Linux (Ubuntu 15.04 at least). The scanner I actually have setup to scan straight to Dropbox so I don't even have to screw around with scanning software on a computer. It does cloud print and apple print too so all your mobile devices will work. Supports auto duplexing of printing so you just check a box to print on both sides. Great printer if you just need an occasional use scanner. They make a version without any scanner too that's a bit cheaper, and a version with a fancier auto duplexing document scanner if you do a lot of document scanning.
HP 4200N. It's not light, but you can get them cheap and they run forever. You turn it on and Linux, OS X and Windows automatically detect it on the network and can print. No hassles and no nonsense. I've had the same cartridge for going on ten years since it's good for 12,000+ pages. I'm sure I should do the scheduled maintenance, but it's good enough print quality for my needs.
Have a look on the Open Printing site to see if there's a driver that can be used with CUPS. Then have a look on toner seller sites to see if the carts can be refilled cheaply.
The Open Printing site tends to list any problems some printers / mutli-function devices have.
http://www.openprinting.org/printers
Check the wider www too, because OpenPrinting is user generated and might not be up to date.
http://www.cups.org/
The Arch wiki has some nice documentation for CUPS: https://wiki.archlinux.org/index.php/CUPS
So does FreeBSD: http://www.freebsd.org/doc/en/articles/cups/