10022 Commits

Author SHA1 Message Date
James Valleroy
ceedfeb39f freedombox Debian release 25.15
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmkSpRgWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICEygD/oDYpC84hMyoRXQ5djJU+r24UDo
 CRzPBROHBS8okraYs8Hzg7GeKuxjVIZVUtKsw9qUYOeXxAmhDM54ABy12hMnk89O
 OsvtBaOW5BFC2IJQz1D1/L0bSzYY6oUi0kmzohbIjwiVI4uc/jCzoYQ5pqf2gY0E
 o+iTEetM/PWyZbw73t9GTeVglKTXJsY75rUbj30I4ezatANuV6YYK+mnZX8b3gFZ
 SuP/TWTjMVUPx9BK59kzKhxZDjV5oNXbSUKHIYKBMnVv3CH806ccuW64tcxBdoV6
 K59OtfW7woLjdz9GKW9V7z/jwI9BPqUrTwBCP1QWzRvz/k0Dgek/7jTy55F2nc3A
 0Z42PXH6uLq9ufQzet4wfevkt9i1QWkoZTMTeEJuFJaBgFLPsm3o2hJKhbH+aJf6
 j1FvOmYzNfJ5G784R9Cj7h+STq5cfqoymtKh2GmoC8M3spJ0aNorlo8rYEjBPDEj
 Gg0BdCU7iW9rs1+J28E6CtjT6W8HqgqokQ/knSzlZBg9/yWIy4YG8ydHPWj/t9ka
 rZI8DrJdn3v22Jq6sdP66gLcZ0ufmblENyp7zC2+6vBQY+pONKcyQF4OgYK0dwMS
 /kmYiosEKGNfEdno4XBOJa4aFVbNuqQvZ/+SDMoJPUqw8el22jaETbDbkAdsT1zn
 RVxx/n9nbohFOlssLQ==
 =bTME
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmkXq7IWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOMbD/9SrZldrpfewRHxbDw20n4xsqmr
 OL6aN+1tx58Xw72ZeG1CAMLDnOpofM7pAZ4VtmeqMmjhFTzcrpkDY8auTJXq+LBI
 u1V/EtAEy2zOYjsEvbHgQxri247kpYZK7xMgTIVQAT+4/5obryUtDzk61nAgC/0d
 gQJtGbKYo76TpXjbKwFToKkSqvUVUG9HTROuOL5i/KWmJgKi0BcPk30QBJdc/tW0
 +5RGYC9yPLzqFlpevQ+T3bGnMpcJLIw3z8V3kiDRUgSiivDq5QAhyar3lV5Qricl
 59ZLZbpTV0ONFtDJkXFQ+iYE0hTZKbfB7diiWrlOQYv8SEnZsBDJ8dJTfWNaOt4y
 Dd2Ciz/jhK/szw63XWW0UbVXcyPqEd6uelWbGW4ERQ1WNz43kWUrI/sDGF3VxGAF
 tbDJy8vo8wAnuj4NMYMBUx2RF231Zk/pC9blEqPWmmeBDLs8CLz3LNSOCSEPUXrs
 Lpjz1EKK9jXBpthXRXc3dTYhvHcK699vwpHkpR8kgkU13yuia4lS7enU1kYH5gkM
 0bvb5jst1bWDttATibe/RJRTVaf3F1FFpsTdkumYWY733TWXaonXvFpoI+h2Iyps
 fg4TNWHWPp8WBCjgDxjnMuzQwUoKS2+QKtIRA850BPrARHCO1FP3Q0SX0r2eIRID
 tukhRXcqWHAEaPSxJA==
 =jzgf
 -----END PGP SIGNATURE-----

Merge tag 'v25.15' into debian/trixie-backports

freedombox Debian release 25.15
2025-11-14 17:22:40 -05:00
James Valleroy
91de3e6e3b
Release v25.15 to unstable v25.15 2025-11-10 20:49:27 -05:00
James Valleroy
b98e156bfe
doc: Fetch latest manual 2025-11-10 20:48:34 -05:00
James Valleroy
d7bdc73fb3
locale: Update translation strings 2025-11-10 20:21:09 -05:00
Dietmar
56762409d2
Translated using Weblate (Italian)
Currently translated at 47.3% (890 of 1879 strings)
2025-11-11 02:13:37 +01:00
Dietmar
9a8ddf326b
Translated using Weblate (German)
Currently translated at 99.0% (1861 of 1879 strings)
2025-11-11 02:13:37 +01:00
Sunil Mohan Adapa
743b7bd163
ttrss: Remove app not available in Trixie
Tests:

- Running 'make build install' remove the module loading include file for ttrss.

- TT-RSS is no longer available in apps page.

- Installing Tor works. Onion header is set correctly. Re-running app setup
works.

- RSS Bridge's description is updated as expected. Links work.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-11-10 19:20:33 -05:00
Sunil Mohan Adapa
76b360bb68
matrixsynapse: Explicitly set the trusted key server to matrix.org
The following message is shown when Matrix Synapse server is started.

"""
This server is configured to use 'matrix.org' as its trusted key server via the
'trusted_key_servers' config option. 'matrix.org' is a good choice for a key
server since it is long-lived, stable and trusted. However, some admins may
wish to use another server for this purpose.

To suppress this warning and continue using 'matrix.org', admins should set
'suppress_key_server_warning' to 'true' in homeserver.yaml.
"""

Explicitly configure the server to use matrix.org as the trusted key server to
avoid the warning. The value can be set to empty list of servers, however, our
users are served best by this default.

Tests:

- On a testing container, when patch is applied after Matrix app installation,
the configuration file is updated.

- After the configuration is updated the warning is removed during Matrix
Synapse startup.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-11-10 18:54:46 -05:00
Sunil Mohan Adapa
084c9c5a47
matrixsynapse: Explain federation and link to testing tool
- Create a separate section for federation as it is so important.

Tests:

- Federation description and TLS warning are shown in a separate section on the
app's post-setup page.

- Clicking on the testing tool link takes the user to the testing tool and the
current server's domain is automatically tested.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-11-10 18:54:41 -05:00
Sunil Mohan Adapa
35cedd7923
matrixsynapse: Clarify how to change domain name in status section
- This has already been update in the pre-setup page.

Tests:

- View the post-setup page and notice that the message was updated.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-11-10 18:54:38 -05:00
Sunil Mohan Adapa
a74028a73f
help: Fix serving images from help pages
Tests:

- Images are shown in the pages /plinth/help/manual/en/bepasty and
/plinth/help/manual/en/. Before the patch, images are not shown and 404 errors
are raised.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2025-11-06 20:03:04 +05:30
Sunil Mohan Adapa
d5062ef5ea
README: Use the Weblate's language chart widget
- This shows status of each language rather than just a single number for all
the languages. This hopefully highlights languages needing more work.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-11-03 13:58:50 +02:00
Sunil Mohan Adapa
24d2d92ab5
Run service using systemd even for development
- This means that systemd sandbox will be in effect even during development. We
won't miss out on bugs in sandbox configuration.

- We won't have disable systemd sandbox features just because we can test
properly on development setup. Such as JoinsNamespaceOf=.

- This also leads to significant reduction in hacky code for setting up for
development and functional tests.

- One disadvantage is that first setup is run before user gets a chance to
interact with the started container/VM. However, this is okay since first setup
can be re-run easily by removing the /var/lib/plinth/plinth.sqlite3 file and
also the need for doing this is rare.

Tests:

- Start a fresh container and run functional tests with './container run-tests'
on it. The tests run as expected (succeed or fail).

- While first setup is in progress, running the command 'make
wait-while-first-setup' waits while printing dots. After the first setup is
done, it exists.

- Running the command freedombox-logs shows FreedomBox logs for both the web and
privileged services.

- Changing a source code file in the /freedombox directory (or on the host)
leads to a restart of the Plinth web service.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-11-03 13:54:00 +02:00
Sunil Mohan Adapa
e5026282fe
main: Allow setting development mode from environment
- Similar to freedombox-privileged daemon. It makes it easy to turn on
development mode from a systemd service override (without having to override the
entire command line).

Tests:

- With the changes to systemd service file in this patch series, changing source
code file leads to plinth getting restarted.

Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-11-03 13:54:00 +02:00
Sunil Mohan Adapa
623604649e
views: Implement an API to retrieve the readiness status in JSON
- This can have may uses such as:

  - Waiting properly on the reboot page until the system has been restarted
  while showing the status.

  - Or, waiting for first setup to complete before running functional tests.

  - Or, monitoring for the health status of FreedomBox in general.

- The page is public as all the information conveyed there is also already
public. Should we introduce any sensitive information there such as
'operations_in_progress', we can provide that information only to
administrators.

Tests:

- Visiting /plinth/status/ shows the status in JSON. Using curl to retrieve the
information is also possible.

- During the first setup 'is_first_setup_running' is 'true'. After it has
completed, it is 'false'.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-11-03 13:53:59 +02:00
James Valleroy
f94a21e788
Release v25.14~bpo13+1 to trixie-backports v25.14_bpo13+1 2025-10-30 07:24:37 -04:00
James Valleroy
0e29d8a7e8 freedombox Debian release 25.14
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmkAJMQWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICKlkD/4zACLOfO2pdZwhIfAenZh2PPue
 kxuaVFLaifx798Pkx5AaaKAY93vLDN/Egjz/y4ome3bmPhCVSSJzLyEaSNZxf8UL
 j8HY7U7WhtSpzLNd4NM/f/xR7DCqgRmRVp2ecr/7Xw81hypf4srcw0jcrzc9LuYx
 S7peuzwjP77Igg6ILYN6jHkO3/sKHn3fvats6hhFcOh6h5gedFG+uyHYNSKlHhGJ
 TeHLkrBViBt1+iAgD56S+FfNM0YxAIHoavx/JqbC+xYFyfng7Fx5nDKRIEChd0oU
 SNcYTtL9CKsH7tKEbiG9/WtUmZQaQMh9YdN75UK568HVfI/p5etlaT1qb5ffrSg3
 3aJfM+Is5CSgjTeia2660EVtCqLy069P+wY2pxYRIpLN7Mw4f7xNKS+93mUe+D7q
 mBRZLm3j9Ly+tj1JuEw4NpgG9siL7n6FZlJmU5xXcQY6AL3PpQkFh/anJh2G+z/X
 GMOkTz8+HV40SFHOAg5CH9+z+Hg6PsZfXf3orCM6Bul+66tEedEGTX1fQ+9HSb9d
 NQBOshMhcRm/oK6oveI4Gmbqb76zzuUrApJdreKKuBzXcxz5hF0SBPQCgRqE2+5I
 UNz3/e0eV8IB3dS8AQJMo3cfcMG7xucFqSOz52p19rShP7Yjg3w3/xEy0t9864Ya
 7IjXizG17ug2dECt3g==
 =YhyP
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmkDSmoWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICO+NEACCIiDebqIBjKWlGJ4LwehlSKPZ
 U5piKVqIjEeiLbS+Z8+vA1eCaop/kiOHsmAzasUHGaUNz1zt3KS75ZmHg+3N1/js
 TS/6viX8sVPPDQCUQFvKdH2ZdnwO2A1KLXdVGKD+02I4YE8jZ9mA7MtemNZ9vF9p
 nu7r10VAXOThZUr81bOO8q3+GeuCyLN80BIO62qv/sl/+jRB+Kj2UONRasrzZs06
 OGTAsVLOQQqfGY8sLixHJRUZvHe7zZI6HoTZlLTGeK5DW6Wv8QSoruaCOuOdZ7J0
 pBRpuls8JJ0HcXhTx2XuHDWkiuURfBMSWyAJi++auoX+b8WvQlQzwXUcLHgMxrUA
 G0PcnrY/kdCU9yCZfgBi86EvJxqXlGoE9m5g8WNvh+zE1d7AiTFAk1eEQV+uf9+F
 0IrNzU1iJZrxMP9m4PQx1m23Ut3suKbtBBWfHA/LbPL1nMi2C52qnoIiDV0QYO6h
 0T7eS4SmmEPzVmR5gnNr9iki3txpK8JWFy63tXrZy7TO0E1YqcOeUGTHlPGO0X7r
 L6C2qO50xxlM3vfCqncphhVlPULri9kppvKevIP34lfBYbBpO8+CRHxWuMTNhoa2
 SKZlhtPzPHNWqqbz2yg3dH+DUKxt8WpP6YvUJnRbOBX1AHq3We9XkxCFZ/GHOF3g
 DnzH67EUK34GyYMoUg==
 =H16M
 -----END PGP SIGNATURE-----

Merge tag 'v25.14' into debian/trixie-backports

freedombox Debian release 25.14
2025-10-30 07:22:16 -04:00
Coucouf
8a4f03c58a
Translated using Weblate (French)
Currently translated at 100.0% (1879 of 1879 strings)
2025-10-30 04:24:25 +00:00
James Valleroy
21694c5e99
Release v25.14 to unstable v25.14 2025-10-27 20:23:02 -04:00
James Valleroy
80977c3727
doc: Fetch latest manual 2025-10-27 20:22:32 -04:00
Sunil Mohan Adapa
a4505978ad
Enable private tmp and join namespaces for the two daemons
- Earlier PrivateTmp=no is set freedombox-privileged.service in
4140d3b4444d2fd55ac682d066fd859cb2f034b5 and the fix was not properly tested.
Similar change was needed in plinth.service and it was not done.

- Complete the fix but this time enable private tmp and join namespaces for the
two daemons.

- This will cause issues with file uploading when plinth is run from command
line (for development purposes). This will be addressed separately.

Tests:

- Apply the change and reload systemd and restart service. Don't run plinth on
command line and run it as service.

  - Uploading libraries to kiwix works

  - Uploading backup tarballs works.

  - Uploading TiddlyWiki and Feature Wiki wiki files works.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-10-27 20:09:46 -04:00
Coucouf
949ab18486
Translated using Weblate (French)
Currently translated at 100.0% (1879 of 1879 strings)
2025-10-27 16:02:43 +00:00
James Valleroy
44005a075b
Release v25.13.1~bpo13+1 to trixie-backports v25.13.1_bpo13+1 2025-10-24 14:37:07 -04:00
James Valleroy
a3dcbf0c17 freedombox Debian release 25.13.1
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmj3eLEWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICESEEAC7gaC+dSaRIBbmCAbZrgA7OyLr
 eb7OUKNxbx11UzwkHpHya83IoBJEx3g8MEVZDA2o4ofISNWOZdlhFBDYFqeYFjRh
 Jx3lUljTYYtzyFnkYxW3wZH2E6N0/DOdB4EbG3z99vhJrtZQhYtYzDvBZOZr6vJW
 E/AnHxJvoL0P5GMuLmGvsRPbGMkgocpQyW1XmkI/69gOSGG/igdIcyYYcCcm8qVp
 4Ky41xHZTxKJDFbBiABR2HIrr5Kilv52kktNN84j6LM5u3UaE+T2ToB2Pdopcq3x
 3xe5H0HXCq/Y2bzPTIsvW9Y6mAqbfBGqv5qoNjxdIN/Gi7gk6iow3jq/r5GoQQK8
 xhMmK7k3tOL3WjLjoQpbnQD1LvH6Z5gwv62VAS6kfieGpczobF2C1EkfouxXdrdF
 hq12gqC2KgP89cSb4NIGfDC60h3WPvVpvaHysGt/9EC/x+dnjrJS5TwcVMd7Fe6H
 egqmGUapo0TYBNor635DCx6SCKXuMlwwWiywxaudeqXAP4f+0fMrlIknvDo4qSQk
 1QYSoPU+kBgIV5ND+w2kdVNGUXL5cHj1ta+S1GBJVB62gmHipw+YYS8OvYVe+lHN
 siUZwWckFRbTU5eAk8ikRGTtLE0WXeWuvvPL6AeRiKLTI33ERW/54zIDypYBkkOq
 uI/K7Trews2Yw0MkAw==
 =HsVY
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmj7xzEWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICIMXEAC+bCDkQHSUd8QaMm/lqgFG3nFm
 ZZxo8Qwx90DioMCGT5s3BXVk1ewngz13kIINn7o8/omgIxT5cGBPDDvg83i1L4RV
 TQuoHPS4SV+0+FgZZaMBT/u/5IPkI20kAq8I12am+/U/71U9xB/3KPWCaDvnt4E5
 hGERkwrw3NxZlSI+7HGQsSsZMYc65p1VTZtmzkWwm9SybvL4zzp/C/9obLDWsk5J
 Iacv8P5BYtWacF/f3mlFlR7lrp1Uhw5QtXmRbSsjv5jsswOWxJxS4GBigCw5+Tk8
 RJypRJGXE2v0pvl/tosOUBDEQ+HY98AuxsDkQJJC1A5TPn/tuf7BjzM9f/457WrK
 ufe1+5NEno8i7WxxLCzPtx1yLB+gxjz3XJUCi6WtfjHXGSM8QRY1IHBfJ40IrxBY
 zJJ+PY1x5flilEBI8XQUJ0Iv7KeUWVusEjZjK/1MwEknEdDK85hzDrqRZAxFgp0g
 GuIHBTIZSIJwJ0Bd4hr29QNRjG5T+rioR24MkV3Nkr/aKI0/uLWduXjYXNhUYQ89
 r5v8htZ2U05F6zYgrqD4H8PqVvExtruhcFTDmPJdx5VfqgOOhrmO/uuMpDg9WsHR
 GAWs4tRW0TwZOII8vwcHUVS3+j4HrboHeF6aHCCT3bBvpVZAbwe6UHl4Hg8P5b/H
 G+aOPaPeWolUxuxyGg==
 =Oc+1
 -----END PGP SIGNATURE-----

Merge tag 'v25.13.1' into debian/trixie-backports

freedombox Debian release 25.13.1
2025-10-24 14:36:30 -04:00
Jun Nogata
678107959a
Translated using Weblate (Japanese)
Currently translated at 5.4% (103 of 1879 strings)
2025-10-24 18:02:52 +02:00
Coucouf
20dc640b4e
Translated using Weblate (French)
Currently translated at 100.0% (1879 of 1879 strings)
2025-10-23 00:02:41 +02:00
James Valleroy
a410ef2548
Release v25.13.1 to unstable v25.13.1 2025-10-20 20:21:14 -04:00
James Valleroy
38b7a05a61
doc: Fetch latest manual 2025-10-20 20:20:08 -04:00
Besnik Bleta
7d391b8d2d
Translated using Weblate (Albanian)
Currently translated at 99.6% (1872 of 1879 strings)
2025-10-14 10:07:25 +00:00
James Valleroy
4f86ab5864
Release v25.13~bpo13+1 to trixie-backports v25.13_bpo13+1 2025-10-09 07:48:29 -04:00
James Valleroy
8e3a468a58 freedombox Debian release 25.13
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmjkbeAWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICH5iD/0Vw9PKwVUYiKModXpxhOgb0aGk
 kzeRafam3dOgIQW5Yf4Y3P0gLcfE430iCUvTnJLkxsSVhWA5J2lUYaqLlGoAZGe7
 LCuP77v4ZWFYKnWkBBTTNIEDvsCe15CVKe+LoUhl4mS1TYGe2RvxIwK5f55YTu2k
 EvJkSzY31YezQpA5XyH7LQdeJw8C3fpM+RZUzPttTJNkhAmqkcDBppVmh8T8hmM9
 oXbZ8aHHofKlFjhFLla3QxHGCfeoOExY/A6A6AMSwHK2gmnza00YUEU0rfrWmfGm
 6VW/xxNxQRgY4buG54pgtv91adJtxEt1dT9f30HTonEy0MY674urDTKoRZnj80RG
 BsrAqXkKi9NHaL3CJ+NEErX8mq3mvSmabc9S4yAHvKKtX07Uvu/SekJnA2KNH5fZ
 ItIrniL/bUx0gkw+PJJu6UFpTp8WctRNPhiIQHm7/fq497lebwo46npfwZdfP7qI
 uCF0fedvS+/Zdr4WNShsuLZvwpt51waJTOVqSFdN2AeLdhD+rUVFgsxr0GI+O0M5
 lL4lPI58GL6s3OYqnzIMmYmFxdDkWnR8PBXJlazVP88iIWJNtRqzQ6k9XJDcUd8X
 U8ue22hGdAWxNH2VnNGBSuIwoNISM91UtoRD06pKAw7GkESIQ2zMhroOObN7NcgI
 ASUxB+KXp2ieLT29Vw==
 =htcO
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmjnoPEWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICMhhEACQ/xw3siNT6GdG3xhXbeJQJCEy
 S1rVpCXjCNoVxvM9jZO/8atGs5l5dVvZdLbGqYQTSFnBRei9Scmd5lHJf/DqOe3i
 zBRYS/9ahAYvz7olD37pikLlvHRcdsahCyw0cBw+B30FJdax3vkxLP7B+CbZhqWj
 ZcA3RhXAmvxqoprZN2Q/zFY2M2j2X38TtLx7bOt3KAWqPZcAgAoOKptl36JDimGa
 MPO+UwRSsjNgNV80bPWPYABQiFxaxM06Vl98K+/xaN/mIDZbJXDeoTAh+XT28QKz
 a3pxpM6lIq4KFfTJjKaXNj/6kmLulIxhlCNIqtm50a2d3XaAp97T0W0hkWk+wjTa
 7nkJ91lM+Ysj0i5i9NSv6IpfWlQ99whJvCCcPPIYeBjt06hLn4dO63BFPe7OXJy4
 MvBAmUYVNBHEmy2Z2umTNtiUPBKL3jj4t8LxlVrKQ7rqthl0Qhe8+9yPHOtoEy44
 6ndI2VxZ/m8mdk12pQOqmrWlv3s9yRbNCi4gir8kX6JRgp81XwNS6AOKk9ghW4N4
 4vWLdEiDNeJRJ31dE0uptTsYzUeWvIIrpWMlNgZAYHRRbhKxCW/u/8uLdxk+rZnW
 jzKEiCFvcl4brUZ1BKmaoK5ChxnyPRWL1CfG8xWKlNCUxXquCW906cNDRQpJ5F6i
 b8KO1xSknslUnAP5MQ==
 =vnij
 -----END PGP SIGNATURE-----

Merge tag 'v25.13' into debian/trixie-backports

freedombox Debian release 25.13
2025-10-09 07:47:59 -04:00
Paul Lettich
95626eb435
Translated using Weblate (German)
Currently translated at 98.9% (1859 of 1879 strings)
2025-10-08 16:07:27 +00:00
James Valleroy
d1be37d1df
Release v25.13 to unstable v25.13 2025-10-06 20:30:32 -04:00
James Valleroy
6081225704
doc: Fetch latest manual 2025-10-06 20:30:03 -04:00
James Valleroy
3c7393cd07
locale: Update translation strings 2025-10-06 20:04:53 -04:00
Besnik Bleta
cdec8a4af9
Translated using Weblate (Albanian)
Currently translated at 98.3% (1848 of 1879 strings)
2025-10-05 18:02:03 +00:00
Sunil Mohan Adapa
43ff0b57ce
zoph: Additional dbconfig configuration keys
Tests:

- Install, uninstall and re-run setup work.

- Functional tests work.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-10-05 10:39:22 -04:00
Sunil Mohan Adapa
60c57b6707
miniflux: Fix DB connection issues during install/uninstall
Fixes: #2536.

Multiple fixes:

- When miniflux and postgresql are install simultaneously, miniflux setup may be
installed before postgresql is started.

- When postgresql is already installed and disabled (due to a previous
uninstall), then postgresql may not be running during miniflux package
installation (and fail initial DB setup).

- When app is being installed while it is disabled, the database may not running
and may lead to failure in removing the app database.

Tests:

- Run functional tests on stable/testing twice in a row.

- Install the app without postgresql or miniflux installed.

- Disable the app and uninstall it. DB is purged.

- Uninstall and re-install (with postgresql is disabled during installed).

Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-10-05 10:39:18 -04:00
Sunil Mohan Adapa
f9ca06dc5f
daemon: When ensuring running state handle not-installed state
Tests:

- Uninstall miniflux and postgresql. Install freshly with all the patches in
this series. When installing miniflux freshly, postgresql is not disabled soon
after miniflux package is installed. Without this patch, postgresql is disabled
after packages are installed leading to a setup failure.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-10-05 10:39:15 -04:00
Sunil Mohan Adapa
4ed2a25a8b
locale: Fix a string formatting issue in Italian translation
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-09-29 16:43:30 -07:00
Veiko Aasa
dc837bd6b8
gitweb: Use Git credential helper when cloning URLs with credentials
This prevents logging usernames and passwords to the journal logs and to the
Git repo configuration. Also, avoids usernames and passwords appear in the
process list when cloning a repository.

Tests performed:
- Create a new repository by cloning an existing repository URL with basic
auth credentials. Check that:
  - Cloning succeeds.
  - Journal logs don't contain URLs with credential info.
  - The configuration of the cloned repository doesn't contain credential info.
- Try to clone a non-existing repository URL that contains credential
info. Cloning fails and there are no credential info in the journal logs.
- Cloning a public git repository without credential info succeeds.
- All the gitweb module tests pass.

Signed-off-by: Veiko Aasa <veiko17@disroot.org>
[sunil: Add/fix some more type hints]
[sunil: Add tests for URL parsing]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-09-29 16:42:17 -07:00
Roman Akimov
e38ac648fe
Translated using Weblate (Russian)
Currently translated at 98.6% (1854 of 1879 strings)
2025-09-29 19:02:05 +00:00
Dietmar
1c0f25c134
Translated using Weblate (Italian)
Currently translated at 47.2% (887 of 1879 strings)
2025-09-29 19:02:03 +00:00
Dietmar
b559e1998a
Translated using Weblate (German)
Currently translated at 98.4% (1849 of 1879 strings)
2025-09-29 19:02:01 +00:00
Sunil Mohan Adapa
f2bceb48cf
backups: Don't show enable/disable button as app can't be disabled
Fixes: #2472.

Tests:

- On backups page, the enable/disable toggle button is not visible anymore.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 17:17:58 +03:00
Sunil Mohan Adapa
397a67329b
debian: Stop privileged service during upgrade or removal
- The privileged service will stop by itself if left idle for 5 minutes.
However, if someone is viewing a reloading page such as during manual software
update, the privileged service is never idle.

- When freedombox package is updated to a newer version, the old version of
privileged daemon could run for a long time but newer version of freedombox
service might be running by then. This would cause protocol mismatch
problems (unless backwards compatibility is provided which is unnecessarily
hard).

- Adding PartOf=.socket in .service file means that if .socket unit is stopped
or restarted, the .service unit will be stopped or restarted too. We still don't
want the dh_installsystemd script to be starting the .service unit, so this is
ideal.

Tests:

- During fresh install of freedombox package, freedombox-privilged.socket is
started but freedombox-privileged.service is not. It is started due to socket
activation (as seen in journal logs of privileged daemon).

- During removal of freedombox package, .service is stopped when .socket unit is
stopped.

- During reinstall of freedombox package, .service is restarted when .socket
unit is restarted.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:59:01 +03:00
Sunil Mohan Adapa
279738c305
actions: Raise an exception if privileged server response is empty
- These situation occur when server encounters an error when trying to formulate
a response. All exceptions during execution of actions are caught and reported
properly. However, server may encounter errors during processing of exception
raised in an action. Or may die abruptly. This special error will make
identifying such situations easier.

Tests:

- Add a 'return' after _read_request() in
privileged_daemon.py:RequestHandler:handle(). This will trigger this error.
Starting FreedomBox service will show these errors as 'ConnectionError: Server
returned empty response'. Similarly running 'freedombox-cmd --no-args plinth
is_package_manager_busy' will show the same error.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:59:00 +03:00
Sunil Mohan Adapa
f19ab68553
ci: Switch backports test to trixie-backports
Tests:

- None. Failing CI pipeline show be fixed.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:58:59 +03:00
Sunil Mohan Adapa
7f608cd570
*: Collect output for all privileged sub-processes
- Now that we have a mechanism for properly collecting, transmitting, and display
the stdout and stderr. There is no reason not to collect all of the stdin and
stderr.

- Also, the stdin/stderr=subprocess.PIPE is redundant and prevents the output
from getting collected for debugging. So, remove it.

Tests:

- Ran functional tests on backups, calibre, ejabberd, email, gitweb, ikiwiki,
infinoted, kiwix, mediawiki, mumble, nextcloud,, openvpn, samba, wireguard,
zoph. 2-3 issues were found but did not seem like new errors.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:58:57 +03:00
Sunil Mohan Adapa
b253166f6d
*: Use action_utils.run instead of subprocess.check_output
- This is to capture stdout and stderr and transmit that from privileged daemon
back to the service to be displayed in HTML.

Tests:

- Unit tests and code checks pass.

- Some of the modified actions work as expected.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:58:56 +03:00