Even though the LIBRIe runs a modified version of Linux, Sony currently provide no software for Linux users to upload content. BookListGen.sh is a way of transferring ebooks onto your LIBRIe, via memory stick, without using Windows. BookListGen.sh is a Bash port of BookListGen: http://booklistgen.peterknowles.com It is compatible (and has been tested) with Linux and OS X*. * (To use on some OS X systems, it might be necessary to set USEHEXDUMP=1 at the top of the script. This is because od might not be present.) Requirements ------------ BookListGen.sh is written in Bash, and makes use of common tools which should already be available on any recent Linux/OS X system: od, awk, sed, dd, gunzip, cut, iconv, tr, grep, file In order to work correctly, your locale must support UTF-8 (e.g. en_GB.UTF-8). In addition to this, the following items are also necessary: * USB memory stick reader supported by the OS. After trying several models (Dazzle, Packard Bell), the one which worked flawlessly for me in Linux was the Belkin USB 2.0 15 in 1 reader. All the other models I tried would either corrupt data on the memory stick, or would refuse to mount the media without a reboot after a couple of mounts. The Belkin model worked perfectly. * A memory stick (or memory stick duo with the adapter). * A LIBRIe (Duh) Mounting the Memory Stick ------------------------- * After inserting the memory stick into the card reader, it should show up as a SCSI disk device. On the Belkin 15 in 1 reader, the memory stick slot is sdb, but it will be different depending on which card reader is being used. By default, there is a single FAT-16 (type 6) partition on the memory stick, which can be mounted in the following way: mount -t vfat /dev/sdb1 /mnt/memorystick Alternatively, the following entry can be placed into /etc/fstab: /dev/sdb1 /mnt/memorystick vfat defaults,noatime,user,noauto,rw 0 0 This will allow the memory stick to be mounted with the simpler command: mount /mnt/memorystick Creating The Directory Structure -------------------------------- There is a specific directory structure that is required on the memory stick. The following directories are necessary in the root of the memory stick: /mssony/librie/booklist /mssony/librie/usb /mssony/librie/reader/book/lrf /mssony/librie/reader/book/lrx /ebook/bbeb/book These directories can either be created manually, or with booklistgen.sh, in the following way: ./booklistgen.sh -c /mnt/memorystick Transferring LRF Files Onto The Memory Stick -------------------------------------------- Once the memory stick has been mounted, and the directory structure has been created on it, LRF files can be copied into the /ebook/bbeb/book directory: cp mybook.lrf /mnt/memorystick/ebook/bbeb/book Generating the Index File ------------------------- It would be nice if the LIBRIe could find all files in the /ebook/bbeb/book directory automatically. However, this is not possible. An index, or booklist, file (MgrTbl.dat) needs to be generated under the /mssony/librie/booklist directory. This file is generated by running the booklistgen.sh script in the following way: ./booklistgen.sh /mnt/memorystick When this command is executed, the LRF files under /ebook/bbeb/book will be scanned, and an index file containing all of these books will be generated under /mssony/librie/booklist. Unmounting the Memory Stick --------------------------- The memory stick now needs to be unmounted, to ensure that all data is written: umount /mnt/memorystick Loading the Memory Stick Into the LIBRIe ---------------------------------------- After inserting the memory stick into the LIBRIe, the main menu should contain all the books that were added to the index.