Packaging Brother Printer Driver (HL3150CDN)

I own a Brother HL3150CDN which I’ve used without trouble on other GNU/Linux distributions (e.g., Ubuntu), but I am having a great deal of trouble making it work on NixOS.

I adapted what looks like the most recently-packaged Brother printer from nixpkgs in this commit, and wired it into my configuration.nix with:

services.printing = {
  enable = true;
  drivers =
    let
      cups-brother-hl3150cdn = pkgs.callPackage ../nixpkgs/pkgs/misc/cups/drivers/hl3150cdn {};
    in [ cups-brother-hl3150cdn ];
};

Unfortunately, while the printer is detected in the CUPS web UI (at localhost:631), it doesn’t show any Brother printer drivers and I’m not sure what’s wrong. I’ve checked the wiki and asked on IRC but had no success. The custom printer driver not loaded thread looked promising, but is just another case of someone using stale hashes for fixed-output derivations. I have double-checked the hashes of the files I download from the Brother website; that isn’t the problem here.

At this point, I’m stuck. Anyone have ideas?

1 Like