Jump to content

PsionLX

From RetroTechCollection
Revision as of 07:27, 29 September 2026 by Josh (talk | contribs) (โ†’Names)
PsionLX
PsionLX logo
PsionLX screenshot
The PROGRAMS screen of PsionLX on a netBook Pro development machine (photograph: Pulster)
Developer(s) Psion Teklogix
Initial release Unreleased
Type Linux distribution (OpenEmbedded build of the GPE Palmtop Environment)
Platform Psion netBook Pro (Intel XScale PXA255, 400 MHz)
Status Beta. Builds of November 2004 and January 2005 survive

PsionLX is a Linux operating system that Psion Teklogix built for the Psion netBook Pro in 2004 and never released. Psion's own files call it Netbook LX and Psion LX, and its boot screen reads "PSION LX" with "BETA" underneath. It is an OpenEmbedded build of the GPE Palmtop Environment with a Psion theme, a Psion launcher, a Psion button bar and a set of office, internet and organiser applications patched by Psion for the machine. It runs on the same Intel XScale hardware that Psion Teklogix sold with Windows CE .NET 4.2.[1][2][3]

Psion Teklogix never sold PsionLX as a product. It survives on a small number of development machines with 256 MB of RAM and 64 MB of flash, and as a root filesystem image dated 4 January 2005 that was shared on the HPC:Factor forum from November 2007. The public download links for that image have been dead for years and no public copy has been found since.[4][5][6] Psion's own OpenEmbedded build tree survives, and was recovered from the Internet Archive in September 2026. It is the most complete record of what the system contained.[7]

This page covers the original system and its history, every surviving file and where each one came from, and the RetroTechCollection reconstruction of 2026, which rebuilds PsionLX from that build tree as closely as the surviving material allows. The reconstruction is not Psion's build. The differences are listed under What the reconstruction is and is not.

Names

Names used for the system
Name Where it appears
Netbook LX Psion's package manifest (meta-psion.oe: "Meta-packages for Psion Netbook LX"), the help index title "Using your Netbook LX", the initial ramdisk ("Netbook LX initial ramdisk boot script") and the BooSt script name "netBook LX BooSt script"[1][8][9]
Psion LX The boot splash and the Firefox start-page logo; the sync server recipe ("Synchonization Service for the Psion LX", Psion's spelling); a comment in the initial ramdisk ("Psion LX *inird* cardmanager config")[2][7][8]
PsionLX The auditeon.com wiki section "PsionLX Project for the Netbook Pro", and most forum posts from 2007 onwards[10][11]
soho-image The OpenEmbedded image recipe that builds the root filesystem. It sets IMAGE_BASENAME = "soho-image", which is where the file name soho-image-netbook-pro-20050104074212.rootfs.tar.bz2 comes from[1]
LX, NBpro LX Forum shorthand for the system, and also for the 256 MB development machines that carried it[12]

Background

Psion Teklogix announced the netBook Pro in October 2003 as the successor to the Psion netBook. It kept the clamshell shape but moved from EPOC on a StrongARM to Windows CE .NET 4.2 on a 400 MHz Intel PXA255, with 128 MB of RAM and an 800 ร— 600 TFT display. The Register reported that Psion "looked at a variety OS options, including Linux, before settling on CE", quoting product manager Harvey Roberts.[3][13]

In February 2004 Psion issued a statement reporting "positive results from a viability study of Netbook with Linux for professional users with specialist applications". Psion founder David Potter told the same reporter: "We see Linux as being very interesting, not only in terms of technology, but also in market dynamics."[14]

On 4 April 2004 the netBook Pro was registered in the ARM Linux machine database as machine type 503, MACH_TYPE_NETBOOKPRO, "Psion Netbook Pro, PXA 255 based sub-notebook", with Peter Naulls as contact. It was never merged into the mainline kernel.[15]

Wikipedia's article on Psion Teklogix states that the only outcome of Psion's Linux interest was "Linux as the operating system on a limited number of custom NetBook Pros designed for a hospital setting", citing a report in The Business of 23 May 2004 headed "NHS deal with Psion heralds move away from Windows". That report could not be checked for this page.[16]

Development

Build system

PsionLX was built with OpenEmbedded. The tree's README describes the procedure: install Python, Psyco, ccache and GCC, check out oe-netbook from cvs.psiondev.com, point setup.sh at the central snapshots under /var/home/autobuild/oe/, then run oemake soho-image.[1]

The image recipe pulls in four package groups and then adds the default user:

export IMAGE_BASENAME = "soho-image"
DEPENDS = "task-bootstrap meta-gpe meta-psion ttf-bitstream-vera"

add_netbook_tweaks() {
	# add lx user, group and homedir, and add it to sys group for printer admin
	echo "lx::1000:1000:LX Default User:/home/lx:/bin/sh" >>${IMAGE_ROOTFS}/etc/passwd
	...
	# point /lib/modules to the initrd, and have i2c and i2ckbd loaded
	ln -s ../initrd/lib/modules ${IMAGE_ROOTFS}/lib/modules
}

The desktop runs as user lx with an empty password, which is why PsionLX starts straight into the desktop with no login.[1][7]

The tree holds 263 recipes in 144 directories. Five recipes fetch their source from Psion's own CVS server through the ${PDCVS} variable (cvs://${PDUSER}@cvs.psiondev.com/var/lib/cvs): the launcher gpe-appmgr, the button bar gpe-buttonbox, the help viewer gpe-helpviewer, the infoprint utility and the 2.4.26 kernel headers. Another eighteen fetch from other CVS servers, mostly handhelds.org and freedesktop.org. The rest carry their payload in the tree or fetch a released tarball.[7]

People named in the files

The files name several people. None of this establishes who employed whom, and the list below records only what the files say.

  • The tree's CVS metadata names the account [email protected], and every file in the archive that carried the tree is owned by a user called peter.[7]
  • setup.sh carries the line "customised for netbook project by Robert McQueen <[email protected]>".[1]
  • The AbiWord recipes name Alex Loveday at a psion.com address as maintainer. The rdesktop, grdesktop, LinNeighborhood, Gaby and VNC recipes name Peter Naulls. Many GPE recipes keep the maintainer names of the upstream OpenEmbedded recipes they were copied from, such as Phil Blundell and Florian Boor.[7]
  • The NAND installer script NBLXLoad-cook.sh carries the CVS identifier $Id: NBLXLoad-cook.sh,v 1.8 2004/09/24 10:16:42 wookey Exp $.[17]
  • The netBook-specific drivers in Psion's own kernel image announce themselves as "(c) 2004 Simtec Electronics": the battery monitor, keyboard driver, power manager, SPI driver, NAND driver, Epson S1D13XXX framebuffer driver and Ricoh RTC driver. The later machine support file arch/arm/mach-pxa/netbookpro.c names Ben Dooks of Simtec Electronics as author.[18][19]
  • The kernel image that matches the lost root filesystem was built by autobuild@nexus.[18]

In July 2006 a forum member wrote that "Psion contracted out development of a Linux distro, but decided not to release it", without giving a source.[20]

The developers' wiki

Psion's developers kept a wiki. In December 2007 and April 2008 two forum members who held the developer archive, Acid Snoop and w_m0zart, wrote that they were preparing a public version of it with personal details removed, and that it had to be approved before release.[21][22]

The site auditeon.com later carried a section titled "PsionLX Project for the Netbook Pro", last modified on 14 May 2008. Its index lists Action Status (ToDo List), Beta Changelog, Beta Release Notes, Beta Testing, Daily Build Status, Loading from CompactFlash, Project Communication Details, Recent Changes ("recent changes made by the PsionLX developers"), Xios Projects ("website doesn't exist anymore"), Cross Building, ScratchBox ("Cross compiling environment") and Using the PsionLX SDK ("if someone got it, let me know"). The site has since gone offline. Only the index page could be read for this article.[10]

The tree itself includes an SDK recipe, meta-sdk.oe, which packages a cross toolchain (binutils, GCC and GDB) and the target C library for armv5te.[1]

Build dates

The surviving files give a timeline. The dates come from version strings inside the kernel images, archive metadata and forum posts that quote the machines' own version screens.

PsionLX build dates recoverable from surviving files
Date Evidence Source
24 September 2004 Revision 1.8 of the NAND installer script NBLXLoad-cook.sh Script header, posted on HPC:Factor[17]
15 November 2004 Kernel "Build 15 nov 02:10:25 GMT 2004" and system stamp "2004-11-15 02:13" on a 256 MB development board with PsionLX in its internal flash Owner's report[23]
17 November 2004 Date of most files in the oe-netbook CVS checkout (the earliest is 28 October 2004) CVS Entries files[7]
19-23 November 2004 Cross-built gnome-games 2.6.2 and LinNeighborhood 0.6.5 .ipk packages Archive file dates[7]
30 December 2004 Checkout of the 2.6.9 kernel source Archive file dates[7]
4 January 2005, 02:27 GMT Psion's kernel image: Linux version 2.6.9-rc1-bk18-nb1 (autobuild@nexus) (gcc version 3.4.0) #1 Tue Jan 4 02:27:32 GMT 2005 Version string in nBkProOs.img[18]
4 January 2005 Root filesystem soho-image-netbook-pro-20050104074212.rootfs.tar.bz2. A CF card carrying it reports "2005-01-04 02:31" File name; owner's report[4][23]
26 April 2006 netbook-linux-sources.tgz packed gzip header[7]

The owner of the development board first described its two builds as "build 2.13 dated nov 2004" and "2.31 2005". A later post from the same owner shows those figures are the times in the two date stamps, 02:13 and 02:31, rather than version numbers.[24][23]

The development machines

PsionLX was developed on netBook Pros with a larger main board than the retail machine. Several owners describe it independently:

  • "The Linux based Netbook Pros seem to have 64 MB of flash versus the normal NB Pro's 32" (July 2006).[20]
  • "Psion Lx motherboard ie 256mb ram and 64mb flash running Psion Lx beta" (October 2010), and "My netBook pro came with it installed. It has the 256mb/64mb motherboard which was used for Psion Lx development."[25]
  • "it is written for the special Netbook Pro version with 256mb RAM but its also working on normal ones" (January 2010).[5]
  • Pulster's sales listing: "Psion Netbook PRO with rare 256 MB RAM mainboard. Running Linux."[26]

The standard machine has 128 MB of RAM and 32 MB of flash.[3][27]

The LX BooSt script partitions the internal NAND differently from Windows CE. netbook-booting.txt, recovered with the LX installer, gives the commands for the LX prototype and warns that a standard machine needs a different value:[9]

nand -ignore erase 18 ee8
nand partition e8

For a normal NBP the correct value should be 7e8 instead of e8.

A forum member who used the e8 script on a standard machine in 2009 found that Windows CE would no longer install into the smaller partition until the script was remade with 7e8.[28] A 2007 guide to the BooSt supervisor mode gives the full-erase commands as nand -ignore erase 18 7e8 for a 32 MB machine and nand -ignore erase 18 fe8 for a 64 MB one, and warns that erasing below block 18 erases BooSt itself and leaves the machine unbootable.[27]

LX machines appeared for sale from time to time. Expansys asked "over a thousand dollars" for one earlier in 2008, a prototype appeared on eBay in June 2008 without source, and in February 2010 a forum member offered his 256 MB machine, bought from Pulster two years earlier, for โ‚ฌ400, with the LX system "swapped for GPE".[29][30][12] In September 2026 Pulster listed a "Psion Netbook PRO Linux - PsionLX" at โ‚ฌ1,900.[26]

Why it was not released

No official reason has been found. What exists is second-hand:

  • In October 2007 a forum member who had asked Psion Teklogix support about the machine reported that they "claim they have no info on any 'in-house' linux version ever being pursued". Their final reply to his questions was "We are not aware of any undocumented features, and unfortunately we are unable to support your other requests."[31]
  • In November 2007 w_m0zart, who had an LX machine on loan from Pulster and held the developer sources, wrote: "From one of the developers I heard that the only reason why the LX project was not continued, was just a lack of performance of the NBP hardware."[32]
  • In February 2019 Acid Snoop reported that Zebra Technologies' EMEA support team had rejected his request for permission to publish the sources, telling him "the NBP ist end of life".[33] Motorola Solutions bought Psion in 2012, and Zebra bought Motorola's enterprise business, including the former Psion assets, in October 2014.[16]

How PsionLX reached the public

Circulation of PsionLX, 2006-2026
Date Event
July 2006 A forum member reports seeing "a few Netbook Pros sold on eBay with this distro preloaded"[20]
October 2007 The HPC:Factor thread "Netbook Pro I've found a working linux distro!" starts from community GPE images at linuxtogo.org. Members find the LX prototype partitioning values in netbook-booting.txt. Screenshots of Linux running on a netBook Pro prompt one member to suggest that someone "is in possession of one of the limited number of actual Linux netBook Pros"; they turn out to show Koen Kooi's OpenZaurus build, not Psion's[34]
30 October 2007 w_m0zart, who signs his posts "Marc", writes that he has "a netbook pro LX (on loan from www.pulster.de)" and "the original LX linux (sources)". He found it "based around GPE", slow ("Starting firefox took much more than 30 seconds") and unable to see some files on CF cards[35]
6 November 2007 Acid Snoop boots the image on his own netBook Pro from a 1 GB CF card, thanking "Marc for distributing me with the PsionLX image". His first complaint is that settings do not survive a restart[11]
7 November 2007 Acid Snoop posts RapidShare links to nBkProOs.img and soho-image-netbook-pro-20050104074212.rootfs.tar.bz2: "Marc gave me the OK to upload the PsionLX files"[4]
10 November 2007 Acid Snoop uploads netbook-linux-sources.tgz, plus a password-protected folder of "the original PsionLX sources the Teklogix developer used to build the PsionLX Linux OS", adding that "some of these files are still confidential"[36]
December 2007 - May 2008 Acid Snoop and w_m0zart work on releasing a cleaned version of the developers' wiki. The auditeon.com PsionLX index is last modified on 14 May 2008[21][22][10]
May-July 2009 bobbyshane posts a CF install guide that relinks the RapidShare image, and the Psion Linux blog repeats it, calling it "The official Psion Beta version which was never released (but is apparently more stable)"[37][38]
20 January 2010 scops uploads a package containing the soho-image, nBkProOs.img, netbook-linux-sources.tgz, the kernel patch, netbook-booting.txt and mk-nBkProOsImg.c: "this is the hole package for Linux (Psion LX! not GPE!)"[5]
31 March 2015 RapidShare shuts down[39]
June 2017 psifi reports running LX from a CF card on his netBook Pro[40]
February 2019 Acid Snoop still has "the binary of the working boost Image and a userspace archive of the last available build" and offers to upload them. HPC:Factor offers hosting[33]
July-August 2026 fss-hacks asks on three HPC:Factor threads for anyone with PsionLX files, and photographs of a running PsionLX beta are published by fss_88[40][41][42]
September 2026 RetroTechCollection recovers Psion's build tree from the Internet Archive and builds the reconstruction described below[6]

What users reported

The forum record is the only account of how PsionLX behaved in use.

  • Booting from CF took a minute or more. Acid Snoop's account: a black screen, a red cursor, the PsionLX logo, then "a minute or something" before the pointer and the interface appeared.[11]
  • Firefox was slow to start: "much more than 30 seconds" in 2007, and "a minute or so" in 2009, though once open it "loads pages way faster and better than ie in wince".[35][43]
  • The touchscreen came pre-calibrated, and the battery monitor sat on the taskbar.[43]
  • Wi-Fi worked on PsionLX in 2009 where the community GPE image of the time would not load pages.[44]
  • Suspend worked the same way as under Windows CE, by closing the lid or pressing Fn+Off.[25]
  • The e-mail application could corrupt the system: "On both version the email app will corrupt the O/S and make it unuseable."[23]
  • The community GPE image was described as faster: "even better (faster) than Psion LX. Psion LX has more apps", and "less of a load than the lx stuff that psion produced".[45][46]
  • "psion-lx one is a customised GPE as well."[47]

What PsionLX contained

Everything in this section is taken from Psion's own build tree and kernel image, except where another source is cited. It describes Psion's system, not the reconstruction.

Boot sequence

Psion's 800 ร— 600 PsionLX boot splash, from the gpe-bootsplash recipe in Psion's tree

The netBook Pro's firmware bootloader, BooSt, loads an operating system image named nBkProOs.img from internal NAND or from a CompactFlash card. BooSt reports itself as "Psion Teklogix netBook2 BooSt".[27] For Linux the image is a kernel and initial ramdisk wrapped in a 256-byte BooSt header. netbook-booting.txt documents the header: platform ID 0x326B426E, load offset 0x408000, and image flags 0x10003 for a CF image (maximum 8,388,608 bytes) or 0x10013 for a NAND image (maximum 3,702,784 bytes). Bit 16 marks the payload as zlib-compressed and bit 4 copies it to the OS partition.[9] A 2007 analysis found extra start-up code in Psion's boot images, which sets up the hardware and moves the kernel and ramdisk into place, and for which no source has been found.[48]

The kernel is 2.6.9-rc1-bk18-nb1. The same forum analysis found the kernel source in Psion's archive identical to 2.6.9-rc1-bk18 with linux-2.6.9-pre1-bk18-nbp1.patch, published in Koen Kooi's directory at linuxtogo.org, applied.[48] Psion's image also carries module paths for 2.4.26-vrs1-pxa1-nb1, and the tree has a 2.4.26 kernel recipe, so a 2.4 kernel was built for the machine as well.[18][7]

The initial ramdisk script, "Netbook LX initial ramdisk boot script", handles both kernel series. Under 2.4 it loads the i2c and i2ckbd keyboard modules; under 2.6 it prints "Running Linux 2.6 System". It then:[8]

  1. mounts the first CF partition read-only and, if it holds an executable NBLXLoad.sh, runs it (this is how a new system was written to the internal flash);
  2. tries to mount the internal NAND as JFFS2 (/dev/mtdblock/0) as the root filesystem;
  3. if that fails, tries the second CF partition (/dev/hda2);
  4. pivots into the root filesystem, leaving the ramdisk at /initrd, and starts /sbin/init.

The ramdisk stays mounted at /initrd because it holds the kernel modules. The image recipe points /lib/modules at ../initrd/lib/modules for that reason.[1]

On the root filesystem, gpe-bootsplash draws Psion's splash, and gpe-dm starts the kdrive X server on the framebuffer and runs the scripts in /etc/X11/Xinit.d. The last of them, Psion's 99psion-session, hands the display to user lx:[7][49]

chown lx /dev/dsp /dev/mixer
if ! grep -q '^lx::' /etc/passwd; then
  exec gpe-login
else
  ln -s /var/tmp/xsession-errors.lx /home/lx/.xsession-errors
  exec su lx -c /etc/X11/Xsession >> /home/lx/.xsession-errors 2>&1
fi

The session then runs Psion's 95psion-apps, which copies Psion's button bar layout into the user's home directory ("this also neatly avoids the annoying welcome screen and timezone setter", in the script's own comment), and starts Matchbox with Psion's session file:[7]

gpe-soundserver &
gpe-appmgr -d -r &
matchbox-panel --orientation south --size 48 --no-menu &
exec matchbox-window-manager $@

The desktop

The TODAY screen of PsionLX on a netBook Pro (photograph: fss_88). The date is the machine's clock.

The desktop is gpe-appmgr in desktop mode (-d) and row view (-r), built from Psion's own branch of the program (CVS tag GPE_APPMGR_56).[7] The photographs of running machines show its layout:[26][42]

  • A strip of three amber tabs down the right-hand edge: TODAY, PROGRAMS and TASKS.
  • TODAY shows the date and a summary: Wi-Fi card present or not, internet connection, e-mail inbox and outbox, appointments and the to-do list, with a "Show this screen at startup" checkbox.
  • PROGRAMS shows the applications in four boxed groups, OFFICE, INTERNET, PIM and OTHER, each with its name written vertically down its left side.
  • A large pale Psion blockletter watermark runs down the left of the screen.
  • A 48-pixel bar along the bottom holds Psion's button bar (gpe-buttonbox, Psion's CVS tag 50) on the left, with Desk, Docs, Email, Web, Word, Sheet, Calendar, Contacts and Other, and the clock, volume, battery and card-ejector applets on the right.

Psion's panel layout file lists exactly that, with a tab character separating the left group from the right:[7]

gpe-buttonbox -p
	
gpe-clock
mb-applet-battery
minimix
psion-card-ejector

The TASKS screen offered Psion's task scripts. Three recipes describe themselves that way: iconnect ("Internet connection script for tasks screen"), backup ("Backup script for tasks screen") and mydocs ("Task to specify location of My Documents"). The TASKS page itself was an HTML file, gpe-appmgr/tasks.html. It is lost, but Psion's add-backup.patch of 26 August 2004 edits it, and shows a table of tasks with icons in which "Back up your information" becomes a link to launch:backup.sh, beside an entry reading "Get help". The launcher recipe depends on Psion's HTML viewer, gpe-helpviewer.[7]

Theme, settings and keyboard

The psion-theme package has two halves. The GTK half is a gtkrc using the "mist" engine, with a #E2E2E2 base and #a1b6d7 for the clock and button bar. The window manager half is 20 PNG images plus theme.xml and theme.desktop. Psion derived it from the Blondie Matchbox theme and never renamed it: theme.xml still opens <theme name="blondie" author="Matthew Allum - [email protected]", with bgcol and dockcol set to #a1b6d7.[7]

Psion's XSettings override is four lines. It sets the double-click timing, turns Matchbox compositing off and selects the theme:[7]

Net/DoubleClickTime:I:600
Net/DoubleClickDistance:I:7
MATCHBOX/COMPOSITE:S:off
Net/ThemeName:S:psion

The session also sets LANG=en_GB, sets GPE_PRETEND_STYLUS=1, and loads Psion's keyboard map for the machine, xmodmap-netbookpro. Psion's Matchbox keyboard bindings are:[7]

Psion's window manager key bindings (kbdconfig)
Keys Action
Mod3 + D Show the desktop
Mod3 + C Touchscreen calibration (xtscal)
Mod3 + Left Alt Internet dialler (gkdial)
Ctrl + Alt + Backspace reset.sh, which asks "Are you sure you wish to restart the session?"
Alt + Tab, Alt + Shift + Tab Next and previous window
Alt + Escape Show the desktop
Alt + 4 Close the window

Help is a set of about a hundred HTML pages and images titled "Using your Netbook LX", with sections for the main applications, and there is a sixteen-page tutorial.[7]

Applications

meta-psion.oe ("Meta-packages for Psion Netbook LX", revision r23) groups the applications into psion-apps, psion-net, psion-media, psion-games and psion-debug. Every icon in the photograph of the PROGRAMS screen maps to a package in it or in the GPE manifest, meta-gpe.oe. The versions and patch counts below are from Psion's recipes; where more than one recipe exists, the newest is given.[1][26]

The 21 applications on the PsionLX PROGRAMS screen
Launcher name Group Package Version Psion pinned Psion's patches
Calculator OFFICE galculator 1.2.3 7
Sheet OFFICE Gnumeric 1.3.93 9 (psion.patch alone changes 24 files)
Sketch Pad OFFICE gpe-sketchbook 0.2.8 3
Word OFFICE AbiWord 2.0.12 4, including abiword-psion.patch, which sets Thorndale AMT as the default font
Email INTERNET Balsa 2.2.2 2 (netbook-20041110.patch changes 86 files)
Instant Messenger INTERNET Gaim 1.0.0 1
Internet Dialler INTERNET gkdial 1.8.1 3
Remote Desktop INTERNET grdesktop with rdesktop 0.23 and 1.3.1 desktop-name.patch on grdesktop; 4 on rdesktop
Web INTERNET Firefox 1.0 8, including startup-page.patch, which opens Psion's branded start page
Calendar PIM gpe-calendar 0.58 5
Contacts PIM gpe-contacts 0.32 7
Files PIM gpe-filemanager 0.21 6
Image Viewer PIM gpe-gallery 0.95 5
To-do list PIM gpe-todo 0.49 4
Control Panel OTHER gpe-conf 0.1.21 8
Media Player OTHER Totem 0.99.15.1 4
My Network OTHER LinNeighborhood 0.6.5 4
PDF Viewer OTHER gpdf 2.7.90 2
Solitaire OTHER AisleRiot, from gnome-games 2.6.2 short-name.patch
Terminal OTHER gpe-terminal 1.1 none
Text Editor OTHER gpe-edit 0.28 3

The same manifest adds the Agfa fonts, the aspell English dictionary, the Gaby database, the GNOME CUPS print manager and ESP Ghostscript, Zenity, infoprint, Bluetooth and IrDA beaming, the aumix and minimix volume controls, and the debugging tools strace, mtd, xprop, xhost, scap, ldd, gdbserver and catchsegv. A comment beside the games group reads "want minesweeper :P".[1]

Underneath, Psion built its own copies of the base libraries: GTK+ 2.4.13 with 18 patches, GLib 2.4.7, and a kdrive X server from CVS with 5 patches.[7]

Other Psion components

Psion-specific packages in the build tree
Package What it does
psion-session Session start-up scripts, button bar layout, XSettings override, keyboard map, locale, stylus setting and the session-reset script
psion-theme The GTK and Matchbox theme described above
psion-help, psion-tutorial The help pages and the sixteen-page tutorial
psion-card-ejector A panel applet that runs eject.sh as root. The script unmounts any CF and MMC cards, stops the IDE card service on hda and hdc, and then shows "You can now remove your CF or MMC cards safely"
psion-sierra PCMCIA card definitions for the "Sierra Wireless AC710/AC750 GPRS Network Adapter" and the "Pretec CompactModem or Globetrotter GPRS", both bound to the serial driver
ppp GPRS peer files for Orange, Vodafone, O2 and T-Mobile with their chat scripts
wpan-tools bt_connect.sh and ir_connect.sh, dial-up helpers for Bluetooth and IrDA phones
plptools Psion's build of the PLP tools with a plp_upgrade script which "Extracts and moves files from previous versions of Psion Product over to the LX": it starts ncpd on the serial port and runs plpbackup against an EPOC Psion
sync-serv "LX Sync Server", a small C program that answers file, SQL, directory-listing and command requests from a Windows PC over a pipe
iconnect, backup, mydocs The TASKS screen scripts
agfa-fonts Albany AMT, Thorndale AMT, Cumberland AMT and Arial Narrow, sixteen faces in all
gpe-appmgr-psion, gpe-buttonbox-psion The launcher (tag 56) and button bar (tag 50), fetched from Psion's CVS
psion-kernel Headers-only recipe for the 2.4.26 kernel, fetched from Psion's CVS

Surviving material

Recovered files

These are every file relating to PsionLX that has been found, with where each came from. Sizes are in bytes. Several were recovered from the Internet Archive after the sites that hosted them closed.[6]

Files recovered for PsionLX
File Size What it is Where it came from
netbook-linux-sources.tgz 106,074,940 Psion's developer archive, packed on 26 April 2006, 347,985,920 bytes and 31,531 entries unpacked. See the table below for its contents. It is the same file name that Acid Snoop uploaded in November 2007 and scops in January 2010 www.auditeon.com/xyz/psion/, via the Internet Archive. Nothing indexes it. It was found by following every URL posted in five HPC:Factor threads, which led to the linuxtogo wiki page NetbookPro/Installing2Nand, which cites auditeon.com in passing[7][6]
nBkProOs.img (inside the archive) 3,613,045 Psion's own CF boot image, kernel built by autobuild@nexus on 4 January 2005, the same day as the lost root filesystem. BooSt flags 0x10003 (CF) netbook-linux-sources.tgz[18]
nBkProOs.img_cf 3,659,808 A CF boot image built outside Psion from the same kernel version: Linux version 2.6.9-rc1-bk18-nb1 (fuchs@gibson) (gcc-Version 3.3.4) #1 Fri Mar 25 18:13:14 CET 2005. BooSt lists it as "NETBOOKPRO Linux26". Forum members used it to boot the PsionLX root filesystem from CF linuxtogo.org/~florian/ (offline), via the Internet Archive[18][23][50]
gpe-fs-cf.tar.bz2 14,227,676 A community GPE root filesystem for CF, 2,383 entries. /etc/version reads 200503081928 and /etc/issue "Familiar Linux Unofficial Snapshot". Not PsionLX linuxtogo.org/~florian/. The archive holds it only under its index.php?download= address, not its direct path[6]
gpe-image-3.5.4.1-netbook-pro.rootfs.jffs2 15,450,112 The same GPE system as a JFFS2 image for the internal flash linuxtogo.org/~florian/, via the Internet Archive[6]
nBkPro.img 300 A BooSt script named "netBook LX BooSt script" holding the LX prototype NAND commands linuxtogo.org/~anonymous/ (offline), via the Internet Archive[9]
netbook-booting.txt 3,958 A description of the LX boot and install process and the BooSt header format linuxtogo.org/~anonymous/[9]
mk-nBkProOsImg.c 5,496 Source of the tool that wraps a kernel and ramdisk into a BooSt image linuxtogo.org/~anonymous/[9]
nBkProOs.img 3,403,850 A NAND boot image of the same kernel version, built by fuchs@gibson on 8 March 2005. BooSt flags 0x10013 (NAND) linuxtogo.org/~anonymous/[18]
gpe-image.jffs2 22,822,912 A larger GPE JFFS2 image for the internal flash. It includes AbiWord linuxtogo.org/~anonymous/[6]
NBLXLoad.sh none The script the initial ramdisk runs to write a root filesystem to the internal flash. The file itself was not recovered: all nine archived copies are an HTTP 403 page, because the server refused to serve .sh files. Its full text survives in a forum post of 30 October 2007 linuxtogo.org/~anonymous/; text on HPC:Factor[17][6]
BooStDongle.pdf 217,046 "How to enter the BooSt superuser mode in the Netbook Pro", a one-page guide dated 12 July 2007 by w_m0zart Kept with the auditeon.com files; its download location was not recorded[27]
OpenEmbedded netbook-pro machine files small The later community machine configuration, a 2.6.17 kernel recipe, fstab and touchscreen settings The OpenEmbedded classic repository, still online[19]
2.6.17 kernel patches small netbook-base-r0 to r3, netbook-pcon-r0, netbook-pcon-i2c-r0 and r1, netbook-pm-r0, a defconfig and the machine file netbookpro.c. The patches and defconfig the recipe uses match its MD5 checksums linuxtogo.org/~koen/ (offline), via the Internet Archive[19]
GPE release tarballs various Every GPE application release that Psion's recipes pin, plus gpe-appmgr 2.8, gpe-buttonbox 0.5 and minimix 0.6 The gpe.linuxtogo.org mirror of the GPE download tree, via the Internet Archive. The original gpe.handhelds.org was never archived[6]
jlime-xfce-image-2012.3-netbookpro-20120311.rootfs.tar.bz2 88,409,659 jLime 2012.3 with the XFCE desktop, 28,423 files. The newest Linux release found for the machine. Not PsionLX HPC:Factor's public repository, which mirrored jLime after jlime.com closed[6]
nbpswfeb18english04218.zip 19,505,892 The Windows CE 4.2 restore image, for returning a machine to its shipped state vigay.com[6]

The developer archive contains:[7]

Contents of netbook-linux-sources.tgz
Top-level entry Entries What it is
oe-netbook/ 2,807 Psion's OpenEmbedded tree, with its CVS metadata
linux-2.6.9/ 21,464 The kernel source used on the device, checked out on 30 December 2004
kdegames-3.3.1/ 5,165 KDE games source
gnome-games-2.6.2/ 1,639 GNOME games source with ARM objects compiled in November 2004. Solitaire (AisleRiot) comes from here
linneighborhood-0.6.5/ 300 LinNeighborhood source ("My Network")
rdesktop-cvs/ 152 rdesktop source
Three .ipk files 3 Psion's LinNeighborhood 0.6.5 packages, releases r7 and r8 and a German locale, built 23 November 2004
nBkProOs.img 1 Psion's CF boot image of 4 January 2005

SHA-256 checksums of the recovered binaries:[6]

File SHA-256
netbook-linux-sources.tgz a14b7d2e87217fdc2f5d32752a00ca0959ae5b1f312a6116d1a895d248edf08f
nBkProOs.img (Psion, from the archive) 88dcfa0ab10750b76ed251b919ee66db5395ac2be379ae81abd6ede7b4e4b890
nBkProOs.img_cf bc640360e58d858b2d260450e20621adc93cb51e0fcccadaf2a97f415099bd1b
gpe-fs-cf.tar.bz2 532e322fdd9a1275e953818ff575a36a1c0249fea526d9c53315f07b390f1866
gpe-image-3.5.4.1-netbook-pro.rootfs.jffs2 8094d741422036c13801579aa69e477ed8bca61827e8edcc0a770dda29254738
nBkPro.img 0f56875793d46c36ce725157e99b82ef4f1a64f2c60b99cc16912d3a3b775476
nBkProOs.img (linuxtogo, NAND) 003ef6d5455e4397aaee80e8942bc11d1ab1178220515e1d6aa2f4cf8b15ff7d
gpe-image.jffs2 1db13b43cfe8055c5b8fea27bdb0a2c510e448f574dbcbad53dddfbd85881e35
jlime-xfce-image-2012.3-netbookpro-20120311.rootfs.tar.bz2 ce14633797a2d4562ecdfb07db19974b8417df43bc96bed9595e43ac3f9060fc

What has not been found

Missing PsionLX material
Item What it was Status
soho-image-netbook-pro-20050104074212.rootfs.tar.bz2 The built PsionLX root filesystem of 4 January 2005 Posted on RapidShare in November 2007 and in a package on ul.to in January 2010. Neither link works and no public copy has been found. Acid Snoop reported still holding a copy in February 2019[4][5][33][6]
Psion's CVS server, cvs.psiondev.com The source of the launcher (tag GPE_APPMGR_56), the button bar (tag GPE_BUTTONBOX_50), gpe-helpviewer, infoprint and the 2.4.26 kernel Offline. The Internet Archive holds one URL from psiondev.com[6]
The TODAY and TASKS pages The launcher's own pages, including the HTML file tasks.html Lived in the launcher's CVS module and were lost with it. One patch to tasks.html survives[7][49]
desktop-background.png The blockletter watermark behind the desktop Shipped inside the launcher's CVS module. Not in the build tree or any upstream release[49]
Psion's override icons A set of icons in /usr/share/gpe/overrides that replaced the stock ones, including the blue Calculator and Sketch Pad icons in the Pulster photograph. Three of Psion's patches (galculator, gpe-contacts, gpe-todo) load their window icon from there No recipe installs the directory and no copy survives[6]
gkdial-1.8.1.tar.gz The upstream release Psion's dialler recipe pins Not in the Internet Archive, SourceForge or the Debian archives. 1.8.0 survives[6]
xtscal-0.6.2.tar.bz2 The touchscreen calibrator Psion patched (xtscal-nbp.patch) to keep calibration in the netBook Pro's NVRAM Not archived under any mirror path used by the recipe or the GPE tree. The patch survives[49]
The password-protected source folder "the original PsionLX sources the Teklogix developer used", uploaded by Acid Snoop in November 2007, which he later said contained "Developer names, comments, Roadmaps" Never published[36][33]
The developers' wiki Beta release notes, changelog, daily build status, SDK instructions Only the auditeon.com index page has been read[10]
The PsionLX SDK The built toolchain from meta-sdk.oe Not found. The auditeon index asks "if someone got it, let me know"[10]
Psion's binary packages The .ipk feed the image was assembled from Only the three LinNeighborhood packages in the developer archive survive[7]

The searches that failed covered the Internet Archive (exact URLs, URL prefixes and domain sweeps of jlime.com, hpcfactor.com, repository.hpcfactor.com, linuxtogo.org, psiondev.com, handhelds.org, familiar.handhelds.org, openembedded.org and psionlinux.blogspot.com), a full enumeration of HPC:Factor's public repository, GitHub code and repository search including the tworaz netBook Pro repositories, archive.org item and full-text search, Software Heritage, the OpenPsion mailing list and the archived blog comment feeds.[6] One trap is worth recording for anyone repeating the work: a Wayback Machine CDX query of the form url=*/filename* returns nothing for files that are archived, because a leading wildcard is not a supported match type. An empty result from that query form proves nothing.[6]

The RetroTechCollection reconstruction

This section documents RetroTechCollection's own work. Its figures come from the project's build files, the running image and measurements made for it, not from published sources, and are cited to the project's records.

In September 2026 RetroTechCollection rebuilt PsionLX as a bootable CompactFlash image for a standard 128 MB netBook Pro, starting from Psion's build tree. The rule throughout was that Psion's tree is the authority: where Psion's file survives it is installed unchanged, where only Psion's recipe and patches survive the program is rebuilt from the exact upstream release Psion pinned with Psion's patches applied, and where nothing of Psion's survives the part is reconstructed and labelled as such inside the file itself.[49]

What is in the image

Where each part of the reconstruction comes from
Part Source Psion's own?
Kernel and initial ramdisk nBkProOs.img_cf, the March 2005 community build of kernel 2.6.9-rc1-bk18-nb1 No. Same kernel version, but not Psion's 4 January 2005 image, which survives and is not used
Base system and libraries gpe-fs-cf.tar.bz2, a Familiar/GPE snapshot of 8 March 2005 with GTK+ 2.6.3 and GLib 2.6.3 No. Psion built GTK+ 2.4.13 with 18 patches and GLib 2.4.7
Theme, session scripts, splash, help, tutorial, keyboard map and key bindings, Agfa fonts, PPP and GPRS configuration, PLP tools, PC Card and sleep configuration Psion's build tree Yes, installed unchanged, with two exceptions. The theme is selected by an added /etc/gtk-2.0/gtkrc and an added -theme psion argument in the Matchbox session file, and the panel layout starts the card-ejector applet directly. Psion's originals of the changed files are kept beside them as .psion-orig
gpe-conf, gpe-calendar, gpe-contacts, gpe-filemanager, gpe-gallery, gpe-login, gpe-shield, gpe-wlancfg, gpe-todo, gpe-edit, gpe-sketchbook, gpe-beam, gpe-bluetooth, gpe-dm, gpe-soundserver, galculator, detect-stylus, ipaq-sleep, libeventdb, libgtkstylus, the six Matchbox panel applets, mb-applet-volume, Balsa 2.2.2, Firefox 1.0, Totem, rdesktop 1.3.1, grdesktop 0.23 Upstream release at the version Psion pinned, with Psion's patches, compiled for the device Rebuilt from Psion's recipes
Solitaire (AisleRiot) Linked from the ARM objects Psion compiled in November 2004, with Psion's patches already applied Psion's objects
sync_serv Built from Psion's C source Rebuilt from Psion's source
Launcher (gpe-appmgr) Upstream GPE source with new code for the TODAY / PROGRAMS / TASKS strip, the Today view and the rotated group labels, measured against the photographs Reconstructed. Psion's tag 56 is lost
Button bar (gpe-buttonbox) Upstream GPE source Reconstructed. Psion's tag 50 is lost
Desktop watermark Generated from the five blockletter glyphs in Psion's splash, rotated, outlined and tinted Reconstructed from Psion's artwork
Menu names and icons in /usr/share/gpe/overrides New override files giving "Calculator", "Web" and similar names, with stand-in icons copied from upstream Reconstructed. Psion's set is lost
Internet Dialler gkdial 1.8.0 with Psion's three patches Substitute. Psion pinned 1.8.1, which is lost
Sheet Gnumeric 1.4.3 from Debian sarge Substitute. Psion built 1.3.93 with nine patches
Word and Instant Messenger AbiWord and Gaim as shipped in the community GPE image Substitute builds
Panel A patched matchbox-panel 0.9.x. Psion's own 0.8.1 build, compiled with all nine of Psion's patches, is on the card as matchbox-panel.psion-0.8.1 Substitute, by choice (see below)
Media plugins GStreamer plugins 0.8.12 from Debian Substitute. Psion's 0.8.3 plugin binaries are lost
Balsa's HTML component GtkHTML 3.2.5 with gnome-print 2.8.2 and GAIL 1.8.2 Substitute. Psion used gtkhtml-3.0, whose Debian ARM builds all need a later GTK than the device has
pppd and chat Debian sarge ppp 2.4.3, with libpam and libpcap Substitute. The base image had no PPP at all, though Psion's configuration expects it

Debian's arm architecture in the sarge and etch releases is the old ARM ABI, which is what the netBook Pro's userspace uses, so Debian packages from that period run on the device unchanged.[49]

Two things are left out on purpose. Psion's touchscreen calibration scripts run xtscal -e2cal, a mode that exists only in Psion's lost xtscal build; installing them over the stock xtscal would write an empty calibration file. And gpe-beam and gpe-bluetooth are installed but untested, because a standard netBook Pro has no Bluetooth hardware and IrDA beaming was not tested.[49]

The panel is the one place where Psion's own build is on the card but not in use. Psion's matchbox-panel 0.8.1 crashes when a docked applet fails to start, which takes the whole bar down with it. The 0.9.x panel logs the failure and carries on. The installed panel is 0.9.x with a patch that stops it forcing docked applets square, which is the same allowance Psion's max-size.patch made. Swapping the two files restores Psion's panel.[49]

What the reconstruction is and is not

The reconstruction is:

  • A bootable 1 GB CompactFlash image that runs PsionLX's desktop, theme, session and application set on a standard 128 MB netBook Pro, from the card.
  • Built on Psion's own configuration, artwork, help, fonts and scripts, installed unchanged.
  • Running Psion's patched versions of most of the applications, rebuilt from the exact releases Psion used.
  • Matched to the surviving photographs by measurement, where Psion's code for the launcher and button bar is lost.
  • Documented: every reconstructed or substituted file says so in a comment inside the file or in the project records.

It is not:

  • Psion's build. The lost soho-image root filesystem is not in it, and nothing in it came from that file.
  • Running Psion's kernel. It boots the March 2005 community build of the same kernel version, not Psion's 4 January 2005 image.
  • Running Psion's library stack. GTK+, GLib, the X server and the other base libraries are the March 2005 community GPE snapshot's, not Psion's patched builds.
  • Using Psion's launcher, button bar, desktop background, override icons, or TODAY and TASKS pages. Those are all lost, and the versions on the card are reconstructions.
  • Complete. Psion's gkdial 1.8.1, xtscal with NVRAM calibration, Gnumeric 1.3.93 and GStreamer 0.8.3 plugins are all replaced by the nearest available substitute or left out.
  • A copy of the photographed menu. The main image keeps seventeen menu entries that are not in Psion's photograph (Figment, Summary, Time Tracker, Audio mixer, Go, Lights Out, Othello, Play Memo, Plucker, Program manager, Record Memo, Root shell, Sokoban, Telnet, Tetris, Watch and xdemineur). An archival variant, psionlx-cf-1gb-asphotographed.img, removes those seventeen menu entries and moves PDF Viewer into OTHER, so that its PROGRAMS screen shows exactly the 21 applications in the Pulster photograph. The programs themselves remain on the card.
  • An installer. Nothing on the root filesystem writes to the internal flash, but see the warning about nBkPro.img below.

Card image layout

psionlx-cf-1gb.img, 1,024,966,656 bytes
Part Type Start sector Sectors Size Contents
MBR - 0 1 512 bytes Partition table, signature 0xAA55. CHS fields use 16 heads and 32 sectors per track, the geometry BooSt expects
Partition 1 0x06 FAT16, bootable 2,048 143,360 70 MB Label PSIONBOOT. nBkProOs.img, the file name BooSt looks for; nBkPro.img; README.TXT
Partition 2 0x83 ext2 145,408 1,856,480 906.5 MB Label PSIONLX. The root filesystem

The ext2 filesystem is made with a 1 KB block size and with the resize_inode and dir_index features turned off, because the 2.6.9 kernel predates both and refuses the filesystem otherwise. /home/lx must belong to uid and gid 1000, and must be empty when the image ships: the desktop runs as lx, and any settings left in that directory override everything in /etc from then on.[49]

Check the boot partition before writing a card. The image built on 28 September 2026 carries nBkPro.img on partition 1. That file is the LX BooSt script, and it holds the commands nand -ignore erase 18 ee8 and nand partition e8, which erase the internal NAND and repartition it with the LX prototype layout. When a card holding nBkPro.img is booted, BooSt loads and runs the script, as a 2010 boot log shows ("Loading "/cf0-0/nBkPro.img"... Load BooSt script ... Load completed successfully"). A standard netBook Pro partitioned that way can no longer reinstall Windows CE until the NAND is repartitioned with 7e8. The community's CF installs of PsionLX put nBkProOs.img alone on the FAT partition. Remove nBkPro.img from partition 1 unless you intend to repartition the internal flash.[9][51][28][11][37][6]

Writing and booting the card

Use a CF card of 1 GB or larger. On a Mac, find the card with diskutil list external physical, unmount it without ejecting, and write the raw device:

diskutil list external physical          # check the size matches the card
diskutil unmountDisk /dev/diskN
sudo dd if=psionlx-cf-1gb.img of=/dev/rdiskN bs=4m status=progress
diskutil eject /dev/diskN

On Linux:

sudo dd if=psionlx-cf-1gb.img of=/dev/sdX bs=4M status=progress conv=fsync

The image is written raw and overwrites whatever device it is pointed at, so confirm the device name immediately before running dd. On a card larger than 1 GB the extra space is unused until partition 2 is grown and resize2fs is run on it.[49]

To boot from the card, the netBook Pro has to be told to load its operating system from CF rather than from the internal flash. Forum members describe doing this by resetting the machine and holding Ctrl+D+Esc, or Ctrl+D with the On key, while it starts; one notes that "pressing the reset button and the ctrl-D-ESC keys in the right timing can be tricky, so don't give up".[52][37][53] With the card removed, a standard machine starts Windows CE as normal. BooSt's own supervisor mode, which uses a different key combination and a resistor across two dock connector pins, is described in the Psion netBook Pro Documentation and the 2007 guide cited below.[27]

The first boot is slow. GStreamer 0.8 has to catalogue its plugins before the Media Player will work, and the reconstruction does that in the background after the desktop appears; on this hardware the scan takes more than a minute.[49]

Do not tap the card-ejector applet. Psion's eject.sh, installed unchanged, stops the IDE card service on hda. On Psion's machines, which booted from internal flash, hda was the CF slot. On a card-booted system hda is the disk the system is running from.[49][7]

Building it

The netBook Pro's userspace uses the old ARM ABI (OABI, ELF flags 0x00000002), which no current cross-compiler produces. The reconstruction therefore compiles natively inside an emulated ARM machine: a Debian etch arm root filesystem, assembled from 66 packages from archive.debian.org (GCC 4.1, binutils 2.17, glibc 2.3.6), booted under qemu-system-arm -M versatilepb, whose ARM926EJ-S core is close enough to the PXA255's ARMv5TE for the output to run on the device.[49]

  • C++ programs are built with GCC 3.4. The device carries libstdc++.so.6.0.3, which is GCC 3.4's runtime; GCC 4 output compiles and links but needs a newer library than the device has.
  • Headers are taken, library by library, from the exact versions on the device (libgpewidget 0.97, libeventdb 0.15, libschedule 0.14 and others), because the build environment's newer GPE headers declared functions with different arguments.
  • Before any program is installed it must pass three checks against the image itself: OABI ELF flags, every needed library present, and every undefined dynamic symbol defined somewhere in that set. Weak symbols that every GCC binary leaves unresolved, such as __gmon_start__, are ignored.

Psion's recipes are read by a script that takes the newest recipe for a package, collects every SRC_URI form including SRC_URI += and included files, fetches the pinned release and applies Psion's patches in order at the level each declares. With the exact release tarballs, all of Psion's GPE patches applied except one hunk of gpe-bluetooth's change-sdp-to-bluetooth.patch, which swaps -lsdp for -lbluetooth in a link line that differs in the released tarball. That change was made by hand.[49]

Matching the photographs

With Psion's launcher and button bar lost, their layout and shading were measured from the photographs. The only images of PsionLX running are hand-held photographs of a glossy panel, so raw pixel values are unusable. Two methods made them measurable:[49]

  • Each row of a photograph is divided by the page white at the same height, which removes the lamp's top-to-bottom gradient.
  • The display is rectified onto an 800 ร— 600 grid, then checked against two sizes known from the code: the button bar's buttons are 64 pixels wide and the bar is 48 pixels tall. They came back at 63-64 and 46 pixels. A caption known to be black text came back as #101115, which served as a colour check.

The measurements that went into the rebuilt launcher: group labels in Sans Bold 7 on a #c2def1 band; a tab strip 26 pixels wide (a 23-pixel gold face and three border columns); tabs 101 pixels tall. The selected tab is marked by the direction of its shading rather than its colour: a raised tab is lit from the page side and a selected one from the outer side, while their average colours differ by about 1.5 per cent. The button bar has room for nine 64-pixel buttons, Desk and Docs, six presets and Other, taken from a true 800 ร— 600 screenshot of GPE running on a netBook Pro with the same bar.[49]

Faults found during the rebuild

Several faults took more than one attempt to find, and some would catch anyone building a system for this machine.[49]

Faults found and fixed
Symptom Cause Fix
No button bar, default theme and a plain blue desktop, all at once /home/lx owned by root, so user lx could not create its settings. The ownership script walked the macOS host tree, which carries no target uids Set /home/lx to uid and gid 1000 and verify it in the built image
Plain blue desktop The blue is Matchbox's root window colour #1f00a2, visible only when the launcher has died Treat it as a sign the launcher crashed
Button bar exits at start-up The button bar calls exit(1) if any of its own icons is missing, and looks for them in /usr/share/gpe/pixmaps/default, not where they had been installed Install icons where the code looks, checked against the source
No button bar or launcher; "Fatal: no entropy gathering module detected" No /dev/random or /dev/urandom device nodes, so libgcrypt aborted Create the nodes
Changes in /etc have no effect A leftover settings database in the home directory. gpe-confd reads the /etc defaults only when the user's database is empty Ship an empty home directory
A PCMCIA network card is detected but no driver binds /lib/modules, a link into /initrd, had been replaced with a real directory. /initrd is empty in the image but filled at boot, and holds every module the kernel shipped Restore Psion's link
Solitaire draws blank cards; the Media Player exits No GConf defaults were installed, so programs read empty settings Generate the defaults from Psion's schema files
Media Player: "No default scheduler name - do you have a registry ?" The GStreamer plugin scan crashed on the LADSPA plugin and never finished Remove the LADSPA plugin, which Psion's recipe would not have built
Media Player crashes as its window opens A null pointer in Totem's CD drive selector on a machine with no optical drive Guard the pointer
Machine appears not to boot A script rebuilding the GStreamer registry ran in the session start-up and took over a minute Run it in the background
Last row of the PROGRAMS screen hidden under the panel, intermittently Every row laid out 8 pixels taller than normal. Cause not proven The launcher checks for the overflow and lays out once more

Downloads

The reconstruction's card images, its build tree and the recovered files listed above are being prepared for hosting by RetroTechCollection. Links and checksums for the images will be added here when they are available. The card image is not bit-for-bit reproducible, because mke2fs writes timestamps into the filesystem, so a rebuilt image should be checked by content rather than by comparing its checksum with the published one.[49]

Other Linux systems for the netBook Pro

PsionLX was not the only Linux for the machine, and the others are better documented.

The Familiar and GPE images of 2005 were built outside Psion and hosted at linuxtogo.org, using a rebuild of the same 2.6.9 kernel. They are the images the 2007 forum thread began with.[6][34]

OpenEmbedded later gained a netbook-pro machine configuration and a 2.6.17 kernel recipe built from patches published in Koen Kooi's directory at linuxtogo.org. The configuration assumes 32 MB of flash and creates the /initrd directory the boot image needs for its pivot. ร…ngstrรถm test images were built for the machine by 2007, among them Angstrom-x11-image-glibc-test-20070710-netbook-pro.rootfs.jffs2.[19][54]

jLime 2012.3 included an XFCE root filesystem for the netBook Pro, dated 11 March 2012, and a port of the Linux 3.x kernel to the machine by tworaz appeared on GitHub the same year.[6][55] In July 2026 fss-hacks reported building Tworek's 3.2.9 kernel with period toolchains, and found the boot-code part of that work incomplete.[41]

See also

References

  1. โ†‘ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 The same tree: README, setup.sh, meta/soho-image.oe, meta/meta-psion.oe (revision r23), meta/meta-gpe.oe and meta/meta-sdk.oe. Source for the build procedure, the image name, the lx user, the /lib/modules link, the package manifest, the SDK and the "Netbook LX" name.
  2. โ†‘ 2.0 2.1 Psion Teklogix, splash_screen.png, in oe-netbook/gpe-bootsplash/files/, installed by gpe-bootsplash_1.11.oe as /usr/share/gpe/splash.png. Reproduced at File:PsionLX beta splash screen.png.
  3. โ†‘ 3.0 3.1 3.2 Tony Smith, "Psion revives Netbook but drops EPOC for WinCE", The Register, 2 October 2003. Source for the announcement, the 400 MHz PXA255, 128 MB, the 800 ร— 600 TFT, Windows CE .NET 4.2, Psion considering Linux and the quotation from Harvey Roberts.
  4. โ†‘ 4.0 4.1 4.2 4.3 Acid Snoop, post of 7 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 14. The RapidShare links to nBkProOs.img and soho-image-netbook-pro-20050104074212.rootfs.tar.bz2.
  5. โ†‘ 5.0 5.1 5.2 5.3 scops, posts of 20 January 2010, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 23. The ul.to package and its file list.
  6. โ†‘ 6.00 6.01 6.02 6.03 6.04 6.05 6.06 6.07 6.08 6.09 6.10 6.11 6.12 6.13 6.14 6.15 6.16 6.17 6.18 6.19 6.20 RetroTechCollection, PsionLX reconstruction project records (PROVENANCE.txt, auditeon/FINDING.txt, recovered/FINDING-2.txt, anonymous-linuxtogo/NOTES.txt), 27-28 September 2026. Original research: the record of every file recovered, its origin, size and hash, and of the searches that found nothing.
  7. โ†‘ 7.00 7.01 7.02 7.03 7.04 7.05 7.06 7.07 7.08 7.09 7.10 7.11 7.12 7.13 7.14 7.15 7.16 7.17 7.18 7.19 7.20 7.21 7.22 7.23 7.24 7.25 Psion Teklogix, oe-netbook OpenEmbedded build tree, CVS checkout of 17 November 2004 (CVSROOT :ext:[email protected]:/var/lib/cvs), inside netbook-linux-sources.tgz (106,074,940 bytes, packed 26 April 2006), formerly at www.auditeon.com/xyz/psion/ and recovered from the Internet Archive on 27 September 2026. Source for the recipe count and CVS sources, the maintainer fields, the archive dates and file ownership, the session, theme, keyboard, help, tutorial, PPP, GPRS, PLP, sync server and card-ejector files, the application versions and patches, and the base library versions.
  8. โ†‘ 8.0 8.1 8.2 The initial ramdisk inside Psion's nBkProOs.img of 4 January 2005, whose start-up script is headed "Netbook LX initial ramdisk boot script". RetroTechCollection analysis, September 2026. A forum member described the equivalent script in the linuxtogo image on 20 October 2007 in HPC:Factor thread 10543, page 3.
  9. โ†‘ 9.0 9.1 9.2 9.3 9.4 9.5 9.6 netbook-booting.txt, nBkPro.img and mk-nBkProOsImg.c, from linuxtogo.org/~anonymous/ (offline), recovered from the Internet Archive on 27 September 2026. Source for the BooSt header layout and flags, the LX and standard NAND partition values and the "netBook LX BooSt script" name.
  10. โ†‘ 10.0 10.1 10.2 10.3 10.4 auditeon.com, "software:psion:index", section "PsionLX Project for the Netbook Pro", last modified 14 May 2008. Index page read on 28 September 2026; the site has since gone offline. Archived copy: Internet Archive, 4 November 2024.
  11. โ†‘ 11.0 11.1 11.2 11.3 Acid Snoop, post of 6 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 13.
  12. โ†‘ 12.0 12.1 Marc, post of 10 February 2010 ("Offering NBpro LX"), and scops, 19 September 2010, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 24.
  13. โ†‘ "Psion netBook", Wikipedia. NetBook Pro paragraph, citing Sandra Vogel, "Psion NetBook Pro: a first look", ZDNet UK, 3 October 2003.
  14. โ†‘ Guy Kewney, "Psion looks past Windows to Linux", The Register, 11 February 2004. Source for Psion's statement about the Linux viability study and David Potter's remarks.
  15. โ†‘ ARM Linux machine registry, machine type 503, "Psion Netbook Pro". Created 4 April 2004, contact Peter Naulls, not mainlined, "Psion Netbook Pro, PXA 255 based sub-notebook".
  16. โ†‘ 16.0 16.1 "Psion Teklogix", Wikipedia. Source for the statement about custom NetBook Pros for a hospital setting (which cites Tony Glover, "NHS deal with Psion heralds move away from Windows", The Business Online, 23 May 2004, not checked for this page), Motorola Solutions' purchase of Psion in 2012 and Zebra Technologies' purchase of Motorola's enterprise business in October 2014.
  17. โ†‘ 17.0 17.1 17.2 Intrepid-Eddie, post of 30 October 2007 giving the full text of NBLXLoad.sh, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 8.
  18. โ†‘ 18.0 18.1 18.2 18.3 18.4 18.5 18.6 Version and driver strings read from the decompressed kernel images: Psion's nBkProOs.img from netbook-linux-sources.tgz (3,613,045 bytes), nBkProOs.img_cf from linuxtogo.org/~florian (3,659,808 bytes) and nBkProOs.img from linuxtogo.org/~anonymous (3,403,850 bytes). RetroTechCollection analysis, September 2026. Source for the build dates, compilers and build hosts, the Simtec Electronics driver banners, the machine name "Psion Teklogix NetBookPro" and the 2.4.26 module paths.
  19. โ†‘ 19.0 19.1 19.2 19.3 OpenEmbedded classic, conf/machine/netbook-pro.conf and netbook-pro-kernel_2.6.17.bb, with the kernel patches from linuxtogo.org/~koen/ recovered from the Internet Archive and checked against the recipe's MD5 sums. The machine file netbookpro.c names "Ben Dooks, Copyright (c) 2004 Simtec Electronics", based on lubbock.c.
  20. โ†‘ 20.0 20.1 20.2 Rocketman, post of 7 July 2006, and cmonex's reply, "Linux for Netbook Pro", HPC:Factor.
  21. โ†‘ 21.0 21.1 Acid Snoop, post of 6 December 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 18.
  22. โ†‘ 22.0 22.1 w_m0zart, post of 15 April 2008, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 19.
  23. โ†‘ 23.0 23.1 23.2 23.3 23.4 psifi, post of 30 December 2011, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 25. The two LX builds' kernel and system dates, and the e-mail fault.
  24. โ†‘ psifi, post of 4 October 2010, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 24.
  25. โ†‘ 25.0 25.1 psifi, posts of 7 October 2010 in "Reflashing netBook Pro" and of 7 and 24 October 2010 in "new to netbook pro", HPC:Factor.
  26. โ†‘ 26.0 26.1 26.2 26.3 Pulster, "Psion Netbook PRO Linux - PsionLX", item number -psionlx-, โ‚ฌ1,900, read 28 September 2026. Source for the photograph of the PROGRAMS screen, its caption and the description "rare 256 MB RAM mainboard".
  27. โ†‘ 27.0 27.1 27.2 27.3 27.4 w_m0zart, "How to enter the BooSt superuser mode in the Netbook Pro", one-page PDF (BooStDongle.pdf), 12 July 2007, kept with the files recovered from auditeon.com (its download location was not recorded). w_m0zart referred to "the BoostDongle pdf file which I created earlier" on HPC:Factor on 30 October 2007. Source for the BooSt identification strings, the standard machine's 32 MB NAND, the 7e8 and fe8 erase commands and the warning about block 18.
  28. โ†‘ 28.0 28.1 dvr, post of 31 May 2009, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 21.
  29. โ†‘ mrkrupa, post of 3 July 2008, "Bulding new kernel and userland for Psion Netbook Pro using Open Embedded", HPC:Factor.
  30. โ†‘ chiark, post of 18 June 2008, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 20.
  31. โ†‘ Eddie, posts of 19 and 23 October 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 3 and page 4. Psion Teklogix support's replies.
  32. โ†‘ w_m0zart, post of 13 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 17.
  33. โ†‘ 33.0 33.1 33.2 33.3 AcidSnoop, posts of 12 and 14 February 2019, and C:Amie, 14 February 2019, "How to Install Linux on a 128MB CE.NET 4.2 Psion NetBook Pro", HPC:Factor, page 2.
  34. โ†‘ 34.0 34.1 Eddie and chiark, posts of 12 October 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 1.
  35. โ†‘ 35.0 35.1 w_m0zart, post of 30 October 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 7.
  36. โ†‘ 36.0 36.1 Acid Snoop, post of 10 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 15.
  37. โ†‘ 37.0 37.1 37.2 bobbyshane, install guide posted 25 May 2009, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 20: nBkProOs.img "and this file alone in the vfat partition", then "reset the machine with a paper clip and then hit Ctrl d and the on button".
  38. โ†‘ Gadgetmiser, "How to install Linux on the Psion Netbook Pro", Psion Linux blog, July 2009.
  39. โ†‘ "RapidShare", Wikipedia. The service closed on 31 March 2015.
  40. โ†‘ 40.0 40.1 psifi, post of 24 June 2017, and fss-hacks, 25 July 2026, "Psion Lx on Psion Netbook Pro", HPC:Factor.
  41. โ†‘ 41.0 41.1 fss-hacks, posts of 25 and 27 July 2026, "In Progress: 3.2.9 Kernel for Psion Netbook Pro", HPC:Factor.
  42. โ†‘ 42.0 42.1 Photographs by fss_88 (fss-hacks on HPC:Factor), imgur album 4wyt5y9, published around 1 August 2026 alongside a post to r/OldHandhelds, imgur media OCkX37Z (splash) and fjx6d84 (Today screen). Reproduced, cropped, at File:PsionLX beta splash screen on a netBook Pro.jpg and File:PsionLX Today screen on a netBook Pro.jpg.
  43. โ†‘ 43.0 43.1 bobbyshane, post of 11 June 2009, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 21.
  44. โ†‘ bobbyshane, post of 19 April 2009, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 20.
  45. โ†‘ scops, post of 5 March 2008, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 19.
  46. โ†‘ mrkrupa, post of 22 July 2008, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 20.
  47. โ†‘ Ea2, post of 18 August 2009, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 22.
  48. โ†‘ 48.0 48.1 oldman, post of 1 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 10. Source for the kernel source matching 2.6.9-rc1-bk18 with the linux-2.6.9-pre1-bk18-nbp1.patch from linuxtogo.org/~koen, and the unsourced start-up code in the boot images.
  49. โ†‘ 49.00 49.01 49.02 49.03 49.04 49.05 49.06 49.07 49.08 49.09 49.10 49.11 49.12 49.13 49.14 49.15 49.16 49.17 RetroTechCollection, PsionLX reconstruction documentation (docs/01 to docs/06, CLAUDE.md, PsionLX-CF-kit/INSTALL.txt, WRITE-TO-CARD.txt and AS-PHOTOGRAPHED.txt) and the built card image, September 2026. Original research.
  50. โ†‘ mrkrupa, post of 5 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 12: "I am running the LX version on my netbook pro!! I used the Florian image NetbookOS and untarred the LX stuff to a cf card."
  51. โ†‘ denisjc, post of 10 November 2010 quoting the BooSt boot log, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 25.
  52. โ†‘ oldman, post of 5 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 12: "Reset, press Ctrl+D+ESC, insert card."
  53. โ†‘ psinix, post of 7 January 2012, "How to Install Linux on a 128MB CE.NET 4.2 Psion NetBook Pro", HPC:Factor, page 1.
  54. โ†‘ oldman, 31 October 2007, and salmonito quoting Intrepid-Eddie, 1 November 2007, "Netbook Pro I've found a working linux distro!", HPC:Factor, page 9.
  55. โ†‘ entozoon, post of 18 July 2012, "How to Install Linux on a 128MB CE.NET 4.2 Psion NetBook Pro", HPC:Factor, page 2: "tworaz has recently uploaded a linux kernel for the NBP".