Closes: Debian #1144740. - When one of the applications such as bepasty, radicale, or searx need it, then install it. - Reduces the number of dependencies for freedombox package. - Reduces size of the disk image. - Ensures that uwsgi does not run on every freedombox machine. - Apache's proxy_uwsgi module (provided by apache2-bin, apache2) can still be enabled by default because uwsgi is not a dependency for the Apache module and uwsgi socket connections are not attempted until specific configuration is enabled and requests arrive. - Change dependency from uwsgi-core to uwsgi. uwsgi-core does not have init scripts but uwsgi package has init script (but only on trixie and not forky and up). The init script is disabled and masked by bepasty, radicale, and searx apps. So, this should not be a problem. Tests: - On a freshly installed Debian forky and trixie machines, install freedombox deb package built with changes. Installation succeeds. uwsgi is not installed at all. bepasty and radicale can be installed and basic requests to web UI work. uwsgi init script is not started and is masked. - Functional tests for bepasty and radicale work. - On a Trixie machine, setup freedombox from trixie. Then install freedombox deb package with the patch. uwsgi is not marked as manually installed and running unattended-updates will remove it. Install bepasty and uwsgi package is installed and marked as manually installed. - On a Trixie machine, setup freedombox from trixie. Install the bepasty app. Then install freedombox deb package with the patch. uwsgi is marked as manually installed and running unattended-updates will not remove it. Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org> Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
FreedomBox Service (Plinth)
The core functionality and web front-end of FreedomBox.
Description
FreedomBox is a community project to develop, design and promote personal servers running free software for private, personal communications. It is a networking appliance designed to allow interfacing with the rest of the Internet under conditions of protected privacy and data security. It hosts applications such as blog, wiki, website, social network, email, web proxy and a Tor relay, on a device that can replace your Wi-Fi router, so that your data stays with you.
This module, called FreedomBox Service and also know as Plinth, is the core functionality and web interface to the functions of the FreedomBox. It is extensible and provides various applications of FreedomBox as modules. Each module or application provides simplified user interface to control the underlying functionality. As FreedomBox can act as a wireless router, it is possible to configure networking. It also allows configuration of basic system parameters such as time zone, hostname and automatic upgrades.
You can find more information about FreedomBox Service (Plinth) on the Plinth Wiki page, the FreedomBox Wiki and the FreedomBox Manual.
Getting Started
To have a running FreedomBox, first install Debian (Buster or higher) on a clean machine. Then run:
$ sudo apt install freedombox
Full instructions are available on FreedomBox Manual's QuickStart page.
For instructions on running the service on a local machine from source code, see INSTALL.md. For instructions on setting up for development purposes, see HACKING.md.
Contributing
See the HACKING.md file for contributing to FreedomBox Service (Plinth).
Localization
License
FreedomBox is distributed under the GNU Affero General Public License, Version 3 or later. A copy of AGPLv3 is available from the Free Software Foundation.






