Skip to content

Instantly share code, notes, and snippets.

@scorpp
Created January 1, 2026 16:33
Show Gist options
  • Select an option

  • Save scorpp/99ae3a972ca3d1f78829e923faa5e7a7 to your computer and use it in GitHub Desktop.

Select an option

Save scorpp/99ae3a972ca3d1f78829e923faa5e7a7 to your computer and use it in GitHub Desktop.
Xerox Phaser 3020 on Linux ARM64

Download and extract Linux drivers that Xerox provides https://www.support.xerox.com/en-us/content/129620 The issue is that their driver is for 32-bit ARM (armhf) and is compiled in weird way.

# enable armhf support
sudo apt install libc6:armhf libstdc++6:armhf patchelf
# patch weird elf
patchelf --set-interpreter /lib/ld-linux-armhf.so.3 uld/arm/rastertospl

# install dep
sudo apt install libcups2t64:armhf libcupsimage2t64:armhf libcupsfilters1t64:armhf

# install the driver and PPDs
# source: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=xerox-phaser-3020
sudo cp libs* /usr/lib/arm-linux-gnueabihf/
sudo cp smfpnetdiscovery /usr/lib/cups/backend/
sudo cp pstosecps rastertospl /usr/lib/cups/filter/
sudo cp -ar ../noarch/share/ppd/. /usr/share/ppd/xerox/
sudo rm -v /usr/share/ppd/xerox/*_fr.ppd

This worked for Armbian on S905W (X96-mini TV box)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment