9348 Commits

Author SHA1 Message Date
James Valleroy
45509357a4
Release v25.4.1
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v25.4.1
2025-03-02 13:12:35 -05:00
James Valleroy
231d2e2cbc
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-02 13:11:46 -05:00
James Valleroy
506ed65e9f
debian: Move e2fsprogs to Recommends
Temporary workaround for piuparts bug #1010967.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-02 11:55:25 -05:00
Jiří Podhorecký
483f1c3b7e
Translated using Weblate (Czech)
Currently translated at 100.0% (1827 of 1827 strings)
2025-02-27 06:06:52 +01:00
Dietmar
762dbdad84
Translated using Weblate (German)
Currently translated at 98.3% (1797 of 1827 strings)
2025-02-27 06:06:52 +01:00
109247019824
588c7847a9
Translated using Weblate (Bulgarian)
Currently translated at 56.0% (1024 of 1827 strings)
2025-02-25 22:04:29 +01:00
109247019824
dec3d3bf9e
Translated using Weblate (Bulgarian)
Currently translated at 55.9% (1023 of 1827 strings)
2025-02-25 17:07:36 +01:00
109247019824
7023d6f6b3
Translated using Weblate (Bulgarian)
Currently translated at 55.9% (1022 of 1827 strings)
2025-02-25 12:56:52 +01:00
Besnik Bleta
bd292df6f1
Translated using Weblate (Albanian)
Currently translated at 99.5% (1819 of 1827 strings)
2025-02-25 10:20:08 +01:00
109247019824
e50d250749
Translated using Weblate (Bulgarian)
Currently translated at 55.5% (1015 of 1827 strings)
2025-02-25 10:20:08 +01:00
大王叫我来巡山
28706ea161
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 62.6% (1145 of 1827 strings)
2025-02-25 10:20:08 +01:00
109247019824
d5303506ff
Translated using Weblate (Bulgarian)
Currently translated at 55.1% (1008 of 1827 strings)
2025-02-25 07:15:40 +01:00
Burak Yavuz
281ee94350
Translated using Weblate (Turkish)
Currently translated at 100.0% (1827 of 1827 strings)
2025-02-25 07:15:40 +01:00
James Valleroy
8667efafc3
Release v25.4 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v25.4
2025-02-24 20:46:56 -05:00
James Valleroy
320e57c42b
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-24 20:46:23 -05:00
James Valleroy
1241c329f9
locale: Update translation strings
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-24 20:13:47 -05:00
Sunil Mohan Adapa
d411718fb1
dynamicdns: Handle addition of duplicate domains
Tests:

- Adding a new domain works. Adding a new domain with old name results in error
message.

- Editing a old domain works. Updating the domain name works. Updating
configuration parameters without domain name change works.

- Adding a domain with capital letters results in domain with lower cased
letters.

Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-24 17:30:46 -05:00
Sunil Mohan Adapa
84bf20e1b8
names: Handle addition of duplicate static domains
Tests:

- Adding an new unique domain works.

- Adding an existing domain results in an error.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-24 17:30:42 -05:00
James Valleroy
5544eff707
upgrades: Drop unattended-upgrade call from dist-upgrade
unattended-upgrade will take a very long time to run, and won't be able
to upgrade most of the packages. There is not much benefit to running it
here.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-02-23 12:53:19 -08:00
James Valleroy
d0e25e5239
upgrades: Inhibit shutdown during dist-upgrade
Tests:

- Start a dist-upgrade from stable to testing. Dist upgrade is completed
  as expected. "The system will reboot" message appears only after
  freedombox-dist-upgrade.service has completed.

Helps: #2090

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-02-23 12:53:10 -08:00
James Valleroy
674da2b9c8
container: Fix spelling of 'destroy'
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-02-23 12:47:42 -08:00
sai
cdff413307
Translated using Weblate (Telugu)
Currently translated at 77.0% (1400 of 1816 strings)
2025-02-22 10:04:25 +00:00
James Valleroy
c67b1164df
matrixsynapse: tests: Fix adding domain
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 11:16:27 -05:00
Sunil Mohan Adapa
85a694f20f
names: Retrieve the most important domain in a more generic way
- The get_domain_name() has some problem. It returns only static domain names
but not a dynamic domain name. It may not always return the same domain when
multiple static domains are configured. It may return return an empty string.

Tests:

- JSXC page shows the alphabetically first static domain. If no static domain is
configured, first dynamic domain is shown, next pagekite domain, next pagekite
domain, next tor onion domain, and finally .local domain.

- Downloading profile from OpenVPN will set the first domain in it.

- When ejabberd is installed, the first domain is configured by default.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:45:05 -05:00
Sunil Mohan Adapa
eeeec6710f
pyproject: Ignore missing types for numpy (needed by pytest)
- Otherwise, on Debian stable, running make check-type results in following
error:

/usr/lib/python3/dist-packages/_pytest/python_api.py:24: error: Cannot find
implementation or library stub for module named "numpy"  [import]

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:45:03 -05:00
Sunil Mohan Adapa
aac12f4391
names: Sort domains by priority of their domain types
- First of the list is the most important one and may be used as "primary"
domain in apps.

- Change the return type of DomainName.list() from set to list so that order can
be preserved. Update all users of the API accordingly. Add type hints to all the
methods using this API to catch any errors.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:45:01 -05:00
Sunil Mohan Adapa
045b336a9b
names: Specify priority order among domain types
- This can be used to ensure that apps that can deal with only a single domain
auto-configure the best domain by default.

Tests:

- Unit tests run.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:58 -05:00
Sunil Mohan Adapa
49d16412f8
names: Simplify/clarify domain names types for static/dynamic
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:56 -05:00
Sunil Mohan Adapa
f5ecf31453
dynamicdns: Show specific operations on domains in Names apps
- Instead of just configure button, show edit/delete. And configure separately.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:53 -05:00
Sunil Mohan Adapa
863d170219
names: Allow adding multiple static domain names
- Change the mechanism for storing domain names in /etc/hosts. Don't write
hostname to /etc/hosts. Don't prepend hostname to domain name. This means that
when hostname changes, set_domain_name need not be called.

- This means that domain names such as example.fbx.one were not resolvable using
/etc/hosts but these will now resolve to 127.0.1.1. This is a minor concern to
becoming a breaking change.

- Don't use socket.getfqdn() for finding the domain name of the machine. Instead
read from /etc/hosts. There does not seem to a glibc/python API for querying
domain names from /etc/hosts with all variations it allows. Forward resolution
properly works no matter the library.

- Drop a pre-Python 3 conversion from unicode to ascii string for hostname. This
is no longer relevant.

- Domain name form is now domain add form. Passing domain name is mandatory.
Domain delete form and view have been introduced.

- Use augeas to edit hosts file. Add privileged methods to add/delete/get
domains. Add method to migration from old format to new. Support reading old
format too in get_domains.

Tests:

- Without hostname written in /etc/hosts, 'resolvectl query <hostname>' and
'ping <hostname>' work.

- With old /etc/hosts format apply patches and restart service. It will be
converted to new format.

- Adding a domain adds a new line to /etc/hosts file. The domain is shown in
domains list in Names app. Applications get reconfigured with the new domain
name.

- Deleting a domain adds a new line to /etc/hosts file. The domain is shown in
domains list in Names app. Applications get reconfigured with the new domain
name.

- Restarting app triggers domain added signal for all domains and all the
domains are shown in the Names app.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:50 -05:00
Sunil Mohan Adapa
889453daff
names: Simplify showing current and available domains
- In the main domains list, only show currently configured domains. Allow
operations such as edit/delete/configure on them. Actions are determined by the
domain type.

- Show domain types that can be added in a separate table. If an domain is
present and only of that type can exist, it will not be shown in this table.
Show add/configure action based on whether multiple domains can exist.

Tests:

- Configuring a singleton domain type puts it in the domains tables and removes
it from the add domains table. De-configuring it or disabling it does the
opposite.

- For domain types with multiple domains (static/dynamic), entries are shown in
domains if such domains exist. Entry in add domains tables always shows up.

- All action buttons for all five domain types work.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:47 -05:00
Sunil Mohan Adapa
e8d2faecab
names: Add more URLs to the domain type component
- To be used to present better interface for domain types that have multiple
domains.

Tests:

- Unit tests pass.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:43 -05:00
Sunil Mohan Adapa
7e3bdfa49a
dynamicdns: List domains that have not had status update yet
- This can happen if a domain is added while the app is disabled.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:24 -05:00
Sunil Mohan Adapa
a660194308
dynamicdns: Add/remove domains when app is enabled/disabled
This seems to be the most useful function for enabling/disabling dynamic DNS.
This is also what users are likely to expect.

Tests:

- Disable app. The domains will be removed from list of domains in Names app.
Installed applications will be reconfigured.

- Enable app. The domains will be added to list of domains in Names app.
Installed applications will be reconfigured.

- When app is disabled. Adding/removing domain does not trigger app
configuration apps. Domains are not added to Names app.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:21 -05:00
Sunil Mohan Adapa
ca5f547c02
names: domain type: Minor refactor
- In preparation for changes to domain type component.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:19 -05:00
Sunil Mohan Adapa
d9f9168c76
names: Use hostnamectl instead of socket API get the current hostname
- This would mean consistent interfacing with systemd instead of a split
approach.

Tests:

- Edit hostname page shows the current value of hostname correctly.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:16 -05:00
Sunil Mohan Adapa
4176f53e05
dynamicdns: Implement adding multiple domains
Tests:

- Functional tests pass.

- Adding domain triggers domain_added signal.

- Editing a domain triggers domain removed and domain added signals.

- Deleting a domain trigger domain removed signal.

- For each of the action, the status table shows updated information.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-16 10:44:13 -05:00
James Valleroy
6d2f992a42
Release v25.3.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v25.3.1
2025-02-15 17:59:27 -05:00
James Valleroy
83efbc3ddf
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-15 17:58:31 -05:00
Benedek Nagy
1ab78fb9da
email: fix fresh installation issue
The changes introduced in https://salsa.debian.org/freedombox-team/freedombox/-/merge_requests/2616
make the email app installation fail if it's installed for the first
time.
This patch ensures that 95-freedombox-sieve.conf is present and that
dovecot is restarted before privileged.setup_spam() is run. This way,
the sievec command can run.

Signed-off-by: Benedek Nagy <contact@nbenedek.me>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-15 17:32:39 -05:00
James Valleroy
e8f8e69143
Release v25.3 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
v25.3
2025-02-10 20:59:56 -05:00
James Valleroy
243b2df318
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-10 20:58:47 -05:00
pesder
e1a1fe2a1e
Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 21.3% (388 of 1816 strings)
2025-02-07 13:01:57 +01:00
ikmaak
ba23d3f896
Translated using Weblate (Dutch)
Currently translated at 94.5% (1717 of 1816 strings)
2025-02-07 13:01:55 +01:00
James Valleroy
cc70075572
debian: Switch from dnsutils to bind9-dnsutils
dnsutils package is not available anymore.

Closes: #1094944

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2025-02-03 09:45:52 +05:30
Besnik Bleta
8a4b5adef5
Translated using Weblate (Albanian)
Currently translated at 99.5% (1808 of 1816 strings)
2025-01-30 05:02:02 +00:00
109247019824
48aa581635
Translated using Weblate (Bulgarian)
Currently translated at 55.5% (1009 of 1816 strings)
2025-01-30 05:02:01 +00:00
Dietmar
ec3671eb85
Translated using Weblate (German)
Currently translated at 98.4% (1788 of 1816 strings)
2025-01-30 05:02:00 +00:00
Besnik Bleta
d7d45d9e2f
Translated using Weblate (Albanian)
Currently translated at 99.4% (1806 of 1816 strings)
2025-01-29 05:02:04 +01:00
109247019824
e1a20cd2c5
Translated using Weblate (Bulgarian)
Currently translated at 55.2% (1003 of 1816 strings)
2025-01-29 05:02:03 +01:00