7997 Commits

Author SHA1 Message Date
Sunil Mohan Adapa
d4b21ef1e4
views: Use dedicated view when showing an app with operations
Closes: #2309.

- This prevents processing of AppView when the app is being uninstalled. For at
least two apps, this has failed because the AppView assumes that app and its
dependencies are installed.

- Use a dedicated template as well is simplify app template.

Tests:

- Installing and uninstalling an app works.

- Refreshing the app page during uninstall does not lead to an error for samba
and email apps.

- Unit tests pass.

- Functional tests for samba and email work.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-30 20:08:11 -05:00
Sunil Mohan Adapa
a94ebc567d
tests: functional: Fix submitting forms with notifications present
Closes: #2194.

In the four cases fixed, if a notification is present with a 'btn-primary' in
it, then instead of submitting the intended form, the button on the notification
is clicked. This will result in an indefinite wait for the form to perform an
action. Fix this by specifying which form exactly we want to submit.

Tests:

- Run functional tests for config app and updates app.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-30 18:20:53 -05:00
Sunil Mohan Adapa
f394beb2ef
config: Fix showing the value of the default home page
Closes: #2314.

Tests:

- On a fresh testing container, verify that the file
/etc/apache2/conf-available/freedombox-apache-homepage.conf is not present.
Visit the config app and notice that home page shows as 'Apache Default'.

- Apply the patch and refresh the page. The page now shows 'FreedomBox
Service (Plinth)' as the home page.

- Functional tests work.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-30 18:20:42 -05:00
James Valleroy
9597654ca8
firewalld: Allow upgrade to version 2*
Tests:

- After a dist-upgrade to Bookworm, install freedombox with this
  change. Then update apt cache. After a delay, firewalld is
  upgraded. Then apps can be installed as normal.

- On a stable machine, add testing into apt sources list. Run apt update.
FreedomBox will receive the apt update hook and upgrade firewall version to
1.3.x. DefaultZone is set to 'external' after that.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
[sunil: Update all the way up to 2.0]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2023-01-27 15:35:05 -08:00
James Valleroy
25d32d245a
tor: Also use Aptsources822 augeas lens
This will handle sources files with Deb822 format.

Closes: #214.

Tests:

- Enable package download through Tor. "tor+" is prepended to sources
  URL.

- Disable package download through Tor. "tor+" is removed from sources
  URL.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2023-01-27 15:15:31 -08:00
James Valleroy
cd21c7f247
upgrades: Add augeas lens for Deb822 apt sources
Helps #214.

Tests:

- Augeas lens tests passed using augparse.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
[sunil: Fix issue with not being able write back with lens]
[sunil: Parse single/multi field values based on man page]
[sunil: Allow creating multi field values by adding \n at the end of the value]
[sunil: Add documentation and make ready for upstream submission]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2023-01-27 15:13:34 -08:00
James Valleroy
3fac4f55fe
tor: Remove workaround for old Augeas bug
The upstream issue was fixed in 2015:
https://github.com/hercules-team/augeas/pull/295

Tests:

- In stable container, add options like [arch=amd64] to apt
  sources.list.

- Enable package download through Tor. "tor+" is prepended to sources
  URL.

- Disable package download through Tor. "tor+" is removed from sources
  URL.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2023-01-27 14:56:03 -08:00
109247019824
2489074fa0
Translated using Weblate (Bulgarian)
Currently translated at 41.9% (623 of 1484 strings)
2023-01-18 08:47:51 +01:00
James Valleroy
0d27d10811
Release v23.2 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v23.2
2023-01-16 20:33:13 -05:00
James Valleroy
0f828207ea
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-16 20:32:16 -05:00
109247019824
be7a1e8af6
Translated using Weblate (Bulgarian)
Currently translated at 41.7% (620 of 1484 strings)
2023-01-16 09:48:00 +01:00
Sunil Mohan Adapa
4769c1c861
ssh: Update existing setups to add sudo group to allowed SSH groups
Tests:

- On a setup with the patch, disable and re-enable the restricted users feature.
sudo is not part of allowed users. Apply the patch and restart the service. SSH
app will be updated and sudo is added to SSH allowed groups.

- Add a fresh unprivileged user to sudo group. SSH using that user to the
system.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2023-01-13 07:52:02 -08:00
James Valleroy
09d8ee1b8e
ssh: Add sudo to allowed groups
This is to allow vagrant user to login, as well as a normal sudo user
that was created before installing FreedomBox.

For most FreedomBoxes, the sudo group is empty, so it will have no
impact.

I do not update the existing file. But if someone needs this update,
they can disable and then re-enable the restrict option.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2023-01-13 07:41:49 -08:00
James Valleroy
695138d4d6 upgrades: Stop quassel during dist upgrade
Fixes: #2098.

Tests:

- Install quassel in bullseye system.

- Start dist upgrade. Check that quassel service is stopped during the
  dist upgrade.

- Finish dist upgrade. Quassel service is running again.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2023-01-13 07:35:05 -08:00
Besnik Bleta
4ab27eaee9
Translated using Weblate (Albanian)
Currently translated at 99.7% (1481 of 1484 strings)
2023-01-05 16:50:32 +01:00
James Valleroy
3e7b6bb451
Release v23.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v23.1
2023-01-03 11:55:21 -05:00
James Valleroy
acef5d2dff
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-03 11:54:44 -05:00
James Valleroy
99d795e928
locale: Update translation strings
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-03 10:42:23 -05:00
nbenedek
863afa34ce
tor: Add onion location to apache
- When hidden service is enabled create and enable an apache site with the
proper configurations. This will let visitors using the Tor browser that a
hidden version of the website is available.

- Disable apache site when hidden service is disabled

- Create a backup of the apache site

- Hidden service won't be advertised when the user visits mediawiki, wordpress
or tt-rss. These sites don't work (well) with a hidden service when a normal
domain is already set up.

Tests:

- Functional tests pass.

- With fresh install of Tor app, onion location header apache configuration is
enabled and header is served in HTTP requests.

- When Onion services are enabled/disabled, header is enabled/disabled due to
webserver configuration changes.

- When Tor app is enabled/disabled, header is enabled/disabled due to webserver
configuration being enabled/disabled.

- When Tor app is upgraded from earlier version while app is enabled, onion
service is enabled, Tor app remains enabled. Onion location is enabled.

- FAILED: When Tor app is upgraded from earlier version while app is enabled,
onion service is disabled, Tor app remains enabled. Onion location is disabled.

- FAILED: When Tor app is upgraded from earlier version while app is disabled,
onion service is enabled, Tor app remains disabled. Onion location is disabled.

- FAILED: When Tor app is upgraded from earlier version while app is disabled,
onion service is disabled, Tor app remains disabled. Onion location is disabled.

Signed-off-by: nbenedek <contact@nbenedek.me>
[sunil: Ensure that enabling/disabling app enables/disables onion location]
[sunil: Ensure that upgrading from old version does not enable the app]
[sunil: Ensure that upgrading from old version enables/disables onion location]
[sunil: Apache file should be a 'config' and not 'site']
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-02 22:11:36 -05:00
Sunil Mohan Adapa
2607fffd47
zoph: Add explicit dependency on default-mysql-server
This is to ensure that mysql server is not uninstalled when wordpress is
uninstalled.

Tests:

- Uninstalling zoph does not remove default-mysql-server when wordpress is
installed.

- Uninstalling wordpress does not remove default-mysql-server when zoph is
installed.

- Uninstalling both wordpress and zoph removes default-mysql-server.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-02 21:00:19 -05:00
Sunil Mohan Adapa
82104ccf84
email: Workaround an issue with error on finishing uninstall
Showing the uninstall progress page fails during uninstall of email app.
Workaround that by handling the errors raised. A better approach is to ensure
that the view is not processed when uninstall operation is in progress.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-02 21:00:00 -05:00
Sunil Mohan Adapa
16cb8ee021
package: Don't uninstall packages that are in use by other apps
Closes: #2262.

Tests:

- Unit tests work

- Uninstall of email app succeeds without uninstalling openssl package.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-02 20:59:19 -05:00
Sunil Mohan Adapa
bc09cd42bb
operation: tests: Fix warning when test helpers start with 'Test'
Don't start the helper class name with 'Test' as it will be treated as a class
with test cases to run.

Fixes #2288.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2023-01-02 20:07:11 -05:00
gallegonovato
99aa6e44f1
Translated using Weblate (Spanish)
Currently translated at 100.0% (1484 of 1484 strings)
2023-01-01 19:49:44 +01:00
gallegonovato
75031dba40
Translated using Weblate (Galician)
Currently translated at 1.6% (24 of 1484 strings)
2022-12-30 11:51:29 +01:00
Veiko Aasa
b94e1ea596
gitweb: Run git commands as a web user
Fixes #2306.

Tested that all the gitweb tests pass in Debian stable and testing
containers.

Signed-off-by: Veiko Aasa <veiko17@disroot.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2022-12-29 15:20:38 -08:00
James Valleroy
d3d7e233e3
janus: Allow upgrade to 1.1
Closes: #2303.

Tests:

- In testing container, install Janus.

- Downgrade janus package to 1.0.1-1.

- Manually re-run janus setup action.

- Run "apt update".

- janus is upgraded to 1.1.1-1, and rtp_port_range is set in
  /etc/janus/janus.jcfg.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2022-12-29 11:12:46 -08:00
gallegonovato
e5a6205dec
Translated using Weblate (Spanish)
Currently translated at 100.0% (1484 of 1484 strings)
2022-12-28 17:51:13 +01:00
James Valleroy
d1fc0d6b78
Release v22.27 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v22.27
2022-12-19 21:00:36 -05:00
James Valleroy
e086e3fa7b
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-19 20:58:57 -05:00
James Valleroy
8618c49c26
locale: Update translation strings
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-19 20:15:39 -05:00
James Valleroy
9736d426cb
wordpress: Redirect Webfinger queries
Needed by ActivityPub plugin.

Closes: #2257.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-19 11:34:33 -08:00
James Valleroy
331e6f33d8
upgrades: dist-upgrade: Don't change apt security line
This change was only needed for upgrade to bullseye.

Closes: #2302.

Tests:

- Run a dist upgrade in a bullseye vagrant box. Apt sources has
  expected content and apt-get does not produce an error.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2022-12-19 10:53:48 -08:00
Sunil Mohan Adapa
b056f5829c
zoph, wordpress: Add conflicts on libpam-tmpdir
Closes: #2239.

- Adding Conflicts in freedombox Debian package seems to cause
unattended-upgrade to not upgrade the package to next version. This approach
seems be an alternative.

Tests:

- Install libpam-tmpdir. Go to Zoph page, see that conflicts messages is shown.
Install succeeds. libpam-tmpdir is removed.

- Install libpam-tmpdir. Go to WordPress page, see that conflicts messages is
shown. Install succeeds. libpam-tmpdir is removed.

- Remove libpam-tmpdir. Go to Zoph page, see that conflicts message is not
shown. Install succeeds.

- Remove libpam-tmpdir. Go to WordPress page, see that conflicts message is not
shown. Install succeeds.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-18 17:30:30 -05:00
Sunil Mohan Adapa
0b9d567493
package, email: Move conflicting package removal to framework
- Warning that exim4 will be removed is incorrectly not shown during email app
installation. Fix that.

Tests:

- Unit tests pass.

- On a fresh testing container, trying to install email app shows the warning
message that exim will be removed. Installing the email app succeeds. exim is
removed during installation.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-18 17:30:27 -05:00
Sunil Mohan Adapa
bb527673fb
d/control: Don't recommend libpam-tmpdir
- Use of libpam-tmpdir leads to problems installing MariaDB[1][2][3]. A fix for
the serious issues may not be available for next stable release.

- Services run by systemd don't benefit from libpam-tmpdir[4]. So it's effect is
limited to PAM sessions opened with a terminal. Terminal access is mostly for
debugging in FreedomBox and not a primary use case.

- Services are (or will be) protected with PrivateTmp=yes in case of services
running on FreedomBox. This is better protection compared to what libpam-tmpdir
offers.

Links:

1) https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1022994

2) https://jira.mariadb.org/browse/MDEV-29910

3) https://salsa.debian.org/mariadb-team/mariadb-server/-/merge_requests/23

4) https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1022994#32

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-18 17:30:24 -05:00
Sunil Mohan Adapa
bcb0823e7c
snapshot: Fix showing unsupported message on non-btrfs filesystems
This is a regression from commit 9b6774f279e2c8af588609c2413aa9804fd48cfa. When
change the view to use AppView, the condition to check for non-btrfs filesystems
and show an unsupported message instead of the actual view was accidentally
removed. Restore the check and show a different view when on non-btrfs
filesystems.

Fixes: #2268.

Tests:

- On non-btrfs filesystem, snapshots view is shown as expected.

- On ext4 filesystem, a message that snapshots are not supported is shown.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-18 09:35:58 -05:00
Sunil Mohan Adapa
740609c339
minidlna: Fix incorrect marking for firewall local protection
MiniDLNA's TCP service has been incorrectly marked as needing to be protected
from local users. This leads to service not being accessible from local network.
Fix this by removing local protection.

As reported on https://discuss.freedombox.org/t/minidlna-on-22-26/2386

Tests:

- With MiniDLNA installed, apply the changes and restart service. 'nft list
ruleset ip', 'nft list ruleset ip6' and 'cat /etc/firewalld/direct.xml' confirm
that port 8200 is no longer protected as a local service.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-17 19:57:08 -05:00
Sunil Mohan Adapa
7e0b728498
users: tests: Fix privileged tests
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-16 10:40:01 -05:00
Joseph Nuthalapati
aa2992b826
tests: functional: Set timeout to 3 hours
This commit alone doesn't fix the problem of our functional tests timing
out. It is harmless to increase the timeout.

The maximum timeout for shared runners in Salsa is 3h according to this:
https://salsa.debian.org/salsa-ci-team/pipeline/-/blob/master/README.md#set-build-timeout

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-12 08:29:13 -05:00
Joseph Nuthalapati
344c491f7b
container: Drop free tag from image URLs
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-12 08:27:27 -05:00
Jiří Podhorecký
777ab626c4
Translated using Weblate (Czech)
Currently translated at 100.0% (1484 of 1484 strings)
2022-12-11 18:47:43 +01:00
Johannes Keyser
a2f24c30f1
Translated using Weblate (German)
Currently translated at 100.0% (1484 of 1484 strings)
2022-12-11 18:47:42 +01:00
109247019824
327754cbf0
Translated using Weblate (Bulgarian)
Currently translated at 41.6% (618 of 1484 strings)
2022-12-07 21:48:26 +01:00
Ihor Hordiichuk
dbe03a0e7b
Translated using Weblate (Ukrainian)
Currently translated at 100.0% (1484 of 1484 strings)
2022-12-07 21:48:26 +01:00
Eric
c59a84fd41
Translated using Weblate (Chinese (Simplified))
Currently translated at 68.5% (1018 of 1484 strings)
2022-12-07 21:48:25 +01:00
Burak Yavuz
bd50874a20
Translated using Weblate (Turkish)
Currently translated at 100.0% (1484 of 1484 strings)
2022-12-07 21:48:25 +01:00
ikmaak
401971dd09
Translated using Weblate (Dutch)
Currently translated at 100.0% (1484 of 1484 strings)
2022-12-07 21:48:24 +01:00
James Valleroy
70662e481a
Release v22.26 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v22.26
2022-12-05 21:37:42 -05:00
James Valleroy
daf8238106
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2022-12-05 21:37:00 -05:00