@ -38,12 +38,12 @@ Raspberry Pi operating system. [Etcher] is a useful and simple tool for
flashing the operating system onto the SD card which you will plug into your
Raspberry Pi.
[Raspberry P i]: https://www.raspberrypi.org/
[raspberry p i]: https://www.raspberrypi.org/
[official setup documentation]: https://www.raspberrypi.org/documentation/setup/
[Raspberry Pi 3 B +]: https://www.raspberrypi.org/products/raspberry-pi-3-model-b/
[R aspbian]: https://www.raspberrypi.org/documentation/raspbian/
[Raspbian B uster]: https://www.raspberrypi.org/blog/buster-the-new-version-of-raspbian/
[E tcher]: https://www.balena.io/etcher/
[raspberry pi 3 b +]: https://www.raspberrypi.org/products/raspberry-pi-3-model-b/
[r aspbian]: https://www.raspberrypi.org/documentation/raspbian/
[raspbian b uster]: https://www.raspberrypi.org/blog/buster-the-new-version-of-raspbian/
[e tcher]: https://www.balena.io/etcher/
## Pre-installation
@ -72,32 +72,36 @@ We should then perform a number of steps within the [raspi-config] tool:
$ raspi-config
```
* Change the user password
* Choose the ``Change User Password`` option.
* It is important to configure your Raspberry Pi with a secure passphrase.
- Change the user password
- Choose the `Change User Password` option.
- It is important to configure your Raspberry Pi with a secure passphrase.
A [diceware passphrase] is a recommended approach for choosing a
sufficiently strong passphrase.
* Choose a hostname
* Follow the ``Network Options > Hostname`` options.
* The hostname will be the name that identifies the Raspberry Pi
- Choose a hostname
- Follow the `Network Options > Hostname` options.
- The hostname will be the name that identifies the Raspberry Pi
on the local network.
* Configure predictable network interfaces
* Follow the ``Network Options > Network interface names`` options.
* It is important to enable predictable network interface names
- Configure predictable network interfaces
- Follow the `Network Options > Network interface names` options.
- It is important to enable predictable network interface names
so that the automatic installation script can detect which network
interfaces are in use.
* Configure the localisation
* Follow the ``Localisation Options > Change Locale`` options.
* It is recommended to ensure that the ``en_GB.UTF-8 UTF-8`` locale
is selected. This is the default. Once this is selected, select ``< Ok > `` on the
- Configure the localisation
- Follow the `Localisation Options > Change Locale` options.
- It is recommended to ensure that the `en_GB.UTF-8 UTF-8` locale
is selected. This is the default. Once this is selected, select `<Ok>` on the
two following dialogs to generate the locale.
* Expand the SD card partition
* Follow the ``Advanced Options > Expand filesystem`` options.
* This allows more space on the SD card to be used. This is important
- Expand the SD card partition
- Follow the `Advanced Options > Expand filesystem` options.
- This allows more space on the SD card to be used. This is important
for when you will start to place more and more digital books in your
Bibliotecha.
@ -135,8 +139,8 @@ The script will automatically reboot your Raspberry Pi when it is finished.
If you run into any issues, please see the [Troubleshooting section].
[M anual installation]: #manual -installation
[T roubleshooting section]: #troubleshooting
[m anual installation]: #manual -installation
[t roubleshooting section]: #troubleshooting
[source is available]: https://git.vvvvvvaria.org/varia/bibliotecha-install/src/branch/master/bibliotecha.sh
## Post-installation
@ -179,8 +183,8 @@ The default adminstration password login details are:
You should change these details to secure your adminstration account.
[http://bibliotecha.library]: http://bibliotecha.library
[C alibre-web]: https://github.com/janeczku/calibre-web/
[C alibre-web wiki]: https://github.com/janeczku/calibre-web/wiki/Configuration
[c alibre-web]: https://github.com/janeczku/calibre-web/
[c alibre-web wiki]: https://github.com/janeczku/calibre-web/wiki/Configuration
## Maintaining a Community Library
@ -188,11 +192,11 @@ Once your Bibliotecha is configured you can start to think about how you and
your community would like to maintain the library. You should ask yourself some
questions:
* Who will be the digital librarians? The catalogue will need care.
* Will you allow public registrations? Will you allow public uploads?
* How will you publicise the library within the local context?
* What kind of library do you want to create? What are the themes?
* Who will be responsible for maintaing the system?
- Who will be the digital librarians? The catalogue will need care.
- Will you allow public registrations? Will you allow public uploads?
- How will you publicise the library within the local context?
- What kind of library do you want to create? What are the themes?
- Who will be responsible for maintaing the system?
## Understanding Bibliotecha Networking
@ -202,14 +206,14 @@ and maintaining a network configuration is no easy topic! However, it is a
useful skill to have. Overall, Bibliotecha is made up of the following programs
and configurations:
* [/etc/network/interfaces.d/ ](https://manpages.debian.org/buster/ifupdown/interfaces.5.en.html ): The network interface configuration
* [/etc/hosts ](https://manpages.debian.org/buster/manpages/hosts.5.en.html ): The hostname definitions
* [Hostap ](https://wiki.debian.org/hostap ): The Wifi access point provider
* [Dnsmasq ](https://wiki.debian.org/HowTo/dnsmasq ): The DNS and DHCP server
* [Dhcpcd ](https://manpages.debian.org/buster/dhcpcd5/dhcpcd.8.en.html ): The DHCP client
* [Calibre ](https://calibre-ebook.com/ ): The library database
* [Calibre-web ](https://github.com/janeczku/calibre-web/ ): The library web application
* [Lighttpd ](https://www.lighttpd.net/ ): The web server
- [/etc/network/interfaces.d/ ](https://manpages.debian.org/buster/ifupdown/interfaces.5.en.html ): The network interface configuration
- [/etc/hosts ](https://manpages.debian.org/buster/manpages/hosts.5.en.html ): The hostname definitions
- [Hostap ](https://wiki.debian.org/hostap ): The Wifi access point provider
- [Dnsmasq ](https://wiki.debian.org/HowTo/dnsmasq ): The DNS and DHCP server
- [Dhcpcd ](https://manpages.debian.org/buster/dhcpcd5/dhcpcd.8.en.html ): The DHCP client
- [Calibre ](https://calibre-ebook.com/ ): The library database
- [Calibre-web ](https://github.com/janeczku/calibre-web/ ): The library web application
- [Lighttpd ](https://www.lighttpd.net/ ): The web server
When your Bibliotecha is setup and running, it is doing a number of things. It
is first serving a Wireless access point (Hostap) which your devices can
@ -305,7 +309,7 @@ $ .venv/bin/pip install -r requirements.txt
$ systemctl start cps
```
[Understanding Bibliotecha N etworking]: #understanding -bibliotecha-networking
[understanding bibliotecha n etworking]: #understanding -bibliotecha-networking
[mailing list]: https://we.lurk.org/postorius/lists/bibliotecha.we.lurk.org/
## Manual installation
@ -354,7 +358,6 @@ $ apt install -y \
Afterwards, we'll make sure to stop these services running while we work on the
installation right now. We can do that with:
```bash
$ systemctl stop dnsmasq
$ systemctl stop hostapd
@ -394,8 +397,8 @@ naming conventions which we rely on.
For the following steps, I assume the following:
* Ethernet: enx78e7d1ea46da
* Wireless: wlp2s0
- Ethernet: enx78e7d1ea46da
- Wireless: wlp2s0
We then configure the ethernet interface. We put the following in
`/etc/network/interfaces.d/enx78e7d1ea46da` :
@ -635,9 +638,9 @@ You can now follow the [post-installation] steps.
Bibliotecha is made up of the following projects:
* [bibliotecha-install ](https://git.vvvvvvaria.org/varia/bibliotecha-install )
* [bibliotecha-manual ](https://git.vvvvvvaria.org/varia/bibliotecha-manual )
* [bibliotecha-captive-portal ](https://git.vvvvvvaria.org/varia/bibliotecha-captive-portal )
- [bibliotecha-install ](https://git.vvvvvvaria.org/varia/bibliotecha-install )
- [bibliotecha-manual ](https://git.vvvvvvaria.org/varia/bibliotecha-manual )
- [bibliotecha-captive-portal ](https://git.vvvvvvaria.org/varia/bibliotecha-captive-portal )
All contributions are welcome!
@ -647,10 +650,10 @@ You can also find us on the [mailing list].
## Acknowledgements
* The [Calibre] project
* The [Calibre-web] project
- The [Calibre] project
- The [Calibre-web] project
[C alibre]: https://calibre-ebook.com
[C alibre-web]: https://github.com/janeczku/calibre-web
[c alibre]: https://calibre-ebook.com
[c alibre-web]: https://github.com/janeczku/calibre-web
Contributors to Bibliotecha have been Yoana Buzova, Lasse van den Bosch Christensen, Andre Castro, Lucia Dossin, Max Dovey, Michaela Lakova, Luke Murphy and Roel Roscam Abbing