5388 Commits

Author SHA1 Message Date
Joseph Nuthalapati
4f6d987ef4
infinoted: Fix permissions of sync directory
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-06 19:54:53 -04:00
Joseph Nuthalapati
435b028d17
firewalld: Force upgrade anything in [0.7, 0.9)
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-06 19:03:02 -04:00
Joseph Nuthalapati
7ed64c03fc
vagrant: Skip upgrading freedombox dependencies
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-06 19:02:58 -04:00
vihor
e14ba856ae
Translated using Weblate (Serbian)
Currently translated at 7.6% (96 of 1261 strings)
2020-04-06 04:28:26 +02:00
Joseph Nuthalapati
7b5aa454fc
Translated using Weblate (Telugu)
Currently translated at 65.1% (821 of 1261 strings)
2020-04-06 04:28:24 +02:00
Coucouf
a3eda27b54
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-06 04:28:23 +02:00
Joseph Nuthalapati
900d4e7e18
ikiwiki: Disable edits. Add moderation of comments
Fixes #1631

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-05 18:54:52 -04:00
Thomas Vincent
97846f60cb
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-05 15:06:19 +02:00
Coucouf
8cc4691674
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-05 15:06:19 +02:00
James Valleroy
907912d3a6
packages: Keep existing hold if already set
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-04 17:03:23 -04:00
James Valleroy
10c6ee13da
packages: Mark freedombox package as held during package installs
In case the package to be installed (or its dependencies) conflicts
with freedombox (or its dependencies), this will fail the installation
rather than removing the freedombox package.

Closes #1790.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-04-04 14:12:52 -04:00
vihor
9d6d3427da
Added translation using Weblate (Serbian) 2020-04-04 18:07:30 +02:00
Sunil Mohan Adapa
8cae5af622
syncthing: Update description to mention 'syncthing' group
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-04 09:32:03 -04:00
Joseph Nuthalapati
ec8702f848
app: Fix grammar in developer documentation string
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-04 09:32:00 -04:00
Joseph Nuthalapati
d2993236e3
cosmetic: Minor yapf and other fixes
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-04 09:31:57 -04:00
Joseph Nuthalapati
09583f3bbe
yapf: Update conf to add blank line before nested class/def
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-04 09:31:52 -04:00
Joseph Nuthalapati
e04ae48637
users: Add component for managing users and groups
- Handle groups needed by an app.
- Handle reserved usernames for an app.
- Updated documentation
- Updated unit tests

Tests performed:
  - Reserved usernames: ez-ipupd, ejabberd, Debian-minetest, mldonkey,
    monkeysphere, mumble-server, privoxy, quasselcore, radicale, debian-tor,
    debian-transmission
  - Reserved usernames checks should work in the following forms:
    - Create user
    - Update user
    - First boot user creation
  - Full list of available groups should appear in following cases:
    - Create user form
    - Update user form
  - Full list of groups should get created in Django DB during:
    - Update user form display
    - First boot form save
  - When updating the last admin user, the 'admin' group choice is checked
    and disabled.
  - Following groups show up (sorted by group name):
    - bit-torrent: Download files using BitTorrent applications
    - git-access: Read-write access to Git repositories
    - i2p: Manage I2P application
    - wiki: View and edit wiki applications
    - minidlna: Media streaming server
    - ed2k: Download files using eDonkey applications
    - freedombox-share: Access to the private shares
    - web-search: Search the web
    - syncthing: Administer Syncthing application
    - feed-reader: Read and subscribe to news feeds
    - admin: Access to all services and system settings
  - Directory validation form checks for write permissions for following apps:
    - deluge with debian-deluged user
    - transmission with debian-transmission user
  - Sharing app should show all the groups in add/edit share forms
  - The following apps should get added to share group during setup:
    debian-transmission
    debian-deluged
  - Unit tests pass
  - Functional tests for users and groups pass
  - Test that an app (example syncthing) provides the necessary
    permissions to users in that group (but not in admin group).

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
[sunil: Fix i18n of group descriptions]
[sunil: Update developer documentation]
[sunil: Separate out cosmetic changes]
[sunil: Fix component ID for mumble]
[sunil: sharing: Remove unneeded dependency on users app]
[sunil: Implement better API for getting groups in component]
[sunil: Fix incorrect regression change ttrss app]
[sunil: Make iterating over gourps more readable]
[sunil: Improve tests, drop single use fixtures]
[sunil: Simplify test_view.py fixture]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Tested-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-04-04 09:31:35 -04:00
Allan Nordhøy
e6e67f7d53
Translated using Weblate (Hindi)
Currently translated at 65.1% (821 of 1261 strings)
2020-04-03 22:11:10 +02:00
Allan Nordhøy
8252332072
Translated using Weblate (Italian)
Currently translated at 50.1% (633 of 1261 strings)
2020-04-03 22:11:10 +02:00
Allan Nordhøy
62f75f16d6
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-03 22:11:09 +02:00
Allan Nordhøy
b9b4a2058b
Translated using Weblate (German)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-03 22:11:09 +02:00
James Valleroy
2472b59484
radicale: Support upgrade to any 2.x version
Closes #1429

Test:
- Install latest radicale (2.1.11-8). Downgrade python3-radicale and
  radicale to 2.1.11-6. Change access rights setting to something
  other than the default. Run `unattended-upgrades -v` and confirm
  that there is a conffile prompt. Run `apt update` and check that log
  show radicale is upgraded. Confirm that access rights are still set
  as selected.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Nektarios Katakis <iam@nektarioskatakis.xyz>
2020-04-02 20:24:41 +01:00
Coucouf
24129482a6
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-02 17:08:25 +02:00
Coucouf
b61b6da5d1
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-02 04:19:11 +02:00
Coucouf
44d8a29f07
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-01 17:43:53 +02:00
Coucouf
6af88e7e63
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-01 15:19:38 +02:00
Pavel Borecki
52149fa2ec
Translated using Weblate (Czech)
Currently translated at 81.4% (1027 of 1261 strings)
2020-04-01 02:36:47 +02:00
Coucouf
8a728fbe44
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-04-01 02:36:46 +02:00
Coucouf
14088db10b
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-03-31 20:57:16 +02:00
Michael Breidenbach
fb1ce4473e
Translated using Weblate (German)
Currently translated at 100.0% (1261 of 1261 strings)
2020-03-31 06:20:28 +02:00
Sunil Mohan Adapa
a3218b2d79
networks: Make styling more specific to avoid interference
Tests performed:

- Visit networks page, observe that activate/de-activatge buttons have similar
width of 7em (as per inspector).

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-03-29 09:43:51 +03:00
Sunil Mohan Adapa
4a8425b111
monkeysphere: Making styling more specific to avoid interference
Tests performed:

- Visit monkeysphere page, observe that all the action buttons have similar
width of 9em (as per inspector).

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-03-29 09:43:40 +03:00
Sunil Mohan Adapa
89b7301962
pagekite: Fix functional tests
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-03-29 09:43:26 +03:00
Alice Kile
0b5b384651
app: Separate app enable/disable form from config form
- Introduce new API to mark an app that it can't be disabled.

- Mark jsxc, storage, config, upgrade and firewall apps as can't be disabled.

- Fixed functional tests

- Replaced AppForm with forms.Form in all modules' forms.py.

- Remove app.template.js.

- Remove unused styles.

- Remove app status checks in form_valid of Deluge, Diaspora, Matrix, Ejabberd,
MediaWiki, Storage, Transmission, Quassel

- Purge unused is_enabled context variables (Ikiwiki)

- ejabberd: Minor cleanup in template

- jsxc: Cleanup unneeded overrides

- tahoe: Cleanup unnecessary overrides

Tests performed:

- For all apps affected, test enable/disable button works and submitting
configuration form works: with changes updates message and without changes
'settings unchanged' message.
  - avahi
  - bind
  - cockpit
  - SKIP: coquelicot
  - datetime
  - deluge
  - SKIP: diaspora
  - ejabberd
  - gitweb
  - i2p
  - infinoted
  - ikiwiki
  - matrixsynapse
  - mediawiki
  - minetest
  - minidlna
  - mldonkey
  - mumble
  - pagekite
  - privoxy
  - quassel
  - radicale
  - roundcube
  - SKIP: samba
  - searx
  - SKIP: shaarli
  - shadowsocks
  - ssh
  - tahoe
  - transmission
  - FAIL: tt-rss (not installable)
  - wireguard
- Deluge test that configuration changes when app is disabled work
- Quassel test that setting the domain works when app is diabled
- Transmission test that setting the domain works when app is diabled
- Ikiwiki create form works properly
- Enable/disable button appears as expected when enabled and when disabled
- Enable/disable button works without Javascript
- Functional tests work for affected apps, Tor and OpenVPN
- AppForm is removed from developer documentation
  - Forms reference
  - Customizing tutorial
- Test all apps using directory select form
  - Transmission
  - Deluge
- Visit each template that overrides block configuration and ensure that it is
loaded properly and the display is as expected.
- All apps that use AppView that are not tested above should not have an
enable/disable button. That is JSXC, update, config, firewall, storage, users.

Signed-off-by: Alice Kile <buoyantair@protonmail.com>
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-03-29 09:42:31 +03:00
Thomas Vincent
bd8aee17d5
Translated using Weblate (French)
Currently translated at 100.0% (1261 of 1261 strings)
2020-03-29 00:09:31 +01:00
wind
7a316b2a6c
Translated using Weblate (Russian)
Currently translated at 74.2% (936 of 1261 strings)
v20.5.1
2020-03-27 19:46:43 +01:00
James Valleroy
dd2ba4c8fa
Release v20.5.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-03-26 09:13:34 -04:00
James Valleroy
b7fda9d657
debian: Correct doc package names in Recommends
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-03-25 18:47:41 -04:00
Sunil Mohan Adapa
cd5bd5a31c
debian: Remove outdated TODO file
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-03-25 17:52:24 -04:00
Sunil Mohan Adapa
172f5f3160
debian: Separate binary packages for each language manual
- When there are multiple binary packages, a common practice is to install into
  debian/tmp using the Makefile and then use dh_install and .install files. This
  splits the contents installed into debian/tmp to various package directories
  debian/{package}.

- Install documentation in to /usr/share/freedombox instead of
  /usr/share/doc/freedombox. Then create a link to /usr/share/doc/freedombox/.
  This approach is recommended Debian Policy Manual in section 12.3[1] because
  it should safe for administrator to delete files in /usr/share/doc safely
  without breaking the application functionality. The doc-base must refer to the
  documentation in /usr/share/doc as per doc-base documentation.

Links

1) https://www.debian.org/doc/debian-policy/ch-docs.html#additional-documentation

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-03-25 17:52:22 -04:00
Sunil Mohan Adapa
58b6f0a8e1
debian: Prepare for multiple binary packages
Rename various files in debian directory so that it is clear which binary
package they are relevant for.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-03-25 17:52:19 -04:00
Sunil Mohan Adapa
75bd8a61f8
debian: Update doc-base to include PDF
- Fix the list of files for the HTML format.

- Add PDF format listing.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-03-25 17:52:16 -04:00
Allan Nordhøy
9f3da43b43
Translated using Weblate (Norwegian Bokmål)
Currently translated at 83.0% (1047 of 1261 strings)
2020-03-25 19:46:24 +01:00
Michael Breidenbach
f5641a9a2e
Translated using Weblate (German)
Currently translated at 100.0% (1261 of 1261 strings)
2020-03-25 19:46:23 +01:00
Sunil Mohan Adapa
56250562d4
help: Move custom static file handling into app from central place
Tests performed:

- Print the calls to _mount_static_directory() before and after the changes.
They should print the same.

- With English as the preferred language, visit the user manual. Images should
be visible. Visit MediaWiki manual page with learn more link in MediaWiki.
Images should be visible.

- Repeat with Spanish as the preferred language.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-03-25 20:23:55 +02:00
Sunil Mohan Adapa
b80083cfce
jsxc: Fix issue with serving static files
During the re-organization of data files into individual apps, a regression for
JSXC preventing the symbolic links in the source code from being copied to
destination folder during 'setup.py install'. Fix this by removing symbolic
links and serving the file using CherryPy mappings with the help of StaticFiles
component.

Closes: #1180.

Tests performed:

- Access the following URLs successfully:
  https://localhost:4430/plinth/static/jsxc/img/menu_black.svg
  https://localhost:4430/plinth/static/jsxc/libjs-jsxc/jsxc.css
  https://localhost:4430/plinth/static/jsxc/libjs-jsxc/sound/Ping1.mp3
  https://localhost:4430/plinth/static/jsxc/libjs-jsxc/lib/otr/lib/dsa-webworker.js

- Login to JSXC, see the roster properly on the right side.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-03-25 20:22:52 +02:00
Sunil Mohan Adapa
7a0ea38fb1
web_server: Introduce component to handle special static file dirs
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-03-25 20:22:37 +02:00
Allan Nordhøy
a0f6b0ea4a
networks: Update label wording in topology form: Choose → Specify
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-03-24 15:03:06 -07:00
Petter Reinholdtsen
58873d1b45
Translated using Weblate (Norwegian Bokmål)
Currently translated at 83.1% (1048 of 1261 strings)
2020-03-24 12:47:43 +01:00
James Valleroy
b3b177d85b
Release v20.5 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v20.5
2020-03-23 19:43:00 -04:00