Last week, I’ve finished the first prototype of Librarian, content archive manager that will be used in some of the Outernet devices. Before I get into details, Librarian is released under GPL version 3, so feel free to peruse any code you find in the repository.
Librarian does not download anything from the sat signal. For that, another piece of software will be used that I am not working on personally. Librarian handles downloaded files and the content archive.
The prototype is not (yet) configured to work on the actual device, so you will be able to get it up on VirtualBox and get a feel for how it works. It uses Vagrant, so if you have it installed, and have VirtualBox, you can get started with two simple commands ran from the source directory:
vagrant box add archlinux-i686 https://dl.dropboxusercontent.com/s/09iq7rmvs268t64/archlinux-i686-20140630.box vagrant up
To bring up the Librarian’s web interface, you can SSH into the vagrant box and start the server:
vagrant ssh bash /vagrant/script/startapp.sh
The web interface will then be available at localhost:8080.
In order to add content to Librarian’s archive, you will need zip files prepared by our internal tool for preparing broadcast content. We host such zip files at dev.artexin.outernet.is. Some of them are busted due to bugs in the software that prepares them, but they should give you some idea of how it all works. Download the zip files and place them in a directory within the source directory (e.g., ‘tmp’), then ssh into the Vagrant box:
vagrant ssh cp /vagrant/tmp/*.zip /var/spool/downloads
After you’ve copied the zip files, they should appear under the “Updates” tab in the web UI.
The UI is still missing quite a bit of features. You can see the list of items that need to be taken care of in the issue tracker.
As for the timeline for further development, the final version is scheduled for some time in August. We are currently working towards final v0.1 release which should take place late next week.
You may also be interested in ArtExIn, which is our internal tool for managing broadcast content bundles. It is still under heavy development even though I’ve tagged a prototype just over a week ago, so I didn’t write about it yet. I’ll be releasing an improved version this week and I’ll write more about it then. However, code is GPLv3 just like Librarian, so you can take a look at it anyway.