547 Commits

Author SHA1 Message Date
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
James Valleroy
a410ef2548
Release v25.13.1 to unstable 2025-10-20 20:21:14 -04:00
James Valleroy
4f86ab5864
Release v25.13~bpo13+1 to trixie-backports 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
James Valleroy
d1be37d1df
Release v25.13 to unstable 2025-10-06 20:30:32 -04:00
Sunil Mohan Adapa
1ad48ecad8
d/rules: Drop a workaround for dh_installsytemd needed for /usr/lib
Since debhelper 13.11.6, we don't need this hack as dh_installsystemd recognizes
the files in /usr/lib/systemd/ directory in addition to /lib/systemd/.

Tests:

- After build package with gbp. Notice that postinst script has code inserted by
dh_installsystemd for starting/restarting the service.

- Install the deb package starts service. Reinstalling the package restarts the
service.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:58:45 +03:00
Sunil Mohan Adapa
7c0fa00536
doc: Add manual page for freedombox-cmd
Tests:

- 'make -C doc' succeeds. 'man doc/freedombox-cmd.1' shows the manual page.

- Building and install .deb package installs the manual page to appropriate
location.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:58:42 +03:00
Sunil Mohan Adapa
e227e9a919
Makefile: Move privileged daemon to /usr/lib/freedombox
Tests:

- Running make install installs to /usr/lib/freedombox. Non-privileged users
don't find it in the path. root user does.

- New service file contains path to /usr/lib/freedombox/. Actions works as
expected.

- Build and install the debian package. Privileged daemon runs as expected and
first setup steps complete as expected. First wizard works as expected.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-09-29 16:58:40 +03:00
James Valleroy
43bc1f99c2
Release v25.12~bpo13+1 to trixie-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-09-26 16:55:00 -04:00
James Valleroy
99a46415a2 freedombox Debian release 25.12
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmjSgYwWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICFIpEAC73w+CIIDRYrT4rsM69yhp+ZN5
 +CHiwXpvIeXmTxYzkMu9ndrfcW72mxA3hYZUgS7p6D6FFG+VDIz+Gm1e2DX4XO75
 dk8C1Hpx9gZ0iUCsstUNGrG9zAtWfmyQPcwvvx54k9pS2ncxjrAPek5jWtW6VPGP
 CHzLQv4pXU4SbplTQwuAyIg4YWUCDGS8yCIIOjQrm0fwAZdsne9An4iDOqztVDL1
 NO2SgsHLHs1PVv4NY9a6FFCzSLTz5DBV3Q8XH58Ull89wEa2SA+YcJFKYxODjkfV
 4ni//XsbQ980RMGuUWPSbsGwSrofK4fOKBYTkX04gp85/5tkJsPa9GEQxa7gGtaF
 6GaQkXhR9W/36vGge5Y8MXItS2lGJkAQ/Ge8yMcfdcj3aOsa2JN3hg7nIkHSlIDO
 A/9kstC9nGW4LcQK5mPK3vPK4yq3Eh/6iaIYycTZSK7eWNIKcdmfp8yYzX3+E+0i
 KpnoK/hLZwAZyOs5F4ePY7elAZ6LaIEIzBNbFmBnE2kXVt8D3B0r8MjEYR4K8vEO
 7ybGgpA+39xZO/nc4U1Qm+qWOPQXaRc+TWmr9RtOwDsnsqMywWpFD8uR65UBgeyy
 KrnilXdNc/DE1OgdkOTvrEwqXV0qZw9PfFTzS1yBG82F1RqffTYkTD1mrrvFR109
 QDbAOFazbzkezQ5GMg==
 =zGeX
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmjW/ZAWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOatD/9gdlP7LcJGRYsNRi1bEM4crMNb
 CwinyT8oUrHci+TMjZiQByiPYXxcgvO8qQpyuXtrz9J9gDD6EuRW7XwKUghMWPAk
 5sN8z/ECp0NTa7sihGsEvWyFlv/P9//jr0I7MuUYc51U1jW39102Qs4lwF8WYFF0
 ayN1Aa+d4z5O+vrDF/MffFrfTzgAqpsc35FVCXdKitSWfHo1D6y918fZ06hNRBvx
 x/n3wSLWgm5LDSe0OcMX8A7ucUo28I4zNOJNIytpJ3cMV2IC2Svf7fupiuc7Xial
 2TX93AYOw7YegiQ9oeOyceWZYobjoSSGS79CGQOgA98XeMZioFbs+MXzzpGPocnO
 Ks/WBExE7KnRErRo57Zq+uFw2nFzI7WlIL3WSXB8WM8qYn15vY08/1H0GKWm5LXi
 dXawaVoGubRfQs8t207EfGEqwLsuPYaYbSB/sL61GGzb8tJaJSJUNgX3ohZT7fw1
 uAMyiKCQKsxJreCKZuD1hPPffGWy6Iuct0uRQZ53SiRSdnEz4j9uUDda3cuhmzx6
 M+1mJO6frwsDXF+uU9YMtVR1L1Kc1de2CwTMbTh0X9Lnvz1MFbQ4ds9fNijbmJ9i
 krwFVIIPIy+qtztavEsrXs6TRBXPWPhFT70Ej35Q/X6dB7SHFzpt3Hamd3xoEUa6
 1z2yV6SdFyTB48Syqg==
 =9CzL
 -----END PGP SIGNATURE-----

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

freedombox Debian release 25.12
2025-09-26 16:54:38 -04:00
James Valleroy
028e3b1b96
Release v25.12 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-09-22 20:23:37 -04:00
Sunil Mohan Adapa
5758bdba2a
upgrades: Overwrite apt sources lens with bug fixes
Fixes: #2251
Fixes: #2426

- Temporarily add a bug fix for the one-line style apt sources format. Upstream
submission: https://github.com/hercules-team/augeas/pull/865 .

- Currently, only two options with keys arch= or trusted= are allowed. However,
as documented in apt manual page[1], there are many different options possible.
Apt itself parses these options in a much more generic way[2][3].

- Fixes allow parsing all the different options allowed by apt. A practical
example (accepted by apt) is also provided as a test case.

Tests:

- Add the following line to one of the apt sources file in
/etc/apt/sources.list.d: "deb
[signed-by=/usr/share/keyrings/debian-archive-trixie-stable.gpg]
https://deb.debian.org/debian trixie main". In augtool, print
/augeas/files/etc/apt/sources.list.d//error.

- With the patch, run 'make build install' and errors in augtool disappear.

- In tor proxy app, enabling/disabling apt through tor works. The files in
/etc/apt/ are updated as expected.

Link: https://manpages.debian.org/trixie/apt/sources.list.5.en.html
Link: 3c9399e643/apt-pkg/sourcelist.cc (L215)
Link: 3c9399e643/apt-pkg/contrib/strutl.cc (L245)
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-09-21 08:11:50 -04:00
James Valleroy
fb0394045a
Release v25.11~bpo13+1 to trixie-backports 2025-09-12 07:02:11 -04:00
James Valleroy
92f02f12de freedombox Debian release 25.11
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmjAEGkWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOGlD/9iEnOAJFHjTrh4GpD6XnIPo6uc
 /HyqxwS03gPgJ+cFyFgIU4d4fo65JC3DflxriGQkw/mLePQLrN9OzJGUO85KC/M8
 SzYIDx9hLLp3ccWNGbKTySHreRbgzyPp1b+Gg2ApWl3POe7UswbVAyCMFoakW27i
 T1PWKaTb53Pa1s8uNwBbnSqfDy/M7lDf/e5A3+SJ277Aw05EnqYOyNGY6akjUZdj
 xdn296b1edAn2ZGEhsTYONhqO/McSR9ABk+idg2bEpoMiImqysRkl4In/tMjy3js
 W5LlESv2eaL3IHCW2JxDl8WSTGjTyATcD9QSkraVt2WM93KgyPFIQD4HpgKuT8GN
 DUs6D5puAmgKMsLGU32H5dMdGCovGab88W5MoztQLNsfA/zsMCuJCj9JlrxEN7Rt
 4Cl8jxUn4onb1PeoIAH7ohcEabqQOwFwt7APO/rBtN98G8jOho21f/OmKQeQ3Hfo
 Ytqu+YALBlU9N/FSR+GJJxghz//ONodgbmy7MyGdgL/qsiy0IHNg8Y0p+e9sX5Kb
 WWrSihjpw+FcZWDlzNPGSiygYaJfLBU5NRDniW1CUk29pibdV5SuRGdP9/0NjGJc
 8pnZFwasLlDc1sEEq6wUfO9zEhxnizS5/f47YtoiHJzSsdH/+Bm4YuIusVi3wYYn
 iME7d0a5ABmefpWBAw==
 =4rWm
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmjD/XwWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICMejD/9eWnFBEYH/tXqMsJUrgwwv8JoQ
 iFCuGSkx329N26Iu0s0IKz0w7EDxWbGsHxCA9fck96GuZJJFxCAuFmKwc4jCRaCF
 N64Ncm3h5Roz2qR0TFLRfQXVCd84bli1Dnz+nUVfZV6sktmRHQsUw4ZmWX+EEqxm
 A5VrrI5ylAHed7DzUKzFFEWtdUywX8ZiHoEOuvdUnJcOkm2KjThDSxXQw/dVk91k
 KkM89VtggffkrWESUCHGATDapIKIt27CVO6pY4F/zHlXhzpgwTYtyMrsZAbLeWJA
 yvV6/A7QQiFudVNm35EunTgSKXeExM9ctz/x6YgFoxWDFGp1YUvgQyzCUGSJi2ma
 44UpsDL51cnJxZdACakjmJsVLeZL2R+kMhJOYKoZoGQf/DsjYFeRNvVN0Drtu281
 U2Z7CHVyTwCRoGpWw74jfj29LD6JEX4PiFSQ8ItaLYNDoWA65cTrSClkMvwF52SP
 CQbmiuNR5VFjuNDPnpL6eZWYwcQBHcQRpLOrU3Fh5hM6GkVomwWNKbLXz60mYow5
 +9YLwCTz++kDbrkpbLPkyTZDDB1Zxe22tt9TkCnybYry1GalI5t3Rvl+F+sfbADW
 WHxqj1D1rXjt1tBEdbwD9R8cpEf7DyIEPoAGFnjlQOMA9TcyrUWhSAB+a1bKl2m7
 uHqIKtb8Yx7McqgAwA==
 =gG/r
 -----END PGP SIGNATURE-----

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

freedombox Debian release 25.11
2025-09-12 07:01:04 -04:00
James Valleroy
d0d621b594
Release v25.11 to unstable 2025-09-08 20:28:34 -04:00
James Valleroy
a7057d3508
Release v25.10~bpo13+1 to trixie-backports 2025-09-02 17:08:57 -04:00
James Valleroy
30a2dd53df
debian: Set the branch for trixie-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-09-02 17:07:16 -04:00
Sunil Mohan Adapa
6efb0681fc
d/control: Remove libpam-abl as a recommendation
Closes: #2533.

See https://salsa.debian.org/freedombox-team/freedombox/-/issues/2533 for
rationale.

Tests:

- Build Debian package with changes and incremented version number. Install it
in the development container and run unattended-upgrade -d. libpam-abl package
is removed by unattended-upgrades.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-08-29 11:14:06 +03:00
James Valleroy
8e8e222371
Release v25.10 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-08-18 20:59:28 -04:00
Sunil Mohan Adapa
cf3bc4aae1
d/control: Drop dependency on python3-setuptools-git
Tests:

- Build a Debian package before and after the patch and notice that binary
packages have no differences when compared with diffoscope. Source packages show
only the change in the patch but no other change.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-08-16 14:16:08 -04:00
Sunil Mohan Adapa
71a50e6d19
privileged: Add systemd units for socket activating the daemon
Tests:

- Daemon starts up with uid/gid set to root.

- Daemon does not run by default if a request is not received. Socket file is
  created with 666 permissions and root:root ownership. Socket file parent directory
  is created with 755 permissions and root:root ownership.

- Daemon starts if a request is sent to the socket using nc.

- If there an exception in daemon starting, then restart is done every second to
  5 seconds, forever.

- Build a Debian package.

  - Install it on fresh trixie Debian VM. Ensure that setup works and privileged
    daemon is auto-enabled.

  - Start a fresh trixie Debian VM and install freedombox from Debian repos.
    Upgrade to the built package. Privileged daemon works and is auto-enabled.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2025-08-16 22:41:20 +05:30
Sunil Mohan Adapa
4220511eb7
ui: Use system's UI fonts on all platforms instead of Lato
- The most pleasant font on any system is the default system font.

  - It is the most optimized and styled font for the system considering screen
  type and screen sizes.

  - Used by all the system apps. Websites can become consistent with system apps
  by using system fonts. GNOME, KDE, Ubuntu, Android, Chrome OS, iOS, and MacOS,
  all have their own system fonts.

  - Changed by the user using OS settings if they don't like it.

- Many popular sites have started using system fonts.

- No extra fonts have to be loaded making page loading jerk free and much
faster. On the first FreedomBox UI page load, the largest item is the font.

- We won't have carry the binary woff files in FreedomBox source tree anymore.
Also eliminates a bunch of lintian warnings.

- Lato font was used because it is prescribed by the FreedomBox identity manual.
Lato can still be used in other places such as marketing materials.

Tests:

- System font is used in the UI. When system font is changed in Gnome settings
and browser is restarted, the new font is shown in the UI.

- Check that the overall layout of the app grids is not effected by the font
size change.

- Check that all the tables in the UI are not affected by the font change.

- Backups repository listing shows each backup archive in one line.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
2025-08-03 06:29:38 +05:30
Sunil Mohan Adapa
3587170bde
*: Update copyright year
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-07-28 15:17:24 -07:00
Alexandre Detiste
cb3a099f04
debian, pyproject.toml: Remove ancient python3-tomli workaround
Thanks to git blame I found why python3-tomli had been added back then:
6199718a19383d8d070b7bdc9d26ead71a9d26dd

python3-tomli is slowly being sunset in favor of tomllib from the Standard
Library: https://wiki.debian.org/Python/Backports

Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-07-28 13:58:47 -07:00
James Valleroy
32fd5048c1
debian: Print warning if version mismatch
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-07-27 09:01:58 -07:00
James Valleroy
f40523a1b1
debian: Update debconf Portuguese translation
Thanks to Américo Monteiro for the patch.
2025-06-16 18:50:05 -04:00
Sunil Mohan Adapa
ce341b18ab
homeassistant: Add the most popular app for home automation
- Use docker container via registry.freedombox.org to obtain the package.
Specify this in the description.

- Mark the app as experimental.

- Show information that a dedicated domain is required to host Home Assistant.

- Use special YAML loader/dumper to deal with custom YAML tags in configuration
file.

- Obtain logo file from a test file in code repository with Apache license as
the actual logo files are freely licensed.

- Write functional tests without accessing the website as a dedicated domain is
necessary.

Tests:

- Functional tests work.

- Add a domain 'mydomain.example' using the Names app. Assign this domain in
Home Assistant app configuration. In /etc/hosts on the host machine add a
mapping from mydomain.example to the IP address of the container/VM. Access the
web interface using https://mydomain.example. Home Assistant web interface is
available and functional.

- After install of the app the configuration.yaml file contains the proxy
related lines are expected.

- Diagnostics work (expect the URL access).

- Re-run setup works.

- 'Launch web client' and frontpage shortcut work as expected.

- Non-admin users can't connect on port 8123.

- Home Assistant is able to establish websocket connection in its web UI.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-05-30 15:14:55 -04:00
James Valleroy
9b465faa10
Release v25.9 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-05-05 20:31:43 -04:00
James Valleroy
b9ea15166d
Release v25.8 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-04-21 20:28:44 -04:00
James Valleroy
23b25f87ca
Release v25.7 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-04-07 21:48:08 -04:00
James Valleroy
b90163fa9e
debian: Build depend on python3-systemd
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-04-05 10:21:06 -04:00
James Valleroy
176690d0b9
Release v25.6 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-25 10:09:23 -04:00
James Valleroy
ac3f0efa94
Release v25.5 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-10 20:53:02 -04:00
James Valleroy
45509357a4
Release v25.4.1
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-02 13:12:35 -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
James Valleroy
8667efafc3
Release v25.4 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-24 20:46:56 -05:00
James Valleroy
6d2f992a42
Release v25.3.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-15 17:59:27 -05:00
James Valleroy
e8f8e69143
Release v25.3 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-10 20:59:56 -05: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
James Valleroy
23d6096d37
Release v25.2 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-27 21:32:02 -05:00
Benedek Nagy
6887c960fe
sogo: Add a new app for SOGo groupware
SOGo is an open source webmail client and groupware available in Debian.
Make a new FreedomBox app for it to be used with the local
Postfix/Dovecot email server.

SOGo requires a database to store events/tasks as well as user settings. Memcached
is also required for caching.

Users log in with their username (as opposed to username + domain on
Roundcube). The host header seen from the first login will be
associated with the user profile. So, if a user logs into SOGo from
freedombox.local and later configures the email server to use
example.com, they will manually have to edit their account(s) to show
the updated domain.

Authentication is done via openldap. It is possible to authenticate with
apache, however it is limited to http basic auth, so mod_auth_tkt cannot
be used. See: b40d777a86/SoObjects/SOGo/SOGoProxyAuthenticator.m (L137)
Configuring http basic auth in my opinion wouldn't add much to
the user experience. It would actually take away the usage of SOGO's built
in TOTP feature.

SOGo only accepts configurations from /etc/sogo/sogo.conf, other configs
from sogo.d don't get recognised.

Use the sogo icon from upstream source. Update sogo.png and sogo.svg to be the
same image (but resized) that is provided in the upstream source. The previous
image was download from Wikimedia Commons.

Update smtp settings so that messages can be sent

Test result for mail deliverability sent with SOGo: https://www.mail-tester.com/test-pdf2yzy6n

The result shows that the message is not DKIM signed. This seems to be
an issue not specific to SOGo. Mails sent from Thunderbird don't get
signed either.

Tests:
- Install app and log in with a FreedomBox user. Create a new event
  titled "Lunch with 🍕 and fries". Confirm the pizza character displays properly.
- Backup the app and uninstall it.
- Restore from the backup, log in and confirm the event gets restored.

To-do:
- test ActiveSync
- create a fail2ban jail
- include the icons in the copyright file
- test sending email in a production setup
- test sieve filters
- write tests

https://salsa.debian.org/freedombox-team/freedombox/-/issues/56

[Sunil]

- App:

  - Update icons to be uniform size as all other apps and copyright information.

  - Since SOGo is not configured to trust the authentication from Apache, it
  does not require FirewallLocalProtection. Remove it.

  - Expand app description. Talk about Email Server app.

  - Update to match recent tags related changes.

  - Make memcached a shared daemon as other processes might use it.

  - Added shared daemon for PostgreSQL.

  - Don't start services when rerunning setup if the app is currently disabled.

  - Don't restart memcached during a restore operation.

- Security:

  - Add system security restrictions to the daemon.

  - Don't use fail2ban jail. SOGo has a mechanism to lock users for a few
  minutes. Use that instead.

- Apache:

  - Make /.well-known URLs work by moving their definitions to global section.

  - Remove old (<2.4) Apache authorization keywords.

  - Simplify, indentation, new line at EOF.

- Manifest:

  - Add more tags.

  - Add SOGo connector, DAVx5, and GNOME Calendar to list of clients.

  - Add 'sogo' to list of service to bring down during backup/restore.

- Privileged:

  - Switch from MySQL to PostgreSQL as it is recommended by SOGo.

  - Use existing utility to generate database password.

  - Use plget and plmerge utilities from gnustep-common package to parse/edit
  the configuration instead of augeas which don't have a dedicated lens.

  - Don't reset the domain when rerunning setup.

  - Ensure that the configuration file has proper ownership and permissions even
  when it did not exist previously.

  - Add typing information for most methods.

  - Remove configuration file after uninstall.

- Configuration:

  - Define database URLs for all seven database tables.

  - Set calendar default roles as suggested in the installation guide.

  - Refresh view automatically every minute to check for new mail.

  - Use the mechanism to lock account after failed login attempts.

  - Add folder name for Junk folder too explicitly.

- Tests: Add basic functional tests.

Tests:

- Functional tests work.

- Rerunning setup does not change the domain back to the primary domain of the
email server.

- Login works. Sending mail and reading mail works. Creating calendar events and
contact works.

- Changing the domain sets the domain value properly in the configuration file.
Configured domain is shown properly on the form.

- Backup and restore work as expected.

- When configuration file is removed and setup is re-run, then the file is
created with proper ownership and permissions.

- 'systemd-analyze security sogo.service' shows a good score.

Signed-off-by: Benedek Nagy <contact@nbenedek.me>
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-26 10:50:28 -05:00
Sunil Mohan Adapa
585c48bf8a
d/copyright: Fix copyright entry for GNOME app icons
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-01-24 15:50:09 -08:00
Sunil Mohan Adapa
0cb9e2ef0d
d/control: Fix incorrect comment format
Tests:

- Building the package works.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2025-01-24 15:29:44 -08:00
Sunil Mohan Adapa
54b956c602
ui: Drop the temporary fix for missing popper.js 2.0
- Latest version of libjs-bootstrap5 depends on
node-popper2. However, version in Debian bookworm still continue to have
incorrect dependency. So, add explicit dependency on node-popper2 until we stop
supporting Bookworm.

Tests:

- In stable and testing VMs, install node-popper2 and notices that the following
work as expected:
  - User menu dropdown in desktop and mobile layouts.
  - Help menu dropdown in desktop and mobile layouts.
  - Notification dropdown.
  - App extra actions dropdown.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-01-24 11:20:16 +02:00
Sunil Mohan Adapa
837ed09dc3
gnome: Add app to provide a graphical desktop environment
- This app is useful for people who can connect a monitor, a keyboard, and a
mouse to their FreedomBox.

- Later this app allow a headless FreedomBox to be used as a remote desktop
server. Users will be able to connect and access desktop applications from LAN
or WAN.

- No functional tests as they will likely fail in CI and container setups.

Tests:

- In a VM, install the app. Installation succeeds.

- Disabling the app makes systemd switch to multi-user.target shutting down any
service that any mean for GUI such as gnome-remote-desktop.service. Graphical
login is not shown on the VM's virtual monitor.

- Enabling the app make systemd switch to graphical.target and all the services
are started again. Graphical login is shown on the VM's virtual monitor.

- Login to desktop using VM's graphical terminal works. Settings, apps, browser
etc. work.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2025-01-15 17:56:16 +02:00
James Valleroy
62e5689c70
Release v25.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-13 21:40:03 -05:00
James Valleroy
6f1d97e009
Release v24.26.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-05 12:17:24 -05:00
James Valleroy
18d2249043
Release v24.26 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-12-30 20:49:26 -05:00
Joseph Nuthalapati
a54a29f009
debian: Remove dependency libjs-jquery
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2024-12-29 14:15:07 -08:00
Sunil Mohan Adapa
c2007d0f6d
backups: Fix issue with verifying SSH hosts with RSA key
- In current stable and testing, verifying SSH remote hosts using RSA is not
working. After selecting the verified RSA fingerprint, paramiko fails to connect

- A change introduced in paramiko 2.9 lead to failures when connecting to hosts
that have a verified RSA host key[1][2][3]. To fix the issue,
disabled_algorithms must be used to drop some of the other algorithms supported
by the server to force paramiko behavior. A better solution to the problem was
introduced in paramiko 3.2. Both these solutions require careful update to the
code. Considering the utility paramiko provides, the regression annoyance,
effort required for this fix, and the security implications (it is an completely
independent SSH implementation), the library does not seem to be worth the
effort in our case.

- Switch to using sshpass command line utility instead of paramiko library. The
only reason to use paramiko seems that 'ssh' command by default does not allow
us to input password easily while paramiko does.

- Another place where paramiko is being used is to check if a host is already
verified in the known_hosts file. This has been trivially replaced with
'ssh-keygen -F'.

- Exit codes provided by sshpass can replace the specific exception raised by
paramiko.

Links:

1) https://www.paramiko.org/changelog.html
2) https://github.com/paramiko/paramiko/issues/2017
3) https://github.com/paramiko/paramiko/issues/1984

Tests:

- Add a remote backup repository with and without encryption.

- Add remote backup repository with all three types of algorithms.

- Add a remote repository again with wrong password. Authentication error is
properly shown.

- Add a remote backup repository and remove it. Host remains verified. Add a
repository again.

- Add a remote backup repository and remove it. Host remains verified. Change
the fingerprint the /var/lib/plinth/.ssh/known_hosts file. Add a repository
again. A proper error is shown that remote host could not be verified.

- Add a remote backup repository and remove it. Host remains verified. Stop SSH
server on the remote host. A generic error is shown that ssh command on remote
host failed.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2024-12-29 14:01:04 -05:00