NixOSプリンタードライバーとの格闘 決着編
前回の記事で他社製ドライバーで印刷できた話の続き、ようやく富士ゼロックス対応ドライバーで印刷ができたのでその過程をまとめました。
ドライバーを入れ直す経緯
前回の他社製ドライバーで印刷ができてそのままだったのですが、M.2 NVMe SSDが故障してしまい、認識しなくなりました。
バックアップは一部ありましたが、これを機会に新しく入れ直すことにしました。新しいM.2 NVMe SSDを用意してそちらにNixOSをインストールしました。
環境を復元させていく中で、プリンタードライバーをもう一度正しいものを入れてみたいと思うようになり、再び格闘することとなりました。
今回の作業の肝
やはり設定ファイル、/etc/nixos/configuration.nix
ここの設定でfxlinuxprintが使えるようになりました。前回は
nix-env -iA nixos.fxlinuxprint
こちらのコマンドでドライバーをインストールしましたが、何も変化がなくなにの役に立ったのだろうという疑問が残っていました。
今回は設定ファイルに記述することで無事、カラー印刷ができるようになりました。
設定手順
まず/etc/nixos/configuration.nixをnanoかvimあたりのテキストエディタで開きます。
# Enable CUPS to print documents.
services.printing.enable = true;
services.printing.drivers = [ pkgs.fxlinuxprint ];
ドライバー設定項目を探して上記内容を記述します。
ドライバーをここで指定してやることで、プリンター設定にFXドライバーが出てきました。
プリンター設定のおさらいです。
WEBブラウザー上からCUPSを用いてプリンターを追加でも、コマンドから追加でもできました。まずはコマンドから。
system-config-printer
Terminalから上記コマンドを入力してください。Print Settingsというウインドウが開きます。
Addボタンでプリンターを追加します。私はネットワークプリンターを追加しますので、プリンターに割り当てたIPアドレスを入力。
次に進むとドライバー選択画面でFXが出てきました。FXを選択して進むとプリンターの名前などを聞いてきます。私はそのまま進めていきました。
この状態でプリンターが出来上がれば成功です。テスト印刷も問題なくできるはずです。
CUPSを使う場合。
ウェブブラウザーで http://localhost:631/ を開きます。
Administrationタブをクリックして下記画面を出します。
ここでAdd Printerボタンを押してプリンター追加をします。
ネットワークプリンターの中でLPD/LPR Host or Printerを選択します。
プリンターのIPアドレスを設定し、ドライバー選択画面で同様にFXがあるはずです。FXドライバーを選択して進めばCUPS上でもプリンターができます。
終わりに
今回のプリンターは富士ゼロックスカラーレーザープリンターのDPCP400dを対象に作成しています。他メーカーのものでしたら、configuration.nix設定ファイルのdriverのカッコ内を該当するドライバーに変更すれば同じようにできると思います。
NixOSユーザーが増えることを願いつつ、今回はこれで終わります。