there is another way you could try if above fails for you.
http://foo2xqx.rkkda.com/
that link claims "foo2xqx is an open source printer driver for printers that use the HP/Software Imaging "XQX" stream wire protocol for their print data, such as the HP LaserJet P1005"
a bit of reading suggests it will use cups, ghostscript and foomatic but foomatic is I believe what we call cups-filters
I had a peep at printers supported by gutenprint but its not supported
GNU dc is a part of the bc extension. Not sure if bc.tcz exists for pi.It does:
... I used the gvim.tcz from 9.x/x86: probably it does not work on ARM? Still, the errors with ex and vim are not related to tcz files that I installed from other repositories...Something compiled to run on x86 will not run on ARM.
tc@E310:~$ file vim/vim/usr/local/bin/vim
vim/vim/usr/local/bin/vim: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, stripped
tc@E310:~$ file PiCore/TC9/mnt2/tmp/bin/busybox
PiCore/TC9/mnt2/tmp/bin/busybox: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 3.2.0, stripped
tc@E310:~$
vim GNU/Linux 2.6.32
busybox GNU/Linux 3.2.0
tce-load -wil compiletc squashfs-tools bash acl-dev ncurses-dev git
git clone https://github.com/vim/vim.git
WRKDIR=vim-7.4.935
To thisWRKDIR=vim
tar -xf $SRCNAM
To this#tar -xf $SRCNAM
./vim.build
rm -r -f $WRKDIR
that became# rm -r -f $WRKDIR
otherwise the script erases everything in the directory /vim and the directory itself >:( even before the make -j4
command. That was fun.
checking --with-tlib argument... empty: automatic terminal library selection
checking for tgetent in -ltinfo... no
checking for tgetent in -lncurses... no
checking for tgetent in -ltermlib... no
checking for tgetent in -ltermcap... no
checking for tgetent in -lcurses... no
no terminal library found
checking for tgetent()... configure: error: NOT FOUND!
You need to install a terminal library; for example ncurses.
Or specify the name of the library with --with-tlib.
make[2]: *** [Makefile:2056: config] Error 1
make[2]: Leaving directory '/mnt/mmcblk0p2/tce/vimsrc/vim/src'
make[1]: *** [Makefile:2084: reconfig] Error 2
make[1]: Leaving directory '/mnt/mmcblk0p2/tce/vimsrc/vim/src'
make: *** [Makefile:29: first] Error 2
Starting make in the src directory.
If there are problems, cd to the src directory and run make there
cd src && make install
make[1]: Entering directory '/mnt/mmcblk0p2/tce/vimsrc/vim/src'
Makefile:2714: target '/tmp/vim' given more than once in the same rule
make[1]: Nothing to be done for 'install'.
make[1]: Leaving directory '/mnt/mmcblk0p2/tce/vimsrc/vim/src'
mode of '/tmp/vim/' changed to 0755 (rwxr-xr-x)
Usage: strip <option(s)> in-file(s)
Removes symbols and sections from files
The options are:
-I --input-target=<bfdname> Assume input file is in format <bfdname>
-O --output-target=<bfdname> Create an output file in format <bfdname>
-F --target=<bfdname> Set both input and output format to <bfdname>
-p --preserve-dates Copy modified/access timestamps to the output
-D --enable-deterministic-archives
Produce deterministic output when stripping archives
-U --disable-deterministic-archives
Disable -D behavior (default)
-R --remove-section=<name> Also remove section <name> from the output
--remove-relocations <name> Remove relocations from section <name>
-s --strip-all Remove all symbol and relocation information
-g -S -d --strip-debug Remove all debugging symbols & sections
--strip-dwo Remove all DWO sections
--strip-unneeded Remove all symbols not needed by relocations
--only-keep-debug Strip everything but the debug information
-M --merge-notes Remove redundant entries in note sections (default)
--no-merge-notes Do not attempt to remove redundant notes
-N --strip-symbol=<name> Do not copy symbol <name>
-K --keep-symbol=<name> Do not strip symbol <name>
--keep-file-symbols Do not strip file symbol(s)
-w --wildcard Permit wildcard in symbol comparison
-x --discard-all Remove all non-global symbols
-X --discard-locals Remove any compiler-generated symbols
-v --verbose List all object files modified
-V --version Display this program's version number
-h --help Display this output
--info List object formats & architectures supported
-o <file> Place stripped output into <file>
strip: supported targets: elf32-littlearm elf32-littlearm-fdpic elf32-bigarm elf32-bigarm-fdpic elf32-little elf32-big plugin srec symbolsrec verilog tekhex binary ihex
mv: can't rename '/tmp/vim/usr/local/share/man': No such file or directory
Parallel mksquashfs: Using 1 processor
Creating 4.0 filesystem on vim.tcz, block size 4096.
Exportable Squashfs 4.0 filesystem, gzip compressed, data block size 4096
compressed data, compressed metadata, compressed fragments,
compressed xattrs, compressed ids
duplicates are removed
Filesystem size 0.16 Kbytes (0.00 Mbytes)
100.00% of uncompressed filesystem size (0.16 Kbytes)
Inode table size 30 bytes (0.03 Kbytes)
88.24% of uncompressed inode table size (34 bytes)
Directory table size 0 bytes (0.00 Kbytes)
nan% of uncompressed directory table size (0 bytes)
Number of duplicate files found 0
Number of inodes 1
Number of files 0
Number of fragments 0
Number of symbolic links 0
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 1
Number of ids (unique uids + gids) 2
Number of uids 1
tc (1001)
Number of gids 1
staff (50)
find: 'usr': No such file or directory
Parallel mksquashfs: Using 1 processor
Creating 4.0 filesystem on vim-doc.tcz, block size 4096.
Exportable Squashfs 4.0 filesystem, gzip compressed, data block size 4096
compressed data, compressed metadata, compressed fragments,
compressed xattrs, compressed ids
duplicates are removed
Filesystem size 0.25 Kbytes (0.00 Mbytes)
70.87% of uncompressed filesystem size (0.35 Kbytes)
Inode table size 61 bytes (0.06 Kbytes)
46.92% of uncompressed inode table size (130 bytes)
Directory table size 51 bytes (0.05 Kbytes)
68.00% of uncompressed directory table size (75 bytes)
Number of duplicate files found 0
Number of inodes 4
Number of files 0
Number of fragments 0
Number of symbolic links 0
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 4
Number of ids (unique uids + gids) 2
Number of uids 1
tc (1001)
Number of gids 1
staff (50)
ncurses-dev.tcz
ncurses-terminfo.tcz
ncurses-utils.tcz
--with-tlib=ncursesw
ncurses-dev.tcz
--with-tlib=ncursesw
checking --with-tlib argument... ncursesw
checking for linking with ncursesw library... OK
checking for tgetent()... yes
checking whether we talk terminfo... yes
checking what tgetent() returns for an unknown terminal... zero
checking --with-tlib argument... empty: automatic terminal library selection
checking for tgetent in -ltinfo... no
checking for tgetent in -lncurses... no
checking for tgetent in -ltermlib... no
checking for tgetent in -ltermcap... no
checking for tgetent in -lcurses... no
no terminal library found
checking for tgetent()... configure: error: NOT FOUND!
You need to install a terminal library; for example ncurses.
Or specify the name of the library with --with-tlib.
make[1]: *** [Makefile:2056: auto/config.mk] Error 1
make[1]: Leaving directory '/mnt/mmcblk0p2/tce/vimsrc/vim/src'
make: *** [Makefile:29: first] Error 2
Cloning into 'vim'...
fatal: unable to access 'http://github.com/vim/vim.git/': SSL certificate problem: certificate is not yet valid
Probably it is related to RPI Zero W that has not a realtime clock?
Probably it is related to RPI Zero W that has not a realtime clock?
You could run getTime.sh before the download and check the time is correct with the date command?
ntp.tcz
via tce-ab, then sudo ntpd
getTime.sh
The time and date are now synced. I also will try without doing sudo ntpd and append the getTime.sh command in bootlocal.sh. Thanks!
There are many apps that have problems with ncurses(w) - one way to fix things is to search for the appropriate test in the ./configure script and change -lncurses to -lncursesw.
Another possible fix is to use LIBS="-L/usr/local/lib -lncursesw" ./configure --blah-blah
#! /bin/sh
# This is just a stub for the Unix configure script, to provide support for
# doing "./configure" in the top Vim directory.
cd "${SRCDIR:-src}" && exec ./configure "$@"
#! /bin/sh
# run the automatically generated configure script
CONFIG_STATUS=auto/config.status \
auto/configure "$@" --srcdir="${srcdir:-.}" --cache-file=auto/config.cache
result=$?
# Stupid autoconf 2.5x causes this file to be left behind.
if test -f configure.lineno; then rm -f configure.lineno; fi
exit $result
LIBS="-L/usr/local/lib -lncursesw"
checking --with-tlib argument... empty: automatic terminal library selection
checking for tgetent in -ltinfo... no
checking for tgetent in -lncurses... no
checking for tgetent in -ltermlib... no
checking for tgetent in -ltermcap... no
checking for tgetent in -lcurses... no
no terminal library found
..means that one of the configure scripts is checking for -lncurses, does "grep -lr lncurses ." find it?I have no guess where I should use the part
$ ./configure --blah-blah
$ LIBS="-L/usr/local/lib -lncursesw" ./configure --blah-blah
Found here:# config.mk.in -- autoconf template for Vim on Unix vim:ts=8:sw=8:
#
# DO NOT EDIT config.mk!! It will be overwritten by configure.
# Edit Makefile and run "make" or run ./configure with other arguments.
#
# Configure does not edit the makefile directly. This method is not the
# standard use of GNU autoconf, but it has two advantages:
# a) The user can override every choice made by configure.
# b) Modifications to the makefile are not lost when configure is run.
#
# I hope this is worth being nonstandard. jw.
Found here:2. Unix
=======
Summary:
1. make run configure, compile and link
2. make install installation in /usr/local
This will include the GUI and X11 libraries, if you have them. If you want a
version of Vim that is small and starts up quickly, see the Makefile for how
to disable the GUI and X11. If you don't have GUI libraries and/or X11, these
features will be disabled automatically.
See the start of Makefile for more detailed instructions about how to compile
Vim.
If you need extra compiler and/or linker arguments, set $CFLAGS and/or $LIBS
before starting configure. Example:
env CFLAGS=-I/usr/local/include LIBS=-lm make
This is only needed for things that configure doesn't offer a specific argument
for or figures out by itself. First try running configure without extra
arguments.
GNU Autoconf and a few other tools have been used to make Vim work on many
different Unix systems. The advantage of this is that Vim should compile
on most systems without any adjustments. The disadvantage is that when
adjustments are required, it takes some time to understand what is happening.
If configure finds all library files and then complains when linking that some
of them can't be found, your linker doesn't return an error code for missing
libraries. Vim should be linked fine anyway, mostly you can just ignore these
errors.
If you run configure by hand (not using the Makefile), remember that any
changes in the Makefile have no influence on configure. This may be what you
want, but maybe not!
The advantage of running configure separately, is that you can write a script
to build Vim, without changing the Makefile or feature.h. Example (using sh):
CFLAGS=-DCOMPILER_FLAG ./configure --enable-gui=motif
One thing to watch out for: If the configure script itself changes, running
"make" will execute it again, but without your arguments. Do "make clean" and
run configure again.
----- Snip -----
./configure --prefix=/usr/local --without-x --enable-gui=no
LIB="-L/usr/local/lib -lncursesw" ./configure --prefix=/usr/local --without-x --enable-gui=no --with-tlib=ncursesw
tc@box:/tmp/vim$ vim --version
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Sep 22 2020 14:37:22)
Included patches: 1-1724
Compiled by tc@box
Huge version without GUI. Features included (+) or not (-):
+acl -farsi +mouse_sgr +tag_binary
+arabic +file_in_path -mouse_sysmouse -tag_old_static
+autocmd +find_in_path +mouse_urxvt -tag_any_white
+autochdir +float +mouse_xterm -tcl
-autoservername +folding +multi_byte +termguicolors
-balloon_eval -footer +multi_lang +terminal
+balloon_eval_term +fork() -mzscheme +terminfo
-browse -gettext +netbeans_intg +termresponse
++builtin_terms -hangul_input +num64 +textobjects
+byte_offset +iconv +packages +textprop
+channel +insert_expand +path_extra +timers
+cindent +ipv6 -perl +title
-clientserver +job +persistent_undo -toolbar
-clipboard +jumplist +popupwin +user_commands
+cmdline_compl +keymap +postscript +vartabs
+cmdline_hist +lambda +printer +vertsplit
+cmdline_info +langmap +profile +virtualedit
+comments +libcall -python +visual
+conceal +linebreak -python3 +visualextra
+cryptv +lispindent +quickfix +viminfo
+cscope +listcmds +reltime +vreplace
+cursorbind +localmap +rightleft +wildignore
+cursorshape -lua -ruby +wildmenu
+dialog_con +menu +scrollbind +windows
+diff +mksession +signs +writebackup
+digraphs +modify_fname +smartindent -X11
-dnd +mouse -sound -xfontset
-ebcdic -mouseshape +spell -xim
+emacs_tags +mouse_dec +startuptime -xpm
+eval -mouse_gpm +statusline -xsmp
+ex_extra -mouse_jsbterm -sun_workshop -xterm_clipboard
+extra_search +mouse_netterm +syntax -xterm_save
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
defaults file: "$VIMRUNTIME/defaults.vim"
fall-back for $VIM: "/usr/local/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -O2 -pipe -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc -L/usr/local/lib -Wl,--as-needed -o vim -lm -lelf -lncursesw -lacl -lattr -ldl
Probably it is related to RPI Zero W that has not a realtime clock?
You could run getTime.sh before the download and check the time is correct with the date command?
That is nice. Ok, I addedCode: [Select]ntp.tcz
via tce-ab, thenCode: [Select]sudo ntpd
The time and date are now synced. I also will try without doing sudo ntpd and append the getTime.sh command in bootlocal.sh. Thanks!
getTime.sh
... note that you'll need to create a *tcz.dep file containing at least ncurses.tczThe TC7 version also had a dependency on acl.tcz. Run this:
ldd /usr/local/bin/vim
If libacl.so comes up in the list, you need acl.tcz in the .dep file.tc@box:~$ ldd /usr/local/bin/vim
libm.so.6 => /lib/libm.so.6 (0xb6e67000)
libncursesw.so.6 => /usr/local/lib/libncursesw.so.6 (0xb6e0f000)
libacl.so.1 => /usr/local/lib/libacl.so.1 (0xb6df9000)
libdl.so.2 => /lib/libdl.so.2 (0xb6de6000)
libc.so.6 => /lib/libc.so.6 (0xb6ca4000)
libattr.so.1 => /usr/local/lib/libattr.so.1 (0xb6c91000)
/lib/ld-linux-armhf.so.3 (0xb6ed4000)
mkdir package
cd package
cp /etc/sysconfig/tcedir/optional/vim*.tcz .
cp /etc/sysconfig/tcedir/optional/vim.tcz.dep .
vim-doc.tcz does not get a .dep file.wget http://tinycorelinux.net/7.x/armv6/tcz/vim.tcz.info
wget http://tinycorelinux.net/7.x/armv6/tcz/vim-doc.tcz.info
Version: 7.4.935
Change-log: 2015/11/22 First version, 7.4.935
Current: 2020/09/23 update 7.4.935 -> VERSION (matteo)
Replace VERSION with the new version number.# Updated 2020/09/23 matteo
# Fetch source code before running this script:
# git clone https://github.com/vim/vim.git
This may help someone in the future trying to build vim.tce-load submitqc
submitqc --libs 2>&1 > submitqc.txt
This updated the size field in the .info files, and created .list, .md5.txt, and .zsync files.tar -czf vimPiCore9.tar.gz *.tcz* vim.build
bcrypt vimPiCore9.tar.gz
When it asks for a key, enter tinycoresubmitqc: Unrecognized architecture 'armv6l'. See --help
... 2016/03/17 bugfix (andyj), begin ARM support, self-pkg; dentonlt ...I guess that was never fully implemented:
du -h vim.tcz
du -h vim-doc.tcz
and fill in the Size: fields of the .info files manually.unsquashfs -f -d vim vim.tcz
unsquashfs -f -d vim-doc vim-doc.tcz
cd vim
find . -not -type d | cut -c 2- | sort > ../vim.tcz.list
cd ../vim-doc
find . -not -type d | cut -c 2- | sort > ../vim-doc.tcz.list
rm -rf vim
rm -rf vim-doc
In fact nobody has the password for the piCore submit email, so you’ll need to send it to the main one.Don't send it to the picore address listed here:
Hi matteo
You saw what Juanito said:In fact nobody has the password for the piCore submit email, so you’ll need to send it to the main one.Don't send it to the picore address listed here:
http://wiki.tinycorelinux.net/doku.php?id=wiki:creating_extensions#submitting
Send it to the first address shown there.
hplip posted to piCore repos - note that more recent versions require a pre-built libImageProcessor.so, but hplip does not supply one for RPi.
Hi Rich, I misunderstood Juanito's sentence. I sent the e-mail to the main address. Thanks!
I posted hplip-3.18.6 - it printed a test page using an RPi3 running piCore-11.x and an hp officejet 6700.
$ sudo /usr/local/etc/inid.d/dbus start
$ sudo /usr/local/etc/init.d/dbus start
-----------------------------------------
| PLUG-IN INSTALLATION FOR HPLIP 3.18.6 |
-----------------------------------------
Option Description
---------- --------------------------------------------------
d Download plug-in from HP (recommended)
p Specify a path to the plug-in (advanced)
q Quit hp-plugin (skip installation)
Enter option (d=download*, p=specify path, q=quit) ? d
-------------------
| DOWNLOAD PLUGIN |
-------------------
Checking for network connection...
Downloading plug-in from:
Downloading plug-in: [\ ] 0% Traceback (most recent call last):
File "/usr/local/bin/hp-plugin", line 363, in <module>
status, plugin_path, error_str = pluginObj.download(plugin_path, plugin_download_callback)
File "/tmp/tcloop/hplip/usr/local/share/hplip/installer/pluginhandler.py", line 254, in download
core = core_install.CoreInstall()
File "/tmp/tcloop/hplip/usr/local/share/hplip/installer/core_install.py", line 231, in __init__
self.passwordObj = password.Password(ui_mode)
File "/tmp/tcloop/hplip/usr/local/share/hplip/base/password.py", line 112, in __init__
self.__readAuthType() # self.__authType
File "/tmp/tcloop/hplip/usr/local/share/hplip/base/password.py", line 134, in __readAuthType
distro_name = get_distro_name().lower()
File "/tmp/tcloop/hplip/usr/local/share/hplip/base/password.py", line 80, in get_distro_name
os_name = platform.dist()[0]
AttributeError: module 'platform' has no attribute 'dist'
error: Failed to install Plugin.
error: The device you are trying to setup requires a binary plug-in. Some functionalities may not work as expected without plug-ins. Please run 'hp-plugin' as normal user to install plug-ins.Visit http://hplipopensource.com for more infomation.
... note that the md5.txt files are needed. ...Thanks for the heads up. I thought the server scripts would handle that, so I omitted them in my last update. Just went
---------------
| COPY PLUGIN |
---------------
Downloading plug-in from: file:///mnt/mmcblk0p2/tce/foo2zjs/hplip-3.18.6-plugin.run
Downloading plug-in: [\ ] 0% Traceback (most recent call last):
File "/usr/local/bin/hp-plugin", line 363, in <module>
status, plugin_path, error_str = pluginObj.download(plugin_path, plugin_download_callback)
File "/tmp/tcloop/hplip/usr/local/share/hplip/installer/pluginhandler.py", line 254, in download
core = core_install.CoreInstall()
File "/tmp/tcloop/hplip/usr/local/share/hplip/installer/core_install.py", line 231, in __init__
self.passwordObj = password.Password(ui_mode)
File "/tmp/tcloop/hplip/usr/local/share/hplip/base/password.py", line 112, in __init__
self.__readAuthType() # self.__authType
File "/tmp/tcloop/hplip/usr/local/share/hplip/base/password.py", line 134, in __readAuthType
distro_name = get_distro_name().lower()
File "/tmp/tcloop/hplip/usr/local/share/hplip/base/password.py", line 80, in get_distro_name
os_name = platform.dist()[0]
AttributeError: module 'platform' has no attribute 'dist'
error: Failed to install Plugin.
error: The device you are trying to setup requires a binary plug-in. Some functionalities may not work as expected without plug-ins. Please run 'hp-plugin' as normal user to install plug-ins.Visit http://hplipopensource.com for more infomation.
def get_distro_name():
os_name = None
try:
import platform
os_name = platform.dist()[0]
$ sudo cp /tmp/tcloop/hplip/usr/local/share/hplip/base/password.py /usr/local/share/hplip/base
sudo busybox cp /usr/local/share/hplip/base/password.py /usr/local/share/hplip/base/
File "/usr/local/share/hplip/base/password.py", line 80, in get_distro_name
If the path in that error message no longer contains /tmp/tcloop/hplip, then add your changes to:/usr/local/share/hplip/base/password.py
error: Plug-in filename must be 'hplip-3.18.6-plugin.run'
sudo cat /usr/local/share/firmware/sihpP1005.dl > /dev/usb/lp0
Code: [Select]$ sudo cp /tmp/tcloop/hplip/usr/local/share/hplip/base/password.py /usr/local/share/hplip/base
User @andyj solved his plugin problem by downloading the actual firmware blob somehow.
... Then, I sent manually the "hp_laserjet_p1005.fw" via the cat command, the printer flashes orange and drum rotates few seconds. ...That sounds like it might have accepted the firmware, assuming that's a legitimate way of transferring the firmware.
... If I add a printer using the cups web interface, using the HP plugin driver, I can send a test page to the printer. The printer clicks once, but does not do anything else.So it talked to the printer, that's a good sign. I think I read somewhere that your printer can't print without the firmware.
sudo dd if=/usr/local/share/firmware/sihpP1005.dl of=/dev/usb/lp0
Then click the Send Test Page button.If your printer is listed as requiring a binary plugin, install the hplip-pluginAUR package from AUR. If the binary plugin hplip-pluginAUR is a requirement you will need to start the org.cups.cupsd.service before the PPD is recognized by hplip.Found here:
$ sudo /usr/local/etc/init.d/cups start
no /usr/local/bin/dbus-daemon found; none killed
rm: cannot remove '/var/run/dbus/pid': No such file or directory
$ tce-load -i hplip-plugins-arm32
$ sudo dd if=/mnt/mmcblk0p2/tce/hp_laserjet_p1005.fw of=/dev/usb/lp0
$ tce-load -i hplip
$ sudo /usr/local/etc/init.d/dbus start
$ sudo /usr/local/etc/init.d/cups start
$ hp-setup -i
ldd /usr/local/lib/cups/filter/hpcups
$ /usr/local/lib/lsusb
Bus 001 Device 003: ID 03f0:3d17 HP, Inc LaserJet P1005
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lpstat -t
scheduler is running
no system default destination
device for HP_LaserJet_P1005: hp:/usb/HP_LaserJet_P1005?serial=BC04P65
HP_LaserJet_P1005 accepting requests since Thu Oct 8 18:47:29 2020
printer HP_LaserJet_P1005 is idle. enabled since Thu Oct 8 18:47:29 2020
ready to print
HP_LaserJet_P1005-1 unknown 422912 Thu Oct 8 18:47:01 2020
cups-printers ['HP_LaserJet_P1005']
cups-uri hp:/usb/HP_LaserJet_P1005?serial=BC04P65
dev-file
device-state 1
device-uri hp:/usb/HP_LaserJet_P1005?serial=BC04P65
deviceid MFG:Hewlett-Packard;MDL:HP LaserJet
P1005;CMD:HBS,PJL,ACL;CLS:PRINTER;DES:HP LaserJet
P1005;FWVER:20080415;
sudo lpadmin -p "HPfoo2xqx" -v "hp:/usb/HP_LaserJet_P1005?serial=BC04P65" -E -P /mnt/mmcblk0p2/tce/HP-LaserJet_P1005.ppd
$ sudo lpadmin -d "HPfoo2xqx"