ArchLinuxにプリンタの公式ドライバを導入する

linuxを導入したパソコンから印刷をする際にCUPSを使いますが、IPPプリンタの定義ファイルとしてGeneric Printerを選択するとうまく印刷できないことがあります。

大学のサークルの部室で利用しているCanonのMF273DWの旧型機は問題なく印刷できますが、自宅のLBP122は接続こそできるもののプリントできませんでした。

Canonからdebもしくはrpm形式のパッケージが提供されていますが、pacmanでは直接インストールできません。

そこで、debtapを用いてdebパッケージを変換してコンピュータにインストールしたところ、印刷できるようになったので、過程を記録します。

前提

インストールしたパッケージは下記のドライバです。CUPS向けのPPDファイルやフィルターのコマンド群が含まれているようです。

LIPSLX/ CARPS2 Printer Driver for Linux Ver.6.20(32bit & 64bit)|キヤノン

また、debtapをAURからインストールしました。

GitHub - helixarch/debtap: A script for converting .deb packages into Arch Linux packages, focused on accuracy

手順

パッケージの変換とインストール自体は簡単です。

debtap パッケージ名.deb
sudo pacman -U xxx.zst

途中でファイルを編集するか問われるので、任意のエディタで編集してください。

Archlinuxとdebianでパッケージ名が異なるパッケージに依存していることがあります。このようなものに関しては正しい名前に変更しておきましょう。

また、debtapは稀にvalidではないシェルスクリプトを吐き出します。そのような場合は手作業で修正します。

作成したパッケージをpacmanでインストールすれば晴れてプリンターが追加できるようになるはずです。

 

同様の手順では、BrotherのHL-L2375DWも動作するようになりました。