10457 Commits

Author SHA1 Message Date
James Valleroy
4f419723b5
Release v26.10 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
debian/26.10
2026-07-28 22:48:47 -04:00
James Valleroy
ecddf2cefa
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-07-28 22:47:39 -04:00
James Valleroy
ca8a64ec10
locale: Update strings for translation
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-07-28 22:27:31 -04:00
Sunil Mohan Adapa
1e2fb8171f
first_boot: Move first wizard secret generation to this app
- Generating files in postinst script makes working with image-based systems
harder as postinst scripts are not run when booting from a pristine image. So,
move this to first_boot app's setup() method.

- This means that first wizard secret is no longer displayed during package
installation. This is a loss in usability, but might be acceptable:

  - We want to reduce the number of dialog box messages shown to the user during
  the installation of FreedomBox as a blend in Debian installer. Along with this
  change, if we migrate away from LDAP, then no messages will be shown anymore.

  - When users are installing using Debian installer, they don't have access to
  console to note down the secret. They can only note down on a physical medium.
  This is not the best way. Most of the time when I installed on machines, I
  just looked at the secret file later.

  - It is not expected that user will loose root access to the machine on which
  they installed 'freedombox' package (manually or through Debian installer)
  before they can type in the secret into the first wizard. Earlier, we had
  restrictions on the type of users who can login to the console and this could
  have happened.

  - We can eliminate a lintian warning that we are showing messages in a dialog
  in the postinst script instead of configure script.

Tests:

- Unit tests work.

- Building Debian package with changes works.

- Lintian warning about debconf has been eliminated.

- On a fresh Debian Trixie machine, installing the newly built Debian package
succeeds. It does not show first wizard secret related message. When web
interface is accessed, secret is asked. Skipping the secret is not possible.
Even before the creation of the secret file.

- Providing incorrect secret leads to error message. Secret file can be read by
root. The file is owned by plinth:plinth. The file has 0400 permissions.

- The secret file contains a newline at the file but entering the secret without
the newline character works.

- The secret contains uppercase and lowercase ASCII characters and digits. The
secret is 16 chars in length.

- Incrementing the version number of first_boot app does not lead to change in
the secret file contents.

- The message in the first wizard secret form is as expected.

- Building a disk image with newly built Debian package works. When the image is
booted, it does not ask for first wizard secret.

- When an existing machine is upgraded, if it is a disk image, first wizard
secret file is not created and first wizard is not shown to the user.

- When an existing machine is upgraded, if it is not a disk image, first wizard
secret file is not changed and first wizard is not shown to the user.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
[jvalleroy: Correct comment]
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-07-28 22:23:11 -04:00
Sunil Mohan Adapa
485391620b
ssh: Don't fail on page load when SSH host key can't be read
Closes: #2575.

Tests:

- 'touch /etc/ssh/ssh_host_dsa_key.pub'. Try to load the SSH app page. It fails.
With the patch, it succeeds. A warning message is printed about failing to read
the key with proper returncode, stdout, and stderr.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-07-26 10:05:26 -04:00
Sunil Mohan Adapa
0ab9be2ae0
log: Set simpler syslog identifier instead of full binary path
Tests:

- When watching journal using 'sudo freedombox-logs' command, the syslog
identifier for main service is 'freedombox' and for privileged service is
'freedombox-privileged'.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-07-26 09:53:01 -04:00
Sunil Mohan Adapa
fadea7eb4a
css: Fix sizing for icons in custom shortcuts
Closes: #2583.

Changes based on fix and workaround suggested by James Duncan (@jaduncan).

See: https://salsa.debian.org/freedombox-team/freedombox/-/work_items/2583

Tests:

- Home page, apps, system, and help icons appears as before.

- James Duncan (@jaduncan) reports that custom shortcut icons appear normal
after this change.

Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2026-07-23 13:50:13 -07:00
reducedradius
f38f29e9e3
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 61.1% (1187 of 1942 strings)
2026-07-20 15:01:23 +02:00
Frederico Gomes
5a00d05cfe
apps: Change header title from Disabled to Available for install
Closes #1633.

[sunil: Move the button to the top of the apps page]
[sunil: Drop additional div nesting for 'available for install' section]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2026-07-14 15:37:46 -07:00
James Valleroy
10069c4e5d
tor, torproxy: Avoid error if defaults file missing during uninstall
See:
https://discuss.freedombox.org/t/error-when-uninstalling-tor-and-tor-proxy/4295

sunil: Use pathlib.Path.unlink()

Tests:

- Install Tor and Tor Proxy. Uninstall both. Uninstall is succesful.

- Install Tor and Tor Proxy. Manually delete
  /var/run/tor-instances/*.defaults. Uninstall both apps. Uninstall is
  successful. A warning is printed in the logs.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2026-07-14 14:53:16 -07:00
Coucouf
fce97a871a
Translated using Weblate (French)
Currently translated at 100.0% (1942 of 1942 strings)
2026-07-06 17:01:25 +02:00
Frederico Gomes
51ce0c4404
luanti: Add more detail to description
Sunil:

- Simplify installation of Luanti client into a paragraph. Merge information
about default port into this paragraph.

- Minor formatting and punctuation.

- Drop format_lazy calls where not needed.

Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2026-06-29 10:34:00 -07:00
Dietmar
620b774d51
Translated using Weblate (German)
Currently translated at 99.1% (1926 of 1942 strings)
2026-06-28 16:01:21 +00:00
James Valleroy
7ab7c5f29c
debian/tests: Drop redundant status check
- Remove final status check, since it is confirmed at that point that
  setup is completed.

- Print the final status in test log.
2026-06-27 10:16:30 -04:00
Grayson Wolf
444b1f387a
d/t/access-web-interface: make ready check more robust
Test was failing (on Ubuntu) after an unrelated systemd update caused
things to be reordered enough to cause the 30 second time limit to
overrun, meaning apache wouldn't be ready and the test would fail.

Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-06-27 09:44:17 -04:00
bittin1ddc447d824349b2
90360af9b7
Translated using Weblate (Swedish)
Currently translated at 100.0% (1942 of 1942 strings)
2026-06-22 10:01:22 +02:00
ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝)
614a4fa5b6
Translated using Weblate (Latvian)
Currently translated at 2.4% (47 of 1942 strings)
2026-06-18 11:01:18 +02:00
James Valleroy
350466940f
Release v26.9.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
debian/26.9.1
2026-06-15 20:46:51 -04:00
James Valleroy
dff6698647
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-06-15 20:44:27 -04:00
James Valleroy
ceaccd7baf
wireguard: Get config for both download and qr actions
Re-arrange imports

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-06-15 20:15:14 -04:00
James Valleroy
629cc866b6
wireguard: Move segno import inside method
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-06-15 20:15:14 -04:00
Sunil Mohan Adapa
efcdc8cb5c
matrixsynapse: Allow installing new dependencies
Fixes: #2556

Should be merged after fix for https://bugs.debian.org/1122841 is in unstable.

- This fixes issue with Matrix Synapse app not being installable from current
unstable.

- matrix-synapse package depends on older version of python3-typing-extensions.
This causes the daemon to fail during startup when older version is installed.
This was reported as https://bugs.debian.org/1122841. After this bug is fixed
and a newer version of matrix-synapse is uploaded, the patch will work as
expected. An alternative was to allow unattended-upgrades to upgrade
python3-typing-extensions from unstable, but has to be done very carefully and
with a lot of testing.

Tests:

- Install Matrix Synapse apps works. This request installation of the latest
version python3-typing-extensions from unstable. The daemon is running properly
after installation.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-06-15 20:12:24 -04:00
Coucouf
0188ad38f7
Translated using Weblate (French)
Currently translated at 100.0% (1942 of 1942 strings)
2026-06-13 22:01:20 +02:00
Pierfrancesco Passerini
1086d52851
Translated using Weblate (Italian)
Currently translated at 100.0% (1942 of 1942 strings)
2026-06-13 22:01:17 +02:00
Pierfrancesco Passerini
3616ceb68d
Translated using Weblate (Italian)
Currently translated at 99.6% (1936 of 1942 strings)
2026-06-08 13:01:02 +00:00
Jiří Podhorecký
274dabb741
Translated using Weblate (Czech)
Currently translated at 100.0% (1942 of 1942 strings)
2026-06-04 20:01:02 +02:00
Besnik Bleta
9d24b4161a
Translated using Weblate (Albanian)
Currently translated at 99.6% (1936 of 1942 strings)
2026-06-03 05:01:05 +00:00
Burak Yavuz
d9a825ee36
Translated using Weblate (Turkish)
Currently translated at 100.0% (1942 of 1942 strings)
2026-06-03 05:01:03 +00:00
大王叫我来巡山
76efffb4e9
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 60.9% (1184 of 1942 strings)
2026-06-03 05:01:02 +00:00
James Valleroy
2590661fc8
Release v26.9 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
debian/26.9
2026-06-01 21:20:28 -04:00
James Valleroy
bd733d4816
doc: Fetch latest manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-06-01 21:17:30 -04:00
James Valleroy
88e886046f
locale: Update translation strings
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-06-01 20:52:26 -04:00
Frederico Gomes
ad1b420397
wireguard: Enable FB to connect to a server using IPv6
This MR enables FreedomBox to connect as a "client" to a WireGuard
"server" using IPv6.

- Validate IPv4/6 with ip_interface
- Created helper functions to build NM settings for IPv4/6
- Modify get_settings to include settings for either IP version 4 or 6
- Created helper function to get NM address info
- Modify get_nm_info to work with IPv4 and IPv6
- Modified tests to use validate_ip_address_with_network
- Added IPv6 valid and invalid patterns to tests

Tested:

- IPv4 works unchanged
- IPv6 parsing + NM settings generation works
- IPv6 display in Show Server UI

Not tested:

- Needs IPv6 WireGuard server for full connectivity test

Closes: #1762

Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-26 18:41:20 -04:00
James Valleroy
9fd7a3b3af
debian/control: Add !nocheck for python3-segno
Tests:

- Succesfully build with nocheck profile:

gbp buildpackage --git-pbuilder --git-pbuilder-options="--profiles nocheck"

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 09:34:02 -04:00
Frederico Gomes
ea48448a72
wireguard: Added functional test for auto add client flow
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:51 -04:00
Frederico Gomes
050a5366c1
wireguard: Bump version
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:48 -04:00
Frederico Gomes
bc34a50a24
wireguard: Include python3-segno in app packages
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:46 -04:00
Frederico Gomes
ff2ac949cf
mypy: Added override for segno
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:43 -04:00
Frederico Gomes
941a597bc9
wireguard: Add security warning in template
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:38 -04:00
Frederico Gomes
5f25fc56a5
wireguard: Create URL for client config QR action
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:34 -04:00
Frederico Gomes
fa4e6002b3
wireguard: Add Show QR Code button
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:31 -04:00
Frederico Gomes
f9984ea9e4
themes-icons: Add QR Code icon
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:27 -04:00
Frederico Gomes
18d6f2d5db
wireguard: Add action for QR code generation
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:55:21 -04:00
Frederico Gomes
68e28cdebc
build-dependencies: Add python3-segno
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:54:58 -04:00
Frederico Gomes
79c978e03a
wireguard: Add client config file section and download button
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:54:53 -04:00
Frederico Gomes
ce2ce04979
wireguard: Create URL for client config download action
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:54:48 -04:00
Frederico Gomes
8e9b2a0631
wireguard: Create view to handle client config actions
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:54:32 -04:00
Frederico Gomes
60a6ac2a0d
wireguard: Create mixin for reusing generated client conf
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:54:09 -04:00
Frederico Gomes
bb6729a99a
wireguard: Create function for building conf files
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:54:03 -04:00
Frederico Gomes
81e60dff0e
wireguard: Add template to show generated client info
Signed-off-by: Frederico Gomes <fredericojfgomes@gmail.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2026-05-23 08:52:09 -04:00