1) partitioning layout:
* the existing vfat boot partition
* an ext4 read-only partition containing the entire OS
* a small writable ext4 partition for storing configuration and log files
2) packages:
* there should be no problem installing the latest mumble server from the oficial repos
* Node.js v0.10.24 will be installed in /opt
* iproute2 will be used to configure the IP layer
* dnsmasq will be used as a DHCP server
* wpa_supplicant will be used to configure the WiFi adapter as a client
* hostapd will be used to configure the WiFi as an access point
* python, tornado & related, for the config webserver (see part 3)
* a lot of useless packages will be removed (mostly X/GUI related)
* optionally, packages like tcpdump, netcat, iptables could be made available on the system
3) configuration frontend:
* developed using the tornado framework ([login to view URL]), on python2
* access protection using HTTP digest authentication, using configurable credentials
* simple, clean and friendly UI using AJAX, JQuery
4) copy protecton:
* the directory containing the programs developed specifically for this project will be protected using eCryptfs ([login to view URL])
* the encryption key used will be composed of the PI's serial number and the SD card's serial number (the two will only work together)
* the system will fail to boot in the absence of the encrypted file
* a special setup script will be provided to help setting up the encryption