5908 Commits

Author SHA1 Message Date
Fioddor Superconcentrado
94c3ddefd1
Translated using Weblate (Spanish)
Currently translated at 100.0% (1321 of 1321 strings)
2020-10-01 23:41:04 +02:00
Joseph Nuthalapati
2416d87398
container: Handle edge cases with container update
Fix update command failing when image files do not exist.

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-09-30 15:49:37 +03:00
Sunil Mohan Adapa
3f4bd9416d
doc: dev: Link to list of potential apps from tutorial
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-29 21:18:11 -04:00
Sunil Mohan Adapa
956530ab8a
mumble: Store and use a single domain for TLS certificate setup
Certificate can be setup for a single domain at a time in Mumble. So, allow the
user to choose the domain purely for this propose even though Mumble can work
with multiple domains. Tell Let's Encrypt to work with this domain.

Tests:

- Without Mumble installed, change the domain name. Notice the mumble related
certificate events are ignored.

- Install Mumble, a TLS domain is automatically selected. Certificate is setup
for that domain.

- Ensure at least two domains are setup in the system. See the list in the
Mumble app page. Choose a non-default domain. Domain should change and cert
should be setup for that domain.

- Go to config app and change the domain. Mumble domain should get set to a
different domain and cert should get updated.

- Install mumble without these changes. Apply the changes and start FreedomBox.
Mumble app should get upgraded and certificate should get setup for a domain.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-29 20:46:48 -04:00
Phil Morrell
215371a877
mumble: configure letsencrypt component
Fixes: #701

Signed-off-by: Phil Morrell <debian@emorrp1.name>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-29 20:46:42 -04:00
Sunil Mohan Adapa
c2a9592de1
quassel: Fix minor typo
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-29 20:46:36 -04:00
ssantos
9ea5792306
Translated using Weblate (Portuguese)
Currently translated at 12.3% (163 of 1321 strings)
2020-09-29 11:39:56 +02:00
Coucouf
69d66927ac
Translated using Weblate (French)
Currently translated at 100.0% (1321 of 1321 strings)
2020-09-29 11:39:56 +02:00
Sunil Mohan Adapa
5f4e2673f3
quassel: Don't handle certificates if not installed
Tests:

- Without these changes, with Quassel not-installed, change the domain name.
Notice that certificate events for Quassel fails due to missing domain
information.

- With these changes, with Quassel not-installed, change the domain name. Notice
that certificate events for Quassel don't result in any actions.

- With these changes, with Quassel installed, change the domain name. Notice
that certificate events for Quassel succeed.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-28 19:23:26 -04:00
Sunil Mohan Adapa
53b6203473
coturn: Don't handle certificates if not installed
Tests:

- Without these changes, with Coturn not-installed, change the domain name.
Notice that certificate events for Coturn fails due to missing domain
information.

- With these changes, with Coturn not-installed, change the domain name. Notice
that certificate events for Coturn don't result in any actions.

- With these changes, with Coturn installed, change the domain name. Notice that
certificate events for Coturn succeed.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-28 19:23:23 -04:00
Sunil Mohan Adapa
514a04d643
doc: Before fetching, drop all old to cleanup deleted pages/images
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-28 16:42:32 -04:00
Michael Breidenbach
e421e0fde9
Translated using Weblate (Swedish)
Currently translated at 100.0% (1321 of 1321 strings)
2020-09-28 14:41:22 +02:00
Joseph Nuthalapati
5a04f6d309
calibre: Minor changes to app description
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
2020-09-27 22:16:37 +05:30
Joseph Nuthalapati
6bfffeee13
calibre: Add new e-book library app
[joseph: initial code for the app]
Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
[sunil: use the modified framework API]
[sunil: simplify setup logic, move to service file]
[sunil: strict security for service file, dynamic users]
[sunil: interface for managing libraries]
[sunil: implement backup/restore]
[sunil: add functional, action, and view tests]
[sunil: use svg icon]
[sunil: update description]
[sunil: fix apache configuration]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2020-09-27 22:16:07 +05:30
Sunil Mohan Adapa
68475668ea
tests: functional: Simplify calling the login helper
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2020-09-27 22:15:27 +05:30
Sunil Mohan Adapa
7b7d42fe33
tor: Don't check if enabled when not installed
Tests:

- Install Tor and enable onion service. Restart FreedomBox. During
initialization the onion service domain is added. Check in Name Services.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-27 09:54:20 -04:00
Sunil Mohan Adapa
9b9238188a
pagekite: Don't update names module if not installed
- Due to a minor regression with init() method refactoring:

  - Pagekite tries to check if it is enabled even when it is not installed. This
  is an unnecessary check.

  - Pagekite tries to remove domains from name services even when it is not
  installed. This could have unnecessary consequences.

Fix this by checking if Pagekite is installed and perform name services updating
only if service is enabled.

Tests:

- Enable pagekite and configure it. When FreedomBox is restarted, Pagekite kite
is announced as domain and shown in Name Services.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-27 09:54:18 -04:00
Sunil Mohan Adapa
ec5f994068
pagekite: Don't announce unconfigured kite as a valid domain
Closes: #1891.

As soon as the app is installed, the default configuration has NAME.pagekite.me.
This is incorrectly announced as a valid domain to the system. Avoid this
behavior by never announcing this default configured kite name.

Tests:

- Install Pagekite. Observe that the default kite name is not announced as a
domain (confirmed in Name Services). With the patch, it will.

- Change the domain to anything other than default. It is announced. LE tries to
obtain cert. Name Services list the domain.

- Change the domain back to default kite name. It is not announced. Old domain
is removed.

- Start FreedomBox with Pagekite configured with default domain. It is not
announced.

- Start FreedomBox with Pagekite configured with non-default domain. It is
announced.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-27 09:54:14 -04:00
Sunil Mohan Adapa
e9559b2d0d
dynamicdns: Drop unnecessary code to set app as enabled
This is already handled by module loader.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-27 09:54:11 -04:00
Sunil Mohan Adapa
75a46962f0
module_loader, web_framework: Update console log messages
- Drop message for initialization of each app. This was removed earlier but was
reintroduced during init() refactoring. There is not much use for these messages
and the noise they generate hide some important messages relating to domains
added.

- Print lists in a better way for humans.

- Add a log message after all the initialization is completed.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-27 09:54:09 -04:00
Fioddor Superconcentrado
b527b003a3
CONTRIBUTING: Require flake8 compliance
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-25 16:26:35 -07:00
Fioddor Superconcentrado
d588e7fa25
HACKING: Add extra development requirements
[sunil: Reword the extra requirements to explain when they are needed]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-25 16:26:01 -07:00
Joseph Nuthalapati
f69d8289f6
bepasty: Change default permissions to 'read'
Allow read access by URL by default.

Tests:

- Installing bepasty fresh show the default permissions as read.

- Upgrading bepasty from older version when default permissions are none sets
the default permissions to read.

- Upgrading bepasty from older version when default permissions are not none
retrains the permissions.

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
[sunil: Don't relocate setup() method]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
Tested-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-25 14:54:35 -07:00
Coucouf
889810bb96
Translated using Weblate (French)
Currently translated at 100.0% (1321 of 1321 strings)
2020-09-25 00:41:00 +02:00
James Valleroy
afc6b178a4
Release v20.14.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v20.14.1
2020-09-23 07:38:44 -04:00
James Valleroy
33dccebae7
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-23 07:35:21 -04:00
Coucouf
f68b9e23bb
Translated using Weblate (French)
Currently translated at 94.6% (1250 of 1321 strings)
2020-09-23 13:08:36 +02:00
Dietmar
995347db54
Translated using Weblate (German)
Currently translated at 98.4% (1300 of 1321 strings)
2020-09-23 13:08:35 +02:00
Sunil Mohan Adapa
00b551972b
module_loader: Load/process all essential modules before others
Since modules need not have dependency on any essential module even though they
are dependent on them, it must be assumed that any module may depend on any
essential module. So, load or process (like running setup) essential modules
before non-essential modules.

Closes: #1967.

Tests:

- When service is started, console messages show that in the module load order,
all the essential modules are prioritized.

- Without these changes, this is not the case.

- When version of essential app and non-essential app are incremented, essential
app is setup before the non-essential app.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-23 06:44:13 -04:00
Petter Reinholdtsen
694866e4b2
Translated using Weblate (Norwegian Bokmål)
Currently translated at 82.2% (1086 of 1321 strings)
2020-09-22 11:39:56 +02:00
Petter Reinholdtsen
e9f944523f
Translated using Weblate (Norwegian Bokmål)
Currently translated at 81.9% (1083 of 1321 strings)
2020-09-21 08:58:17 +02:00
Sunil Mohan Adapa
9f8f187d42
cockpit: Don't show home page icon to non-admin users
Tests:

- Logout and see that the home page icon is not visible.

- Login as non-admin user and see that the home page icon is not visible.

- Login as admin user and see that the home page icon is visible.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2020-09-19 15:21:03 +05:30
JC Staudt
a9ee8fb432
minidlna: Fix typo DNLA -> DLNA
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-18 14:00:59 -07:00
Nikita Epifanov
11c05bad0d
Translated using Weblate (Russian)
Currently translated at 100.0% (1321 of 1321 strings)
2020-09-17 11:36:16 +02:00
Burak Yavuz
ef65d02c56
Translated using Weblate (Turkish)
Currently translated at 100.0% (1321 of 1321 strings)
2020-09-17 11:36:16 +02:00
James Valleroy
d5b764df81
Release v20.14 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v20.14
2020-09-15 17:43:05 -04:00
James Valleroy
840b31f08c
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 17:42:22 -04:00
James Valleroy
981561cbbb
locale: Update translation strings
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 16:56:59 -04:00
Reg Me
ca1bdf4b8d
Translated using Weblate (Dutch)
Currently translated at 73.8% (960 of 1300 strings)
2020-09-15 22:54:55 +02:00
Sunil Mohan Adapa
7a11ba9fa3
deluge: Use older icon to drop CC 2.0 license
Tests:

- Check the interface in apps page and in the Deluge app page that icon has
changed.

- No lintian warnings related to debian/copyright file.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 15:23:32 -04:00
Sunil Mohan Adapa
bb28ac1b72
doc: manual: Replace manual icons to drop CC 2.5 license
Tests:

- Affected sections/pages of the manual are: Firewall, Hardware and VirtualBox.
Confirm by diffing with manual generated without the code changes.

- Open all affected pages and the full manual page and confirm that images have
changed.

- Check all affected pages and the full manual page in FreedomBox interface and
confirm that images have changed.

- Check all affected sections in the generated PDF.

- Repeat tests for English and Spanish manuals.

- No lintian warnings related to debian/copyright file.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 15:23:29 -04:00
Sunil Mohan Adapa
04a0fd7b78
doc: wikiparser: Show icons with full size
Setting the height to 26 in the XML file results in HTML getting a 16px size.
16x16 is original size of all the icons. This was first proposed with a size of
20 in the original wikiparser MR.

Tests:

- Affected sections/pages of the manual are: Firewall, Hardware and VirtualBox.
Confirm by diffing with manual generated without the code changes.

- Open all affected pages and the full manual page and confirm that images sizes
are 16px (original size).

- Check all affected pages and the full manual page in FreedomBox interface and
confirm that images sizes are 16px (original size).

- Check all affected sections in the generated PDF.

- Repeat tests for English and Spanish manuals.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 15:23:27 -04:00
Sunil Mohan Adapa
57c60d9ac6
doc: wikiparser: Use icons from the icons directory
Currently some icons are duplicated between the images/ directory and
images/icons/ directory. De-duplicate and only use the icons from images/icons
directory.

Tests:

- Affected sections/pages of the manual are: Firewall, Hardware and VirtualBox.
Confirm by diffing with manual generated without the code changes.

- Open all affected pages and the full manual page and confirm that images are
loading properly.

- Check all affected pages and the full manual page in FreedomBox interface and
confirm that images are loading properly.

- Check all affected sections in the generated PDF.

- Repeat tests for English and Spanish manuals.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 15:23:24 -04:00
Q.-A. Nick
91d96b9f72
upgrades, security: Update the messages describing backports
See https://salsa.debian.org/sunilmohan/plinth/-/merge_requests/1 for discussion
on the topic.

Signed-off-by: Q.-A. Nick <email.bug@arcor.de>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-15 11:22:04 -07:00
Sunil Mohan Adapa
1b7349867e
doc: manual: Fetch latest manual, remove non-existent images/pages
Remove all .raw.wiki files and images (except icons). Then fetch the latest
manual.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-14 23:19:35 -07:00
Fioddor Superconcentrado
4c9e5dbc24
snapshots: Clarify description for disabling yearly snapshots
BTW, choice literals translated.

Close #1937.

Signed-off-by: Fioddor Superconcentrado <fioddor@gmail.com>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-14 15:40:51 -07:00
Fioddor Superconcentrado
43ab6db456
i18n: Mark strings missed for translation
Helps: #1938.

    backups/forms.py:
	- ChoiceField labeled to allow translation.
	- Translation applied to hard coded literals.

    config/forms.py:
	Lazy translation applied to literals that were translated but still
	displayed in english to non-english users.

    diagnostics_results.html:
	Apply translation to results. Use gettext_noop to mark for translation.

    dynamicdns/forms.py:
	Apply translation to choice literals.

    i2p/views.py:
	Lazy translation applied to literals that were translated but still
	displayed in english to non-english users.

    names.html:
	Apply translation to table headers.

    performance/__init__.py:
	Apply translation to description literals.

    radicale/forms.py:
	ChoiceField labeled to allow translation.

    users/forms.py:
	CharField labeled to allow translation.

    QA:
	- Literals visually verified.
	- No errors in py.test-3.
	- Yapf applied (only) to changed files.
	- No remarks by flake8 to changed file.

Signed-off-by: Fioddor Superconcentrado <fioddor@gmail.com>
[sunil: Separate out the translations]
[sunil: Fix i18n for diagnostics]
[sunil: dynamicdns: Also do i18n for string GnuDIP]
[sunil: searx: Revert an incorrect removal of import]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-14 15:39:19 -07:00
Fioddor Superconcentrado
13998ea977
HACKING.md: Instructions for container-related troubleshooting
A 'Troubleshooting' section added under 'Using Containers' chapter with 2 hints.
References to files and directories were sometimes marked as code sometimes not.
I've standardized them. Bullets in 'Requirements for Development OS' section
visually stress the alternatives.

Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-14 14:36:35 -07:00
Sunil Mohan Adapa
893ecbed1b
matrixsynapse: Perform a one time conversion to new config format
- This will allow us to remove the code needed for force upgrading. Upgrade code
can be dropped after a while.

- This will ensure that all our users have a single configuration format which
will make future testing easier.

- We can notify the users of a single overwrite now and be assured that in
future, the overwrites of configuration will not happen.

- We don't have to monitor for changes to configuration files in future version
of the package.

- Keep old configuration as a backup file and restore a pristine copy with
--reinstall and --force-confmiss.

Tests:

- Install the app freshly. Configuration file is unchanged, new config snippets
are created. App is running.

- Install the app with code before new configuration changes. Notice that old
configuration format is used. Then switch the code to a branch with current
changes. Setup is automatically executed. The package is reinstalled. After
re-installation, the main config file is restored. Configuration snippets exist.
value of public registration and domain is preserved. Backup file exists with
previous configuration contents.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Tested-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-14 16:49:54 -04:00
Sunil Mohan Adapa
f59fc5e33b
package: Add ability to reinstall a package
- Also add ability restore missing configuration files during reinstall.

- Reinstall is useful for restoring the original configuration files of the
package.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-14 16:49:51 -04:00