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を選択

ネットワークプリンターの中でLPD/LPR Host or Printerを選択します。
プリンターのIPアドレスを設定し、ドライバー選択画面で同様にFXがあるはずです。FXドライバーを選択して進めばCUPS上でもプリンターができます。

FXドライバーを選択。ちゃんとja対応。


終わりに

今回のプリンターは富士ゼロックスカラーレーザープリンターのDPCP400dを対象に作成しています。他メーカーのものでしたら、configuration.nix設定ファイルのdriverのカッコ内を該当するドライバーに変更すれば同じようにできると思います。
NixOSユーザーが増えることを願いつつ、今回はこれで終わります。

いいなと思ったら応援しよう!