Bibliotecha

From XPUB & Lens-Based wiki

Bibliotecha

Bookserver in a book


      P I E T Z W A R T
    + + + + + + + + + + +
&   +         &         +   N
    +  @             *  +   E
F   +        The        +   T M
R   +    Bibliotecha    +   W E
I   +   Softwarestack   +   O D  
E   +       v.0.2       +   R I
N   +       Y2013       +   K A
D   +  #             $  +   E
S   +         %         +   D
    + + + + + + + + + + + 
      I N S T I T U T E  


An offline digital community library

Bibliotecha is a framework to facilitate the local distribution of digital publications within a small community. It relies on a microcomputer running open-source software to serve books over a local wifi hotspot. Using the browser to connect to the library one can retrieve or donate texts. Bibliotecha proposes an alternative model of distribution of digital texts that allows specific communities to form and share their own collections.

Day 1 Installation

In this first day we will work through Bibliotecha's Manual in order to arrive at a number of Biblitecha installations.

We'll look into how Bibliotecha is set up and how it uses existing free-software, such as

S8twTdT.png

  • lighttpd (webserver)
  • hostapd
  • custom scripts

Enable WiFi in RPi3

Day 2 Hacking

On this second day we will see how can we create an alternative indexing and browsing interface for Bibliotecha, that addresses the following issue with Calibre.

A working prototype can be found on the nocalibre branch of Bibliotecha git repository.


Some breakfast with Python Cookbook recipes


working prototype: essentials

/var/www file-tree

Bibliotecha-nocalibre-tree.png

The scripts responsible for replacing calibre are:

  • /var/www/browse/json_update.py
  • /var/www/browse/generate-table.py

Both are triggered by /var/www/cgi-bin/receive_book.cgi, when a book is added.

further develop prototype

by:

  • adding hyperlinks to /var/www/browse/index.html back to ../index.html (bibliotecha landing page)
  • make Book Collection HTML table: sortable, more easily readable
  • others: ??
  • (advanced): instead of overwriting /var/www/browse/collection-metadata.json everytime a books is added, simply update collection-metadata.json
  • (advanced): handle multi authors
  • (advanced): handle repeated books


Write a recipe

After two days of sshing, install, configuring, coding there might be some function or trick which you found relevant.

I'd like to ask you to share your insights onto that something with the pzi community by writing a recipe on in in the Cookbook.

Take a look at what in there (it's a great resource!!) and is how simple, but also useful (like the [SimpleMailBomber|Mail Bomber] recipe), a recipe can be. And write one.

It should not take you more than 1 hour.