plinth - a web front end for administering FreedomBox
plinth [-h, --help]
[--server_dir {SERVER_DIR}] [--develop]
[--diagnose] [--setup [application...]]
[--setup-no-install [application...]]
[--list-dependencies [application...]]
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 a wireless router so that
data stays with the users.
Plinth is a web interface to administer the functions of the
FreedomBox. It is extensible and is made of modules. Each module provides a
simplified user interface to control the underlying functionality of a
specific application of FreedomBox. As FreedomBox can act as a wireless
router, it is possible to configure networking from Plinth. Plinth allows
configuration of basic system parameters such as time zone, hostname and
automatic upgrade settings.
--server_dir SERVER_DIR
This the URL fragment under which Plinth will provide its
services. By default the value from plinth.config is used. Plinth is shipped
with a value of /plinth in /etc/plinth/plinth.config. This means that Plinth
will be available as http://localhost:8000/plinth by default. When
/etc/plinth/plinth.config is not available, plinth.config from the current
working directory is used.
--develop
Enable development mode. Use plinth.config and the
actions_dir of the current working directory. Enables extra debug messages,
enable Django debug mode for detailed error pages and and turn off Django
security features. Monitor source files for changes and restart Plinth on
modifications. Die if there is an error during module initialization.
--diagnose
If provided, Plinth loads modules, performs
initialization but does start the web server. Instead it runs diagnostic tests
on each module and exits.
--setup
Perform application setup operations and exit. Setting up
an application involves installing packages required for that application and
performing pre and post install configuration setups. If no application is
provided, setup all applications which describe themselves as essential. If a
list of applications is provided, setup only those applications.
--setup-no-install
Same as --setup but no new Debian packages are
installed during setup. When a package needs to be installed, a check is done
to make sure the package is already installed. If the package is already
installed, no upgrade is performed and setup skips this step and proceeds to
next operation. If the package is not installed an error is raised and setup
process halts. This is option is useful for running setup during post
installation script of a Debian package. Essential packages are added as
dependencies for the Debian package and then setup process is executed from
post install script of the Debian package.
--list-dependencies
For the list of provided applications, print the list of
packages needed by the applications. If no application is provided as
additional argument, then print list of packages needed by all essential
applications. If '*' is provided in the list of the applications, then list of
packages needed by all applications will be printed. Although, packages are
installed when the application is first accessed, this list will be useful for
adding list of dependencies to a Debian package and to get a list of all
interesting packages. Other output may be printed on stderr and should be
ignored.
Plinth reads various configuraiton options from the file
/etc/plinth/plinth.config. If this file is not present, then it reads
configuration file ./plinth.config from the current directory. This is
mainly meant to make Plinth work with configuration from source code
directory for debugging purposes.
Example 1. Start Plinth with default
options
Run Plinth as guided by configuration file.
Example 2. Run Plinth with different URL
prefix
$ plinth --server_dir='/myurl'
Run Plinth with the '/myurl' prefix. Note that Apache forwards
requests to '/plinth' by default, so /myurl is not accessible outside of
your FreedomBox without adapting the apache configuration.
Example 3. Run Plinth in development mode
Run in development mode on the terminal. Enable auto-reloading and
more extensive debugging.
See Plinth issue tracker[1] for a full list of known issues
and TODO items.
- 1.
- Plinth issue tracker
https://salsa.debian.org/freedombox-team/plinth/issues