8785 Commits

Author SHA1 Message Date
Sunil Mohan Adapa
7c7a0fe14a
nextcloud: Prevent process restart when nextcloud is uninstalled
When an app installs a python module as a dependency and imports it. CherryPy
will start monitoring it for changes. When the app is uninstalled, the module is
removed from the system leading to change detected by CherryPy. The entire
service is then restarted if it is in development mode. This could cause a
temporary failure in requests served leading to failures in functional tests.
Workaround this by preventing auto-reloading for some python modules.

Tests:

- Without changes, in develop mode, uninstall nextcloud and notice that
FreedomBox service is restarted. With changes, it does not restart.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-08-03 09:38:46 -04:00
Sunil Mohan Adapa
1b95a565b0
nextcloud: Redirect to URL nextcloud/ if ending slash is not given
Tests:

- Without the changes, typing https://<domain>/nextcloud does not work. With the
changes it redirects to https://<domain>/nextcloud/.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-08-03 09:38:27 -04:00
Sunil Mohan Adapa
66533a1af5
tests: functional: Name the background fixture
For test cases implemented in derived classes, autouse=True does not seem to
work. These test cases can explicitly request this fixture with the name.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-08-03 09:38:18 -04:00
Sunil Mohan Adapa
ef4292d5fc
tests: functional: Allow submitting form buttons along with inputs
- Sometimes <input type='submit'> are used as submit buttons and at other times
<button type='submit'> is used.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-08-03 09:38:09 -04:00
Sunil Mohan Adapa
1398501ec4
gitweb: Don't backup/restore a drop-in configuration file
- /etc/gitweb-freedombox.conf is a drop-in configuration file. It is provide in
/usr and linked into /etc/. It is overwritten when freedombox package is
upgraded. So, it is incorrect to backup/restore the file.

Tests:

- Run functional tests that include backup/restore.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2024-07-31 13:32:42 +03:00
Besnik Bleta
44af0a1c4d
Translated using Weblate (Albanian)
Currently translated at 98.9% (1584 of 1601 strings)
2024-07-31 07:09:39 +02:00
109247019824
32b8db86df
Translated using Weblate (Bulgarian)
Currently translated at 46.2% (741 of 1601 strings)
2024-07-31 07:09:38 +02:00
大王叫我来巡山
6af6c823e5
Translated using Weblate (Chinese (Simplified))
Currently translated at 66.3% (1062 of 1601 strings)
2024-07-31 07:09:36 +02:00
Burak Yavuz
a449310259
Translated using Weblate (Turkish)
Currently translated at 100.0% (1601 of 1601 strings)
2024-07-31 07:09:35 +02:00
gallegonovato
09a83784ff
Translated using Weblate (Spanish)
Currently translated at 100.0% (1601 of 1601 strings)
2024-07-31 07:09:33 +02:00
James Valleroy
ba673b9a51
Release v24.16 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v24.16
2024-07-29 22:35:52 -04:00
James Valleroy
2f82c484ae
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-29 22:35:52 -04:00
James Valleroy
6a995d9369
locale: Update translation strings
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-29 22:04:52 -04:00
bittin1ddc447d824349b2
de0d722878
Translated using Weblate (Swedish)
Currently translated at 100.0% (1576 of 1576 strings)
2024-07-30 03:31:59 +02:00
Sunil Mohan Adapa
dd6b865de6
tests: functional: Handle obscured elements when submitting forms
In some cases in the backup page, when trying to restore a backup, the button is
obscured and trying to click it fails. Handle such situations by scrolling the
element into view first and try to click on the element again. Ensure that our
navigation header does not obscure the element when scrolling it into view.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-29 15:54:38 -04:00
Sunil Mohan Adapa
170685c806
tests: functional: Handle click failure when waiting for page update
When a click fails because the element is obscured or out of scroll port, the
fails with ElementClickInterceptedException. This normally fails the test
properly. However, when waiting for a page update, the wait loop silently
swallows the error causing the click failure to be ignored. This later leads to
a timeout waiting for page to be updated.

Handling this error separately and re-raising it ensures that the test fails
with the correct error allowing us to fix the problem.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-29 15:54:35 -04:00
Sunil Mohan Adapa
df55ba8c61
miniflux, ttrss: Factor out duplicated postgres utility methods
Tests:

- Run functional tests on miniflux app.
- Run backup and restore on ttrss app manually and notice that data is restored
and there are no errors.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-30 00:40:29 +05:30
Joseph Nuthalapati
62b9063bc2
miniflux: Trim error messages when creating user
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-30 00:14:30 +05:30
Sunil Mohan Adapa
a66162d697
miniflux: tests: functional: Fix failing tests when run out of order
- When the password is changed during the reset-password test, running other
tests in a different test run fails the tests.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-30 00:13:43 +05:30
Sunil Mohan Adapa
a6167a46b0
miniflux: Fix issues with running the CLI in a pseudo-terminal
- Check the exitstatus and signalstatus as seen from the ptyprocess module.

- Avoid accessing 'log' before is it initialized.

- When creating admin user, don't expect JSON message for all other types of
errors. They are simple strings.

Tests:

- Try to modify the password of a non-existent account. Notice the error message
is shown. Modify the password of an existing account and it succeeds.

- Create an account with username that already exists. Notice that error is
shown. Otherwise, it succeeds.

- Allow the UI to enter short passwords and notice that error is shown properly
during user creation and reset password.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-30 00:13:30 +05:30
Sunil Mohan Adapa
cfb8c9f8c2
miniflux: Remove a spurious error message after resetting password
Tests:

- Reset the password of an account successfully. No error is shown.

- Reset the password of a non-existent account. Error is shown.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-30 00:13:08 +05:30
Ettore Atalan
fe39b91bfe
Translated using Weblate (German)
Currently translated at 99.6% (1570 of 1576 strings)
2024-07-27 23:41:56 +02:00
Joseph Nuthalapati
763d9dcf7c
readme: Mention the AGPLv3+ license
GitLab wrongly identifies the license of FreedomBox as the non-free
Server Side Public License. A mention of the license in the README
can be useful to clarify this.

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2024-07-26 13:55:17 -07:00
Ricky From Hong Kong
79365ba2ae
Translated using Weblate (Chinese (Traditional))
Currently translated at 23.7% (375 of 1576 strings)
2024-07-26 10:09:27 +02:00
Joseph Nuthalapati
81e1b0d9cf
miniflux: Fix error handling for reset password
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-25 22:41:33 +05:30
Joseph Nuthalapati
2f3e586eb6
miniflux: Fix regression in creating admin user
- Fix typo in private method
- Fix mypy errors
- Fix error message formatting

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-24 16:06:05 +05:30
Sunil Mohan Adapa
3501b1f1a8
miniflux: Add list of client apps from upstream clients list
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-24 16:05:47 +05:30
Sunil Mohan Adapa
948f8f7e59
miniflux: Drop postgres-contrib package as it seem redundant
Both postgres and postgres-contrib package seem to pull the postgres-16 package
ultimately.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2024-07-24 16:05:26 +05:30
Joseph Nuthalapati
0b58a39758
miniflux: Add new app
[sunil's changes]

- Add copyright information the logo.

- Deluge: undo an unintended change.

- Drop wrapper calls over privileged methods. The new privileged method
decorators make is easy to avoid these.

- Styling updates: docstrings, single quotes for strings, casing for UI strings.

- Drop "DO NOT EDIT" comment for files located in /usr as they are not expected
to be editable by the user.

- Fix 'miniflux' to 'Miniflux' in web client name.

- Overwrite FreedomBox settings onto the existing configuration file when setup
is re-run. This is to ensure that FreedomBox settings take priority.

- Use return value of the miniflux command to raise errors.

- Use pathlib module where possible.

- Move message parsing into the privileged module from views module.

- Resize SVG and PNG logo files for consistency with icon styling.

- Use hypens instead of underscores in URLs and Django URL names.

- Rename miniflux_configure.html to miniflux.html.

- Use base method for minor simplification in backup functional test. Ensure
that the test can be run independently when other tests are not run.

- Update tests to reflect code changes.

- Avoid concatenating internationalized strings so that they can be translated
properly.

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2024-07-23 00:47:02 -07:00
109247019824
ccbd5d7d20
Translated using Weblate (Bulgarian)
Currently translated at 46.1% (728 of 1576 strings)
2024-07-19 16:09:19 +02:00
James Valleroy
255aa9554d
Release v24.15 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v24.15
2024-07-16 22:52:59 -04:00
James Valleroy
86557f7913
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-16 22:52:59 -04:00
Monika
8d1504ac8b
Translated using Weblate (Polish)
Currently translated at 31.1% (491 of 1576 strings)
2024-07-13 12:09:43 +00:00
Joseph Nuthalapati
1e38dbd720
make: Ignore .mypy_cache folders while copying files
This fixes the problem of running over the limit of ARG_MAX of /bin/sh in the
dev container when copying the files of plinth modules.

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2024-07-09 10:25:52 -07:00
Dietmar
0a68522b84
Translated using Weblate (German)
Currently translated at 99.5% (1569 of 1576 strings)
2024-07-09 19:09:12 +02:00
Ihor Hordiichuk
437d527113
Translated using Weblate (Ukrainian)
Currently translated at 100.0% (1576 of 1576 strings)
2024-07-07 21:09:15 +02:00
Johannes Keyser
9296c63f52
Translated using Weblate (German)
Currently translated at 99.1% (1563 of 1576 strings)
2024-07-04 19:09:22 +02:00
大王叫我来巡山
3f39285931
Translated using Weblate (Chinese (Simplified))
Currently translated at 66.5% (1049 of 1576 strings)
2024-07-03 14:34:11 +02:00
Besnik Bleta
374d17c4e1
Translated using Weblate (Albanian)
Currently translated at 99.7% (1572 of 1576 strings)
2024-07-03 07:09:19 +00:00
Burak Yavuz
a15271ad6a
Translated using Weblate (Turkish)
Currently translated at 100.0% (1576 of 1576 strings)
2024-07-03 07:09:18 +00:00
John Doe
21275918a3
Translated using Weblate (French)
Currently translated at 100.0% (1576 of 1576 strings)
2024-07-03 07:09:17 +00:00
gallegonovato
f9863985fc
Translated using Weblate (Spanish)
Currently translated at 100.0% (1576 of 1576 strings)
2024-07-03 07:09:16 +00:00
James Valleroy
2cbbd95609
Release v24.14 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v24.14
2024-07-01 20:55:34 -04:00
James Valleroy
2a51fb8c9b
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-01 20:55:10 -04:00
James Valleroy
3e56c96461
locale: Update translation strings
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-01 20:11:38 -04:00
Sunil Mohan Adapa
7c485c0367
container: Allow podman containers to run inside the container
- Allow all system calls from within the container (in particular the openat2
syscall [1]). This enables running podman containers inside the nspawn
container. Nextcloud can now be tested/developed inside the container.

- List of available system call filter groups can be seen with the command
'systemd-analyze syscall-filter'[2].

Links:

1) https://github.com/containers/podman/issues/7013

2) https://www.freedesktop.org/software/systemd/man/latest/systemd-analyze.html#systemd-analyze%20syscall-filter%20%5BSET...%5D

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-06-30 19:14:57 -04:00
James Valleroy
d87685b95a
diagnostics: Add option for automatic repair
- Not enabled by default currently. This can be changed after further
  testing.

- Re-use existing operation from diagnostics run. However, this requires
  changing the app_id of the operation for each app.

Tests:

- Enable automatic repair, and run diagnostics. See that repairs are
  run.

- Enable automatic repair, and wait for daily diagnostics run. See that
  repairs are run.

Closes: #2399.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2024-06-24 12:06:20 -07:00
John Doe
e7e9642a11
Translated using Weblate (French)
Currently translated at 100.0% (1574 of 1574 strings)
2024-06-20 21:09:36 +02:00
James Valleroy
3262fc1830
Release v24.13 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v24.13
2024-06-17 20:47:52 -04:00
James Valleroy
15ff133166
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-06-17 20:47:37 -04:00