Following on from yesterdays post I have fought and won with my printer (by cheating). It’s a Brother HL-L8260CDW, a network capable dual sided laser printer, and I had it working with Linux and OSX using CUPS. How hard could it be?….

@vermaden gave a very detailed answer to my plea on Mastodon. Ultimately not the solution, but a heap of info to point me in the right direction. I learnt how to mount OSX disk images for starters. The OSX ones were no good as they had proprietry binary executables in them so next I went off to Linux ones.

I unpacked the .deb files (they are just tar.gz in reality) and had a poke around. There was a PPD file, a Perl script and an attempt at an installer. I spent several hours hacking away moving files around, changing paths and generally tying myself in knots. Ultimately though they relied on some other proprietry binary executables. Bugger.

I had a brainwave, boot linux, tweak the Perl script and see what it was really doing in a working environment. I did that, submitted a print job and the Perl script wasn’t called. I then did what I should have done at the start and look at the configuration under /etc/cups. It was ignoring the installed PPD and using one that had been generated during the setup using IPP Everywhere:tm: I had bumped into IPPE earlier with an error message and an open issue saying it was broken. However I had a working definition already generated.

I took a tar.gz of /etc/cups and booted back into FreeBSD. I copied relevant bits of the tar.gz into /usr/local/etc/cups, changed file ownerships and because Avahi is not working properly yet, changed the dnssd URI to an ipp one instead.

It worked! For posterity here is a tar.gz of the CUPS config that worked for me. Grep the files for ’laser.lan’ to change the host for your setup.