36 Commits

Author SHA1 Message Date
Sunil Mohan Adapa
071d61bcc8
*: Move all systemd service files from /lib to /usr
This is now the preferred location in Debian. See:

https://lintian.debian.org/tags/systemd-service-in-odd-location
https://bugs.debian.org/992465
https://bugs.debian.org/987989
d70caa69c6
https://lists.debian.org/debian-devel/2021/08/msg00275.html

Tests:

- Lintian no longer shows errors:
  E: freedombox: systemd-service-in-odd-location lib/.../calibre-server-freedombox.service

- Comparing the old .deb and newly generated .deb with these changes. All the
systemd files show that they are moved from /lib to /usr/lib/systemd.

- After upgrading the deb from older version to a version these changes,
services installed by the package are available (tested after restart with
wordpress and claibre). Services tweaked by the package have the changed
configuration reflected as shown by systemctl show
{service-name}.service (tested after restart with quassel).

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2021-10-09 22:08:50 -04:00
Sunil Mohan Adapa
ff247fa5aa
setup: Move app data files into respective apps
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2019-03-17 16:20:57 -04:00
Sunil Mohan Adapa
07ee92692b
shadowsocks: Update firewall service description
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2017-11-29 17:47:37 +05:30
James Valleroy
6bf4eb1483
shadowsocks: Add shadowsocks client with socks5 proxy
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2017-11-29 17:47:05 +05:30
Sunil Mohan Adapa
e8e8fe0bd9
setup: Remove freedombox-setup related scripts
From freedombox-setup all the setup mechanisms and first-run mechanisms have
been removed. This script no longer does anything and is not needed. Ensuring
that the directories have proper permissions is now the duty of Plinth Debian
packaging.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Signed-off-by: Joseph Nuthalpati <njoseph@thoughtworks.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2017-10-07 07:14:02 -04:00
Sunil Mohan Adapa
602ea6cf16
apache: New module to manage Apache configuration
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2017-09-01 20:04:07 -04:00
Sunil Mohan Adapa
2e55acb465
firewall: Move remaining setup steps to Plinth
There is no need to restart firewalld after the setup steps run.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2017-09-01 20:03:51 -04:00
Sunil Mohan Adapa
f5a5ee1f04
firewall: Remove redundant setup steps
- Essential modules enable their own services properly.  There is no need to do
  them as part of common setup.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2017-09-01 20:03:28 -04:00
Sunil Mohan Adapa
4bbbfd956c
Don't run Plinth setup as part of freedombox/setup
Instead run all of the setup process during the first boot. This enables us to
someday remove the reboot step entirely.

Tests: After building a new image with the changes, call the modules have shown
to be properly setup. Running the setup wizard, creating admin user and logging
works as expected.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2017-08-31 21:08:54 -04:00
James Valleroy
b19a9f972c
users: Move ldap structure config into normal setup
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2017-08-29 17:08:09 +05:30
Joseph Nuthalpati
5ad180fcc9
Add Tahoe-LAFS module
- Created basic plinth app which starts an introducer and a storage
  node on the FreedomBox.
- Prompt user to set a domain name before creating Tahoe-LAFS nodes.
- Support adding and removing of introducers to the storage node.
- Serve Tahoe-LAFS from a different port.
- Start all nodes and introducers at system startup.
- Add utility class YAMLFile with test cases.
2017-06-10 09:38:57 -04:00
morrme
ad3420823d
owncloud: Remove module (Closes: #818)
It is believed that ownCloud is unlikely to return to Debian in near future.
Removing module to ease maintenance.

Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2017-04-25 18:06:56 +05:30
Sunil Mohan Adapa
93c151ab2b
matrixsynapse: Minor review changes
- Change the configuration minimally and more reliably.

- Rename the Apache configuration and add comments.

- Rename firewalld description file.

- Enable the matrixsynapse module by default.

- Improve category, description texts and warnings.

- Remove unused variable.

- Add missing docstrings.

- Minor styling updates.

- Fix i18n in templates.

- Fix showing description in main service view.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2017-04-05 12:58:45 +05:30
Rahul De
8b4cacd682
matrixsynapse: Add firewall rules to open port 8448
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2017-04-05 12:58:03 +05:30
James Valleroy
1aa767e6bd
users: Move part of LDAP setup to first-run
LDAP admin and basic structure setup requires running slapd. Move this
to first-run so we don't have to start slapd during setup. This should
avoid issues when running setup in a chroot.
2017-01-18 18:40:03 -05:00
Sunil Mohan Adapa
eff8a7b84e
infinoted: Update firewall service description
- Mention Gobby.

- Add note on when the firewall service should be enabled in line with
  other firewalld service descriptions.
2017-01-18 10:36:27 +05:30
James Valleroy
cd12f5d2b3
infinoted: Add new module for collaborative editing 2017-01-18 10:35:06 +05:30
Sunil Mohan Adapa
4db5a35ce0
repro: Open up RTP ports
- RTP ports used for voice and video communication can span a wide range
  of ports.  Some servers seem to restrict the range.  However, repro
  does not seem to do that.  So, open up the full range.
2016-10-01 08:19:57 -04:00
Sunil Mohan Adapa
7a80e04ddd
repro: Use firewalld provided SIP services
Now that firewalld has service definitions for SIP and SIP over
TLS/DTLS use them instead of custom service definitions.
2016-10-01 08:19:51 -04:00
James Valleroy
71f8869bea
Upstream patch from Debian bug #837206
Fixes DB and log file permissions. Also switch to new setup command.
2016-09-23 07:52:48 -04:00
Sunil Mohan Adapa
b69720e0d4
Exit with error if any of the setup steps fail 2016-08-31 16:59:12 -04:00
Sunil Mohan Adapa
9adf27c9a9
setup: Don't run DBus during initial setup
Now that initial package installation is done using apt-get instead of
PackageKit, DBus is no longer required.
2016-05-08 10:47:21 +05:30
Sunil Mohan Adapa
529e6ae05b
Run Plinth setup during FreedomBox setup
Start DBus daemon to ensure PackageKit can use it.  Only start if it is
not already running.  Stop after setup.  Stop only if we have started
it.
2016-03-12 18:36:15 +05:30
James Valleroy
363e071bff
minetest: New module for minetest server 2016-02-26 15:20:36 +05:30
Sunil Mohan Adapa
5805351f50
repro: Split firewall service as sip and sips
- Since SIP is a generic protocol implemented by various servers, the
  firewall service must describe the protocol instead of the
  application.  This is similar to the way firewalld handles
  http/https.  This also make the service descriptions more acceptable
  by upstream.

- Split unencrypted and encrypted services so that one can enabled
  without the other (a possibility with SIP).

- Add 5061/UDP for SIP over DTLS and DCCP.
2016-01-27 17:49:32 +05:30
James Valleroy
b7e44eb429
Add repro SIP proxy module. 2016-01-27 17:49:20 +05:30
James Valleroy
e74c4791ec Add quassel module. 2015-12-11 19:09:54 -05:00
James Valleroy
23d1798802 Enable javascript-common apache conf during setup. 2015-12-10 18:49:49 -05:00
Sunil Mohan Adapa
f2a4ffe394 firewall: Make default zone as 'external'
Set the default firewall zone.  When network connections are configured
outside of FreedomBox/Plinth, they will not be able to serve the Plinth
web interface.  This is because all such interfaces will fall in the
default firewall zone and that is, by default, 'public'.  On 'public'
zone we don't allow Plinth web interface as this zone is not managed.

Configuration of network connections happen outside for
FreedomBox/Plinth for various reasons:

 - Existing network connections before installation of freedombox-setup

 - Connections configured in /etc/network/interfaces

 - Connections manually configured using nmtui

 - Connections created using GUI environments such as GNOME

Rather then clearing out /etc/network/interfaces during setup and
expecting the connections not to be created outside of Plinth, setting
the default firewall zone is a better approach.  This default zone
selection fits with the main purpose of FreedomBox to be a router which
is also reflected by the fact that only 'external'
2015-12-03 18:25:37 -05:00
Sunil Mohan Adapa
1c046d0ece firewall: Remove assigning zones to interfaces
This is now properly handled by freedombox-setup network scripts.  There
is no need to set it up here.  Also there is chance they might by
configured wrong.
2015-09-02 19:48:35 -04:00
Sunil Mohan Adapa
69adf1cfc5 transmission: Run from behind Apache
- Introduce Apache configuration for plinth.

- Remove Transmission service file for firewalld.

- Enable transmission on install.

- Enable/disable Apache configuration on Transmission on enable/disable.

- Remove IP address whilelisting as 127.0.0.1 is the default setting and
  is sufficient for Apache to reverse proxy.

- Update UI URL.
2015-05-01 19:00:56 +05:30
Sunil Mohan Adapa
f94d0d5414 transmission: New module for BitTorrent downloads 2015-05-01 18:52:17 +05:30
Sunil Mohan Adapa
2028a63deb mumble: Add new module for installing, enabling/disabling 2015-03-28 16:02:39 -04:00
Sunil Mohan Adapa
e2ca5e0f12 Rewrite Apache configuration files
- Don't hijack the entire SSL site for sake of Plinth.

- Serve both HTTP and HTTPS sites with default configuration.

- plinth-ssl configuration only make SSL compulsory.

- Document modules required for configuration to work properly.

- Don't disable default site during FreedomBox setup run.  This is no
  longer required.
2014-11-30 15:11:50 +05:30
Sunil Mohan Adapa
5b969d9d30 Explicitly write license headers for each source file
The package license (AGPL3+) implicitly indicates the license of each
file.  However, it is desirable to have license headers in each file.
This is the case for many prominent projects like GNU project, Mozilla
etc.
2014-11-30 14:49:49 +05:30
Sunil Mohan Adapa
e6dbcdccaa Move all misc files under misc directory 2014-08-30 09:38:24 +05:30