How to install Printer Driver For HP LaserJet 1020

Somehow using Add/Remove Software App to build/install hplip-plugin it ended up with error and it aborted but using command line: sudo pacman build hplip-plugin it build successfully.

Now let see whether HP LaserJet 1020 will be recognised and Print.

[jfl@MNJROGTKPRO ~]$ pamac build hplip-plugin
Preparing...
Cloning hplip-plugin build files...
Checking hplip-plugin dependencies...
Resolving dependencies...
Checking inter-conflicts...

To build (1):
  hplip-plugin  3.20.11-1    AUR


Edit build files : [e] 
Apply transaction ? [e/y/N] y


Building hplip-plugin...
==> Making package: hplip-plugin 3.20.11-1 (Tue 05 Jan 2021 12:38:54 AM +08)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found hplip-3.20.11-plugin.run
==> Validating source files with md5sums...
    hplip-3.20.11-plugin.run ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
==> Starting prepare()...
Creating directory /var/tmp/pamac-build-jfl/hplip-plugin/src/hplip-3.20.11-plugin
Verifying archive integrity... All good.
Uncompressing HPLIP 3.20.11 Plugin Self Extracting Archive..............................................................
==> Entering fakeroot environment...
==> Starting package()...
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_soap.so' -> 'bb_soap-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_marvell.so' -> 'bb_marvell-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_soapht.so' -> 'bb_soapht-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_escl.so' -> 'bb_escl-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/prnt/plugins/lj.so' -> 'lj-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/prnt/plugins/hbpl1.so' -> 'hbpl1-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/fax/plugins/fax_marvell.so' -> 'fax_marvell-arm64.so'
==> Tidying install...
  -> Removing libtool files...
  -> Purging unwanted files...
  -> Removing static library files...
  -> Stripping unneeded symbols from binaries and libraries...
  -> Compressing man and info pages...
==> Checking for packaging issues...
==> Creating package "hplip-plugin"...
  -> Generating .PKGINFO file...
  -> Generating .BUILDINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: hplip-plugin 3.20.11-1 (Tue 05 Jan 2021 12:39:00 AM +08)
==> Cleaning up...

Checking keyring...                                                        [1/1]
Checking integrity...                                                      [1/1]
Loading packages files...                                                  [1/1]
Checking file conflicts...                                                 [1/1]
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_1000.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_1000.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_1005_series.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_1005_series.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_1018.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_1018.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_1020.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_1020.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_p1005.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_p1005.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_p1006.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_p1006.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_p1007.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_p1007.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_p1008.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_p1008.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_p1009.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_p1009.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_p1505.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_p1505.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_professional_p1102.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_professional_p1102.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_professional_p1102w.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_professional_p1102w.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/data/firmware/hp_laserjet_professional_p1566.fw.gz already existed in filesystem
It has been backed up to /usr/share/hplip/data/firmware/hp_laserjet_professional_p1566.fw.gz.old
Warning: hplip-plugin: /usr/share/hplip/fax/plugins/fax_marvell-arm64.so already existed in filesystem
It has been backed up to /usr/share/hplip/fax/plugins/fax_marvell-arm64.so.old
Warning: hplip-plugin: /usr/share/hplip/fax/plugins/fax_marvell.so already existed in filesystem
It has been backed up to /usr/share/hplip/fax/plugins/fax_marvell.so.old
Warning: hplip-plugin: /usr/share/hplip/plugin.spec already existed in filesystem
It has been backed up to /usr/share/hplip/plugin.spec.old
Warning: hplip-plugin: /usr/share/hplip/prnt/plugins/hbpl1-arm64.so already existed in filesystem
It has been backed up to /usr/share/hplip/prnt/plugins/hbpl1-arm64.so.old
Warning: hplip-plugin: /usr/share/hplip/prnt/plugins/hbpl1.so already existed in filesystem
It has been backed up to /usr/share/hplip/prnt/plugins/hbpl1.so.old
Warning: hplip-plugin: /usr/share/hplip/prnt/plugins/lj-arm64.so already existed in filesystem
It has been backed up to /usr/share/hplip/prnt/plugins/lj-arm64.so.old
Warning: hplip-plugin: /usr/share/hplip/prnt/plugins/lj.so already existed in filesystem
It has been backed up to /usr/share/hplip/prnt/plugins/lj.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_escl-arm64.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_escl-arm64.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_escl.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_escl.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_marvell-arm64.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_marvell-arm64.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_marvell.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_marvell.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_soap-arm64.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_soap-arm64.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_soap.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_soap.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_soapht-arm64.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_soapht-arm64.so.old
Warning: hplip-plugin: /usr/share/hplip/scan/plugins/bb_soapht.so already existed in filesystem
It has been backed up to /usr/share/hplip/scan/plugins/bb_soapht.so.old
Checking keyring...                                                        [1/1]
Checking integrity...                                                      [1/1]
Loading packages files...                                                  [1/1]
Checking file conflicts...                                                 [1/1]
Checking available disk space...                                           [1/1]
Installing hplip-plugin (3.20.11-1)...                                     [1/1]
/var/lib/hp/hplip.state installed as /var/lib/hp/hplip.state.pacnew.
Transaction successfully finished.
[jfl@MNJROGTKPRO ~]$

No idea why the device is not detected.

Please use preformatted text (</> Sign) in the test editor of the forum when posting terminal output.

no, hplip and hplip-plugin are not the same thing. hplip is a general driver package for hp printers in our repositories. some hp printers ALSO require a plugin (either for all use or for certain capabilities) which must be installed either directly from hp or through the aur (which is still directly from hp.)

https://developers.hp.com/hp-linux-imaging-and-printing/binary_plugin.html

Thanks for the tip on (</> Sign).

After may tries to get the HP LaserJet 1020 to work on Manjaro-ARM-VIM3, I think there are two issues that might or might not be related to why I cannot detect HP LaserJet 1020 on the USB.

First id the new u-boot (boot-vim3-2020-10-1 or from LibreELEC) is very sensitive to what is connected to GT KIng Pro USB ports and on which USB Port the boot USB drive is inserted into when other USB devices (such Printer, USB HDD).

Example, if Printer is ON during boot up with this new u-boot, it will almost always report an error on USB and sometimes it will complete to boot and other times not. This is repeatable. (Same issue in Armbian-Focal-5.9.0 using the new u-boot from LibreELEC but I can install hplip-gui and get it to work with LaserJet 1020, have to turn off and on again for it to detect/print). If another USB HDD is connected to the GT King Pro it will not boot or go into an infinite boot up loop.

The one time I can get HP Device Manager to recognize HP LaserJet 1020 but the installation process (erro: Python gobject/dbus may be not installed).

FYI, I did manage to build hplip-plugin fom AUR using:
pamac build hplip-plugin

Can any of the hplip-plugin be used? Example hbpl1-arm64.so or lj-arm64.so.
I tried the option "Select and install an existing local copy of the plug-in file (advanced): /usr/share/hplip/prnt/plugins/
But HP Device Manager does not recognize any of the xxx.so plug-in files.

Below are the complete output and screen shots of HP Device Manager.

[jfl@MNJROGTKPRO ~]$ hp-setup

HP Linux Imaging and Printing System (ver. 3.20.11)
Printer/Fax Setup Utility ver. 9.0

Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Searching... (bus=usb, search=(None), desc=0)
error: No devices found on bus: usb
Searching... (bus=usb, search=(None), desc=0)
error: No devices found on bus: usb
Searching... (bus=usb, search=(None), desc=0)
error: No devices found on bus: usb
Searching... (bus=usb, search=(None), desc=0)
error: No devices found on bus: usb
Searching... (bus=usb, search=(None), desc=0)
 
HP Linux Imaging and Printing System (ver. 3.20.11)
Plugin Download and Install Utility ver. 2.1

Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.


HP Linux Imaging and Printing System (ver. 3.20.11)
Plugin Download and Install Utility ver. 2.1

Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Checking for network connection...
Downloading plug-in from: 
warning: manjaro-arm distro is not found in AUTH_TYPES
Receiving digital keys: /usr/bin/gpg --homedir /home/jfl/.hplip/.gnupg --no-permission-warning --keyserver pgp.mit.edu --recv-keys 0x4ABA2F66DBD5A95894910E0673D770CDA59047B9
Creating directory plugin_tmp
Verifying archive integrity... All good.
Uncompressing HPLIP 3.20.11 Plugin Self Extracting Archive..............................................................

HP Linux Imaging and Printing System (ver. 3.20.11)
Plugin Installer ver. 3.0

Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Plug-in version: 3.20.11
Installed HPLIP version: 3.20.11
Number of files to install: 64

note: Using PyQt5
warning: manjaro-arm distro is not found in AUTH_TYPES
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 874, resource id: 10530186, major code: 40 (TranslateCoords), minor code: 0
Plugin installation failed
error: Python gobject/dbus may be not installed
error: Plug-in install failed.

image

EDIT:
To get HP Device Manager to recognize HP LaserJet 1020 is when it failed to recognize the Printer first time, Turn Off the Printer. Click Refresh and Turn On Printer Again. Eventhough it recognize the printer, it failed because of “Unable to receive key from keyserver”, I think.

Any suggestions on resolving “Unable to receive key from keyserver”?

After reading the error message on hplip-plugin installation, it seems the main reason is “warning: manjaro-arm distro is not found in AUTH_TYPES.” which explain the HP Device Manager error message “Unable to receive key from keyserver”.

Confused in the sense that “pamac build hplip-plugin” (AUR) was build successfully but was not usable or I do not know how to use it. No idea why.

Any other suggestion?

```
note: Using PyQt5
warning: manjaro-arm distro is not found in AUTH_TYPES
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 874, resource id: 10530186, major code: 40 (TranslateCoords), minor code: 0
Plugin installation failed
error: Python gobject/dbus may be not installed
error: Plug-in install failed.

Hi steanne,

I did manage to install hplip-plugin using “pamac build hplip-plugin” from AUR but it do not get recognize by either Manjaro Print Settings or HP Device Manager. Puzzling.

Using the “hp-setup -u” and follow the recommended route, unable to installed the hp-plugin due to “warning: manjaro-arm distro is not found in AUTH_TYPES” and “Unable to receive key from keyserver”.

Tried using command line “hp-plugin” using existing local copy of the plug-in file. The installed “hplip-plugin” from “pamac build hplip-plugin” does not have the “hplip-plugin-3-20-11.run”.

Would like to here from someone using Manjaro-ARM get HP Printer that require binary hp-plugin using HP Device Manager that actually get it to work. [Edit: I do know hplip does work on arm64 devices as I have installed it on Debian/Ubuntu and it works. Just don’t seems to get it to work on Manjaro-ARM].

Else it looks like I have to look for another option like foo2zjs-nightly.


image


image

Are you sure you read this, and that is not the problem?

Hp-setup could not detect my printer P1102W.

The reason was that the file models.dat contained the wrong name:

Hp_laserjet_professional_p_1102w instead of

Hp_laserjet_professional_p1102w

This file is located at /usr/share/hplip/data/models

HP happens to, wich looks like on purpose, add a underscore to the printer names in file models.dat

Thanks. In the /usr/share/hplip/data/models/models.dat. The model seems to listed correctly, I take it [hp_laserjet_1020].
[hp_laserjet_1020]
align-type=0
clean-type=0
color-cal-type=0
copy-type=0
embedded-server-type=0
fax-type=0
fw-download=True
icon=HP_LaserJet_1012.png
io-mfp-mode=6
io-mode=1
io-support=2
job-storage=0
linefeed-cal-type=0
model1=HP LaserJet 1020 Printer
model2=HP LaserJet 1020 Plus Printer
monitor-type=0

I noticed using pamac Package Manager to build “hplip-plugin” where it failed trying to make hplip-3.20.11-plugin.run but failed. As far as I understood from HP Device Manager during configuring HP_LaserJet_1020 it is looking for “hplip-3.20.11-plugin” which is the required file.

Whereas using command line to build “pamac build hplip-plugin” where it indicated successful but it is missing the required “hplip-3.20.11-plugin.run”. That is the reason, “Select from local copy” failed.

jfl@MNJROGTKPRO ~]$ pamac build hplip-plugin
Preparing…
Cloning hplip-plugin build files…
Checking hplip-plugin dependencies…
Warning: hplip-plugin-3.20.11-1 is up to date – reinstalling
Resolving dependencies…
Checking inter-conflicts…

To build (1):
  hplip-plugin  3.20.11-1               AUR


Edit build files : [e] 
Apply transaction ? [e/y/N] y


Building hplip-plugin...
==> Making package: hplip-plugin 3.20.11-1 (Wed 06 Jan 2021 08:33:57 PM +08)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found hplip-3.20.11-plugin.run
==> Validating source files with md5sums...
    hplip-3.20.11-plugin.run ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
==> Starting prepare()...
Creating directory /var/tmp/pamac-build-jfl/hplip-plugin/src/hplip-3.20.11-plugin
Verifying archive integrity... All good.
Uncompressing HPLIP 3.20.11 Plugin Self Extracting Archive..............................................................
==> Entering fakeroot environment...
==> Starting package()...
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_soap.so' -> 'bb_soap-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_marvell.so' -> 'bb_marvell-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_soapht.so' -> 'bb_soapht-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/scan/plugins/bb_escl.so' -> 'bb_escl-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/prnt/plugins/lj.so' -> 'lj-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/prnt/plugins/hbpl1.so' -> 'hbpl1-arm64.so'
'/var/tmp/pamac-build-jfl/hplip-plugin/pkg/hplip-plugin/usr/share/hplip/fax/plugins/fax_marvell.so' -> 'fax_marvell-arm64.so'
==> Tidying install...
  -> Removing libtool files...
  -> Purging unwanted files...
  -> Removing static library files...
  -> Stripping unneeded symbols from binaries and libraries...
  -> Compressing man and info pages...
==> Checking for packaging issues...
==> Creating package "hplip-plugin"...
  -> Generating .PKGINFO file...
  -> Generating .BUILDINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: hplip-plugin 3.20.11-1 (Wed 06 Jan 2021 08:34:03 PM +08)
==> Cleaning up...

Checking keyring… [1/1]
Checking integrity… [1/1]
Loading packages files… [1/1]
Checking file conflicts… [1/1]
Checking available disk space… [1/1]
Reinstalling hplip-plugin (3.20.11-1)… [1/1]
Transaction successfully finished.
[jfl@MNJROGTKPRO ~]$

I have raise issue on" HP Device Manager Cannot Install HP-Plugin on Manajaro-ARM Distro" with HP-Support/Ubuntu_One. Hope HP Support will incldue Manjaro-ARM distro on their AUTH_TYPES.

1 Like

Received a official response “Manjaro-ARM is not supported by HPLIP. Hence you are seeing this error.”. So for now, I suppose any HP Printer that requires the proprietary binary HP-Plugin will not work in Manjaro-ARM.

Spikeguy, Just a suggestion, Manjaro-ARM should write to HP to include Manjaro-ARM to be in HPLIP AUTH_TYPES so that Manjaro-ARM users with HP Printers will not be left out. Thanks.

Time to look for another solution like foo2zjs-nightly.


shivani mandora <question694820@answers.launchpad.net>
Mon 1/11/2021 6:35 AM
Your question #694820 on HPLIP changed:
https://answers.launchpad.net/hplip/+question/694820

    Status: Open => Answered

shivani mandora proposed the following answer:
Hi ,

Manjaro-ARM is not supported by HPLIP. Hence you are seeing this error.

-- 
If this answers your question, please go to the following page to let us
know that it is solved:
https://answers.launchpad.net/hplip/+question/694820/+confirm?answer_id=0

If you still need help, you can reply to this email or go to the
following page to enter your feedback:
https://answers.launchpad.net/hplip/+question/694820

You received this question notification because you asked the question
1 Like

Good day for all you.

I have a HP Laser cp1025 nw and the only way to use it was downloading the foo2zjs from. I followed the instructions and then I add the printer with system-config-printer.

I hope it helps.

Hi Penafile,

Thanks for the input. Are you using Manjaro-ARM64 or Manjaro-X86?

I just tried to install/build foo2zjs-nightly but failed.

Just an update on trying to get HP LaserJet_1020 to work on Manjaro-ARM. HPLIP is not supported in Manjaro ARM and foo2zjs is NOT available in aarch64 architecture.

Anymore ideas?

Building foo2zjs-nightly...
==> ERROR: foo2zjs-nightly is not available for the 'aarch64' architecture.

[jfl@MNJROGTKPRO ~]$ pamac build foo2zjs-nightly
Preparing...
Cloning foo2zjs-nightly build files...
Checking foo2zjs-nightly dependencies...
Resolving dependencies...
Checking inter-conflicts...

To install (3):
  perl-ipc-run3    0.048-8     (Required By: foo2zjs-nightly)  extra  29.6 kB
  paper            2.3-2       (Required By: foo2zjs-nightly)  extra  11.1 kB
  psutils          2.04-1      (Required By: foo2zjs-nightly)  extra  28.8 kB
To build (1):
  foo2zjs-nightly  20200917-1                                  AUR

Total download size: 69.5 kB
Total installed size: 151.2 kB

Edit build files : [e] 
Apply transaction ? [e/y/N] y

Downloading perl-ipc-run3 (0.048-8)...                                          
Downloading paper (2.3-2)...                                                    
Downloading psutils (2.04-1)...                                                 
Checking keyring...                                                        [3/3]
Checking integrity...                                                      [3/3]
Loading packages files...                                                  [3/3]
Checking file conflicts...                                                 [3/3]
Checking available disk space...                                           [3/3]
Installing perl-ipc-run3 (0.048-8)...                                      [1/3]
Installing paper (2.3-2)...                                                [2/3]
Installing psutils (2.04-1)...                                             [3/3]
Running post-transaction hooks...
Arming ConditionNeedsUpdate...                                             [1/2]
Warn about old perl modules                                                [2/2]

Building foo2zjs-nightly...
==> ERROR: foo2zjs-nightly is not available for the 'aarch64' architecture.

Hi JohnML,

If you don’t mind me asking are you using Manjaro-ARM and able to get foo2zjs working on LaserJet 1020?

Followed the instructions on http://foo2zjs.rkkda.com/ but somehow not successful it did not work. It did get to stage where I have to select “$ ./getweb 1020 # Get HP LaserJet 1020 firmware file”

[jfl@MNJROGTKPRO ~]$ wget -O foo2zjs.tar.gz http://foo2zjs.rkkda.com/foo2zjs.tar.gz
--2021-01-20 16:48:48--  http://foo2zjs.rkkda.com/foo2zjs.tar.gz
Resolving foo2zjs.rkkda.com (foo2zjs.rkkda.com)... 74.208.236.166
Connecting to foo2zjs.rkkda.com (foo2zjs.rkkda.com)|74.208.236.166|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1778914 (1.7M) [application/gzip]
Saving to: ‘foo2zjs.tar.gz’

foo2zjs.tar.gz      100%[===================>]   1.70M   858KB/s    in 2.0s    

2021-01-20 16:48:50 (858 KB/s) - ‘foo2zjs.tar.gz’ saved [1778914/1778914]

[jfl@MNJROGTKPRO ~]$ tar zxf foo2zjs.tar.gz
[jfl@MNJROGTKPRO ~]$ cd foo2zjs
[jfl@MNJROGTKPRO foo2zjs]$ make
#
# Dependencies...
#
# ... OK!
#
cc -O2 -Wall    -c -o foo2zjs.o foo2zjs.c
cc -O2 -Wall    -c -o jbig.o jbig.c
cc -O2 -Wall    -c -o jbig_ar.o jbig_ar.c
cc -O2 -Wall  -o foo2zjs foo2zjs.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o zjsdecode.o zjsdecode.c
cc -O2 -Wall  zjsdecode.o jbig.o jbig_ar.o -o zjsdecode
cc -O2 -Wall     arm2hpdl.c   -o arm2hpdl
cc -O2 -Wall    -c -o foo2hp.o foo2hp.c
cc -O2 -Wall  -o foo2hp foo2hp.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o foo2xqx.o foo2xqx.c
cc -O2 -Wall  -o foo2xqx foo2xqx.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o xqxdecode.o xqxdecode.c
cc -O2 -Wall  xqxdecode.o jbig.o jbig_ar.o -o xqxdecode
cc -O2 -Wall    -c -o foo2lava.o foo2lava.c
cc -O2 -Wall  -o foo2lava foo2lava.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o lavadecode.o lavadecode.c
cc -O2 -Wall  lavadecode.o jbig.o jbig_ar.o -o lavadecode
cc -O2 -Wall    -c -o foo2qpdl.o foo2qpdl.c
cc -O2 -Wall  -o foo2qpdl foo2qpdl.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o qpdldecode.o qpdldecode.c
cc -O2 -Wall  qpdldecode.o jbig.o jbig_ar.o -o qpdldecode
cc -O2 -Wall    -c -o opldecode.o opldecode.c
cc -O2 -Wall  -g opldecode.o jbig.o jbig_ar.o -o opldecode
cc -O2 -Wall    -c -o foo2oak.o foo2oak.c
foo2oak.c: In function 'start_doc':
foo2oak.c:490:2: warning: 'strncpy' output may be truncated copying 35 bytes from a string of length 47 [-Wstringop-truncation]
  490 |  strncpy(recdriver.string, Version+5, sizeof(recdriver.string) - 1);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc -O2 -Wall  -o foo2oak foo2oak.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o oakdecode.o oakdecode.c
cc -O2 -Wall  -g oakdecode.o jbig.o jbig_ar.o -o oakdecode
cc -O2 -Wall    -c -o foo2slx.o foo2slx.c
cc -O2 -Wall  -o foo2slx foo2slx.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o slxdecode.o slxdecode.c
cc -O2 -Wall  slxdecode.o jbig.o jbig_ar.o -o slxdecode
cc -O2 -Wall    -c -o foo2hiperc.o foo2hiperc.c
cc -O2 -Wall  -o foo2hiperc foo2hiperc.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o hipercdecode.o hipercdecode.c
cc -O2 -Wall  hipercdecode.o jbig.o jbig_ar.o -o hipercdecode
cc -O2 -Wall    -c -o foo2hbpl2.o foo2hbpl2.c
cc -O2 -Wall  -o foo2hbpl2 foo2hbpl2.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o hbpldecode.o hbpldecode.c
cc -O2 -Wall  hbpldecode.o jbig.o jbig_ar.o -o hbpldecode
cc -O2 -Wall    -c -o gipddecode.o gipddecode.c
cc -O2 -Wall  gipddecode.o jbig.o jbig_ar.o -o gipddecode
cc -O2 -Wall    -c -o foo2ddst.o foo2ddst.c
cc -O2 -Wall  -o foo2ddst foo2ddst.o jbig.o jbig_ar.o
cc -O2 -Wall    -c -o ddstdecode.o ddstdecode.c
cc -O2 -Wall  ddstdecode.o jbig.o jbig_ar.o -o ddstdecode
cc -O2 -Wall  -I/usr/local/include -c command2foo2lava-pjl.c
command2foo2lava-pjl.c: In function 'main':
command2foo2lava-pjl.c:92:5: warning: 'ppdOpenFile' is deprecated: Use cupsCopyDestInfo and friends instead. [-Wdeprecated-declarations]
   92 |     ppd = ppdOpenFile(getenv("PPD"));
      |     ^~~
In file included from command2foo2lava-pjl.c:37:
/usr/include/cups/ppd.h:389:20: note: declared here
  389 | extern ppd_file_t *ppdOpenFile(const char *filename) _CUPS_DEPRECATED_1_6_MSG("Use cupsCopyDestInfo and friends instead.");
      |                    ^~~~~~~~~~~
command2foo2lava-pjl.c:95:2: warning: 'ppdFindAttr' is deprecated: Use cupsCopyDestInfo and friends instead. [-Wdeprecated-declarations]
   95 |  attr = ppdFindAttr(ppd, "foo2zjsNegateMarkerLevels", NULL);
      |  ^~~~
In file included from command2foo2lava-pjl.c:37:
/usr/include/cups/ppd.h:399:20: note: declared here
  399 | extern ppd_attr_t *ppdFindAttr(ppd_file_t *ppd, const char *name,
      |                    ^~~~~~~~~~~
command2foo2lava-pjl.c:98:2: warning: 'ppdClose' is deprecated: Use cupsCopyDestInfo and friends instead. [-Wdeprecated-declarations]
   98 |  ppdClose(ppd);
      |  ^~~~~~~~
In file included from command2foo2lava-pjl.c:37:
/usr/include/cups/ppd.h:364:14: note: declared here
  364 | extern void  ppdClose(ppd_file_t *ppd) _CUPS_DEPRECATED_1_6_MSG("Use cupsCopyDestInfo and friends instead.");
      |              ^~~~~~~~
cc -O2 -Wall  -L/usr/local/lib command2foo2lava-pjl.o -lcups -o command2foo2lava-pjl
cc -O2 -Wall     usb_printerid.c   -o usb_printerid
[ ! -f foo2zjs-wrapper ] || chmod +w foo2zjs-wrapper
sed < foo2zjs-wrapper.in > foo2zjs-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2zjs-wrapper && exit 1)
chmod 555 foo2zjs-wrapper
[ ! -f foo2oak-wrapper ] || chmod +w foo2oak-wrapper
sed < foo2oak-wrapper.in > foo2oak-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2oak-wrapper && exit 1)
chmod 555 foo2oak-wrapper
[ ! -f foo2hp2600-wrapper ] || chmod +w foo2hp2600-wrapper
sed < foo2hp2600-wrapper.in > foo2hp2600-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2hp2600-wrapper && exit 1)
chmod 555 foo2hp2600-wrapper
[ ! -f foo2xqx-wrapper ] || chmod +w foo2xqx-wrapper
sed < foo2xqx-wrapper.in > foo2xqx-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2xqx-wrapper && exit 1)
chmod 555 foo2xqx-wrapper
[ ! -f foo2lava-wrapper ] || chmod +w foo2lava-wrapper
sed < foo2lava-wrapper.in > foo2lava-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2lava-wrapper && exit 1)
chmod 555 foo2lava-wrapper
[ ! -f foo2qpdl-wrapper ] || chmod +w foo2qpdl-wrapper
sed < foo2qpdl-wrapper.in > foo2qpdl-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2qpdl-wrapper && exit 1)
chmod 555 foo2qpdl-wrapper
[ ! -f foo2slx-wrapper ] || chmod +w foo2slx-wrapper
sed < foo2slx-wrapper.in > foo2slx-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2slx-wrapper && exit 1)
chmod 555 foo2slx-wrapper
[ ! -f foo2hiperc-wrapper ] || chmod +w foo2hiperc-wrapper
sed < foo2hiperc-wrapper.in > foo2hiperc-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2hiperc-wrapper && exit 1)
chmod 555 foo2hiperc-wrapper
[ ! -f foo2hbpl2-wrapper ] || chmod +w foo2hbpl2-wrapper
sed < foo2hbpl2-wrapper.in > foo2hbpl2-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2hbpl2-wrapper && exit 1)
chmod 555 foo2hbpl2-wrapper
[ ! -f foo2ddst-wrapper ] || chmod +w foo2ddst-wrapper
sed < foo2ddst-wrapper.in > foo2ddst-wrapper \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f foo2ddst-wrapper && exit 1)
chmod 555 foo2ddst-wrapper
cat foo2zjs-pstops.sh >foo2zjs-pstops 
chmod a+x foo2zjs-pstops
cat printer-profile.sh >printer-profile 
chmod a+x printer-profile
[ ! -f getweb ] || chmod +w getweb
sed < getweb.in > getweb \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e 's@^PREFIX=.*@PREFIX=/usr@' || (rm -f getweb && exit 1)
chmod 555 getweb
cd icc2ps; make all
make[1]: Entering directory '/home/jfl/foo2zjs/icc2ps'
cc -O3 icc2ps.c xgetopt.c cmscam97.c cmscnvrt.c cmserr.c cmsgamma.c cmsgmt.c cmsintrp.c cmsio1.c cmslut.c cmsmatsh.c cmsmtrx.c cmsnamed.c cmspack.c cmspcs.c cmsps2.c cmssamp.c cmswtpnt.c cmsxform.c cmsio0.c cmsvirt.c -lm -o foo2zjs-icc2ps
rm -f foo2zjs-icc2ps.1
MODver=; \
../includer-man -v DEF1= foo2zjs-icc2ps.1in | sed > foo2zjs-icc2ps.1 \
    -e "s@\${URLOAK}@@" \
    -e "s@\${URLZJS}@@" \
    -e "s@\${URLHP}@@" \
    -e "s@\${URLXQX}@@" \
    -e "s@\${URLLAVA}@@" \
    -e "s@\${URLQPDL}@@" \
    -e "s@\${URLSLX}@@" \
    -e "s@\${URLHC}@@" \
    -e "s/\${MODver}/$MODver/"
/bin/sh: line 2: ../includer-man: No such file or directory
chmod a-w foo2zjs-icc2ps.1
make[1]: Leaving directory '/home/jfl/foo2zjs/icc2ps'
rm -f foo2zjs-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2zjs-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2zjs-wrapper.1in | sed > foo2zjs-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2zjs-wrapper.1
rm -f foo2zjs.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2zjs.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2zjs.1in | sed > foo2zjs.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2zjs.1
rm -f zjsdecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime zjsdecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= zjsdecode.1in | sed > zjsdecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w zjsdecode.1
rm -f foo2oak-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2oak-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2oak-wrapper.1in | sed > foo2oak-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2oak-wrapper.1
rm -f foo2oak.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2oak.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2oak.1in | sed > foo2oak.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2oak.1
rm -f oakdecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime oakdecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= oakdecode.1in | sed > oakdecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w oakdecode.1
rm -f foo2hp2600-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2hp2600-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2hp2600-wrapper.1in | sed > foo2hp2600-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2hp2600-wrapper.1
rm -f foo2hp.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2hp.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2hp.1in | sed > foo2hp.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2hp.1
rm -f foo2xqx-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2xqx-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2xqx-wrapper.1in | sed > foo2xqx-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2xqx-wrapper.1
rm -f foo2xqx.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2xqx.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2xqx.1in | sed > foo2xqx.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2xqx.1
rm -f xqxdecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime xqxdecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= xqxdecode.1in | sed > xqxdecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w xqxdecode.1
rm -f foo2lava-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2lava-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2lava-wrapper.1in | sed > foo2lava-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2lava-wrapper.1
rm -f foo2lava.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2lava.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2lava.1in | sed > foo2lava.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2lava.1
rm -f lavadecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime lavadecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= lavadecode.1in | sed > lavadecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w lavadecode.1
rm -f opldecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime opldecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= opldecode.1in | sed > opldecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w opldecode.1
rm -f foo2qpdl-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2qpdl-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2qpdl-wrapper.1in | sed > foo2qpdl-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2qpdl-wrapper.1
rm -f foo2qpdl.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2qpdl.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2qpdl.1in | sed > foo2qpdl.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2qpdl.1
rm -f qpdldecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime qpdldecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= qpdldecode.1in | sed > qpdldecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w qpdldecode.1
rm -f foo2slx-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2slx-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2slx-wrapper.1in | sed > foo2slx-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2slx-wrapper.1
rm -f foo2slx.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2slx.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2slx.1in | sed > foo2slx.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2slx.1
rm -f slxdecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime slxdecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= slxdecode.1in | sed > slxdecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w slxdecode.1
rm -f foo2hiperc-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2hiperc-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2hiperc-wrapper.1in | sed > foo2hiperc-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2hiperc-wrapper.1
rm -f foo2hiperc.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2hiperc.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2hiperc.1in | sed > foo2hiperc.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2hiperc.1
rm -f hipercdecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime hipercdecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= hipercdecode.1in | sed > hipercdecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w hipercdecode.1
rm -f foo2hbpl2-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2hbpl2-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2hbpl2-wrapper.1in | sed > foo2hbpl2-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2hbpl2-wrapper.1
rm -f foo2hbpl2.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2hbpl2.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2hbpl2.1in | sed > foo2hbpl2.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2hbpl2.1
rm -f hbpldecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime hbpldecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= hbpldecode.1in | sed > hbpldecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w hbpldecode.1
rm -f foo2ddst-wrapper.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2ddst-wrapper.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2ddst-wrapper.1in | sed > foo2ddst-wrapper.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2ddst-wrapper.1
rm -f foo2ddst.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2ddst.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2ddst.1in | sed > foo2ddst.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2ddst.1
rm -f ddstdecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime ddstdecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= ddstdecode.1in | sed > ddstdecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w ddstdecode.1
rm -f gipddecode.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime gipddecode.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= gipddecode.1in | sed > gipddecode.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w gipddecode.1
rm -f foo2zjs-pstops.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime foo2zjs-pstops.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= foo2zjs-pstops.1in | sed > foo2zjs-pstops.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w foo2zjs-pstops.1
rm -f arm2hpdl.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime arm2hpdl.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= arm2hpdl.1in | sed > arm2hpdl.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w arm2hpdl.1
rm -f usb_printerid.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime usb_printerid.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= usb_printerid.1in | sed > usb_printerid.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w usb_printerid.1
rm -f printer-profile.1
modtime() { date -d "1/1/1970 utc + `stat -t $1 | cut -f14 -d' '` seconds" "+%a %b %d %T %Y"; }; \
MODpage=`modtime printer-profile.1in`; \
MODver=0.0; \
./includer -t man -v DEF1= printer-profile.1in | sed > printer-profile.1 \
    -e "s@\${URLOAK}@http://foo2oak.rkkda.com@" \
    -e "s@\${URLZJS}@http://foo2zjs.rkkda.com@" \
    -e "s@\${URLHP}@http://foo2hp.rkkda.com@" \
    -e "s@\${URLXQX}@http://foo2xqx.rkkda.com@" \
    -e "s@\${URLLAVA}@http://foo2lava.rkkda.com@" \
    -e "s@\${URLQPDL}@http://foo2qpdl.rkkda.com@" \
    -e "s@\${URLSLX}@http://foo2slx.rkkda.com@" \
    -e "s@\${URLHC}@http://foo2hiperc.rkkda.com@" \
    -e "s@\${URLHBPL}@http://foo2hbpl.rkkda.com@" \
    -e "s@\${URLDDST}@http://foo2ddst.rkkda.com@" \
    -e "s/\${MODpage}/$MODpage/" \
    -e "s/\${MODver}/$MODver/"
chmod a-w printer-profile.1
cd icc2ps; make man
make[1]: Entering directory '/home/jfl/foo2zjs/icc2ps'
make[1]: Nothing to be done for 'man'.
make[1]: Leaving directory '/home/jfl/foo2zjs/icc2ps'
cd osx-hotplug; make man
make[1]: Entering directory '/home/jfl/foo2zjs/osx-hotplug'
rm -f osx-hplj-hotplug.1
MODver=; \
../includer-man -v DEF1= osx-hplj-hotplug.1in | sed > osx-hplj-hotplug.1 \
    -e "s@\${URLOAK}@@" \
    -e "s@\${URLZJS}@@" \
    -e "s@\${URLHP}@@" \
    -e "s@\${URLXQX}@@" \
    -e "s@\${URLLAVA}@@" \
    -e "s@\${URLQPDL}@@" \
    -e "s@\${URLSLX}@@" \
    -e "s@\${URLHC}@@" \
    -e "s/\${MODver}/$MODver/"
/bin/sh: line 2: ../includer-man: No such file or directory
chmod a-w osx-hplj-hotplug.1
make[1]: Leaving directory '/home/jfl/foo2zjs/osx-hotplug'
groff -t -man \
    `ls foo2zjs-wrapper.1 foo2zjs.1 zjsdecode.1 foo2oak-wrapper.1 foo2oak.1 oakdecode.1 foo2hp2600-wrapper.1 foo2hp.1 foo2xqx-wrapper.1 foo2xqx.1 xqxdecode.1 foo2lava-wrapper.1 foo2lava.1 lavadecode.1 opldecode.1 foo2qpdl-wrapper.1 foo2qpdl.1 qpdldecode.1 foo2slx-wrapper.1 foo2slx.1 slxdecode.1 foo2hiperc-wrapper.1 foo2hiperc.1 hipercdecode.1 foo2hbpl2-wrapper.1 foo2hbpl2.1 hbpldecode.1 foo2ddst-wrapper.1 foo2ddst.1 ddstdecode.1 gipddecode.1 foo2zjs-pstops.1 arm2hpdl.1 usb_printerid.1 printer-profile.1 \
	icc2ps/foo2zjs-icc2ps.1 \
	osx-hotplug/osx-hplj-hotplug.1 \
	| sort` \
    | ps2pdf - manual.pdf

It is possible that certain products which can be built using this
software module might form inventions protected by patent rights in
some countries (e.g., by patents about arithmetic coding algorithms
owned by IBM and AT&T in the USA). Provision of this software by the
author does NOT include any licences for any patents. In those
countries where a patent licence is required for certain applications
of this software module, you will have to obtain such a licence
yourself.

A) I’m on XFCE stable branch and amd64 architecture, so NO arm(!!)

B) You followed the instruction in …/foo2zjs/INSTALL file??

C) After getweb you should do a
sudo make install
Sometimes it tells you about allready existent files and how to remove them.

then
sudo make install-hotplug

Unplug and re-plug the USB printer

If the printer gets the new driver it will blink several times

restart cups ( that should be installed allready!)

systemctl restart cups
( or reboot )

Then open your browser and go to localhost:631 without any http or such

There you can add your Laserjet 1020

If it fails somewhere you can restart all over in the foo2zjs directory by
make all clean
make uninstall
…

Good luck!

Perhaps its just not possible on Arm???

Keep that foo2zjs directory! I have to reinstall the driver every(?) kernel change.

I had no luck with foo2zjs-nightly or hplib!! Remove them.

I am new to Linux. Sorry, my first try in Manjaro-ARM it did NOT get to stage where I have to select “$ ./getweb 1020 # Get HP LaserJet 1020 firmware file”.

This is what I did (following foo2zjs installation guide).

  1. $ wget -O foo2zjs.tar.gz http://foo2zjs.rkkda.com/foo2zjs.tar.gz
  2. $ tar zxf foo2zjs.tar.gz
  3. $ cd foo2zjs
  4. $ make

I stop at “4. $ make” as I wasn’t sure whether the “make” or “installation” was successful.
Do I proceed with:
5. $ ./getweb 1020 # Get HP LaserJet 1020 firmware file
6. $ sudo make install
7. $ sudo make install-hotplug

Please follow exactly whats written in …/INSTALL

Try to find out what ./getweb does

Seems to be the culpit?

as i recall
make uninstall
make
sudo make install
sudo make install-hotplug
…
reboot
in your browser localhost:631
add Laserjet 1020

good luck

Thanks, follow exactly as per /INSTALL, able to install in Armbian-Focal and get HP LaserJet 1020 to print in but the Option for “Two-Sided” or “Duplex” is NOT available.

I know LaserJet 1020 does support “Duplex” or “Two-Sided” print option as use it regularly in MS Windows. For your info, HP HPLIP for Debian/Ubuntu Arm64 has the Option of “Two-Sided” but even if you select it, it still print only one-sided.

By the way, in AMD64 foo2zj2 for LaserJet 1020 does it support “Two-Sided” or “Duplex” printing (manual feed) just curious.

Will try it in Manjaro Arm.

So you made it? Great!!

Never used that feature “Duplex” and Laserjet 1020 is really simple it can’t change once printed pages!

Is it possible by print even pages turn around the papers and then print odd pages? I don’t know!

Yes and No. Yes, I made it in Armbian-Focal (ARM-64) with foo2zjs.

And NO failed in Manjaro-Arm “sudo make install-hotplug” installation error.

May Spikerguy can help on this "Install vim packages(s) for your OS"

[jfl@MNJROGTKPRO foo2zjs]$ sudo make install-hotplug

Hotplug Installation Dependencies…

  ***
  *** Error: ex is not installed!
  ***
  *** Install vim package(s) for your OS
  ***

make: *** [Makefile:998: install-hotplug-test] Error 1
[jfl@MNJROGTKPRO foo2zjs]$