mirror of
https://github.com/lrnselfreliance/wrolpi.git
synced 2026-10-26 10:51:36 -04:00
Create your own off-grid library
https://wrolpi.org
| .circleci | ||
| .github/workflows | ||
| alembic | ||
| app | ||
| docker | ||
| etc | ||
| modules | ||
| pi-gen | ||
| scripts | ||
| test | ||
| wrolpi | ||
| .dockerignore | ||
| .gitignore | ||
| .travis.yml | ||
| 50x.html | ||
| alembic.ini | ||
| conftest.py | ||
| demo_link.jpg | ||
| docker-compose.yml | ||
| icon.ico | ||
| icon.png | ||
| install.sh | ||
| join_discord.png | ||
| LICENSE | ||
| main.py | ||
| nginx.conf | ||
| nginx.dev.conf | ||
| pytest.ini | ||
| README.md | ||
| requirements.txt | ||
| UPGRADE.md | ||
WROLPi
Create your own off-grid library.
WROLPi is a self-contained collection of software to help you survive the world Without Rule of Law.
WROLPi is intended to be run on a Raspberry Pi with an optional external drive attached. It serves up it's own Wi-Fi network so that any user with a laptop/tablet/phone can connect and use the library created by the maintainer.
WARNING WROLPi is under active development!
- WROLPi is in Beta!
- Expect things to change!
Table of Contents
Features
- Videos
- Web Archive
- Maps
- File search
- eBooks (EPUB / PDFs)
- Wi-Fi Hotspot
- Universal search
- Food Inventory management
- One-Time pad generator, encrypter/decrypter
- Synchronizer and/or duplicator
- Food storage calculator
Feature Matrix
| Module | Search | View | Download |
|---|---|---|---|
| Videos | yes | yes | yes |
| Web Archives | yes | yes | yes |
| eBooks (EPUB/PDFs) | yes | yes | planned |
| Map | planned | yes | planned |
| Wikis | planned | planned | planned |
| Podcasts/Audio | planned | planned | planned |
Demo
Try WROLPi!
You can try out WROLPi by running the docker containers.
- Install docker-ce and docker-compose
- Copy the latest WROLPi code
git clone https://github.com/lrnselfreliance/wrolpi.git
- Change directory into the code base
cd wrolpi
- Build the containers
docker-compose build --parallel
- Create volumes
docker volume create --name=openstreetmap-datadocker volume create --name=openstreetmap-rendered-tiles
- Start the database.
docker-compose up -d db
- Initialize the database
docker-compose run --rm api db upgrade
- Start the docker containers
docker-compose up
- Browse to WROLPi
Debian 11 Install
Install WROLPi onto a fresh Debian 11 system.
Warning: this will clobber anything else on the system! Do not run this installation script elsewhere!
- Install Debian 11 onto a laptop or other computer.
- Login to the new system.
- Get the WROLPi installation script
wget https://raw.githubusercontent.com/lrnselfreliance/wrolpi/release/install.sh -O /tmp/install.sh
- Run the installation script
sudo /bin/bash /tmp/install.sh
- Start WROLPi
sudo systemctl start wrolpi.target
- Browse to the IP address of your WROLPi!
RaspberryPi Install
Install WROLPi onto a fresh Raspberry Pi.
Warning: this will clobber anything else on the Raspberry Pi! Do not run this installation script elsewhere!
- Install Ubuntu Server 20.04 onto a RaspberryPi.
- Login to the new RaspberryPi.
- Get the WROLPi installation script
wget https://raw.githubusercontent.com/lrnselfreliance/wrolpi/release/install.sh -O /tmp/install.sh
- Run the installation script
sudo /bin/bash /tmp/install.sh
- Start WROLPi
sudo systemctl start wrolpi.target
- Join the Hotspot or browse to the IP address of your WROLPi!
Charter
Physical properties
- A WROLPi instance should be capable of running with a minimal of hardware:
- Raspberry Pi
- SD card
- External USB hard drive
- Power supply and cables
- WiFi USER device such as a phone, tablet, or laptop.
- A WROLPi instance should consume a minimal amount of electricity during WROL event. It is expected power will be scarce when WROLPi is needed most.
User expectations
- A WROLPi instance should be run and maintained by a person (MAINTAINER) with a moderate amount of Linux and Raspberry Pi experience. It is expected that they should be able to do this using only the documentation on their WROLPi.
Software properties and capabilities
- A WROLPi instance should be able to "factory-reset" itself without any outside services.
- WROLPi should function completely without any internet services.
- A user should have easy access to their data if WROLPi fails:
- For example, a user can watch their videos by navigating a short and intuitive directory structure and opening the video in their preferred video player.
- WROLPi should be self-documented. The UI should contain a tutorial for USERS as well as the MAINTAINER.
- If the UI isn't functional, the code should be documented such that a user can restore functionality.
- WROLPi should favor pre-processing, rather than processing during a WROL event. Such as re-encoding a video, or processing captions. This is to ensure that when a user adds content during non-WROL time, the processing for optimum performance is already done for a WROL event.
Join!
