Compare commits

..

83 Commits

Author SHA1 Message Date
James Valleroy
649788bd09
Release v25.9~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-05-21 01:20:00 -04:00
James Valleroy
2669ea94bb freedombox Debian release 25.9
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmgZZp8WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICKdvD/9MDudf0oZYctPRpA/A/CMWreL3
 +yo/7tcKF3JUp3+aF0p3rAtNvZeHEeyvcL95qzr2pF+Kx/2AOAtrT8NamrDlT8iF
 U1oQPVg68f8b5HkTNddPYiP4BnMvxqPRmhxCNcKK6/THYanDOakJPwyj4U4uiLQE
 7kYcWKz+hTFggEDkd+M/vYbZ+Wflq/I7ix3v+CXdarMFTIXNRWS72diwf3EXEJsV
 spfDTQ8UHwBY6Iw+JRgDAfD1IFEhD5nfROUzI+5Y3cQs4MnF/3856aRtBupZc9Mf
 kDiOhTRotIssvHGbuWjfUEaRcbk9cWQG64WHjq6H45cdZ8mTqxLCB3vkeGwS63a8
 8h4Siqym2af5D7JN6iAlRLEhlXDsgjpYSy8T3wTvnBkOQ0hVj3ZcUhWxiT3iWS1O
 3JYmNsJqGolGgYa1nUySg1vfMp5Krhh1Mn+5+HubWhIoqc7MnhBmFNPC8YvIMaDb
 9QdVUk5Zf8hmyLZTThAOrxjFIlKuFXtNK9MfH60yEZFuChFHSdulJ41ZW8Tv9EV3
 x5BI0jqk1CBBt9lEcK7ap9z20XVmrT9LLGpAq2ILT17eZJ6+/WV+GT2YxpAHl9qE
 U0QC7IGHj1mjTpeyVBMxqK6sgBvZa/mtq9LfZw0oWEarAECzfAMxSBEliHdofcAH
 l5tT83zSNzAqzhCXZQ==
 =CNiM
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmgtYl8WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICDH4D/9UbjGfiMtM4+44lhUQJU2E7ECP
 x5f+z7/8B7zvunhZQ/RB1X2nrakfzZ6XvlLHGTSgxcGCDTPBzBRSffvO5CWLZxxo
 HddBsRyc/O4g5yNqD1jDP72pnxCu7Lque7UIbTPtNAjuT9YDZfYsuArThiP7YWYt
 VEfzMzsul/DIxf6/E/6ZhiNIr71Rao0IDc230lfDs86GjL6DxYAEobDtzGigJKSy
 aoc2EJcMlpT8e0QnjlK/Fv7/2LXweQjQl6ApWKF48Sqms0IQ6LAF9cnUTW0OMmI5
 g30xAfE0gRP7QybFC4k61Jx3nrDasJ8lhxmA7UQ5vxdtR9S8MlynUe1f0vWeyEM9
 xRl7x2U//qHBxR9YtELuv+BSwHL665XY1M6lZz5i5/cjjfJ/pLx1QBfWoKxqwcQe
 i7CdGXNWU+D8g5we2nlDXS801X6XoedoA+rMRLc8dsRtliYf8JL4uug8/oKrrJ5i
 P5fxckGaSx3+Iok8N2oHsVJ7UIY+eMNuJYVKWM09uT/HXxrPi4o1mLDh8Wd9p3Um
 rO3j6eaQmt82ONfl32jPOpNVQoDdAau0nldiOR1rYT4K1r+a4GPBa1iXxNgPT6Gm
 DFWIbqLQIDYmIs/Y0zN0SYSDn4DkBen4/wkC9re/OnUR8Z9Tdo1Nu7UBAwg6wMnN
 LO+otHhY5C+O1RtV7Q==
 =4iaN
 -----END PGP SIGNATURE-----

Merge tag 'v25.9' into debian/bookworm-backports

freedombox Debian release 25.9
2025-05-21 01:19:25 -04:00
James Valleroy
80eaa8fa62
Release v25.8~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-05-03 06:56:14 -04:00
James Valleroy
450458ed03 freedombox Debian release 25.8
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmgG67AWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICHnQD/9r2XeQjc7jQ8GWu9UFja19uhG1
 qZfjcI5SyWECPvcA6LbNIFpu01C7MBERvP2JSd7I7iiCa64iHS/Z1UYNkWzQqdtG
 RGFrMu0WM93+u7DFwgW0URY0si9Vf8IIzIq2hgOeAmsJrSOIKe5N9ffSkZx9wbVA
 VRGuOl0GG5hsAn7Rd9uHuC3GyzhR7cPnF7Z5AOWSDVTE6QXZgxKi529fvDECx0Nd
 aL5O1jPF4JXlGq0xjSM89APK2PZ/5AKG/AgVBwv+G3bzkqr0aqXzAX7xzRd24pb+
 IC7QbGxynsHj3jG9Py7mGnNXi3K4CbTR1l2EeTOKY/uymH7C/MEVdyoPoeCCIz+5
 s0Y7tWuQ1Cor3Aiz/HpWIK6bPkXpuYO3DW6CQsCD7njmalI/zNIbmm/+hcztTjyb
 DCwpeDVkYP8H6V30bOnLgQbKqD54iWY74ezFDkadvrIvv5d7Yj0/vOLqI2sQ7Zo0
 5yELtXYSF723Um5eHvjsz9yCVRZuvjVam8B860/bVSNlDkst2/1sH3FLfZYbmPpJ
 Nf1+onHg4jSd63qShKtGVOydtNjWg74tZ+rLMFSBpvvgaj2EjOcHNKm+NvrbB51y
 RxWoCQUf9QdaNdz1uDbN3o5iWloffoPuokI7aAFIkonC7sbGVZPmK2Xe8YpWJYRC
 ChRrZq8sxFjzJF8p7g==
 =9oZp
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmgV9i8WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOkZD/4t1JXg80yxpSD+CGdr7V2L8H8X
 KDP76Y+j2sRh7WE6CVwRml1JUx3iFs93g5ykpWNly2Zgkshnvu6KgOAv52DBVaPg
 zPhPnqc4ZUJUbru/8u8vaHoNDHmJ1Ap9ba+gqGW7Pu4lhlZx4+om4lBgWx+6ObJZ
 ChjoLYFTRRJME0mxvWhCwtt2l5MsPo8wOnJwoSgeA6SdLFPkg25GCMbb+pa6Ez13
 bbKkjrEuDyhwW91Ig0NkvJTq0j7ZAkZGMIOF3aB9N5OdxNhp8xGoIzmoMXxCwGYk
 QLQEo7FYZUYWW1ZCElHi0BVVBCmScs2eRB2YFSYXEiXD/3QyCLCSVuY6lzHCrMdA
 +ynGqXOAok3H0W9GQiRbE+31P0qhtZlpVs6mqE8+Nitm67mM/2kLeLHYJWm91Wmt
 XeP53ppSdPRA1/8O8UhRqaBFBk4d3DjGH0LSECs0K4LpohSxKK1SntdcLzszD7T8
 pEDZT1mp3dk7YjxMJ7uH928CKd6PhJTdLNOFKSBJXK6G7i1BX2BUsFkKEc8daSPB
 OHm7A2PxxMjTgW1HKMzpNpU5JhQJaI0tnPtYU3dJOihRrJ7bSTXE4sHbs19twKge
 PPaldsQ/0K7Oic39aOW0/Tq3SfZ6F1Y2PztxKFnmnNQgJcqGi+7fOsjOfnr53Qgq
 qUDXHoLWbJwoYdoJLQ==
 =M+mG
 -----END PGP SIGNATURE-----

Merge tag 'v25.8' into debian/bookworm-backports

freedombox Debian release 25.8
2025-05-03 06:55:41 -04:00
James Valleroy
029a5e6408
Release v25.7~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-04-10 07:59:30 -04:00
James Valleroy
d89be5d769 freedombox Debian release 25.7
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmf1DzoWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICLGMEACyjG7B1nY5B08F2XILGFgSq00y
 FGVJREer+d5GoMmxDLqH/YnTtlT292J9qywvySS7Dt0ja7gt2TpstOr0id/6gje5
 eXHNJsh4eMJ0fKJ7X0X311OjVElIVi+mFzwr+jub0UWKsJ/VdghOwZqrKtd/T3u1
 i2DYqu+TC+ludEC1vwYTxp7+3LF6DFX9fi5XoLx+VynDmqfT61QB8b2t6CJJfndH
 CskgDKcqY0K6cMRJnZjxO0pPuTDU1j9+CREdxwWugTpm0gVddvpleNNMQLig8HQ6
 BKyXikc6rHkfPpxBpkDyUq7qMx5EmSkUtmHMQ4dVRymQgC0chFyXx8AqAGDJR3l7
 09ubyzoN7HcyfQBT8BJZONW0mMQx2R278NPd6f9JkN9MWmwiBNNfYYazYBKe3sWw
 u/ggyq9K5Tjm0hNvtu26QClByAgKi/5Uq9EYQNQ1RgJsmPpyZTYW0DJvbH1dG6wj
 n7b3bLndaedWzDqUAWp608aZkHkmwGuDtw3ISULQHJ+/OxQUDxKkzgrHrzZp/0QZ
 WrIeJW713ttNKeQZ6E4qUMW3uBl/2Un3F1E5oDvzIFsSfkCJaI5q4ArnyjiIkuqF
 G5vYVIxWrlqxhEYyIFChCJgzb+RXFoGb6NWRMNeHwSdrzg3YJH25Ymzysv2wvEpd
 iCK8j4PHVx2uWR/+5g==
 =tohW
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmf3sokWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICGHkEACr7nsgIgFQNywB9+BJL+lXjpgI
 N/HVsw+Y5R5sQk+MKGoDu+xXjzSmOfpQdIi8S9szz55aeCE42XkvHmeSkOYCGpB8
 M1XIrol+9dMl69PhoLRKnnGh9lJlkG2M83O4H/YJYgbwlVuhZIeR+yImfT1r3zox
 TflhAhAXp7KGdZHmYSqkPXOG4uHj59dkgTiCBV6lSyQQ4jo6hXLmKq+4j/q7FCEy
 HyftX9t9s/dkATM6WNK2AzPu2e60DiDc1iUukgYb7NQ8SwkGEyD+8nCMxhWZsLRQ
 hRN5WzsHNTU1LePvZUv63T/PkscyFKeIqJukQGeW49nf2MW8EqJnlw4QdxRYdrHW
 olQRMMrFR/KYJXj3dX7NVc/rvKjQaeDf39JFa+TrlJrg7iSYTc1gvFatoJE/4/57
 Z+oHV7sFhII427EGmGoepD/Vg1J8hLWhPNVBzkMha6dV/olgiFCpOhwo8oWp31bu
 Mvn6B0+vnz5mW01xpWGTpad6PENvcdtdI9M4r/N5n7BmqmOi0GQnLmDbz7YUt0zw
 TzyhfaKcolhlQ3e1m43Ja6TwEkIE4W7aX1GvqIPGHTtamev3DMG0zESMWOhw4Kky
 7jc6h72RZ63x36Rqd1WYW1UhZvXUBJ4Unzar29DiQnnZMHiRmYrhjXhFjoHQsqXR
 IEmUlJ7PqoVG7PeCag==
 =O/BD
 -----END PGP SIGNATURE-----

Merge tag 'v25.7' into debian/bookworm-backports

freedombox Debian release 25.7
2025-04-10 07:59:03 -04:00
James Valleroy
1e994b4e9a
Release v25.6~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-28 08:14:25 -04:00
James Valleroy
29936c4ba6 freedombox Debian release 25.6
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmfiynQWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOiRD/4kAwDwA0u+z6SaDTgYVrze6Xkv
 sLVJ3TLbVm3/vcldnVyLViGoSWcHuFJkcdzN7e2sgS62FamNr8jnQvgMQ4Y+I9ie
 CQ51c55V+f1kN/+UqPaQIvjAxTQM3QP2eteicqFPxi3F3NM06E6g3IZUcM0xyOty
 h4SR16fJwLkQTJ27hM/4YW8IKQs/Q3w65n4YNc34WDbJN4Km2anpQdAnyG9dv17P
 G7BTyeOd5Uud4GzeripWmHzKdWIppaUNzmQDeBKqm0Fgp9LBDP27EY60oUKKlpTm
 bzSHglWv3LwInUeuGPW1Yww2UkOczXhSQ4MdkEbl7+K/Szq9UW+3fT3e2bd582K7
 AMN14qTffEfCYWM5FJV1kBnn0/ah5But87KFiXABXKqiM9cOLRB+Q6RmWnLDWplc
 K7X8p95goKhsX1Z+W+gmOKw5QvYsqlJ9Lm7vRb++Au9wi9WIMz8L248OCyLcWmGS
 Pam/ncbPYOT7DYAOg03HswMPgsjeZyVpXjcjQ5q6jQeK/IvxOVoxgTDv05PDEWqy
 Kabp58NkQ/X1wO6Lauxk40UtaPS2b4Te6oVuYNUjjgmEE/LdP3s9atopu1mm8DgI
 ou9fgZUqHpfj24UJMjMNORNKZj0hEirEsrGN+JZ7QSZbO2BdsNiw4qpLLrBa0BzN
 a9qsKGUZzn3SEaGooQ==
 =j0PS
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmfmkn0WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICEsREADO3kYGLaEnYd9MhiAPkAF3z5FK
 QUs8tsRQOmjbqVX2ybjKRUT+kHvWIE6zcSXmPyQgrhPNqWcqBJ4+Zsfy2BE8BLc7
 mNXVi+c76zZmTnlYzncm9IlWOoHsVt0kvYMdEe5N6YkUuS3pRR8gronPCj3Cg7uT
 2GHytIzrI1Za1RiGvNsxloPAOs5lsSzzf9YMcVeVsR+BJXIE+cbzSj9vu57Lxd67
 VboPWyEg2VDXmi5Gaf2QXwDSOh6HAizUPfMTrjna3WGqtNuJz7F6R+uh+wVEtQ/p
 WzR67xL9QD/K6HgBxbdJdKUQ7X37ex56Xx7d+FXQz5+URmG0Cah8Dbf932Aw+Y/u
 F+YA9c4j05Ms2tbcv2X6SbzPMuD+2JZ5P4tup/MF/MI2L/qV42QbJXQQjV2LBSi5
 QvTnX3DtA7aXwGIJ3mBQ1ua1kEdQhXq3FspsF7XqrtvxYt0suiyYD/QY2evNqEpQ
 XoAM1wZRdsRAeY6s0OXf0/dQU1VXX7bTu5M+PFasLoaZ6jVRmaMKeL0NLH30xvU0
 +0G+/MMUSlIZeIsuT6GQ85baJtFM1rM6hpmkZbDo/wZzaDXUb3sEFR3eqA9cSROt
 lFpIdKTr7K5wpMku78QZQSzpWwR3hP5UJ6rVX4gx5RvMvXUj6UUIFctW3/j+mk9O
 kfUraqNIQNcUNRB0DQ==
 =F5pc
 -----END PGP SIGNATURE-----

Merge tag 'v25.6' into debian/bookworm-backports

freedombox Debian release 25.6

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-28 08:13:48 -04:00
James Valleroy
1e4494f5c4
Release v25.5~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-14 07:27:39 -04:00
James Valleroy
ce4c9e58a9 freedombox Debian release 25.5
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmfPmDgWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICNszD/9ZLWgnz7NAnYa3HQaF/x0sdqjG
 okAcqub+VW2RDJMA5pGUM8yYK/vpPehlqFOijq/AVwWIfFEa4YEItrlIRpSAk0B6
 QNFIpSNoNInjBXO8aYa8vZwS2J36I1z5jvERGYkO2DGiAyyrNoWZXMnT62MOZgY3
 85aJGaMAY3aP65YYw0QBdN5PGH9HkEqghP5aI7+KU3MSx1vLya9CjPSe37IfuVFj
 eVWSjc5N19kml7ZxS67MmYYYdPCoh4tABzfkGNaev/UmkcjVMtiKmMFbME2pynMx
 fR8/EpqffsKlnCNnlb1fYCp6JiEH9uQ6DY7O591Fthd0Y+9wCBmu2DaG7AtgP4FW
 j26cfqcpF/d2ME9ELqbkodEno3Bj6jz43yeY1ZgejxeOqlvbBEuVIv3LJ99tsOT0
 wpQ6HZ148xJOJj29uA6JAz0w/eBEX5S6LZDKOOJHrCaZ0Gq+zcQYMGXkEywuG86m
 fKIlR2pgDX1w4LT+mTipTun4tzvncekNknoCQ+/+B5P/7kdjSv+hPdU+6LZlrGRM
 EuZ4Wtb26qjZF10Kl9VPcSuxfbcF6A/ZLsDzlte+3/axxn9p5oNv05ZvGVb7fiqj
 Ok1tNnBsM4v+DcVaDK2tP9/n7DtSLan0cIK4vxUnwUmgJ6pytVzlLXyFxo47bJJ1
 DDOI44V2ZRmT9hc9tg==
 =WFpX
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmfUEo0WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPtzD/9aCRzcdOJmnSfT7FsGB74JLBPN
 UIzKBx3TiITaDYCrffOnkiSSaBUHGvHlsw5Okk0WnK9nc23kS/uVnBP37aLCPXrB
 kzMv+2QzkvS8k42VQ/G84m2kbroDH80rs/QJqe4Hw0qfLc4Cv3QwE5Bz6U1I8ok0
 8oT0ciUlM+0QYKvffEe+LmZJcG/NCuQYWqxU5umPWFNWh3AE3dnJ2FzdbGHZF4ui
 4SbtO7gAjJeZAizLciFeMXJIH3CETPZzpNenXQnIjJTQXiCK1fj9ZshUXn9hxocg
 9/lDb6qv9gL/cHGZsQCsXs81HyaJ3XOOWL1sFzDOmRDTCY30NUTrZ1LQsQzvFbqt
 p7CPwTXD4JnS7tPoB8TqiaK98xqHBS1KDvlImzN2/t8cENPEcsLE4yG4TWGvPxjG
 riOB9oXlaImnBSYKzVhGs7OYnivFpbb3WgZoXFD1Vk8o8el5QvG5/zUDVYnSr4Xa
 wjR2d1fO4zDsO6r1pioMllC0Cnzl6tZqsHMSAyJjwBllluFCGsWNE3H4FkQeoJT4
 s/VBMdMfwKCnnmDONvHHG2f6/QoP8bpdBZqhgWO7OY9BDe/P0LDv4bPOjd/LyofC
 CtGTWKhyB7N3acyikB7etOgLMoHjxFtM9K7urEitPW0Adbv/jEAvugft1wqMa0RZ
 qe5bAKtoMA1U5sOboA==
 =wwy4
 -----END PGP SIGNATURE-----

Merge tag 'v25.5' into debian/bookworm-backports

freedombox Debian release 25.5

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-14 07:27:06 -04:00
James Valleroy
9e36f77cc7
Release v25.4.1~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-07 16:45:36 -05:00
James Valleroy
ae2659e1e1 freedombox Debian release 25.4.1
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmfE/RwWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICHY3EADIUHja06H3Y0lWZLo6f0Obvs/J
 0AvREpq5OXl1ujTuCiskBLMOgcAuCNaVqVgx0IfIZ4qjQHwazJKYz3ObdNTMfnnw
 keq3hcGxZi0pmKTw/qaEcgOcGMnpY6BkmfPJsenKTRaGmlUOrIVAxWngthPZK9d9
 /gXewPTguGNQdg6p/PfhTL1ukNyTqz8Z2AHjVfGbCNS7Opf3QJjmi3EBX0PauM5I
 +I1zXjTzuzFNh6PClAhs3A2b/RLUqFNeR+FQ30GlqEgnPMKXT/bZqC+TO1QdyZQq
 FG2vjODmNWYWsZrB4nWnsyg5wSCmdHV0kzdvNo2VClueky/KGkyTylM9EkzrltKI
 dKl0XMCeJO4UmbWmo8b9hpzIvr+/zd+v65p41a0K3eT2kylwgiDDFgquieOlJfNl
 4URHEF+JWL7c0PYeGQ1Rn6zyeumqAz6esgEK/CYWNLHcUBMYVOdzhUjkbnY6b6HB
 uogjoqyyb2WXXSnnmFeGxjKfeBgKl0adxx5hSULdQxUwnmxvMhW8R+ccFZG5hM05
 vyexyXNyoh4dHqgTfTJDEOqpS+FpBw5WucYS2yXzKys/lOCz/CqDjWYePP/Hkb65
 OqQ2WoEADs3WQvGdIPxyHvoOa3YB1jqvtwGz5DFWTQlwk+64UhUPUPYpbbOWJ5UF
 qT0smYKmoz5geGcEXg==
 =80Uq
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmfLaN0WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOZBD/9g9QUaIfAgw5GzbT5YortJDGTz
 q9nvX1TTwp/ZP9W9HO+oyQnUbkCVWcwzlzP3n+gthj/9dUvCfEjuAuGK8bOaRbK8
 zyyLrdp38Zv5zQ1bt7sL1i+HPBkLVSAhEonwjzCGdzw31sVEW+sw69DGAYkIIOvQ
 rB0EjAoWP/sTBAxLzxJpPhFAmUMC7xcjzUE95tfwGo5Mhd2E+i/Dsu1P/31/yAWr
 BjNjQzzZ3Vvf45t7MMVLr+DHoeijBh6UN64Eu/5z3HL1ZE1OcJRocInYqvevjOxo
 M8JZV5b1MVikCJuFgzJfcbxbtiLWJ/PNwFvlIHswzM1km5Dl5DSEO8Mciq3CHOeu
 dhj74y/HWMszNcQLUsbLqpJXIItASr08KjazdlFqbtxFzaMsC9sUpsOcNpOiqigv
 CQRF7fadX/JRKjAYTiDBIri/GPbaPocbID3Wnr6m7Ob9iSnRX3Bs28SvRLSHnqcd
 7T3erSuESN+czH9YeL5ONGgfZEFvCs/G+nzJ3l6puRphgM5Hq3BHqgInALJ8yhJW
 aGFyHY8up49Gc5G7nvNP8FW6R7PffNL6Pc3IZMEFP0019UB7Ue5omoYmZr2NsS1X
 TYM7jUdWV3weGqZdSDGZSUcpPUBUVbVZV3PDOw1Vo3HleCO1Z/dRWQPr7rQOpZcM
 b+bFY2lwBkTn96u+3A==
 =Wi7N
 -----END PGP SIGNATURE-----

Merge tag 'v25.4.1' into debian/bookworm-backports

freedombox Debian release 25.4.1

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-03-07 16:45:00 -05:00
James Valleroy
36238323ad
Release v25.3.1~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-18 08:32:45 -05:00
James Valleroy
e5a3d8c91e freedombox Debian release 25.3.1
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmexJlMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICIFYEACtRxF+0q5SgsZ11qrs4GYjYLXY
 IFNWpsbIthjbrhcBaHMcsBwxVKBccah1X/8tPVHeSvcE+kzIxDE1126i/r6Jl1Lh
 7uc9QTwo6wtSl0wPEvk5Uop0Yn/P08HJHmumpFgA9/Q5zLZPuM7hx8fnO+RKFJ8g
 r8wJPWa69yzLEJ0k1xUAQPG89PxUGr2L9QMfahRkvOb1Kq/7fLxTR00jDp7XmRi6
 xVFLZbem3cLpu0pMOxMUu/M7RVTvWnDeQz2gSm3SEycaaMz9OSWB1zNgy6nHxcZn
 uvD8Qxcb4AVRMoC9SeSSJP/Z1COkd8r2SrGvJp4eXkjumPqBWwcyNixh9hCEOr63
 k9lLf6lY8Q8llBm9693f2FSpYAHOplyAg5TVmmWtRSvDEU7jP/HGj4XVor7nu+jj
 YyDeeXekX0RJID1FaUa5rPQMxUjieJxBkdNDlGqlBtraCwpTO1lbOBFUbW1X48Oc
 Qa9xaYcppKewPrbgNPqiUdmJR2T1DZZ/fq212yvhIn9XW1qZ53DRwAyfulCeFNo1
 7pguleAqt0dVQx71nioVOzzFoeFvxcYKaLtKwBAVHtRg9AyKgaqtCq+z+GvHdbe/
 /tOVPB1cqD2rzlq3VnKRo5iqSaZQcK3iuObkdsRARkgGBOGxYGhGiL+ooCpl6Mg3
 Zmj5B2+xKqrzY3pqKQ==
 =+eVH
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAme0i9sWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICGPxD/47xGPCbl3GGgCXhyLEhsWGd4x8
 3KF8X6sSDitp6IrzzgLelSNxevTc5zWuRGLoQZ8AxZJJitPAJugLzMjFmLIqWym4
 5sP/BtAAXc0UoBw765+0InQZ/tCeeo46c3lfP+ezIm8hcSXDPlttvDzFV/rfP02K
 LpIVLw5gXG8h8oNosok6WIXJa/TthkCw7pDHoSMr/KRGzhCguVVYDSqtIJoVbV0C
 j3EG8P3qsh3UPYMBtxmURwJGOvD9v/Mg+UB3rhNbzJ1LwKwGoPCbR7aEmLTF8slJ
 Ihkhl/35EaICB2sRPimpuqi2E0qkqTcdigHo7q3OLvjehCIHIhPyOieoeMWEtR+6
 vi1jjDEuNHvZLvAIVCbvbqZeTYd9CimSSF7S94MyDDXrf/xBnHbeYKb7B29xMYg3
 dQyKTK0mxBAxfFeaSeGdpP7FI9bs4QZ7m4gQYGG4EkBHop5/1l45UDFRJuOhgCJ/
 bmcqW9JXEazhHMOqJ7EqnNcu8hi6iIGAOW1TGdMZbeDM9Cj+H26nwYN8ahnh3u9m
 iabpwuNNA8B34jh3Wm4QMIa98mGtNd6asmy11B1u/VUohbf4POyOEW0BwPeSLdre
 dQyG0MtsQD9g0vtks18j+2TqHlNW1tFB33IwVwYlm3n6JAIK5DM2bQu6cgpRD/V0
 LAKp1POz/Pe2N6/79w==
 =t9aP
 -----END PGP SIGNATURE-----

Merge tag 'v25.3.1' into debian/bookworm-backports

freedombox Debian release 25.3.1

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-02-18 08:32:09 -05:00
James Valleroy
2157c29edc
Release v25.1~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-16 07:39:44 -05:00
James Valleroy
9ac4384135 freedombox Debian release 25.1
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmeGbKUWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICFoIEADSD7hiSjyG6O3Z3enPfoO8h4Y8
 /8rHbe1Is2f+cbSgYaG1gAUYSKvwOYuAniEoHQTxZ9y6ybSX6QtlRezKI8LRKLww
 oszHI+F8G+/jwkLL0r6RiAYzxAOLdL/mPLubR70g/ykKJRc9sxZbtWUWddD+0Lqy
 Udl2jv5gcJNDEsVWbWfUalmxcsV+2h5UGAvh+A+6AVe3vCwwO7uijCKOx50YuQbS
 ODnm2btr40Z4g0zA3nzn3EHq83MJPjjIuxB8UliakmMuGNdctGheQVBXpRY9jfT9
 bsJ475BqbvHZ+SnXPUyt/NjARJyAkmP1XL3W1XZCDtoaGh/7Qmc7Pg4XAVe+7wQ0
 Z2ESDwANSDbXOAdqAINXIvrHTiRD6hiOxZTuMZT4qNfprJymgC77voLmI3y2vZXq
 8Hbpes33z4RVv2lcpvmXoHi9H1/ceM5ag2o/QZVz0EPldRQVMM51hoQc/84dzZVd
 a5+4lndHU0JbRN5ENY8nNSiagSZdbDnydXo4n8MyvU7azvkSS5puh4+rI4weLHk1
 9alCrbTTQ/9ZmQkOdzG8J5rt3YKrQlEJbdddHYCub95ohtkh0B+Xkd18fdneSAF7
 MBakd50+uyFkPuuJzERwKIWqqtc/pa4ADr+QnZroPoX5f4Bqms8dDC0liKL1rqr2
 xyaUm93Q5NMv52PzIg==
 =f4J/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmeI/cMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICJAsD/9bvBiBPPVEJwPyevv7w3slkSzw
 4Ijs84UlcbJ3/4/n1wASLnf8NhqE5wutdvYWIWhGw9qH2mPDhw/zRYBM3sWr1auI
 slVkGn9KsC/ptWDMKExNFZIwei3sz+HKWpy2BpVyo6LE5KpdwUm1QShRSNf0RLbf
 WxlU76kekbyXhEiiUz0EJ30ppEum2M2Oxpgfo5JpXOS/qr2icCdpYgtDC57CXAU+
 U2Rmw4jejbge/bHUMAzIf6A8OaxG1PCZ6uzDxMdhRlgLrgyVSFczdcnPhRNEiv3c
 hLYjz/sALreaO6kT0B6Gggxa97DUKova9vWlaG1ygz+zbFVHsP0lJmAdog1XHyCN
 OjkYKKVmatZq+aIgw2mYHuHpIypkVPHdoKL5hwsGpbMyrTC3keAxjUxSB8qcZsem
 dnRpesmY+NRpUKeVfKjkOhO5UU59u0aoUqM7P9fiwG53lwpVi/En4gjTBeUEdTUY
 yR9OKygfkmKyvimUkR3AIcysdlGbY8NTiI1z8BIm1/qjghTYesZhyxBEmQDitip0
 zi/CRzJkqxHmDul7BqvkyWMZIZ89qvTkEgBSnQqew5FuVJIuitzPWusLa3WwsZeA
 YpVxsN+Vo/fqo9m7VCSwV1fmkr6kfamFQAfd1Mj0OldTSROI2vwnCcBgckmGBNzN
 VpKuNDfRl+afaOIXQQ==
 =pmJP
 -----END PGP SIGNATURE-----

Merge tag 'v25.1' into debian/bookworm-backports

freedombox Debian release 25.1

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-16 07:38:25 -05:00
James Valleroy
8cc9ad192f
Release v24.26.1~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-10 17:42:34 -05:00
James Valleroy
ec0ba5df3c freedombox Debian release 24.26.1
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmd6xmAWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICAjSEADUIDUnqu6/HKryq8KrYgOYmi05
 i1aye65HSzrr+1QyUKenB1lQ2ttgqF/5VbdNoN89W67GZvTnYw22d40C1Dx1wXtk
 rjDRSQFwP3LQE9eFr9GxlyNeSq5r2gPa76a2eoj6Hxz4E2XQxvDW8aK/BTCDRM5N
 lmVyxZUb+p49HMoJMJUx/uBpmrur+usZBPDM+q3pr0E+PuXj6oL/qzt4g/H0JkMs
 A72+G8Lcq8EQJHBstxdMLMl+f6+tuzy0NgVLdAgd7SNpfIjteD+jG7cUUq8bpKcm
 b7IvgKSy4Ze66yYsZkwAZy42LXfTAitUvGPdF0URBt6peoE4RVPFu9wNRtwOVIw3
 sowoTf038EG65q8LuqTkrmUSovN/uBcermzZ/MHnRxHX5RLS6ELVn42cEza/t+RF
 AgXnaUgG7fPXeiNU6AD4vQEAcmYtnQB7IHdXwiGC081CrilxWNbjWhPk/dC7lz2a
 qreMn9HiKjkQ2yN5C8GJZ7m2XO+HzwV2t9fTh4hIfNp05/Q9FAFkls30UHzClLxF
 JNV74pwBqLX3m7DXOfz5e8jjecAizN7n7hJQvVIWJRKf/Dmji/aqxZ2zV2HFzNco
 VJpYxvde0PbjGMPQopK7v0+f16D1/cHmytFtAD/P8YdbRlzMQtoJkFEXurzTaDz7
 NmsoedzbaIAra1ZZIA==
 =xzy5
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmeBoj8WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICFgLEACYRuJbxtQ1GpO71co7fAYlMQKA
 rVke5Y0BoUqznfhBgcMHEu3nSNjIulgFR91rdbCw/WnrE9ON99rm4IXVPKuesbVv
 wMSz9Ez3U+i3mpUjl18tCgOgaOcapemQr00AX6gwsMqpunxp9A5vOcXrDPLUhrx1
 gg1OTt/ya6O/X+oVvZqRisYngRkx/LSKK4HJ5SjznknmIGZLn31sIvwCUx4dkt7f
 RFYIoBJd2NAcQ8xIoJp296jIsTZbz7eearKUSq4PfudmKrf+iEd7Tp/LiH32PIUL
 M5Frje7dTH2EgvO4nm4A4kB6wT3DymGCGHg/fFIVYeuuvG/fUdXdV/83FeLzZ7xE
 U2aW5ZeOBE8Wcn4gy/TrSDFkVVsdbK3VWUCDH7sidnB4X8jCOY2lWCBjyckMkGjf
 dp2WACfjJrzqpQtJF2Osu38qbmHy/EBv67cKZoFIRDXdd3feJv84vzSnYLG6SQLT
 YFpFyEDyHBWNNwmYi//7Lk67IB/NS2nWEms5aAX6X7YLqYZ/DGYfBzsi0rEwBF9X
 Xi+dqZzSFwwLMbraVHjMs8N8w9juaFzhm9TD9gRo+L4AZGudARWjF6hpL80A6jPK
 8zGP2aFIGMaOODDwoBb5mNcN0GNLUCbQrI1P60UH1NFo0XqDuMPrqODSwIL/WnzM
 M5GyCqM4ixgf1Qq5yg==
 =G0IP
 -----END PGP SIGNATURE-----

Merge tag 'v24.26.1' into debian/bookworm-backports

freedombox Debian release 24.26.1

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2025-01-10 17:42:05 -05:00
James Valleroy
7fc288a2d1
Release v24.25~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-12-19 07:33:46 -05:00
James Valleroy
561d43d61f freedombox Debian release 24.25
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmdg7jgWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICKLqEACU/BYpXt9WrO4S7vKAlIU44t+H
 NZRD1RYzjWwGyPGELXwPFl5gFnP9RGyRwmpbM4Z96cWSEVN0rXsDWRUxgXXHXN0e
 0bMJGXvwBj6DeXmeKaUZDlHfRfvl8UDOdmmC6DZ5gb2Tb5cCB4od/VTUxyBbN8W/
 +bcpkKo3/7qnYTKZkjY5rs2zvUqTctNs8CK6yr3iFY0Dec8uzkdRmN7XG2pljIF/
 VwjO8oKSBu3thX+XisuVuibZNWYrYiwzvcrLqD4d1ihgcVUdXdUWQw7QK42LGkxS
 V4CdA4idB5eR+QN/DZoTMDiHZ058Qzjl47Bv4EISlcatikJhjB38B8+lnM0hvEmN
 CcIOb5CxeT5dFnZIPjflAPeC1vWInvVOIeH4Std40VOUsKD3hyX7tlEZrenFVEsr
 M/gvizpUPfwrolUxb7eYBeyeR2zNCRXpy/+PhhkfzrnRb69SnllIx79OAaZFVLFC
 SGCx91LI/DeOR/7La+RtWPcpdLdBgflXHRWMQx6Y/hDMWPkWzQJp4PrsLXodeSVg
 qzyUAXY7aEjs4C81+ycTziN1zVa4YJEWJ1ikIyVui2mKFmUXzOeG6Ks/HszpJsQ1
 TbDGhCoDms1k0Gr1OLHVEYA/tKee5WFK1ENx9yAMmh+txSxjvRH/m1c/9w+Ud0TN
 IqHwrdV1hB0hz2XF8w==
 =OYVr
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmdkEnIWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICI6TD/9O2m1eQAicZNmqYfrVfW8mhNHD
 pPsZD1G8Sglf+75QcjxD4J9fC/PBfortyTRmESuzeoYkCs3iN3SoTkq3P9NSEYzs
 plzISzrBRy2FDnMXAGGfs4Mhtmj6ZfQe2BbU1tHX0z8ojnxn6Y3ohjUEr6VWz75M
 D1gB1ORtvMHv4JLCDu7ZGsPFAubM5Ah3wU9IZRX8X6NtG+XG+EzTEVeb0sJ1QstA
 JABiZVjCyf2JcQc8aXViVbn6ZPIqVnAXv9C0Vo0nKAY11bbEw6j5BZ9/TIUbg0UA
 HA+8HwIOJVf4yk18yOcRrOHxKDHxjZ4NJJKtBq/AoQPlrC45ogCZ0HSOLmanf5Ge
 lPQaLCr8VnNyDBxaEofVIclm3HNKXqtyAvoGWqQKhAnyuuCKxWwLaq46/XLta6FN
 Zin6O7kaZrwDPihRC3dMIxEJ6I3dZnWZd4BrSZwKPzh3Sksl0WRMTaFf6aqUhWrq
 +ven3zUBkUnSDHR8VquxcRZRmLEs3heJEILeeeHQAebIpPhcXlzi3aPOKT9XaLj2
 0Q5mWY6KIcmzxrR5G9fQyDtV2Gs9hlgVY0Dy0Kq0ptjM63vfy4zNPmPsidvKvITl
 nCZGGOyqq0Y/aGh6pOEKsHBGwXrWPgfwDZcLsFs20MsZO91Ff0WzJHQG8/ZmFZEf
 AXOn/YCM+kqa5gLA9Q==
 =0LIo
 -----END PGP SIGNATURE-----

Merge tag 'v24.25' into debian/bookworm-backports

freedombox Debian release 24.25

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-12-19 07:32:47 -05:00
James Valleroy
8ba182ef00
Release v24.24~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-11-21 20:12:42 -05:00
James Valleroy
5b3f8e4b11 freedombox Debian release 24.24
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmc8AQcWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPRXEACAZTfGvJRlcVPe4Ca5s3OpNRT2
 sbK3JLcfG0+weOSVXCYgrAuCgVhjb5mrj8pN5fjFfZD6mlNjrzriRpM9exjhFrus
 SHv49BI2V35grodyL2I62H9bleCi8GqUG2JgyF30wD0bbuv4YMVmaoXolSYZuldv
 ABL/6XIv6oRwXH6Xe15FYnwff++5iCcTN3GvWIY7oTcfyyOUHvBJT8FhwRnkO/S6
 BPvH+tNB0HL5/TXyBO/ESsSYPraNg1OZRegboT4KEX+A7hPKrGAG5beUh5RDpzhx
 OWGcLeIqe3kbp+SqJTSGGjqS3SQMcjhrjbI1TKh5s9uXUtPDtuNokJUIu6uftZgI
 fIsI78jLqEwVlKU7bg4mUFMVavDRBibKJ+1svcCBRZFbtr83vyo40HqvYYIkOApM
 Uz/rq1qYlHwXEhdstMpx8zGULhr7M1/wL74sQZ+/aoVdOj5e/j9dVnuj9qHqQ5g/
 kTWmCXs8KLg18nOqOm9z6NEWNFrR+kOD9+T4jSkUI/B840KZJgUW7Op8SCg6cX3I
 bJ04+LNczeaPJROlwuQzSsnqRewdMzGo2MfdvKHe0hpfDVdnRwzQxIGcalAyiYud
 CiUzMiREFInM1+NLnGZLP/UX62yxVt93yFT/rhY/KpCxDu7GK4NvUiQ5uANf0XbD
 Q5hcVKv87AWonndDvg==
 =qEAJ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmc/2m4WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPxFEACaTGH3Rckap+vXXArkdYR18XlC
 nAIHVMGpkBlHMCm2pka/UkznvACa+fYkdOExyRLkwTt/XCtWD/Tudbz+/Ei/P1TD
 3gdsNIM+4ych94bd1xxLh8kPgVYXgHUjOFgASif2RPo5felWVRZny4BbkoHH2hAi
 ffNf3b8uBKaOcBFOr1EOU4Nxl45ODHF6BwyCFJQkOM9e9SJuUP9Y4Icy1Eft0dz/
 uGvriWNmoFq0deNv8G6GwvL3VEdg97OapdHHRWOVw/mpOrIfLNefPhpYVN1FW//f
 eVZj7b1TZ5Y44Lg1//ux6/zJWArPo8o0Zk20A+CXbW5kzVeuoECN2wZ8vQjWsnTh
 CVrQy0PowhR8Q8EphsGsaRuuY8lLne3rcpjvTRDE36xnE3LaA+dZ/Rqjnp6ns3QV
 inyJNz6p23kI6JUEE8WTnkTXougUKvEVM/UPH8APhp+v0jYjdPvFFmsJHcIw/2m0
 32YNSDy/Xxe1f8621LjZ43VbV95tcnrLpdDWv9/aEP5kOy1tkG5A2b3xZyJ5Dv9u
 Mxjh8FuNu4OCyDUpab1jkvPzCYaQe0aiCuToJkAPIdPSMwzpjJ1HC9dE4nEkqTzu
 5U8MV6bX2PkF1JzkraAJzkWX0DGUJPMcNvUEDpBxlv7aAxmmeAzODwPtk1n9aSqZ
 REKLiS+lrcqGBPMBFw==
 =Qe/I
 -----END PGP SIGNATURE-----

Merge tag 'v24.24' into debian/bookworm-backports

freedombox Debian release 24.24

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-11-21 20:12:13 -05:00
James Valleroy
6e7884a544
Release v24.23~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-11-08 07:42:25 -05:00
James Valleroy
b960aa49d5 freedombox Debian release 24.23
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmcpg58WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICDHQD/9NFAa0dTZuSmZdfOgsVYRRqfaX
 Rf4wV7zJqluGl24YcFcBHBjnv2MCGUzoMhN3KCGXWdeSMvWE+1rxbzOWdTEW5RLk
 fsshcmcZcPgoxItoW5PASJRHC6cCPPCCPGco/qW/P1/p5OXByv7142iEc93Q6GxU
 ZjIiApH1wcJ+OWjNhhGIS8624dFID1xrG8fwfDae2j5guhCSkbbDNiY3LoBo5gqw
 0DEZIvo96yJavqHnRa06FWgaLWCzmHauu6KBMxEapqTjrRZvbbuS36SINuS0pajA
 Gq7HTpoSAUpfxwxfC45qopvz/wzu4P5btZJ1qkwYgZAh3d8K/OYNBSO+gT/F47re
 liUcKGmaFbnbw+a80cf0gA7FoGJW1Ss81owcsd9GfSJJC1g649zNl5/ODcjXZw0c
 23LvCollectkwDS/pSiScJ+KT6QGx/bn8qcXjpDuWOf2TkFn7dHLebxhyotZZw2x
 3Stamt048c+BtGPltRQ4hHEjQucoZjlTiAl9TxT/9HZ1DN6x1nCkuX3MEm28Gajs
 WLj2+JPlP9ohdreGHkU9jY3zPxV6GheUwqvsW5sBfBVqKgoeug3pRFgcOZuST8ou
 oORRGYv8XJ0yUvsAAvJKd/U5ZoC0uTvoJVrX0gFK+JuBLqEHuOoABK0WWt6j854Z
 hJWeOAjI+Oqcm8qatw==
 =Ea/Y
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmcuBxMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICDd5D/4zCxKKoLBccy72Ko8OFNv5DXLA
 h93Vtt2F+XNBqqueqtAqCTtlh/ijSkhMtSwsBkeMEj1i9VbwVN1Y3G1UL1yvtQ53
 wlYb7RSZLxxdCDGC8jTH1iK0pEA1WImFc2Uj+2/en7Yey0Rw2lASNLoJ0GQPz3ue
 +mqiyVLlVJaaNkoyuOGdJy96TIvBzAyAsTo6Ba4T0zO4hYiRd5DL1OLsYruPybIZ
 gQHSwqQVeK4pE0AdPLvvEdUsGoq/klDDohjW7paO/n24IrU/Ym+eLVKHLLxNiJz6
 oszL6jGKuPa9O6ZpD07hFM1qdUIP24xsKDCYtlV7LXz69ezX6aJANS86xkEJ7GEI
 czIkMOYXWpPxSLo13utPAGr5uiYYj//SakgZdOWXfV+nQ6bvo7gciUwXwUPtHr9Y
 8SjpHYPmfh6PDhPaAbfmYDTuBmIE/gkKBX8zDN3lOo3UBahIFmDHSqb+o0Pf5CHz
 dS7SHds09n8YSO3OoJWZqUtuh78vmccCC0QqRGcFg5rHW5BJ/G4to3Ezf/THHUld
 g6D5vNGq0Vbd3NDdzPkH8xvIy5fUSs1K1UhZHEIYBwaLfTWrAxUWB4tKcFtsiXB0
 ZRRi0JgcxMiHQMaXlgzo410MtD7ebZdTH/1MhNc/hVoOjzHi3Fg8pAd4VKyIH9YH
 HipoiMzvb6pNUg7z6A==
 =pArS
 -----END PGP SIGNATURE-----

Merge tag 'v24.23' into debian/bookworm-backports

freedombox Debian release 24.23

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-11-08 07:41:53 -05:00
James Valleroy
44af7807e1
Release v24.22~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-10-25 08:56:43 -04:00
James Valleroy
9761c7ba47 freedombox Debian release 24.22
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmcXBsIWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICLYHD/9dEGFq/ILCf8q0lgw3qkyDs8V9
 jlvLx/hsK60RhYcSakWaT8QbjACnFGn5nwAMMxcQWIq3Nc/XSs9NMx+7nbZUVmXK
 ZqWWLU65pfpMP0EE6zpGBq8ZNhnzIdX4jwGhu8KNUQjoaaMLUk7m7DH3sBVeaMIt
 FxrOW2Yso9+R5QOOcpJXUmrg5z9JUeYzd+F0EqyUa4uL3zZsU1ELFShskepXJuTH
 mx1Nkjdcs56Kx40YJlh1qxwBAPsAks4Kpc2KDWQsj7sNvO6gScRAYc0Rr70b8DUl
 g2uPLzFnNV5jp1Ug3lJZoUCwAwBB4Xr736fVl0L6l0mk9AtMqhrArMnvlTsL2571
 0KcqHenMsXbk5+ti/Z9KlAJ/FvvLFqjz43cyinyiVrOIAmkS6Uo0lSJnnwSE5G8B
 uJs+xEKFit3uD4KzSzum4tQe4W1pRGV8DxO1STXZxbSfAGqS9JDuez4O8LkN1+8E
 daP9eWtDhwYoWNihmZ5nSImHrhzCPPryWQmk0F8l7n5lMBAddvICEufLlAl6ngoZ
 j65ye1N38BvcKvMZvUkcTPIaSgjlgtf4+ShM+Qe5c0dE0sV5TnhFXbpVh+SYr4yZ
 zSYg0aTta2INSMyt5Kuv7/fAm3b82hNoRI/ZLlA1JmK9sGGJZEnBROD/qE4BFqsZ
 woEzuyTf1G8yI6nIMA==
 =0v+a
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmcblXEWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICJShD/9CHfCPo03mlOjG/HcpJJdAJBJM
 Zn9o7eABYVGwqdVS0Wqu8yX0X1QcFk/Gj/az0kyf7DjAUTpum9keBmLQNE0Grh+f
 zuDF7XQ54YaqThQo1wyOeycLR4VeGl67ATqG6hilQ6BguJLmtyFJHmGcM6M+Mny1
 HKW5wxZW2Mzk+SkLlwjNy0fULy6KKU/rskCV8GYfH1GBW7l4Kosu5FTQ2lHEliEs
 mrQR7hLwL7wEJRAxlb0EwYVyATm4teol4Z93J03NQ7p+fXTiYA/6eZbRQDq2bOPb
 +nW7j7g8+/a5OmRS2i65tHQqa+DKedc8OA7b3bNjPXFUo8XeBZY/Wvi/e7fa6wR3
 IwFSE4QXeFNEocjdALITOybMsyzhHG5Hh0nA+qec7Udj3FAQrZsQya+7P+hWetyQ
 Yhf3CVV3eqDJNAYRHsdqhCiSHhtZf8KkqeP5gLDpg1EylOUjtn7m7wk8OOAD7JUa
 NLcJwZqfQLBbAFD4PTCWWiIwdc1O2unefcMwlsR86rmi1AQgtign/IOt7z+E+XDy
 Ps9gjg1vUzDwuYXgJTPZv/+bPUgp5W68EWz3eqhIpXmrED7VmO9hE3k6CuVdgqwE
 jBrWG9JV3BAAaTqFsMtiyTFeuV5CbOYwNvc1BGB23I6mXBn3XkSSvyuQ5yWoLuU4
 1tFj/fJgD7vVC9Dxrw==
 =Vpo6
 -----END PGP SIGNATURE-----

Merge tag 'v24.22' into debian/bookworm-backports

freedombox Debian release 24.22

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-10-25 08:56:03 -04:00
James Valleroy
f0fc5e1d6b
Release v24.21~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-10-11 06:56:07 -04:00
James Valleroy
6fc223746a freedombox Debian release 24.21
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmcEhb0WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICIbJD/9II8qrtF2Zm10FuGUdF2xVqhid
 PsPgJUK5oMiz/Hyb+ztG/cPD58oSShm7NU1FP1oauzoe+ZpxLgtL+pjnIy6a1ty5
 IpFBkpqYQ7MhQW2a5/400vhz4AwwGaY2+ZosM2lHfe49DKr4vqIxAZ+FrMBSW2L+
 42V6u668ysckP4PEQADPexu9Imrvlaq6Jq9lhXiFze3psKm5h7NmWyd3A1ea6JUo
 guJLg4QYfLXeplA2c53j3t2zi4LQjHNysNZ1LU6Mm+e0ZXUGDXHibgIbySGsEUg9
 Z6CgaVq584Gs+Oed3Ln0VoncrdpnTZo5tKHtn6TKbUXm3tRKVJa+DqsTthr2KtQ3
 o5WaB6xJzU6gpaCqNcFt90ySqJ972Sllb0lcbQ6YirOjKkDb7kXAHVcnIf/x78LT
 u8n2PO87YbB7tqui746HT7cx3ufmJ8lf/Qfhi4gngrb4WskTjAPrtLHG2u47z2Dv
 ykLxnmMy8wrfOVgjtIEbAWr9o7JhGDh0KuIjZpi+91qVsKmz8tsQytVGVJR/naTP
 BJz+3QftdE7OV8k4XMqrg+h7yh0N7aN74Z1AcsdSYWxXp/PNhO6esQpxXEO5z/DY
 j2v6IlldF6KDUjG7d/ceNWKzzNqlMpvGFibLw1zJMy5/2y2VNyI3a0jeT7SW9PUe
 hDKu3CiiEttUNabUPg==
 =Abav
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmcJBCMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICF8YD/0cOkEiUbc99mIit377SIy49J39
 eHklemXNoJfb3vk7zr/86rnkG47LRKSDR1QybZBHCyvNyLnNAbws1GvWr4fNiHlF
 fEDYcdB7ex+ueJpYIVxh7nx2U8nvVzT9SPIyoUL8d6dAYFybgkGNDjTHRJx3B5rh
 klNKAMmK30kec/dv361JooFXqVVcHXEVA2KGovtkqx2/eH6YsCvJDsypAD4KLnPi
 ZCoKIVAfRj6YxbwBIVIFItuNxqaxekcHnRtvzPyb/mJPp3tS+Yb6V/hl74bf4YTQ
 6BX6NxmYjXB6cHMDRJsj7R9UvmNA5137sR+Ofe8xTqzj3KvLj30ZM+1mGHtJ2KZ3
 52xuW1GszK26QRc4FERjyxptDRyrkf0RnIqsrq6e/39KDpZ5AhnNxiuQv1JCkXl4
 6YMeiF0ZCiMfrXDeGXKo/dhadRhhMvMafn0SRiAmUtCZUp36l2KffEfQevEkq1DH
 fpSGrpzbLx9kmTRz2jbAd5YfOJq45ehKVn9ztrmPGZJV5Y46Zr2BRmUPRj8Zw7uW
 hMFgbFk1Tj6b8VJ3sAWqaNPTafwST6VRZtZZ2LjbGc05X5FNOU0syO4lNrqtRLIM
 PC8aZO2up0AresvA4cJORKWFuSbw8Vtp9YJPLXTsV/HNJnbuDYOu+uvYaEADhWy9
 btpyxL06g6AzGcP0/Q==
 =kNa2
 -----END PGP SIGNATURE-----

Merge tag 'v24.21' into debian/bookworm-backports

freedombox Debian release 24.21

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-10-11 06:55:29 -04:00
James Valleroy
2e5010f66c
Release v24.20.1~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-09-28 07:25:41 -04:00
James Valleroy
19d0e64cee freedombox Debian release 24.20.1
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmb0NhUWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICAW5EADN692QSHMyDBLLd/sdLkI5RyYa
 O4U3g9uj1q7rnOsvHraabjtKFFxn1QNFQ/rFljVr/VanTfKdBjmflISkgE2mUxYa
 klf7ALjJ71CVbcS5RV+vlrNPYhSixSUduAalEpRIE0dIiKlXqfk7BIgbEm4PlsvX
 phS4mLUJI7hUeb7Xgz5UGua3BGpjFvf53OozY+9B7QnV8kfZ3vbvPHL6bopO5ogv
 BnZ9KkS6bt8rM/PE7Lu6SLdysGa6e+S7Bhb/BkglbriqgPR0fA5kkMiLz+mnuqzb
 WGGftqW97DfeZo57KVvykZ+6tqmfOjI+Hk0OCPWOBhFaTq8PE5nLzlnvM47Z3j/i
 5oKARF92LJPxpbTbpjio99inhsHJ/hk99OasQ1YnsYWGQ0jcMRSO+ZLn7ez6L4UQ
 GW32Qa3LPyNeHSr5+xtcIKXTiqx+wkCP0YsORA1LFEeHmTM/iuaTxD4xI35xt030
 64Yi/nP7gwWzfOkqgmRAnL6zYrI7POaVz3QJJ7DfNS3RwdU/YYpipWNjfzovEFLe
 S/oYGG1Y+KBNPUUT3vP2qE7eMI4NOcYO411PSbYa+d6ILERM8uCy8XLWKqPCMWPc
 lQBV2mJr6Bb75gdk/fWmFXLbM2C7OZE0M43Sssr5OZrEBChsiZxhC5ITou0Iww4X
 SwbZlullO5x+Pju7gA==
 =q+xB
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmb355AWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPRND/wLyF/YKI1SSWDQnEbBuNOWD7Oa
 augnI3upFqgeD0kc8USDHPp2fNOX0mMKqTzsRL6jOlQdWa5XpzPQGhGUfrgaNWNp
 NZM4gepWTjM5Kuzuvf6rLkH5LmVfUYx+0Jn8h+7GICUyjvWqdc8O7n6C8cJtAtd9
 kltji8pirT7D2dENzcmeZzGx4K8bcrSuN6GZa9BRDXJnVWSEQ3BtpH0CEIRYCEge
 dIneULX0DI4rign9PS/4Fv8uV52CZTnG7sg0eLdo+VCM5oDr0kCjUvhueiaxKtse
 dYTQa66QNoaxRBNdSeJPWM3RRqKUSbqWLQNy7hMWYuc1QgPLNosnrR6Y49k/LJvd
 tpvA07qVrmea7RK8U/6TW+B4f98x+F41x0pUimiYNZHSi26X28/q/Eir5YBCXuJv
 459bXP48z/NwwhHC/KorseV7PpWoyz14MHI4N1dQ20jzJlnDEQVffkVU8Q77u+S+
 2Jv57ViOutbVAKDuboHK3AFuCWXzF9IgdCm/O8gILaiKAmaXwQ7BFMw3urcx42HB
 YONGqdk+qHlXpgE2NkhKttlB6vTF9I8TxLQa11q9S5qwOmCV6E61SuowHKnoRsnU
 Xxjr/e3M3aOk+83ROZD8oYIdZv/FIHHlCei5LN/KnlCIbtlN194bDibkyO9RXS0j
 7eEDlBjuHJTVX3kI1g==
 =WVoY
 -----END PGP SIGNATURE-----

Merge tag 'v24.20.1' into debian/bookworm-backports

freedombox Debian release 24.20.1

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-09-28 07:25:01 -04:00
James Valleroy
aca91a0f5e
Release v24.18~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-08-31 15:09:02 -04:00
James Valleroy
ed50f172a2 freedombox Debian release 24.18
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmbNKbUWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPfLD/0V85TcAWc2ITgtE6hFu5UVfup3
 ETq2Hr2alZShlXKC47I3X5ztw64V65igvOSD4vSrZ4M6j+WXT27FS5ORAFMnmb6H
 CMPMxH/adb0JM9OFIBXJdoZYzHh+K8tPUiTqJxAZPltheZcKPCUal7xuTgqxU/wj
 5uqGDX/sd2l9WqS8sDYP2BGhRu+3CKcQfI2ihrcrYKjEZRETl2XXiWovGbj9um1Y
 YLacl2d+iAEge0YB9y41RukRUqmv4MEyNGJZHzqWPkkP1hKuHt2042tkRnnCheV8
 GWpEmIMZrqqbgpBRYDTH3E38TZEDWmXxrOPTIVGpLPWwodSByYuR9LmmJJHrLAHr
 c6Lo72GPzNw/BaySfF4exk2LHpXdNzuV5P4R6i+D7CG+ROidYKHuMEUu/2ND9XXk
 yGFpSJanCjvTHI5bHOc0rDgqF7p78R+xnYd41rXrOWkPcZ1LcYfUwSojg7/qS8N4
 EVmryA/Q9Jp8fRMSmq9GHj1It2KE2/0t3dIQzg2jsJASUVYdqOZWXpYnMah4zjrS
 whtV1Z+5yttaDzq3TLfUA7O+tZkgMKCeuzdUqCrTTrBJa9OWBcHyrGr2UBB7Jsc9
 0Z/SLmjzjxalJGPzewwukKgwjPDAgm2f+5Vs0g+APLnM2lqC8g4kBr0mVJTBHnCa
 jNkXE1YsobLmpjwSMA==
 =K1+4
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmbTaeUWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPgGEAC/VhywSaxjHtkVR4HWdd369vbC
 xZz2dYTWd+3r6iWGFmy1pSSUE1VF/dLFZlyG49/G0QKfdvjkxDAA1s8FzeFzrZCd
 M35ERlLSPzvacR9psRj6uL9H8oKglu0/hWwTl8pT9j3NSfP95C+PS6qOpeB2njhN
 +E6JNjTZM1ZuMO+f/uIo92l4MUZ2O6bn0BuBv3HRtw+iw+Cmx0u/6q0QEdimxFqf
 tCO1yY0RHUUbKhJNaRYtZZufCeiLwSR0hFRyr5fLQiHGTADExb+PMJBMgl7hbCl8
 WLijp2XeRBT6e237XqdkuCLqblTWx7JKAxBjIeK4hhMuiVU+WT6tHHkPcog5Yf7+
 F4wFJ8IGqGaDKd0CjEESBQ3O75uawDHexuHXJa+b7Kw+0HoKzC2uHXrc26DwyXA1
 piYsJWY6d+sgpjYnNFKVfWCD3nG+3VZ9IVqeVMY7Tua6KTdPaptA4Z99VQUudtEb
 L4OH6t97VSP4BiL178kSWM2bfUpUWXbAjrwPZxnK/Qj4ChFU5U9VSzVFNYNKb+kg
 wEj/vbr8bVYUMRNA1ZviXGJnpFjw1zW7o0u9Fwbw+u5VSkJqR8+Od0sB28yMKBCS
 AbgzeemC55ZmXVGT/vChnumLJH5FjftXpCEHKY0nfAmM62x8SYwYxFlkKBjuWRjR
 uHs4JvVgT0tNWZD3uw==
 =tiwQ
 -----END PGP SIGNATURE-----

Merge tag 'v24.18' into debian/bookworm-backports

freedombox Debian release 24.18
2024-08-31 15:07:15 -04:00
James Valleroy
e083aa06b7
Release v24.17~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-08-15 07:09:58 -04:00
James Valleroy
63a7236050 freedombox Debian release 24.17
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAma7X+8WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICN4NEACBK5iQ7AYcVDOc5Tf5b2fFlf0c
 myBGI1t5+C8CT8wL+TSKB1EOzvGFCthhkyKhYEQ2CGHOdSrkXDpbtdB/rdnahAcJ
 atBI7UZhXAJsqB2CPpYKBw/gJe9pT3MNComDA4CHnDt4/CiA2LanJ+u+EJR118fh
 L7vDVOKSEm7qU+II4nxCtYlYXCT4Mc2DvNlfBjnxb/+m2lh+DBbO7XfU3iynerpP
 kJSMP8Wamh1siCf5FJ74cxiRFKSXIc9u5rOT3sgiBEaGSJXrrsJRn4yCkV+exokH
 6Griz4LDwAYta9Bc9BVlcDpjMJ4OIDQ7EKmQQ6PkLEb8nsvUYmcgnd8ffPYx6ncy
 0gJfGu3OY6JX88t0bGAsF4c/GyNeaGbpAQpoQk1wVELj+iHcTv5QQgg05NJTgAfa
 WtyZBq3WJ+OlJWZOcEjT9LlPd2967bfFKKBTHahr7qyzGGFwEBjpuhnUG5GjURAj
 bKHLm3A5XW6t6fhi0H1jGMBiFiV0g5bSktvpSJBy1XnXdEQCWWFf2gKOWDjw+NHi
 VKCB4B5j33JzRNeo+5tJBY2Ow0WNKN7aK13n2+uACPO7R7LR8wEZzIJ0L16AaXI0
 2yU8qFLOl2EgOEKBcM85nrnhxa84dJeucY2nbMDqoGXY9B0aXzJqPG9GjvL1BZ/T
 KOcoUTic08Sjk8BjEA==
 =MzRg
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAma94eoWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICO7DEACfuUwrL842/sZHoD8GdO3mSbKY
 oW1WotDzTX/TWNsdfS5CZAsDcPEbHvJMhUqHUXOTGAEMgZwDGAMe/vZool/QDQ4j
 c1bmA530uLJgIBXAHqQ0TPf9bDQG2ZKrzAu15SjMqf4sX11Wpdq2LnlzCzJxq4UQ
 8NQDZQWjrbSdhwMX7nB9DqdJktBRNcKLRfKdaW12lna5oFBCXB2uU9NxuYDfwSTb
 69Da5GAlEVot2jkzcme7QgK5Jd3+UUIvlVlLoX9SEAEmM+q8uK8nopOn9XZlUgL9
 PMYi8WCw7JTfq57uslMfG0USeG4x/h4vBv0MfUlZP+zSU02dk/o113xUlxUggsls
 6WSLpgeKyUOZs5DIg9kYsL4z0LJXPJTpWpgi9RB6ec6rtwywmxqIjxZOKAn6/qdd
 iHct98/5OYr1PaImdQMaTWzZIfL2g3XxB6OsCRhv6gQWwIxSt9MSWXbbdVRYLams
 B64Jgk6MvXFdTAo9nMeEKvZNfMvwQOKLANg5xWOc95pbkkU5f0kfCt0mzvje8gli
 +WDQv/Ei9kpf1+9y7eo2NW8CHZ2niJ3dUaOO2O9WVbxLqTx3Pu1SO6RHWZmy9SXj
 37dVVxCJQGjy8V776jl+vrn16SHNpRsq553DyEyCa+vXNCGBWEx2sF1DMR3UGqg0
 NS6SXc2IDiSRAORHQQ==
 =bMfa
 -----END PGP SIGNATURE-----

Merge tag 'v24.17' into debian/bookworm-backports

freedombox Debian release 24.17
2024-08-15 07:09:29 -04:00
James Valleroy
32cdbe1f30
Release v24.16~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-08-01 08:04:18 -04:00
James Valleroy
778e6fbf3a freedombox Debian release 24.16
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmaoxjEWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOUQEACGO0CnHLNE7bo7yEUUSssi0UMu
 DzRrGhZ2k+s1GTPhwvh8Lw3RpwbDBKkzR4PqVj5wtWK8uO5UM2IDq8LoRaSXnaKj
 Ogq8F7MsTiZ/xk4l7+XxkV/XU9IYHIZTO2ZbnE7/Yi7FKJRLD5qCzDULpGaTs9J9
 qt7yQEBrh9g6ziOT31+54CbsT/rj+pwCcXFWen5JuI/UdonuZ7bh3Fm5K0HM19eG
 Z2m8Um4VOvxZpXR4vclLczv+cQS66DgUN0PXx9BX4EHF38qSy5NqAw5ACPcgIpGE
 etOLbhP9yETx8S3fz7lDyPvpFXbXKee6Ivt5iPFXfo3uKkUkDKibzX8zn/i+PFsW
 rgmb/eXjEd7RQjBq2Id/ZWujL9xbKd2TE7u3qj7ieEHCHZAaFautvHvhO4lSJV2m
 5qJf6oQWW+nfGgW/bu4Hn5nNuUt9FVoljKbWZZWdK4MQIPzi+Mcjpkumhfydt0Mi
 ITBO2b+REc05WM2nnsjYUPBa+rwDOPX43qBw5rRoWsd25TxcurJZLr+NbAlOmKlf
 HyVPFMuViP+IPSJxOse1Py34g1+OGvgijsFReZyQ9zhTOpo/6RQNoPh74Cn8HHiE
 VvFLWL6+hndQLbHeDcYncuoNwqn4PE5SSusptPgv4L8kvAwnZi1x/mP2UWN/CD8s
 +Eh7nHjYv/XPFFNn/g==
 =8fTI
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmareaYWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICK57EACl+RgZvbz3tiN8M6TPri7eNSO2
 EwT58TYOux+hX4JIk3AZJZ1dl4bRpHmwLvxKH5ttQegrznqzorXPV73e1EZQjLu2
 Lug77RJk84u8NtnRuDcpPRe6gTHq4wKIrsGemw8njhFk+khvNru1C3kE6G1HioPE
 z86uT3bMNFXMq8qfrcDMtCpEZW+n660pbyKtdYGF4Ay3IF7B8xitUvZJ2EJvW06p
 I0vYTmGlDDoaJOw9kgBOkfnlyfb36RCMkWa9Hn/oX/aTu/g4+UQ1a2IVaamzVVX7
 /gsvG4NM9aKlX9mw5ayUn4TZNzaxFK+XsRhHxSRmCzicRFyfCvl7D3v9dlUQytCl
 Z7PNGZ3Ixkhn/Frd41u7ZVrbCO1NM/stdTVeghHZPcpC+BT95Fa0ES2oQBlD2GlY
 kmrVq6wX8MnQlVjHE8ZxDWT2/Pm8Rp+zU3L9y+lJXfugBE64Jqhk66cBMyFS3pY9
 Pm8EgclRW4PlrkEtsF9WiGy719RDj21/TzjKHJvgg24XQWExn4/IaeDhr1+XROYF
 VSV0srNekjG57v4cZeYREORJ4R3rKdWcXjuBv3bb5GZ3bCqSr1R/DSdLWkYdTN/2
 vyA4OqG32qRRjUSZsLC8uOuggWohI85IdjOurjwp5xsSBjXm2FDsXUegZ4GE9soq
 XnMfyi4K+R0jMqVywg==
 =7l+K
 -----END PGP SIGNATURE-----

Merge tag 'v24.16' into debian/bookworm-backports

freedombox Debian release 24.16
2024-08-01 08:03:48 -04:00
James Valleroy
5636ddbea4
Release v24.15~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-20 11:15:30 -04:00
James Valleroy
7c9f070b6d freedombox Debian release 24.15
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmaXp/AWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICK8NEACIMIGc47uCoYzUhk2Ve9ote+UG
 R62rUqovpAULDgty0p5SOItp6PvxCMqWD/aOv9ewX4dSh3qfEtDOqobQNlhEcKr0
 tGPwS0PrPUmUBLqJHI1/KZmyrySshs1tzRQ5JZUB4JgDNjwd2rzE8v6CKl3GK6fR
 93T6OVoMkxothfEcp67jKy6iZX+GsDy3zFrKkGLK1Pd987Wd8k0f/swA31nZ+D4v
 T7NY/7pv2QgfYKk9loc4uiAlYWsmbjU3r4k9p7n4VRIY9yBGWTmG4upWboY2b6ok
 mAnB8GAKWBxN725HZeBmxosj1xsTm1/ibZtGTpY88flAYDha1ZaGAjPgVXsCyaaK
 KSJ6MA5/VAWIblvqyLe9GncbgxKNaUtsoXhyZ7SgPK5QcqHL50/wTTWAzsbzppxV
 peT2ac+pH/lIsHAi++ADHCPSmLghPGd+1aj+URu6DSIXaFGEcZch2yRYIn/zU3xa
 6XjJqRMkFie/4LKdwljGjJUeewBzlBXBlchUObwLacFGpEC/qoCsWHVcjMIn5001
 u7TpaQVrktVx2LQlG+zBO1hmG8zts0xorTzBhpEKQz6CpAFEttc9RjmDIvNw0B50
 wjm+dvZg0QLxQu/azMalf2pZ5nuoDcVZqmdXtHrpoTOpdJRW76Qr+XbnqtYIX96T
 PTOfu5WSGTT9vTmViQ==
 =Gkz3
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmab1G8WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICO/3D/9wvT9Qhjpb+W5tkg0ff38mWKno
 HPY/gBm7tq0i23iqwizHsB2jQhOqHW1B4+R78tN1zhdmcEM+Rh9+Ll2aqUssq59i
 jvYNy+Y0ZHSdxHoMencT0felI+ahVzmfcAjPq6xEUf9j3Hq+/OVU8DVMMH2oNHwF
 yiLqJNjdWkLRhrGu06XS1Vw6xBg1Rh+55poQktiYD4sl3GLBCpqgWCjOTO8PDQ62
 PXIIbTFzSmLAWi9Hn3S6KztpiqN65yGEHN4id3Aa0PGBLvHAUFKPHn1W/f9R93jU
 XtObZfoLQdFII7EJj49oGYVMz60+3VspmWcFHZ1SlKBUAGar/cLhlASOx7tl4HC1
 PYZzpviDPx5PYO482NNe2P5K5e4kv6KSRJ+Nlid7DuKg8vvZuyRp0SpqgrX3Vofa
 /Jou4HgkhBUhNDZ+SO6hSWAzFn9vKTb5tmB7Wi5/of0bIZf3MUW7YKphOjk+jZ+m
 DbeVpSpvazT/R61ps8TJGNJ1i6FGJgTIKrsZOyPnfpJJdWHzoMM5xOCCmFyVrblM
 pBux95t1C8QXgIf/E36behze4rSVNQiOUAL9/TCZpn1tHOpjNScVO8Rh+/TZnHF4
 hJrfwJ5Oov8K29vi/x45FjzNWDOYYfZvLNTL6+ds3ZmlWOrk9JaRuDhifjlY0jUq
 eKlXvnr5HAgO9mVa8w==
 =b0b8
 -----END PGP SIGNATURE-----

Merge tag 'v24.15' into debian/bookworm-backports

freedombox Debian release 24.15
2024-07-20 11:14:52 -04:00
James Valleroy
0f799c0688
Release v24.14~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-07-05 10:47:23 -04:00
James Valleroy
9de7a8b808 freedombox Debian release 24.14
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmaDZHMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICH4bEACqbf+LYMJAIkPvHYTAmKAUwQBG
 Y0f1KAGEy89/JTFM1gYw45lBgLPBBbslbDiMAC+V662smXrEDmtTqMq/Ye2qYoHO
 uDL/P32kz0F+QDXHK6ecJmeYOTwNqwG0XMXhtVdPzP3GayXQ3RNZLKlOSH+WisYw
 d25zQMdTk4YczDM/UVa0B3I8hBtNHCFayrk9TigbDrhgxE2MGcTgBTjOn5P4ZSFs
 TjhyHH8kvSowExptRDRGXR6pA/TVla1P3ELKhy8p/3Pha3AY4d9ZOPgFTnJGyhVO
 B7ssqH075eT2bPzwMGy831gYggWQbCmRRr+c9TefmR1pifwXFU8wIRQ+TVA9+I5e
 arwoYwLiT6Fco41ZxIZ3V+vMqQPdWX50VVa8VSCopY4aqqoOzu2qojxO3dHQusP9
 Yu4/i5rbWUat/ykiHGcCeFgOpLzu+NzeM46oF685FHBlPUnEEDS3w3YhG46V8pZ0
 zFYbKK5TUTFGudNuWJ0j5DktNs8FvhaPR4mT7X0HWEmC+27NwLwtnZITDjv+X9ZL
 OMJRYcJrLoA+6HsckpxF4L82hUH3LijTG0/uDcx1ST8zw1+iAQnGpmgAXKOCMq/k
 WyhdzQOh4BTumX+XnwO4SGmHAlRZGp5vgVz+nJ1HwVTuUOgnX7b11NCtEN01GxhB
 Eo5iNefz28RB4Kyj/Q==
 =eYSn
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmaIBDAWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICMwGEADEk+55MO2AQHwOGPiVXevY57Np
 U+xak0nqSlq72amlZ2gUYYIdPuCXrhZEvP6B4VnN+0/2pr6xB0Y1iPokZ/zFIIhQ
 EsKhH6Ms3ENT8zZT2Irc+fQZyYQTeP0eypKcUpjyuKsP9ZwWwMVYKNT+zAHIsWNd
 C+b8rGGkXSqon3c8cD32EVSp3OJSD+194U6M0WOd6Sigkk/uZGhoHSJDTJXR8ryx
 ATLyoryZX2Ze/832xHhmba0Ai6GiU6rNZDZ2GqwwWzb1TQWcbIBwR/0EPlpEx3ot
 ZKjvTsEHxSEmETTG4zvshstMdRXkAfXP6g2VRjqoAfl6e07tZP+EUE3RA1zFwKcj
 ssdCroRNhcPvvtnxPW7xhRnpv4xsOSTV6s3W5fngYlaisJNfvsh1ry4AiFTkATSi
 wUvSN/IJtA4xfcXzDRHzpsiYqvAtQmPuOkUb+iTWsd3xZK330PhQn+iTEWWkfbPu
 FilVq5C6qXeOaDa5daCV5wwLmmfsjB7OagqwFQJeFvLhoyAwhDrNX5y/IgQvycYW
 TeQQ7VRCwIdAlBpW6gD7CDWwOVYSgZVGCkBfvprMpTZwJyKsLJ7MymBztlTO6FFX
 oGb4snWIgNNtMIKGqM+Qn2lhG12VCxWoYw3ZlzuQvT0jnd+3p5qk+UzWOtsb1bAL
 l0HQMDhqEZY0QX10YQ==
 =fGfQ
 -----END PGP SIGNATURE-----

Merge tag 'v24.14' into debian/bookworm-backports

freedombox Debian release 24.14
2024-07-05 10:33:17 -04:00
James Valleroy
534724e7f0
Release v24.13~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-06-25 14:40:03 -04:00
James Valleroy
8973a3c0b1 freedombox Debian release 24.13
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmZw6RIWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICBNvEACcYTyi08bcMt38R6XsLqYCf1v6
 q6s0qj9b0O9gOUjA/jFNeNyT3H5LhaHUG5rmrfyEsPCd40VOzcrMuMEC6/duwLg2
 EV+TB9gxd9hujuUFbHYG8bZmbYpqKu8VjR0JhDi6NY4yOH1Lvi3fqEjbFZCJRm1i
 w9RobP8BD84FsiVJZiT2V8ZyJf9k0FDFDfRGk9PvF/Jktx+YmvAbg24qgWFRPADc
 G0o0wAy/lzE68OpC0W+y7Tk+Sncz9M/L0wlGrYgoQOaIxUhM0ej3Txo5W7Ga/1MH
 BPfXQ8MrIvZAAKr4Pz67XHH4/0fdz5GdP5itipYPUPEXADSPU5EZlYsjyZJy4S4n
 IrMODXiU3aXuCZ/EltH7TDp4CAhP0NpI9fDSFLCWp+zokrrkn5OVELGwUame5K/Q
 +HuprXfju96bHu+EoO96la9J5sSRGeH7LPQSgV+RqkMqwY+an4c5YaffJmbVApA0
 BkS3WjSSMBAe94DKR547EmhNrASbaRAgbv4loEp/hmaFBe5ohC5mpCK/UionyWRf
 WQchqPVTgitGGRFJRs12XRFE2zxlRwLtmP+Y/GciK2Ogt9xjnmoB+NSAvPmsBXmA
 Yk0prjxUVxxHauBzEQiv6lPCpVsdDBApVNNK4XIh5EIT6UPtyIls8zFeGhUx4pkt
 FftOjgGPRxhkGWTbYQ==
 =Pbpf
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmZ7Dl4WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICEhzEACSwjC3saVaWCnTgNYhUOcalMs5
 VDj5KhYWN9kL7mP/BRwRllTLosrdDxAELitoPaPL0pau3kG2mQRPIjJcFpvNUx16
 Sb6gg/kW2t52KE4lX/jINK5aA2/XfVYV0g/PD4LIsm9BcIf2/e/4xv/uVIB/26XG
 5+uovb71a7Choij+MPGmQjiM4nJ5E0vkrbOteRFDtejkAK4sjbJYE+RSYqq8V6F/
 MBT7tIPcMuT7Rd+LU8GW6XZZdEeGhpPDZZ7V9JmWLAxmFoG+zUhPhApxS3OJGU41
 Dcz/7GUZzECnBVklgJ3aUEjygHWYHGZLOyjp/tf5bCeIXD5QvEBo0xVRHRFvoCsS
 lanlJpJJ+IOEeGaIeVTrPc/QxhftJrRHSk8oPatoAXUSl+3cnBGVR4e2uOdtaKeQ
 NlRCn8Z9KFMKJcUOBxI07jFZZZU678imMIFTtVgV7cMC7vGSiw1+GJQN4o36hXUt
 PHAWCWUyarVyd0PWnd+TKjVVOz0xPpN0TG0hTiJDURuW2W7RGXspTCtCaI2ApGoc
 EWy1JnPNHV7u1x/p5Cpe1fd0Fyt/xbMQUtgdIBlyQL3ZAnXrsi2OKBe5pHJ4Cl52
 lt44oTfnPoq+d2O/7n3k7vEc3JooH1OcdidCepS/wMCst979JZgyNQ4e2NMn8aVt
 QeXDjIJzDFXYFvvSdQ==
 =S/Gy
 -----END PGP SIGNATURE-----

Merge tag 'v24.13' into debian/bookworm-backports

freedombox Debian release 24.13
2024-06-25 14:37:16 -04:00
James Valleroy
2d8a207606
Release v24.12~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-06-10 08:53:27 -04:00
James Valleroy
5121e542c5 freedombox Debian release 24.12
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmZebJUWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICC0cD/9D8y4+yizO5kThDDhlU7660bpc
 8r8QBzHvuCAsdmrJCDSe5OOLbEHduS82uZma8927V0OPXPx6u46YBkXn1RFLR5fw
 BOndp8m4dqbUSxHdKjU93oJnXhN1+e1q7isRMUu6oIn3m1slvAMPFd29p+JAiuDj
 0mfIxPHDzSdFq0UneRSkKcVhiTX2+8HDOscTjrGJyf2IqM12Xpsnq8Au90/HqOFI
 27xqrdDlp+Tvu8rjhtgWtiWI5t9YOoT5QXkNaAvdaKRiF64QmrDCHiiCjFudpQaO
 fVmMEc+/z3ozSwtH0Ao+aC2qll1cWmjjk21coyVVZ+doDSW1Pbv/YOh9/OxzoMgX
 8KAJ2qxy0YcgYedcprMNO/v4iXuGqjyCna0zkj9a1qzkaFnaAzzd5daeHIP/p2GP
 fTGdHAjnhl66C9rr1Yc79MBfd6iaN+pqK03+7P8q5yQzlQ0B0H/X7VrqHFWPUwT8
 45xPySdG2lYHB69/S0OLTEdKraq+D8EhNltawQZmItoT+Eny3THykmAfh3ouk3Ib
 WKYaklsxz9dojjK8EqXh/3ijzfacC+uWi7LApld+L+a52pw+bXkNCRqVDfw105HT
 K7+5b52TdYTdtTtW2JJkP4XqYIE1/KIqpo2GQW/MifFJQ0HUSyYQlXgkmweZsf61
 OiZV4ugfXPWY9dcGdQ==
 =AKpl
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmZm9x4WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICG+lD/9nbh6fhVbgShbp8aIQU2uvoTU4
 unJgZKAqpVDMhOm3jCe+xtZlkGtv/AdXmJeBJKBEG/DPYkrwmoJj/JRFLtdV+oZr
 3xiqI4jgmiBJSRp2CAVebwg6X8QnQqBQuI28V+Nj1kFYgYldf3B5XOcIZu7/1FFs
 tgT3ulVtKyzg9stZKHKkeEloHae0ygM50DY24gPajOkA8uO6PjuP+eff8EhjTJ2P
 OMmuhATtpiB4ibN3vSA2jfHeG96+SzBouLWEYPwWWuFeE2kbVMAukiIVkOEMW90P
 qRB6PO7VcTZ6ScU7/EbiOykm0vZk1H52Qx00ypxcy2pT06QSZuN3ouokZyBHaeq+
 BFbbtEpg2fgUYn25k+tctIT8NUGZXXtw9q7vQ7lEnP5y9uLe5TO55acUBLi4UI/R
 /qG0yaaAKaSjceij/R897z3icWEAdlV0Od68hQwZoK5ogrHjvgUnF5kp0f4Ajb37
 t4muc7gN9kh2N/zwyqPeUFwilV9oqjrpuufavDcF+bdPDPTiqXsGYKw2/YIM8PZy
 igoRJOMxYr1eQgUyd5ICenx13dFVlWjTkb390W6lXzRm0ObubG/pK/6OrOiS3zd+
 /SLhDSzl+DmopR+avWY8Du6rQ4bq5F6myt+6wu09BbGeFlHUNM2E28Op7l7We8qU
 huQ+5w5+yagc6YTA1w==
 =ynJa
 -----END PGP SIGNATURE-----

Merge tag 'v24.12' into debian/bookworm-backports

freedombox Debian release 24.12
2024-06-10 08:52:43 -04:00
James Valleroy
700862d86a
Release v24.11~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-05-24 19:52:39 -04:00
James Valleroy
34efa913dc freedombox Debian release 24.11
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmZL+nQWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICKWyD/0WpNEyVVJHKpZa98W0n0QFXY3O
 0q9Nih1H8HpZSkuamx+FPV0qa16umAt7MgxE8vSweFa5wKhY/nybqNauXxnDO6cP
 ++h9k3T9ikrzyWDQNU6OyS0BtI/UK8G9RySoRXOcK7532P1K4IGu4nOVyrde46XZ
 kYeMoxaIbOmY3mk8ktKpIglupx2js/+q/vizp0iDG18YG2NfyBnZpW489waT7goc
 eqsP6y3ezwoIUL2G75c60z9ER4R7gM1gSCN9HvRNiGZbCDcgw7MH2L6BOHPSExJ3
 zFjXG6y3KoosHz+YfLWh+eqpUKirNpqQkV4WtTWuSQDZUZqmy2su4P6tBE5UVb3s
 KIgfUhAcBfDbXvh+YfrqMqT9amLazQWmdeksIg91ksHKMrf7/CtgV2QcMT765QY7
 X8GhqgaW216OeYllWFqRVSKtvDlYhoCx2lkAtYGGVZpVMXZiPFb1U0uXNvs39HxJ
 PwGZ8OgO1JZWa5KzDlAnCLda/QH+CVbZoHe9poyOZqjEzjFjy1dpX2LTGCJHsRON
 iB9sgiMxuI71Apik9pV0e1IYxkiVJExwW8gQSia+IwICo0jlTyG7pBYnn7qVa2Wh
 EIJ2vkqxfX8AUhDO2+YlpgYFqVH9Zq8zwp0in5mTgrK3gkANf8ebPIHvvgvJnLro
 I7TheoXC68XO39znww==
 =xPYG
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmZRJ/YWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICBxYD/wLptMAmuYe2s/5etYzwIjQ9ifS
 /v5jPrVD6Bmo2WJUpi9POe+XNpXeo4N/JxYV3Q+icejozzUDFaUtswWiN45WzYAI
 Y6WtoE18g2pcg/W72Hwn0xShGhmevFtVZcZsTLvELB9GThOqYVzmtfsI2shErYhN
 EEMKcdE+nCq7GyLhXQrSsXUQj3DBsOqigIukKQA7rHE4epDaxACwiKDnRSFWPuyq
 /nnXFhbdDL6Yu3t3Z9WvtSoDM+Ug+foPLr7o5IZjQy5wdCU/mLejXHb2GU5mj9AX
 Qz/IX0UM8BXtKWRRY2VygEBn6bHwEHWuqDwqo4AMhR4EJQWjL1E5WetAGvzabO4R
 XLT4qJAyFya3wR0eZ0RveJgP+f89rXdzJeAHOy5i1XKYTr3UTrNzOSefcag2jutE
 0f5uqGik4UFY5tHvWcU23VMG+hSr0JKnnz1w6lB5rV1x4w+H62UfMA5zZRxJzMkp
 HUhP775scx8TfptQlpsE8oTpjqDzGlo50EfuX/j7dl/sxTDuVlPQCgcML14ZlL4V
 EQ9BeZuEi2A02vLAVnxg2fq3Ok9+71NC/257esTwW1CCNLxsGanVFNRhujPkdX1S
 2toYiQSCZ3MAQZ+jp8qYhkXRpCOk20IDYl3WpCs/T2B7rZOae3yOChwBtIKKP8Ak
 /w4JugIjhsZb0+RDdg==
 =XaDc
 -----END PGP SIGNATURE-----

Merge tag 'v24.11' into debian/bookworm-backports

freedombox Debian release 24.11

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-05-24 19:51:16 -04:00
James Valleroy
e0917d3c1b
Release v24.10~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-05-11 16:53:36 -04:00
James Valleroy
41cdeeefd2 freedombox Debian release 24.10
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmY5iaQWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICAq6EAC9evb65QS5nPPPGPmWQOFljMqn
 pSOhywc0+LgIbcks1fCbu3O1NF5Z7HGNO5eYSmwH6hIoDz1/+ffNJPahjcKkw32P
 hatwpcmZp03o3tgp2N41XlIkase2Z8PMsCKSa9B5Rdt+se4FhZQjQ9J3gY9iC5Fh
 ikMbXxhUwUZ/jHxMIH2Jq4rKHeXdw+VC4AHWqjtrVqsVSxkqc7zKycWUuhS5FiU5
 d6njtc3kpkDuebRlTBVC+/zPG3fwDvOsXpE/Z3fIfZY1k1OEojrj+pWOmP6RuS2C
 FYRDfjRfedA/cruBwF0pAnrTldffUDMnf++90wvcAHfZSqD9bon4CYuQ7bwbczyC
 9Z7HymqD3GYqLHxKe+mZCBS+JrPaUkZu4fI9mIP7Ue0oXC5LiFx4C/3DDqPbgdKK
 jIE5mERAmdeJKgyqBymsNUBC7I0iLcwfd7WmizQtRKvCo1vCwdJOd6cb4HwgrmuH
 Z52M091IR+fmEsdlgcInRKDWzk44Rac6rqx0GhYVF1vReU7bcNjSVdoMfB9mKpym
 DnOBMqLd17UBd+wrAg/z5+RUYrc2enTUexcx5Y+lnt34TmE+/vtyxCpP8bhMTH5n
 mkoQ09OWcuK5PWgo0A2wl8WUksWcmkWoe0Kex8rVdG4Z+HjLWRooDXmwq3X6rnkV
 ajDYVR5dKsgC+7Fwig==
 =DFoh
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmY/2kAWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICBopEACvZ6u2nwCVK/Pv/rnO1QZyVtSx
 +aLhiccb/TNp9W/ZNzNZ485gkXIbrEGY99OYql7J4kGpXanPdZfOEAXkEX8ffdjV
 1MAi9pXYZQdmYon0fuJ/d9UThFUiu7lsQKH8lS9mpr4sXVRWoSFwNiNhNQDRb/Y7
 ycnOda6GO2UeKG/f0IIZj0mmpyc7sMPFy6u6ug8P1illAFwLl6GXspAtf8lTV2hG
 45BExzgCOOQ0LXeCpE49BKvOVrDX7sLL4/wzvAifwrPkxycZZjGz+JaN+VCdacjS
 yFagJ4TjJARcf4E0qhQeGOFyHK0VjJZQMqlOj2tnflxK9Dgw3/tApoczkH8YW7oc
 4j18KhDohf157ju14VMMlzV5vYaC8rC0v5H2809coi8HOv3fuuL2RpygV9ZysgUS
 G8O2rPS0WbC4xZikNuPpOUNvLTClTam8XO+PrkMCKzR/d9t1sV2axQVT1ljzRFYF
 76/8f2JJLhwBXbfjqQ4Ayd6f3n7mjN69UhFN2uWxfXBB+lbAw2a4BtJAwlLC72VV
 e7rXPxrFer7qaPhFpfGj/U04pmcaCCmHt5uubMai7qTENiuQ8eQ5OhvJLbat+Ikg
 3kCnWXvE3hNS4M888MWGDzvtZ91Hst2jBqUkRDXckg7Nvx74JBxVoxV3o/sLzy8i
 LDiN73fPxcBVJZ3tFg==
 =hcrZ
 -----END PGP SIGNATURE-----

Merge tag 'v24.10' into debian/bookworm-backports

freedombox Debian release 24.10
2024-05-11 16:51:06 -04:00
James Valleroy
2c7bb233b0
Release v24.9~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-04-26 08:06:04 -04:00
James Valleroy
3d14d4a56c freedombox Debian release 24.9
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmYnEkYWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICHloEADAdMjpcwBrOkP64E3s9vRing7b
 hSCSUvkH41gZnGXN4qwWhdnbbgtJcJl1zdU73bVUrvz09g3pBr46uEUsEHel4x8t
 AdWRljWQx4K8x14bPHhWs7HEBfizIrgpAoMIJ5a1EDeKR7HfH3UL1/QJEAxVKl6e
 g2C3yPFMw3Yu1BNtFjU8sA9ydW/AE1/6TRF8JIl+VyR1Ggxwj/Y/GGnk87g3l7/L
 Ryt7d9sRpZ2A0u05NllyKBdaCTtnaG/VYywiiNTfCr2VDbL3afGEhTFlu4wdD+8a
 PjyObEBxbeNXeu4gzQ1A/IX/aZmC/EE3sPwN2j5Mbx3uBw4N/2IQeHn8fqKdCrOB
 HUZ9AdCXaz0FgN5KhOGWsoAjTZ36AMKH0rm3DX0HnjRfoX5rFAoTR/nI7GJtjjFf
 HfBJ9k6DEbob+m1tl5Ea1+VfhA6GTc+FpPnZu+73IGrXuJKOIogSFzU11N2fDJMB
 5Dad+7gmQplxCP3lLR8BBv8YspeuKpAACR21MN9hTfKExHceD7nhObSHES7v6Qm7
 l9+l3oNxz1cUq4qAyjbAD5QvR/vrDYzmv3e4p42svSoQN9vFOdw5DiKZXERde3C2
 HQxDUnUawGg264MPYVd7dJdDaqj9J0CoIkyGTopnsgYzk21qkfEpVRY241CyPEfr
 V3lqCIP6gOU1vde/8Q==
 =+CkF
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmYrmHsWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICHYeEAC/aw2hBMb88qCZ8q4eP/v1eEKc
 SiuNjFBLiNqHTrxvzKvx7S5tNCYS2le4Ysrwv1mUya2ChcaBCYyIOpS1gnk/rO18
 RwPGzZQIRuf78LsKOYCfQe8f22dmdNYTY6uOWHoPx1TGjqhIVlnMU+czOkzEiel9
 Ur83XDTzsbTOMq522gG7HvEgtyTohBbJXrOmFEMDLWB3QOvIH4Gk+VxBY3e1un2R
 6edbiad5VE4hg/dX2s0NH1fv4d80hAkJy9bfQmBfqSqBfslANhwCP/hJ6946xSDJ
 6qap++WdYAdZXcSxuA5RjeELr3bIx8F7ycCNnW3ieoGPt6FEcTsjoZWmo3+vJI68
 vyCpPdpABwEKPES12BsKQYB1vRZKluznAZZN26W/cfDK/lgCpVRs4jpE5zuiQ0EM
 O3XvviDMmkFH7mBstZ2gBZRp+wetkCcBi+DPDnOeoJ8+X+3j2vU/dsk0wHcBoF0l
 iCOru0i3JVBBRm+SgGEVbdWkIV18UsuIYjCR7U2o9VeTmlZkVIsidDJ9Up/apUlh
 CNZEROVTlUxgp/c+QI6rHS0DLbAx+n2yt/IrpNYR0X8plzU12cWNOZkxwd/H/bSb
 WEJbRW140aDKVHEkhtPPFX/LUZ2TMZt01vXqeaNHd9TRcVVylVxhFBWcdi4juErl
 8XuaRcepy3HNu4wWxw==
 =vO+e
 -----END PGP SIGNATURE-----

Merge tag 'v24.9' into debian/bookworm-backports

freedombox Debian release 24.9
2024-04-26 08:05:03 -04:00
James Valleroy
cf9decbd6d
Release v24.8~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-04-11 18:39:14 -04:00
James Valleroy
4175fb5920 freedombox Debian release 24.8
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmYVPqwWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICMacEAC64i8HtyUAP1MWIZX6aidijLzp
 sfXTlCDJ6VxmvXqD1w4MGM24ZsqJNkoO4UWFVZHmFwPrx9NjnqReTGG7IexKSZkw
 3D26ookpk31Sl9IBuz+h0NBUrqSw2jdHILzdXJCEEYn3pC/V3A9obftPJKgsuwuG
 /msG69GXcCO/v6DfSFl1fVBeon61vlojpF36ssit13DKnYA3rQUKTp7EMoyautax
 BpU9uLoEYCSG6+XVEdnnwP9uNu3wdovpp/DvtpV9GqgUnKJ+mkMdAZOxFOmkswjI
 egTwyuYt7Ug6VUf6HRv/t696vif0FBnFen05v5+bAjDjrA/xu8OJqNOMdfY1bs3I
 VTC7SlDjsEnYGsofEgb8RDd6si3hvYKQU0MNaF36j7tHu5PhgVmNjIyRzzxN3jNr
 Xxa7tvJxSyWQihIhxF2lNK+cO8L9ET5W/WknS/L9IZylc5n6TxQboIMR/IiuVznU
 8v4mlJYkc4JjLSS1FsggXcwmNCTnjYILTdgJiBiubkZaDhk3/24sBm297jaUZ9Np
 FXquDTwjV0gFbNPoO5vapdxaCIwrl2ArXcg9sUzTOLrSQh4Ah8dG0G5GpPAha3v9
 C/ANo1aPLEgazjLRj+iDyq8KQW2b6iZpxlCYKFwgtQ9c5XXwoTnf6AsSS9LcLYOc
 2Yy687dmFBX99D2nOw==
 =ChFl
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmYYZm0WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICE3VD/9fBRokflx4YS3hFvFrGAONLkGr
 OayzG6rvzg/MjbABcsdFpou2bBtOreQtQFygfngnfBay7EGaUdMAO56iKgGjjY4n
 Wbb7Ft71Qcf/klFBrAqCWPAG6VFrBL1GoGdmmmAzg13ze5jULtraX3eikEu7HtoX
 ODeqJ7BCFj3bZukScIGHTAcFam8DXIBEYKK73GqptIzlyb4D/leJH2yBFblAE/I4
 MmKPPtL8nzJZQWuEqNOjJIlRPHRvusx0YJUGdMmnEcWCqua86fNS5Vt0ftzErvjB
 QMTpE3ONE8ZGFB391dYX3VDMzSU7WEF5Q+HLu6HrUNBxEbCxYHcRAyx8DMhPsDpw
 TLNTPPvhAa/P6jq+x6MNqoqJsYGvXE1sTqzfLyBfI+HmRdxsOFSRYJ0sRJyKL7fc
 lYfo3NXr5FgsiBXCxeCDSpNcfL12QuW7MIBCDC1CSwCcgi2hI8stw13efY61JWku
 MDZnw12CazIBzPyYooaK4AVgOKWqikeM6j4dmBICDd4i5ZDxfy0LACaWvr2s2Zov
 bFf8+MVS6CUQzxXCNYFxljcUzV/7co+9giM8Ojy40EjqmEoypQaSpFxPqoOW/CGv
 umA3YBV9JzJ9df/XdqIxHGHVs2ShZHzI1QZ6Z2juD3kiTySy+BCxRSUlEI7KO8pb
 A7JFJqPbBe3JUK9YKw==
 =s4GO
 -----END PGP SIGNATURE-----

Merge tag 'v24.8' into debian/bookworm-backports

freedombox Debian release 24.8
2024-04-11 18:38:36 -04:00
James Valleroy
625b77c922
Release v24.7~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-03-29 18:19:37 -04:00
James Valleroy
738eff2ff2 freedombox Debian release 24.7
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmYCOD4WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICLXeD/9D+2xGCccqxDBat8+6eawVwwdK
 LluLbz+t0d3ZR+IMla/LhE+QdLJFyh1H3Is+QgSpF+3iowobFf8iqYUT/L0obOpH
 ICdyLOuwTC0qb9fsSowFMh4m7gW9xzRzFxdKdWCLVqDnLZJfULOtZJFcmMuVp54Z
 8J+F0DAgun0/h8TMfo7Kzr+ee9sAiras6nveL+Keu9ib+qXE9/sFLX/T6mLw0Ad4
 Wo8gY73vpuQRV4NvKCQa/mNDLX5ANGIywxynkblwNfQMkOmu8J7AHDEQV5/rHw4q
 HIv8mPryn1SC56NeZmFt06hskJ4DoHnpPBrxi6GbMlOcD64WPu10DKnu9RUPIhhg
 1X3dTwBkhfFLS8CJo9KUT36C5VFfw1FfSQt3ngpuhIq2ckRdGoKzHLYY5bo10C5L
 vrGPIC4IEI/3b8leoT6elSFmbBfsmRkZwrAJosqOOEEB+4+q2wjsZ7SfvLjlKOGI
 NK6kOwEfwBO4wug4mrU7LSxq46PJ6kVXLWt0v/9GFRhWlpE9wiDts6hdW4CxTAwF
 qgq4iKuxmhUX5bmWCtscIa+0VwavGN5vrfZcIPV1itCSq2Pv6lTtXWVWV4q2bGyX
 evZlSEf8Y4D/Wf8FE6jwN4HqspeF9cMxdLRF8Sw5VaZMBWttIpSC5EdDM0PVtECA
 Ya/+QrWHuBiz/DSB9Q==
 =OEE1
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmYHPkcWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICCDbD/98zlpb1JNUOYbzY8uujMWzYaMG
 huCgCbiwpW+ygPdWKTjSgEnn7IsUt6jk72yOANfEFVoiaIufVnHPWc9LARFdHYEs
 wI6luiDlZuxQwEIS6PkFpcZPHG+fFRZrJyLK3f1ggTmFAMrrWT42fOv6mVJovRBr
 3a62sO8JnRAStv3TnVz+61Pj+fv12bpxBRukCKS2mrmLZapahTrrEYQvuCvkrzTO
 Gj70O4ka/jCrfhT12rDEvwsUIln2u8KB5+M4aLd78LCsm8OvEEaHdqpWo5wE5Vgt
 NkgI0qSKuOfLut6s6V8t3Soe7+GjO2x7GoJQC8x0gj0bYd8eYN2zZWICzTk6mgwe
 lkhHnG7CYjxJ4oDbwjKARi2pPTEpcCjOZlH5JcCy8tejdchM6+vLMpyta5l4om1Y
 NQgKQ1WlqeaG7knVK2eFZKOtsMTOpCxmStEOA7TUVTGj51dZXow1VBP0T+EecH2o
 wzM1GU16h0tKHZBZrGonhG4/OMhTga8wPex+9taI1GjNVAWeUt4dexldo+kmOMjJ
 bQ5J1C46MTLgSlbwktmUbSLFyd6NZMw9FINiQKOn7NgKsHNxo2Yh0TDSiYJaH4qr
 lL+v+QIk8sVcygnKhYKOGTKRw7Tczkr3iTcouEVUVX9CKhAKjgeD0ZJTly5t0ss+
 FuDyWd4iJOCl81YNSw==
 =IrNE
 -----END PGP SIGNATURE-----

Merge tag 'v24.7' into debian/bookworm-backports

freedombox Debian release 24.7

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-03-29 18:18:45 -04:00
James Valleroy
b09e2f42ff
Release v24.5~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-03-02 11:59:17 -05:00
James Valleroy
14d69e2cf7 freedombox Debian release 24.5
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmXdU4cWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICMstD/9zF868IP5XxLe2+ZV8QNkHeBpX
 ElOWKA6uK7jrcR39oMX7JJnRDWFNE3IG44f3GWDfKQ8Vpann3XNGhcRvR9rhlsq6
 TEU9y518WsCLvfkFZ7TVOrx3CVXpBzrJClt3kvIGoT/UB4z2IQ4p5Vsuei1TiD1K
 R5hBBQBSTDxKIIqv+whHLaaWnUI/d2vlZeZuddfI8BPT2juhvOTxlaLlMIxXdzhU
 IMbsFMbOaFy9+F/OyWs/euLNHhGoNEwqruFL/JuACBY5UtfQpnyHozY7dq/T09Ho
 6djoLpvhVK808Vx6tNicXeC1XpARsQ6brBPasB96A7q9rYuDY++QP9Mexj7YLZJ/
 Q4TRAKsRGtIMbg411QoRO5bQqag67PLZ/b+0UwJDgwbQrzsnKI8iC4LOrxvU2rMI
 Uo1yWcnFxJZ8P7xZ+DStQU830ssddm78w38ja2R8qoNdxUS/RODz9uZxLSNoF9+v
 RKt6pf72SlJXXOiZdTgNIiuh2o2n4J/SdKxZtjeFeqHS9+5HoD4LgA28rE5ElGTQ
 fP5KGzp+X6v6TcvgIbhJ1yX2SEm5/SiuAnmPwGQ5ItjNh9SXPEU/7ekt7u5iDkf4
 x7ZyD43dmk8y6cO4v6zQFOqCyd7m0+hgFv5UwDonpOd2e6CqI7xQzMyWFofZdQbv
 PseKweEOq9y0frebYg==
 =iF1H
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmXjWscWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICL/ZD/oC5JkU8BA6lIbhxoP4Z4Vgg5Dw
 hL9Gbh0VPyV87ZNChxvp9JUFiVrrj44WMydtv8KE+GD5Dc8byp2Ipr4cPtAcMy36
 f40DSbxPwD59ku+BlyOhQpCk5C0wgG0hageWFg27X77FTedNo7PQGpVryrZY/MTY
 aM9bL5hmlJoFvOoC6oqiF11yRdZJ24cUNSIn/JXcBs7bMhepW/6y/sDb719ZBHwG
 QtTPMYSWlrKsUIeKYkO8v3rBht2gGw851PhwmnqZ8oTEhnYc6XU/kdcyon6hFEiG
 fDSEw5X3OwJdxzR7CTXPD7qN2lZsA84GS7iyNafEDVa6hZmAV88T1xbD0+QoPz+V
 6S149azfG7QFMx/UVs5Cpf73pIKZvRH1oxHjhX55DOWk9a0B4IAwR3sRFFsfZPsd
 A0QL6A9qmdoT7+eWy9VTqyqkKFMm0hbyTVNDIemxhVkQHiUqveK1XmzdQ+RNBerL
 g14T1XBePwxy8oAFsY7uw4PP8QLv7vk4F4/cuCrpGYtqrU/+iTIZMp57kO15LIwT
 81+L+F7KaN2XvWBdEgPB6Xt3vqbR+sr6EJmhp+4BKxevkXRtSCpBkC7GHP/p7ktO
 yeoz/4HtI6q3o+1mqbllR7a4tBEM8qc+D5CzwPz6MCGCHdQqx5cMC+xgbo5EAduT
 hICdutjwRgmJ4QeDnQ==
 =1fNa
 -----END PGP SIGNATURE-----

Merge tag 'v24.5' into debian/bookworm-backports

freedombox Debian release 24.5
2024-03-02 11:58:46 -05:00
James Valleroy
819754e277
Release v24.4~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-02-18 11:00:55 -05:00
James Valleroy
b4db509204 freedombox Debian release 24.4
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmXK4hQWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICE3iD/47DgwgOFHyLGI6hL6GHrB0m529
 nZCM+RY9UMORhKvk/1i5PKgeFyIF1IrMXq8bBzrTkbRYtbuoQu3gxXmlaguLlvN1
 1NNCogaEIsic0EPZC0LG2d+Jwf1e+VUm6qDjRmSEl5HGmtCiUrAp3ueYX+kp80eL
 UllzQJIj+t4ogz1j07h89dZQ4hUBqle6Kr6SoRuhTMtjkF+H52YkmrwNh6p9c+oo
 ap4ihYkf3IkCrlUCnuupsvNpz63EnBeweMebhCiFim4YyyqXHQ0pMGrivsGONNMM
 6q6NYnrvmbtsdegccEngJY37yKznBgh22Gy2Eymddr403Og/pKVVzgqkAnxIYKQ7
 4LxEEb89rqodHd19hAPRT8LbajbpBb4vluMF/bNWw6N9oun9akN/730sk+WKmFSW
 skUffvFdWyqUxX4CmRV+vYXidhKDKRxy5DOvm/gymUGwAzXnASyWngzJwhQXYGBn
 3/hZg6ol3DDCDh+kZzqi4OWrzRPnl7nIsZre4S1cYRWfM3TUHJTTXKmFHl5o7Yly
 K7COBa+w0LuoA8aNYD0TpU6KMq0p7feN6h+2o7s5+oZLiM8hL8aiQgIF8QfBYhLf
 J8nqO+4aWO84fxifWsBv2v6fRFnZ85vS1YKJmbOOXb7p1N+wvfrVAE9xW2obgRJs
 MrlO2BWKw+3sdYPexQ==
 =niEJ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmXSKZoWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICP0WEADSD1yyC8CkT32rZ4fyqIb3Uroi
 K5sou1WbkDyWBdgG1OWKotferX7rz0Gyr7TrQo7rJqnItikNWQfiE/zUfRhf3C4N
 Sq8eRAuQwnnC+uLaZ6czAc2jojbYjAxfg7CJztyzU4sA9pRh7wClvD1Qr7QfkyFe
 8cthNjh4Tt3n+4dHQwkku2rLfMcoU1SuSbWY001Fu0kX/DX0kJV1f+1QVM5ymfFb
 dnF//YSIIFtqJkXDOyhLg+MZ52dnuNsJM59MOex0JTbGqy4xqcZDkp5f41+mBuCo
 Lje1aZftjlMSPVFN5EKT0pmF3ZuVqHK9rPp8KD5mklOXi8yQCa+i1jWBnSHunhj9
 2ZNGEMaubXX2FuT0tXEzQ16O2r7H7aGb86ONE9DArSFcVL3yjPBz8ndwxXbUWOGf
 FAe7ttaIHg5wzFVH6vad7TfV4fEj0G3SPCKM/wnyd2xmEqLiW7hEMK76wp5gJBCy
 xXv9qbLsn44Bcivw526UYmitiR1/Fm5Resf5DEPnW/KGCvd8jDH4tPU+DHXLXJmr
 gxzJqU1YwRwgVeMUWsIAcfqW+QEwEfk1lbG915HfTnsMwUk9bNF1olM1wm/UWALg
 Mm9aUDgt8SFuKyC01zZ1Z47X7bflCHi5ZlaIl4pI/khtvQQyISkC725qF6WmuFVH
 mtTS6k6gUJl4kZN4WQ==
 =X3DH
 -----END PGP SIGNATURE-----

Merge tag 'v24.4' into debian/bookworm-backports

freedombox Debian release 24.4
2024-02-18 11:00:25 -05:00
James Valleroy
860bffac86
Release v24.3~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-02-04 08:11:33 -05:00
James Valleroy
94789388ec freedombox Debian release 24.3
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmW4ZjUWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOMjEAC0CEGkp25ijOS9Hx1A8sTPNNhk
 1qbWtlaoZNxLeh/ti7afrqwWOTr+e/3ktw+rgcX5bVUTWyDsJh7gEOwaRwqJsyKK
 Y0aTp0LwidKSqO7xEne8roFo3rP8YY82CA7M5Pk394YNll0NNGEOnxoP9pMYbhgM
 MKTDmPN3qSKzFfQ92f0GzqQc1G7OIr4daGArEyHsjREaBL/uupY/74hTC4qpd3+1
 jTR6DOaRKCYmf6run38xEWGiECJq28JZ+zZ+y2W7zG/yq9mSzvp1efYtB1SD6ZE+
 qn97p+SK+wxppmdMdL61t2AZNVjq1M9jpdpT/IgaDQvbsYCUxnQj+R5wrzNxSgLr
 bPK93P54NzZwSTRE8e759ZEfyEMsE8kFtA9hp9/6PgeIXSUuU6c5EdOtoTwCtRjC
 Rg0BQpwk4bXCJ9glkGshM5Yw9w5IIU+KCvJo6Z+/h1ujstOUuo4PId/3j7kG7xxu
 76fVyB2c37RDId7v+HBvjLRo5UV5lC0lESJ5pyqMDCHVtsZ7GA9vAicNmNuuAhSg
 ccShqztCDgRSh6d8dSOxB91OXWzNNJYNSqvHb/kPN7mekdZPvEsV3Z2tHpbS3ufX
 7nRjALzm1xo1i7C1pAe+SxQrE2IOsHEBMVPpFtGoXY5/+ihz19rl3gofylsW9GTT
 RMxftoQXq51S23I1TA==
 =aLA3
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmW/jOgWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICJxyD/0chAFhHO+XCqjLGhkZUvAJbXrb
 GslWs+6tWRREdvEzOLY9NBIFswMDfinHXncrpKjbaGAzUw7XvNJfCtgP30YxAmAt
 JNezQ5hnX/Heq3ftqx0vu+og6cy37yIt44UBDrkkFupFh5DHX9eNZS7wKQTkLYmw
 pQrwNBFDV0Cjj61qnn+KXwrpp6MJ6H2spOd/SbH+jsADQJVtenw2ug5Z83sAF09e
 VKCL3IsrLUmeErDhh0SIyuHav35gXI6fXDFk8UIwS29o0Fqf3kxfh/aoY/HR8j2h
 k1kGXqEAWOtvwV9e0UlrEvMiKotcfX8TBTSmRmB7CA3kGjLwL9+VW/+UPLf7hZSO
 2dyQfubwre4IvUl4n2Q7PvIls86hHyU+PzEpCtrajwQYnf/8sO0b0jDoUno23OWN
 nbEItkkbLHpUl1jzStS9aPQ80bqBGU5tCZe+k9MD/A8d3l6LKq4TVc8DKu/6xgQp
 CcYKkahynYUPW94/18bwx/jI2Z1FgZh4b7MvH3iunlHpZCVcGbrMzsPSU4zJTfJ0
 sJdX4sQ7HWMDYXJfbeYVkcnJNujl21JSIAYzVQ8STYQd3/pq9rY8jOe2LkdQJqoQ
 UYDE37zS3zLNMEl4SWtBitjM7JPf3wvGxZmkgO+s6k1ezTd0XGwysLUi2RNh8vFP
 84+hdixiSKEPzq36rw==
 =VQQ2
 -----END PGP SIGNATURE-----

Merge tag 'v24.3' into debian/bookworm-backports

freedombox Debian release 24.3
2024-02-04 08:11:03 -05:00
James Valleroy
d8a69d002f
Release v24.2~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-01-18 06:47:39 -05:00
James Valleroy
12c888046b freedombox Debian release 24.2
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmWmctoWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPi8D/0fahzzL9iLW7HqbjAvvSNAPxth
 6z6X27/eFNXqUY4c0zILtNHYJjlSXx3utmfyRS1CpKbSNHMRrtJ37hsXXgMCJ/qv
 rI89ITaXFQzHmQB4ddhQpp115bZ11ASRcu0H92hjsGjbmgJF0e3iduNLfvGgi4TD
 R1krLMHheNeIGLd1YAOm/1s8bGBQk/kFJvwY9Qqg71aw78A5tbADryE26rb5Z4Ls
 0s7cXTixHtOBXlI4npZAz4PrrPX0h0O5NQAJkNlx7jAGEZAnnnr3gRfHQEOCrNDg
 9WMUCDF3PRtPw9S6c0eP/hWqEXKXWOHKPYWamdsvUKcv2vrhyFzmTQ4ofLB2RnJG
 q+kLDPwS1kBqz3vr4SsAQFbTuJ8N5jm0lvDQMjGg2/xuDKMi+47VxCZS/i7a3Li9
 ZMeBzKimfopSThH2XiniaumQL8hQ9puRoTUsuSYpb+OavDyLcua6dX8e4eaSwnXV
 6SmQmEcYbK33efhVWN0RJG8BRvDNxNuvzVQylxDAtmvO5FTfaOTbIWRpQi46Lmic
 4GMHn41kwhKq+Vacf9n16W5PMDBwvJDZ8M40U4VDl+2vG43DTdrY4OsA2NTwGdLq
 h9CRUogFd6xaNkWjAj5N/9bwKL7gX9nguCFpMMG6CecaWpu1Vi08tnFrhYI9+LN2
 3tZN2AX5M2HtpYS3yQ==
 =8EZ3
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmWpD64WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICCUiD/wLKmpJR+z5L4uEGMF7djepsvdf
 dUhJtMLUaFFzfzkJ4tnnWY//X04jf0fsyoZq1f2M1+ptecysdy1WfkfMBdJDzuAU
 eGRwGBIX4xfptFldU0+qLPf7SwgHsrnwyZWMZf+oYzl4orws1m2EqXoo/hw9l3I6
 zoe9KwdPnACRmT8fmUsruL3W1V3T3wFxakfgouZFtpYoyLJse23eX26C9A0sSVSm
 /8QP+9KyBQbRM1UsMzKKn6bYslnLn7OTo6cdpX81mGqOXaAf0iTagw1c10LCWfuz
 apwMeX+fw64uv4djjYkrFD0ui0Y44B0y7jUXTDbFLtRBp76Gsu9m0FQvc8Z/p0Gj
 WfbpFOWInqOspSldAApddsfBc27nB8q3/a7oXJdnlXOfJVAs37sdRVQcuP9xqRCD
 +mpf+Gcx4/Ifw4zGV8amI0AQYHMTxd1xYyEfU/lAI6LW4QXVLas8akqLdqlu+Wd4
 Cd1CWRnFoElvlwphXklANQULjG/3QxctV3aNqx6Bhs3LhG13zbg1l6mUJYhejswM
 XE+ETmY+DMskxRUu1RBu2lS+9Pbv3bN0UNqn6OpWe98CMY5iL1BtAl62VW6O8Osj
 6whPcHvRxGyWX3tdazct80OJYB8XGXjGzPh/0vjqkzUR79yQl0OsLC0di8vCaHzx
 1DaAI6nT67J8jVejRQ==
 =JXVD
 -----END PGP SIGNATURE-----

Merge tag 'v24.2' into debian/bookworm-backports

freedombox Debian release 24.2
2024-01-18 06:46:53 -05:00
James Valleroy
40bf5005cb
Release v24.1~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2024-01-05 07:39:43 -05:00
James Valleroy
c64a643882 freedombox Debian release 24.1
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmWTeoIWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICADfD/4tjMYBuPM7DcWlg477BPjU4SCm
 RvC/uErEtDoxrz0RFssd7+Ggmzns7pKZMeYyEhgc9vRYF6Oa7KZ/yyJpSNubIV59
 h1wqRh3g+i2Egnhy1YvAMYrL/xPaiZ76LAWEGP4n9sTrVR3uKbjMjIHu4pNAbGm8
 NO9cyvUabT2UJls9D0xZP4MGpnPUgC4eQ6exOxJgJaaYqZJe1LldyUghfWU6DIUj
 NEFf8neGATDQvUZXeOLJKS7ol6ZRg+jWVuDjSqvnqBieQMk31FfAemaVBp4NKB3U
 ADrhxONvLxP10J0h9msyp9jk+hkVzThs9xEv0HF/r6GDMraSB8whlvlxJgeow5nk
 Eg3TMQ6ICJ67v65f1E3g03QEKTTBLtsaRzfJcROoCQW6FfB9WaTJy2inG9Yb/dVd
 IjBsx3FXvmPK04DPcucV/Z9RT7TVdQk22v1xM5b2WMSk4YMYWi8jatZfPqaMP2/e
 V8bqaC+BWWzeHiRfyzg1UrXeUooDIBp56nUGW0bchks+pc94HTXmvwZJtiJo7yqj
 h9hGoHU8yYX/kLhqEiR628/XiWB92vE3/SfiMg4TIcgawjeYFE7HK9pOivk68gXs
 VvV793gRG3loNUwrqUea25i/9P8AjIQ16YjdsK4nzLmDs8DJK8puFe7A6jApC0Qu
 J9adWkwLlNyPaL2OKQ==
 =7F5H
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmWX+GMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICF/hEACcwjEGa//1cH0n3UPzXln7TEut
 FBtSnXfT2RX6pyT3TvXCv/aj0TY2HFFzDduEBq20mBwotG72iBC1igpq7W0QQayr
 K/oxiFufcOoBWxcI7SvgARtjfXzLSwktt3aIjxTlthri2LVrcA7SFRP2TIyQGy0d
 xQmWxoopWT6NQEBl4EBSGvDXL6qN/j9Hf7n9iBwVIaZLacv3+vsKBBkYZSdtS31B
 mj5QtTtGQTd85n15YvnnkB0aM2cM7NpP6oMVolTa3+UeFMSlHMFV8J2aIij4Dfda
 wIQVuuo7LwUXBbi21IHSnjJrSyfcCQAUVeIuOY0T1Z92o6AvhjGuoeVgwMag7ro/
 YTnP4Caid2UWf9DsGz4+OPuqr8b0G3ELHRWBLlH/AFEr1juClvF3amLnt7k3XB5S
 sJEb/nAWfoSD4dU3/U6u17nvNgk0zUbIbH9RnjsV4A9cS1XHQ3WFTSua6QhacVzo
 odD4QU5yjuqpodPnn3u7y3Q/s37b+GpuxBE5Sm7gOBZGqI1MxL4dO667UAXRdtzb
 TSalEwCmaCCv2JuxKGGx+aXv8uEH5R82A1nWrMzJZttila7wsRAOpL5bdtqsjlJv
 dLHVqcXOsZOXyx8QpmRcZxC+ORC3jr66iMI6jhiSecLu7GkO9/XF33+cO7Ctsi6M
 wIrlUvP2jB2GG+KgRg==
 =Tu84
 -----END PGP SIGNATURE-----

Merge tag 'v24.1' into debian/bookworm-backports

freedombox Debian release 24.1
2024-01-05 07:38:57 -05:00
James Valleroy
9d4a568429
Release v23.21~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-12-02 10:10:05 -05:00
James Valleroy
a0b7f66994 freedombox Debian release 23.21
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmVkiDIWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICI5AD/0XPPJz2Pj5I0tEg+88au4xzfQm
 GRbz8NOi899YvRW3sY06HDuu0JH74zO62dq0Pmsv1a4aAgzBYtFh0RgddRHdbd1E
 WOSLpimVA4Y9p33HKfDVdWgh0ZgsODfZeja7mpKQg3xe6gMTNNgs1OJCmZu7A58e
 dMq+/9qcgjnJm3LWq9R/07vd3p7YS+ZYFISqc7QDO/ExvWo79mlrD1N6PN0ah+oK
 O/s9o8fGHG+PCZ+K2WkHXqJTmy9jE6LcXoIbKvErMjyULADN2yA5GXzXQvvvNzmu
 P/2QrpgTNWn16UUE5i3pGt3CymssFJajlUoq2W0i2JSE5cgtNaZVvIPu0lccxp2V
 0+Tk8vJlLzbbBz7F9zAtf8WB58xyzbH3g2T6YzJcPiTcmXRdrgVvqdrMMgXcjrO8
 fl/WN7UmSVpRCy5FOBKxfQLir26HFpS4DBlV6eo68aC02+1mxorNNKhRBdiD5xHK
 WyzrQzKFcvEKU6S5em1nSVvE0k0rbD9OrUOu1lrwpl0DK80cjqNU+584SSHQiIrS
 VroyPKvKW/qzxyj0Nf358GxYB1cxm/+Q/9QJeoXK51m7A+TTStn0uP5AmREZXzx2
 OK8BCo3dFYrv2B+uQ9qzDRKXbeBz2IJFtM1WxEUk977lNxAdpe4qm88a4oIbrkBp
 +L3S0NAZeyeiDH0qhw==
 =LLE6
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmVrSKEWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICCz6D/9k4NwWM9DpaOqYjvueiDgKg9Dm
 vnDu2xR/KJa79SuAkJuP2FcUf+Ku2ULFTFT39tyRu8YF4q9wnDUOl1bWArNfUVID
 5KbGBmWZ+n0BDDgGfySgL9kKTbN7VqXMp7lVvJLS/9YRgardFRnqYaRFJKPtBxRa
 pa8Rl+CKUjjFIAqYTdW0PD6OwNS0yLSDQUQ90TKHWMo+7Q6MgLngAiTT2eCnATdP
 eyPpqZhAD4l3aTeXmqlg6n58yXIeGDqkqFVPUIbio8DxhTUjxXEH5OfuWmdpGsLI
 /XIE8bQCEplqD5tgVKrG4hiQK/0H+IaVfv0zaidpkSiRRZlpGOxLBwvMQO8FsonT
 nTIWFfMIfVWl4uEHf+C5oBTg7+7o1lnlVX3Fwyqab1sxmaong2Hh3cQdb66lcGrC
 xWcTZAK7LbeKUq5Heu1ZPKzyLRAgSfhj8pmjZlWtg9fxrbuOVcEjoNGGfsD05f+i
 ibTNQ5fc4C7f9Olg7eEZ3QIf8pbXgYC7KgiAr7PHkMZ4XrityUfN0993pRyHnbPp
 asExe+VonzVSVhgJBSwApAtzGUeX+w2ZViYZPO4ZdFti9PMFIgarDIk9Ss1RK6So
 NCDUxqIkrZ/5L9aBh9QvZVFS37cunNGmtfg6G4keV6WUyLNju6bKxJWVfZJjbUWn
 bQ/cQkYUF0vFcaN/ow==
 =Ocfj
 -----END PGP SIGNATURE-----

Merge tag 'v23.21' into debian/bookworm-backports

freedombox Debian release 23.21

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-12-02 10:09:20 -05:00
James Valleroy
f60eb635a6
Release v23.20~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-11-10 06:19:50 -05:00
James Valleroy
b111c67e32 freedombox Debian release 23.20
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmVJrB0WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICHo/EADJuVx9w7Ra/h+87Dq2lvdzxVAF
 Lrb/tpW9lpZLwBJZfSh6E7+KkQZxpDVYORvv6L6RAeFiFCfIIbkslmEXQff0+OC3
 DhhvjUYnt9BHBRaXAiI1HuzzrjNwdsvLxNsYLIGFzkIrLs6lLffQoM8pCrf+I06R
 obCpqtx57FwjGPA6xQGcp5PmWRARXdY/XIL/raovjN/UhC/vh8SgddtpGXfoy0/p
 NY8SXdqJvVSXV6wmf+1XxEAFLj77tcr2HuYxMuUYNL/aqDr5xVjoAvY1GKcCYQEh
 RIkqjXqqTV1URDiRZ7RqNy8fQg4kJldrJDELhOyTPqxCatU8rmT++fl4r9B4+sGa
 fn29cs8h17APPjboe6GbrPB83KCtyItZfltwG9IgmgC1TIWLJZQmw3iYJyek3akJ
 ICzdlnoDLjDmuX2S3STnyPC937OksWc88/kG3NwNek8le5ZVxhfjKEmrp3B7aYMX
 9QRcDIqS/P1PLB0WaVwOyhVIPZmu4iZTYjV9v0A1hhusMOGRJjIrawOdRsliZ2c7
 3rIAPLvXvoZU7UPuGHhOreH4s3iUXJQYGraoOhI/3lJefZzllXsu1xVPAfquytZV
 t97D/U/Z6elMYFM/zTjimmFEk4jKkyIWA+P6o4041Q0b2FTNvUKSp4YGfYJahbaG
 VjFEJgoWmERAYBxcMQ==
 =JEJf
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmVOEXMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICCZID/9BtAC+ttqcOuPFviOlDmF2aBn/
 LL5nitLvFEoCdOS08NMh6e7pQBfiUho9MoJFslEgv0/v4VL52jYYE0yQkZ+YzjpF
 mYN+OwvtEZmjuw6OYt53Djc9bO4Ad4G9TmYXeX0BGe4dFMI/p7K97umWh9ZiWuR5
 khWUkIxxDKLPXFQfwmeYa5qpoRZcb1wtZ7KD/sZjuY1QysKHRxLXLACGi4Q7IWss
 VUljoXm+fElYbmIlKfDtg8cD3sCkJWrnM9ruXbKqOhPnSXyZFjRV/3iLXfdIatS6
 yC/TDT6DM7ANDk+QZvKTdmoVhQ/yVnrNRGbRIMTTgHWTmKwJqQf+ndYpJsbLJkYH
 TyQhwr+rS3qK0LB5EznPhFWsJLVlEOrfpclcMSUuRIlniAUVP5hoT44WRn8q8z0M
 rbPYSQ97FFJhkfbAOodEFvsc6xbiEIzGWlM1CsWIjIy715vKrSxakDEa8VT60V8y
 6NtnTFv9cqAzWfZAFP0200K3IbOSZ1YOq85BmZJgHg9NgpDjjT8ZV+XX5AURqYhQ
 NdKFOWlE1EXct62memcAGU9P2kcxfP+mLK7asvq2yU+lbmAqBANhCGBUNvt44Azw
 cWId1mNbZoNxrzdCpvD136vBjzRmmhO7BKcdE1/sgEZHMjbQTxpwnGpXZwtymknL
 ZHyR5n2Spm5zoeb9dQ==
 =CMKU
 -----END PGP SIGNATURE-----

Merge tag 'v23.20' into debian/bookworm-backports

freedombox Debian release 23.20

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-11-10 06:18:09 -05:00
James Valleroy
f7c0062ddd
Release v23.19~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-10-26 20:01:55 -04:00
James Valleroy
5abe6171c8 freedombox Debian release 23.19
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmU3IboWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICAkmEADRSP8I6lvRDK4kINU5svIksT6Y
 0bMD94DHiZBh8c1yw2Et/r7yQuo9UkQPAMgPgDDA9ZgMeMiNws9tvWTrTVkFIjMo
 mav3mL/olwQoQRaRbPFldWQbOzZ22nniZ3r9NuukikTgRN0HUljMPl2yFUe1tr9u
 qPl/cg6Z7hLF/DKuX1lnN4WDWtHtuWmY+YOyn33ebF/qdx9kM/h1YgfPWj2CKL1c
 FfchwrAdDB9xM4ozwmevdg3PmXxGOglGc6AfjrUotyvH1K41E7t5p74+A4qctCYQ
 4niXojhjHx0pSSmCFYnQ8H5+HJQFsERKYjXNdzaKkt4MNpw3hkXCoaeW6fxFdpI7
 EMT6uKOSHCajnS2dkPt65uY2c2t4+ncq/ZcR2IohopIk9BYrVIz7oG/3q6FdY/NX
 pt9K+PCXiUzGxnOCkTLPZsZB2L+A4HY22DMd7k9/gxARwW1ykDbVvjGZOLXp1fz/
 Xx8GSrhjSHLDX61WcjBJQI+QXCpoJ+ZBDKzs4jgVlJdMLCCiXyAVi4wB3oNFIBx9
 UXB8NAzRwOE/JjN8ED46YIQPqrHlm5kkLGBwrEnTxf7ITi7aXauSn0j3XwH268AL
 QGM69TATp2btut3mXjteZ8pXWKEy5NZm7tY6kX6UlLZi5YfcITJ2dekiSdSimwTa
 tLW54J078lPF+cKkJQ==
 =IVfn
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmU6/TkWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICL5SEAC+LUo5u3URLzHPyz6XHuNbt0Bv
 Bw7NfxfKH39GL2FiBzcy0IVgoXi0V169UyYgjrxyUuo82GXxPZ/nuK9Vgq7n9DVY
 4IZg/CotEs5xEa9mpyclYRM6rTehAHsPltBok85Ri/gqhteOwwd8V+rie8ZDTFQb
 UrNjlXFz83IkUKo0ovUlk7EktK5EXLgcLjfh6NIj8LHfS82OcMybVxcWu/Pq5Aeb
 SuWIJnpAXU2w4p3u0k9Fednkd9Y70cK1o6NfxjbGGPsovJp0/Y3PZt8i/jX9BNoY
 lWSCz8vYFitgQAklF2Ozg+2WTPeED0h8G08P0Cxkc72JDbQdBm5kS/2O1zaaRi+s
 E5ImBGYoxVk/BMnUXK13vQtCOBdLwGntHS/BUA4mUXIYxJHBZazr/zcqciy3d493
 7EyMBGNES/Swd+zekjUhBfBXpD0mMSspuTmaZ1E6YVGGdh/WLzk4qrKiDmIre4eg
 I8g2sUQVV6YKNBhddPhIWcEOkswBRtB73AixuRzKr2P15RbmXqtnX+WIYcfYUVwv
 lDXZmZ79MhmyolccHULMNWgD+DpjD5AoCG9ZPCj1AhSMKrgYkE0txnb/kyraV37g
 d0L3GHVOEP2l39cbWsqtGZ4eQFE5r5vWnPnvUya/iU4pAsHktvSU2bSvtwk0Yooj
 3Q3d61AqfpHuMA6Eyw==
 =/mf2
 -----END PGP SIGNATURE-----

Merge tag 'v23.19' into debian/bookworm-backports

freedombox Debian release 23.19

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-10-26 19:58:47 -04:00
James Valleroy
c9d6da6c0a
Release v23.18~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-09-28 19:24:31 -04:00
James Valleroy
4a62d4fc77 freedombox Debian release 23.18
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmUSMyMWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICI3DEACAkOF4kOwtA8Lqy1tGCLVg8z3m
 ff+zDNDpi14vMu43Chz3xTfmPNtZQ20fRKQ78a1+IvOVZShaaZiqevGD/9rvbuBV
 RHQm+6YIR6Z5HqTQNnkKHO585q6JF1AxzgzMBt5cR98k5pIUykUKZAb32fgpzj8a
 Yxc8+vvPzNqyR1SCTT7PZDmjr46vi5c+mVcxPA017PrFtTSgIa8NTuTcXWInP5me
 JVFa8IuFqnNh05BwVW0qeCigQZ1Pvf/1TS3/VB2y2+52oPQeJdAzF0tKTSZJDUJb
 aH1er+PG5/YPlKU/oQpPK9oJn7eKzM8NqfTVEMyGKA+L0e7L4oNFnWTP2ctNQhh/
 DX+7D2sqZ6ALbS4A0Ur9hxifX0clIRzaohNYS77LztH178ZEZifNylL7qqO4qPWa
 tqLu0wPWT5WWDLUxkpDQSn7BhWZBIn4r4Xu5adWjvLA48/UHcrTkw6tpLlH0PDn6
 nXAaDraZOZJtrx1HbMUiwafPZ0ZZ5bQP0iS+8PHQGuV4dEiFuQ6M7L+hv93KEwlN
 Gf/Br8G123EqoZ/jknvuAP0qDC45R9mSRSyfi4h2Oi9/81y9XENIX9d99ddiiov+
 /yTE/4SIFDOzz8DionwRZhbWS9waHHiDQicAS7BopZUVjUr55E6foi461J43+zP3
 weP3eSvGV4k+JTkyKA==
 =ZDWe
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmUWCocWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICI3WEADTuOoWqcsu8uJXksRdudQDJKAv
 GbXSzB5I7Ykb3sdIZRzRWYei7EFJrrxbSXbWlDbVXvz2hqAC43z+DknpG0RrT9u+
 lhffkm0luPE0mafZsOS+S0IuGu2a37DdKGFTp5+htwH6ekxM/tD/u2QFgaHbo0fL
 zZ3JjnUIfTHsJB16jtYowahf35Oh8gIodEvLA8tnF3lI+dRZtzwATictt6ux2rRL
 +Z3V0k5pFdKbjc5ZRyYZHtkOtPiNyQEIV1Zx3LUs42Q4qga2cZev8jRH/NDilZ+4
 2cFkeLAWKD34LA3odNbqOyKo9vMnbCFDO5H8VS5a+d6CXfP9EdkSTVWwZFWvyE2r
 xhqO6NEVmwOCXeNhye2Ajcg75ZU4i6+ro85SQyUEEr1s7+0tEQZxec/UV3Q7sc5r
 xaqj2dYJZOOjRufAIdDgZizhoTbRlQMsUg2J68dlg+2dH85OL4ncIz9OKTOYiF3s
 G8hdsP/XEI6im/ghdI0QcbmgWHB2D022iIZENxcJXsg+IY4cadwzMmfAr5LuxgGh
 W5qm9uRwz8zSW99TVAtK1Hq1U/WIqLe7LFIFY7+10B2e+dcGl+yF6vAS4Sj56ke3
 KlPzLYc0DHHHtdHq/UG9xS8myrWwK2YAQzSq4RfBIHnGmQeuQsPoYD4wIc5MRKyX
 jLdmo9UcmsPDaBnpSw==
 =AWE7
 -----END PGP SIGNATURE-----

Merge tag 'v23.18' into debian/bookworm-backports

freedombox Debian release 23.18

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-09-28 19:21:41 -04:00
James Valleroy
32942a65a5
Release v23.17~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-09-15 07:08:15 -04:00
James Valleroy
814b16764b freedombox Debian release 23.17
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmT/vLsWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICBSED/0fIuE0J1VzusrN21VP/4z36KwO
 fvuI8M0vXeqZwgcGXPCBAPR9qkOFysPkNW2rEfKJEzAl1j9A2c5WXQiglDxFxiX8
 +l33DrI708CX4u6eQ0rx7wOuK21HbVADh/QWjS1I/A/k6zOexPQ4ONHYXYZKYCEV
 x/hKIitQO0k3ox5M0JPpJqYQapZqBQyV0TeCklHRXsDrELVpMrZ5udlcxSwos3RQ
 qN3IQFCJYZf1qcWWlyyqYpWXAlHmMECiPMq1LP/XQaVCtiZ7yTxsRusse2NC/xsr
 +qadKDKdtCtiHTOjJXtoKwStcsm3CAD8DC6i11n7vN6PhekZ2EGdJGdiHOlbeWi2
 KPrrbvC/JeMTWVV2pvVca/022ccfnzlIs9VaSrRD+vDwBOn0oPVh/IgfHcOv638Q
 42vwBHW+XDs360htg+cDvwWgEDIYBLhMLS1fPTi6ElXLBa+NesaRYkWNWr810KAr
 Dt98Zk0Z5hGNoviwHqLqe3vqY7HVCkIaiWCXMP+dt9cAVVb6SkMsrYRNQroAHSor
 AiDzxHkRbUuI+V/pMLrU7GvNxMguZYBdN4hx41Uarb9pTEOrI3yXAy3FIwFQmm/B
 XXg55lMp9zg3aTBYfWz7xFAx6w8FIIoiXtKrdPa3gpVbM6M/ynQPpZuhccV1DvDz
 ppr37zLPwG88EIK/Bw==
 =nvXi
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmUEOskWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICNYcEACfZBRJEQzlxjxfWC6NW9Dp71LX
 scDcFLh/sCscOd+4lrDuiIsDMpPKFmyN/qDNRZfvQutufiypL6KxskoW3PbCyYis
 2v1jOVSXHuFs+onKIt/YFMcpNQbBYJhDDmT5F3qrHXKqsAbV8SDRZuwoCEFJr9eM
 q8gpbq4iHmp+5fl2miAxagiQcNrdUQP/cvOYQ0tpaVjVIkxmwDkiGIYAJNoncnTI
 bYJ7KL30TA8bgJZWrUT4mARChvff3gomS8yB34CCXg+HobTSoeP6QI5hTyGeV/Zx
 4+6ZW45535cUspVXlY8KcQREs8LI4hb4uUBIPLzHYbF1hQkblq4pkGDnBpnlwEo4
 q1jeXYZBF5chGW0C3KoX9nStpIVhNeRRbg16WExbtcSHY8vfGP00wFIQ4jaJQrzQ
 C7yWR52qz0dQjwgh73ou+k2ujyV3rZFE6ZLhqKxsFy1ep4RFlfno9WB3GsVliyGp
 GTFMNmWfFnPeeZsbWcPLhsoYvMv5WS3jt7U2YfLYIEFBvjDrysa6cqVFXLtlTdnl
 05FZxRs2bcTY3rR3f+XZ/oGKTO7Nm9uaEGwjMtwEQUB6a/yLtt+3z8nft+miG+G8
 97gl+YjC6XZxcNYOuGvxu1YkRPTBgrtrWLk/6yPNpXF/MH9LMmsqyy0s05B/h6YJ
 JMdDJMsO5Ma1j0N2qA==
 =WrB1
 -----END PGP SIGNATURE-----

Merge tag 'v23.17' into debian/bookworm-backports

freedombox Debian release 23.17

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-09-15 07:06:47 -04:00
James Valleroy
01f059c8df
Release v23.16~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-08-31 06:50:46 -04:00
James Valleroy
28473a96be freedombox Debian release 23.16
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmTtSzQWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICIa0D/4vz+Xc1UDWsl0pWBbZKuTFaBIA
 3A784H5j+ccnS4VzayRGYaLta85R076u6ftyrsHTE6/fFnkvLsU+Fs+n66Fq7ay0
 Qq+Bn//kcRjVdp72bdzoSeThmanqQjGvIBuC3gvCydEDpV98fD8CQ1vV/bvQcu0+
 PsPfxYsSu1OLhNEzrB/9u7r9YQvidP8Yl583q2AP1nRth0BENRH5T5bybENlME9c
 cRq/XNa3t3NzIl5gXe5dE2W52qskjuXZhoNSPkZlXrsevI7vxd/RVCoLWqYfdhl9
 tDfM+59mzhqo15k80LwvjgTTmM8w5q3qYvi/ziW8Jka4BPn1g9qlcsWpUqJmeTcl
 rnZCnbwOMxVpD3dDf95mFSREIIws6zs/S1JTcL9yhQVEofe167ncDGQA6UUMr9J8
 BUaVztK4XUYJsDkIliQ0bWOZ80TtuNDtaEvU9UTLlCnsL1V/EANm6FLL2qqjNbJ4
 MfBR2yRF2Gm6fT4YLsyaVabZxVpHoWRj4w59QV0m2oXpeVwYfGrNuHIN6lnwoQUG
 6h9cgK2ah2L4GHVIRkzPVGFcjljHRjDaR/Nb+MNZoN/CxlPsbuhz82FCfUUcSwxv
 Kw4Oc+4DbSbujEiGFXwqlXe9JbI3g8nOethrYH+drghUP4mx/DDgBt48b1KtUs2S
 WuDL9UnixcAo0ncpXQ==
 =TA9W
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmTwcFUWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICJbZD/0XH5Lji6b9e3mL+9w6jGJo56OO
 ApHv6PhREKTuJMR8Ej++k7jrPYpO2uDW5+SUOBwiJ3ys/N3DybvLV9F+cpGGlqek
 wEMlocsdzEumDqWs4kpk46uMpu5X/Xw2aRHELF6cXa/Sm7rntIH8AMx8+7ulmC5I
 HAhIJftbZ5CjnC59rg3/P+mcbUUG4YxDwt6GizEw8YMqPuoA3CeSJwWICWZNqC/V
 b8qd246FCNLCr/9YPYe9g0kXQxI4d4mR+qvP+bvbGMzI2DVCxhc3KmGii4LbBsLV
 E2H2w5G/1cPneXbrO0W1/XRJLF2huawZu9JDAqYulgJopZFuzPGRmzRJYIcZUxhI
 oD6ZGwSaON5pLs38oyaRXjyK/92tqn1T3xQ0RFqAnD/GVzrL0w1yTSMs3w1Gh/mC
 wkSrEPcO56FuYaxjMrhjMmwtE2KdMG5wGEG8FzpefMbPFfbfZw/NYmqGG5HK8pvs
 tVNUXzchnjDhItQQ6uRGzlrfL+lHpWmQik1r2WrF0bie6Ar+DQLLcqClzpZ19Hxh
 cXjb7D5RBLtW2dIo+r4rAaLn5DReHWHaP0eAdPjJgKqBxoHGFdAw/kz/upXguCWc
 PIJR82oWfVkPMo1oT2CNDczPr/amCTzi0twvN1/VDa1AYrXTbPz/6+FiuJXtRVNw
 M/zJv0ZLZqcmof/XrQ==
 =S0xp
 -----END PGP SIGNATURE-----

Merge tag 'v23.16' into debian/bookworm-backports

freedombox Debian release 23.16

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-08-31 06:49:55 -04:00
James Valleroy
d9a09f3266
Release v23.15~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-08-18 06:39:05 -04:00
James Valleroy
c866100dc0 freedombox Debian release 23.15
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmTa2akWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICMQcEAC86ENO/EvUsvL4DfqvAE87edA6
 BAdrSA+LK4Sv0mtjWOiHzGp+KMDhKzqM5qd2eXlg5EzZu3VVZvHduKSSNJw8epIB
 c4VFkaGT/Ynoz7n07h6Ir8KKwJ8+WZyypH6gPiIBs2BwxiIfnHC3t/K+zoE8mvlZ
 FqozQALcWX9HNtlBa+5NSZ2NGrxPwhoR/BihxHeUlpl8JrJRWKF+jzLVM5YNZTrt
 Z0cGKD4eVe9D3CPzd5iRLOzkM6nPj1m7CF2LHynhRJn0l7tR1R7Y0Na8QA+52YFj
 qGVOpbX4wFzM65BslQ+n7sxx36oLIbt98fuhWquakyQ+3SBeENc64ILO1VXjMbfN
 PF933ZIPt3WOnpjtmP3oaIrnjTus4duwjEco0vRlrmntXxLHbKQd0BOg9Yb9FI+j
 v4h59XoF6rgfmVB9JjeB38hBSRLC/JB3vJIwZ59vkxxM7V9+Q32YnzhonZyK+RQ5
 muHOlk2y+crw/VQo7FUQfHCT6WJ608UB+vrdHgeEa5Gw+irBeBv2V/TP5fsOAVqQ
 zn0zS3iEM2FpC2vgCmjk3tNuEym9oohikMg3LTMEDwgz6a+ntBtmkVlnDjrKCKHY
 BM6+Qw6KPwb0JwZHpeHglLmhFp3vk+fsQRdxBG3UWqcH1fu6IAjfpoFin5M2poJV
 1fvOV6Pud58fp277cw==
 =o8pW
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmTfShIWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOYVD/94TSjTSINlfDXJ7yny2rVvFWGT
 9OihFtA+UbBTCaTBt9rRAD2tlinToaXNSgps4MVVOwyxdXpTJFEsxAYImjbGHFTt
 dI4hswVoURzTM+p16Nefd+O1xxkox9+h32XluN95oeUFZZBBgQmRLVxtLfOMOENq
 mV8Op0zxSDvhDhcOHlesRSkKaoEMAFr8JmYKgEzgRoXDtukMrapWx9FVC14LolIa
 NbA/mGPqJfGWFMBGt8PH7L3RacC+vnu4yAbGvWL9J/L0jBFsq8515xNXsAq4vE3f
 ILwFNtdyyQmeErLEPK5RWbNHXd++V0wmszwDSjVf4gGmv2EHentil0Z/sUjlsQDn
 SfPXJH+lwGTQYm9OPsStxd+HTz6jdxcfCcwWZGsDviSI0M/Ruyjy90dUacDiwv4L
 +v9FyFiaerHGxqjCyzJV/pRg48dJbbWnqwly8Gm1NZZSSnvh+Ne/xnp0TAF6b8p4
 3gCQwOqfM96JEZDfxIKY31+a6NR2QKrU6M5cqLtdwRlgpKFON1HD7bJqSkMYZZ59
 tMkJtR6hmnX3/6dA7Rqfg6tT4djyW++EUz4ZAPz2nTqVdrBGcoNJwVY8lRtECeD6
 e7S3EiA/6dyX8oAFt3OwXfUeN4G5olE+Op4zQN81hhj39J/6fB4sldYdPVhOijDR
 7d2nsQnx3MprMQMXlw==
 =CJ4M
 -----END PGP SIGNATURE-----

Merge tag 'v23.15' into debian/bookworm-backports

freedombox Debian release 23.15

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-08-18 06:38:09 -04:00
James Valleroy
61d9fa1ff9
Release v23.14~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-08-03 06:12:31 -04:00
James Valleroy
3aac407176 freedombox Debian release 23.14
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmTIYzwWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICC8iEACchsBfp21W+EGiwRJwFjzU0yY+
 ETiTBdUm2V+g50YPc4MnwmnlB6mLSvzj363E2pz+NNpnpYxsa8y0le4dsFq4BF7w
 vBN7MwC14bMbacUsGUC3hACwkt3X1p0AU2Jb6Mhc6nr5O6l/LBenIv6AAQs2V4kX
 6NsdOgYs01vPht5TaLq+Y79h98gRh67DNgjltjX8gUlFNIZJgZIeJ3afS2AHe11U
 V19JqdC4Zla3U9XfHVZSuqqw8sF5vNKn9nD0cUAvQleeHtFTvBxPcMwyAAo93rtv
 y0DCIY9c6kEqK7oiOVW6+CyCWTMwEKo07xrdHQzSofroxMJHogo3/vkbKN6aIjNt
 LzYpronpBbLwi9wqb7jj3J7fIULVE0tJyYFQFT27LegExNbdqXd00ftCDXzoj2Rd
 V73ZdAwHc3SfDrrYTGy7QVv3p8R0olApNN9SmI7s9JhdSwyRaKAMLiuvrgW0XeJT
 pBs31twC5JHrjJn0+SLLXGNkz8r7U8QTzbfnerNiwG5MEDF2rszNTFr6CYFYStLD
 OhlYAznjqQTirmBgbp2RelPqE/dyX7U7X/XvHqYoPSo+yOP4YD597V0l+rAvOWX1
 QuX4Xb80fEW3qDXR0DOHSwT9fWOdK7lBxfxP+3cQR8OQWUnWo5JyhDIt6I2KGxzH
 ZXLwCxekcQRIW4fCLw==
 =Jx2D
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmTLfU8WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICOyQD/9AEkkWBJJSbxbeEPHQihQJ4PfP
 AHc72dAtbcO3A6GLPg2j+KzJYplfopKt92H7v/gZuVQJA/GEEIjH5scbRBbF/pmO
 /VtN3KyHBxaMiFdrt/eObwp01YZ/Ulozet3T4tEde9nVR5ejZTIUS+Rd6Hz/NjlS
 6h5SiEXOkJOPgnzg6DXvMOb/u9BbzQ4HrVXO593I6fdwEZOlvuNo6SI/FwdtcRFf
 Lz/0qqrpWFeHIKrpyF6WHPMBn2hEhG9bBlDfYD3XXzc7RuYQ4bojVz1878o9XEjO
 eHcSKoRE+hh2Ojj192BIPej4yuILfSIi7A/9cgnhXYvfysCPkMIBRf2cn/TOYGxa
 3zysNtcuaMLhAIUuAAMxMn69OcK7aBFPuDKhFhA4qHYxTJLJ6KSz00xxuAL6L1+2
 NfVNjoAc9cxZQlJDHtCsT2Sct+9Mez4LCWx/lCqaPLXS7rRbVibe0QNtBL1sk1Te
 Cf9JhiEMfiFWuqZJWuya9zLLBWXNrFTLgWP5Iqc8HtBjr07vh9NG8SBl9Ryh7WUs
 XQIzKmzu7rHZOm5507Tdx2ymXc8r0YRp0bja9HbIEUSOvu0uL6bfqeCvBhIgId+l
 DPJyYpl991KljQ0O+8cY8QDvCcX6vjkSSMQj/v4nIdW46vNhwbxu7O4OwxwPUjt8
 KI5PSlzlIZuI32/u1g==
 =dhE2
 -----END PGP SIGNATURE-----

Merge tag 'v23.14' into debian/bookworm-backports

freedombox Debian release 23.14

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-08-03 06:11:23 -04:00
James Valleroy
196122716f
Release v23.13~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-07-21 10:03:50 -04:00
James Valleroy
e81c4471c6 freedombox Debian release 23.13
-----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmS2escWHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICP5ZEACHTIoTawWoM6Q06p/tbA3B7Cv9
 /pSUHJbizMzdXfCi8w/HhZf1mZrQFw/nWg7RayaDEFeC4MrUMl6n/hnimH88CCsX
 maDmYGy3D3ew8F/9bH3k9NlOg3C2fX9KTxel4bQrqG36G/gitTAkL1zS+hfEFloz
 n3+M0BnqMSDKl1ClUkbFuq3haXVqCHhCK/IWnFk8Aqb4Qwt72MPSBYaIWcVdDLAt
 Vg2Dc1CVsxovF8Ndm3V/i80ZqaHUj1vjZJOKKqxYntvU7/QBpB32wG/rK/yZRKAC
 JohBpCFkPVe2VK+UMFvlvtJx+4G0gAodrhsUn8qEsLHeWzXSBHuVHp4024fEDpFg
 X/HUxGV5R2G57ixiMUb2sQPNYCcVLhEPpWF+MdPDARCiIKFtlvsnQyeR8ANowyc2
 mUDnRdm7ezfqROnqCtSh89YeSrNPOXpRinMnHswCNlTP8QBHM9Lz0NP+4vdCDO9w
 WVpIKdHzauoLWa+K2MihY1WDEP8yI8j2CpIQCCVKJTtWx4/V0ejtgE+M8h2UYw89
 isDOREUYrJep6OaPJ6it5uB4FvcK2IpSvBlO0epnB3CargDGIkM2AiKANYrrekAE
 +zmdQhh0+d85OZm1qRVgRSifsoD1kbMALZkP7xd00lerK6Uc5QqQRD7g7wan9WHY
 l/jymqsr6H0/Q65Tfg==
 =YsOg
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmS6jm4WHGp2YWxsZXJv
 eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICAzWD/4n9Zw9zwsIcagmPx5H9/MYO0Y4
 iNc77CqLsWOuUx6Fd67MGDYu5SjV6s46nsusRfXINc7+NmtdXrjDLmgCJDwJeSCE
 /LpU3Jbdo6oYdifzJB5kw31s+z1fdiIN2klrWt1j5hImveHqxJJJCI2RERozpt/3
 Dk6zpHHUunDt7vYvEdltlT+DctjsSmqlMBF7LHXfxj25X5bY9PBnqBvYDM0lfYtI
 Dz9LVKpcXQ9kG+eU2AOoZXmL3IWJGxRm+TzFWnflbGDyWJdwI3d1+Vy1FyVJKsjD
 dreZFYMK4TRkv53rRZLHezgIEaNmgagzT84TFOSHyMVUyEFbVPygR5Fi/kkn6Fk+
 y4FmiCnYoJUeeDGEYmL3fp0YBzEGIuA9gcpwCVf377TPLnV7zrdWWxyCEWF76bTp
 Dje+hY+zf4PFlxOP8S/ZRKzetWw+BuINC/J09rBTaGlw1LrXtaPKRLImiLANoCNx
 ZIM1sOKufBVTru0XqtHm747PkoiO42qUBNUFGR5viAsN7X9okPqbJfxdjQu0SUvm
 RdKL+lMgESS2MYr6MpcU4Gc+F3cLKp5viuPCIkWtCiNlCkyhx2F5eMLtkEmQBFpc
 UATwU9DMbJBoZGtl2yLVqEZ2sWFwLCsxCHQK6Cx8GLLxyzrAnthFQltjxqtXWoKF
 vsYLWlTo4KiTtaAS8w==
 =S3UF
 -----END PGP SIGNATURE-----

Merge tag 'v22.13' into debian/bookworm-backports

freedombox Debian release 23.13

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-07-21 09:55:54 -04:00
James Valleroy
674523d06f
Release v23.12~bpo12+1 to bookworm-backports
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2023-07-11 07:29:04 -04:00
1705 changed files with 142828 additions and 207390 deletions

View File

@ -7,7 +7,7 @@ USER root:root
ENV DEBIAN_FRONTEND=noninteractive
RUN echo "deb http://deb.debian.org/debian trixie-backports main" > /etc/apt/sources.list.d/backports.list; echo "deb-src http://deb.debian.org/debian trixie-backports main" >> /etc/apt/sources.list.d/backports.list
RUN echo "deb http://deb.debian.org/debian bookworm-backports main" > /etc/apt/sources.list.d/backports.list; echo "deb-src http://deb.debian.org/debian bookworm-backports main" >> /etc/apt/sources.list.d/backports.list
RUN apt-get update
@ -15,14 +15,14 @@ RUN apt-get update
RUN apt-get dist-upgrade -y
# Install freedombox package so that plint:plinth user/group are created etc.
RUN apt-get install -y freedombox/trixie-backports
RUN systemctl disable plinth.service
RUN apt-get install -y freedombox/bookworm-backports
RUN systemctl mask plinth.service
# Don't ask for the secret in first wizard
RUN rm -f /var/lib/plinth/firstboot-wizard-secret
# Dependencies of the freedombox Debian package
RUN apt-get build-dep -y freedombox/trixie-backports
RUN apt-get build-dep -y freedombox/bookworm-backports
# Build and test dependencies
RUN apt-get install -y \

View File

@ -14,9 +14,9 @@
- $GITLAB_USER_LOGIN == "weblate"
before_script:
- apt-get update
- apt-get -y install make
- make provision-dev
- make wait-while-first-setup
- sudo -u plinth ./run --develop > plinth.log 2>&1 &
- 'echo -e "Cmnd_Alias FREEDOMBOX_ACTION_DEV = /usr/share/plinth/actions/actions, `pwd`/actions/actions\nDefaults!FREEDOMBOX_ACTION_DEV closefrom_override\nplinth ALL=(ALL:ALL) NOPASSWD:SETENV : FREEDOMBOX_ACTION_DEV\n" > /etc/sudoers.d/01-freedombox-development'
- while ! grep -q "Setup thread finished" plinth.log; do sleep 1; echo -n .; done
script:
- FREDOMBOX_URL=https://localhost FREEDOMBOX_SSH_PORT=22 FREEDOMBOX_SAMBA_PORT=445 pytest -v --durations=10 --include-functional --splinter-headless --instafail --template=html1/index.html --report=functional-tests.html
artifacts:

2
.gitignore vendored
View File

@ -4,7 +4,7 @@
doc/manual/*/*.pdf
doc/manual/*/*.html
doc/manual/*/*.xml
doc/*.1
doc/plinth.1
doc/dev/_build
\#*
.#*

View File

@ -50,13 +50,16 @@ doc-tests:
run-functional-tests-stable:
extends: .run-functional-tests
extract-source:
extends: .provisioning-extract-source
build:
extends: .build-package
build-backports:
extends: .build-package
variables:
RELEASE: trixie-backports
RELEASE: bookworm-backports
build i386:
extends: .build-package-i386

View File

@ -0,0 +1,16 @@
#!/usr/bin/python3
# -*- mode: python -*-
# SPDX-License-Identifier: AGPL-3.0-or-later
"""Set required permissions for user "plinth" to run plinth in dev setup."""
import pathlib
content = '''
Cmnd_Alias FREEDOMBOX_ACTION_DEV = /usr/share/plinth/actions/actions, /freedombox/actions/actions
Defaults!FREEDOMBOX_ACTION_DEV closefrom_override
plinth ALL=(ALL:ALL) NOPASSWD:SETENV : FREEDOMBOX_ACTION_DEV
fbx ALL=(ALL:ALL) NOPASSWD : ALL
'''
sudoers_file = pathlib.Path('/etc/sudoers.d/01-freedombox-development')
sudoers_file.write_text(content)

View File

@ -1,9 +1,9 @@
# License to Copy FreedomBox Service (Plinth)
FreedomBox Service (Plinth) is Copyright 2011, 2012, 2013, 2014, 2015, 2016,
2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 FreedomBox Authors. See Git
log in the source repository for a full list of authors. It is distributed under
the GNU Affero General Public License, Version 3 or later. A copy of AGPLv3 is
2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 FreedomBox Authors. See Git log
in the source repository for a full list of authors. It is distributed under the
GNU Affero General Public License, Version 3 or later. A copy of AGPLv3 is
available [from the Free Software
Foundation](http://www.gnu.org/licenses/agpl.html).

View File

@ -66,7 +66,7 @@ development environment inside a systemd-nspawn container.
folder: (This step requires at least 16GB of free disk space)
```bash
host$ ./container start
host$ ./container up
```
1. To run unit tests:
@ -78,7 +78,7 @@ development environment inside a systemd-nspawn container.
1. To run unit and functional tests for an app:
```bash
host$ ./container run-tests --pytest-args -v --include-functional --splinter-headless freedombox/modules/{app-name}
host$ ./container run-tests --pytest-args -v --include-functional --splinter-headless plinth/modules/{app-name}
```
Drop the option `--splinter-headless` if you want to see the tests running
@ -97,43 +97,23 @@ development environment inside a systemd-nspawn container.
1. Using an environment variable.
```bash
host$ DISTRIBUTION=stable ./container start
host$ DISTRIBUTION=stable ./container up
host$ DISTRIBUTION=stable ./container ssh
```
```bash
host$ export DISTRIBUTION=stable
host$ ./container start
host$ ./container up
host$ ./container ssh
```
2. Using the `--distribution` option for each command.
```bash
host$ ./container start --distribution=stable
host$ ./container up --distribution=stable
host$ ./container ssh --distribution=stable
```
#### Using KVM Virtual Machine
The `./container` script, shipped with FreedomBox source code, can manage the
development environment inside a KVM-based virtual machine using libvirt. This
is an alternative to using containers described above (but the name of the
script is still 'container' even when managing virtual machines). Some hardware,
such as additional disks, can be better tested with virtual machine than with
containers.
Containers and a virtual machines of the same or different distribution all be
used simultaneously as they all use different disk images.
1. To use virtual machines instead of container, append the option
'--machine-type=vm' to all the ./container commands described above. For
example, to bring up a virtual machine instead of a container run:
```bash
host$ ./container start --machine-type=vm
```
#### Using after Setup
After logging into the container, the source code is available in `/freedombox`
@ -143,12 +123,12 @@ directory:
guest$ cd /freedombox
```
FreedomBox Service runs as plinth.service in the container. This service
restarts when it detects a change to the source code file. This provides a quick
feedback cycle during development. To watch service logs run:
Run the development version of FreedomBox Service in the container using the
following command. This command continuously deploys your code changes into the
container providing a quick feedback cycle during development.
```bash
guest$ sudo freedombox-logs
guest$ freedombox-develop
```
If you have changed any system configuration files during your development,
@ -156,17 +136,16 @@ you will need to run the following to install those files properly on to the
system and their changes to reflect properly.
```bash
guest$ sudo make build install ;
guest$ sudo systemctl restart plinth.service
guest$ sudo make build install
```
Note: This development container has automatic upgrades disabled by default.
#### Troubleshooting
* Sometimes `host$ ./container destroy && ./container start` doesn't work. In such
* Sometimes `host$ ./container destroy && ./container up` doesn't work. In such
cases, try to delete the hidden `.container` folder and then `host$
./container start`.
./container up`.
* Not all kinds of changes are automatically updated. Try `guest$ sudo mount -o
remount /freedombox`.
* I am getting an error that says `lo` is not managed by Network Manager
@ -178,7 +157,7 @@ Note: This development container has automatic upgrades disabled by default.
```bash
host$ sudo touch /etc/NetworkManager/conf.d/10-globally-managed-devices.conf
host$ sudo service network-manager restart
host$ ./container destroy && ./container start
host$ ./container destroy && ./container up
```
* File/directory not found errors when running tests can be fixed by clearing `__pycache__` directories.
@ -374,12 +353,13 @@ After logging into the virtual machine (VM), the source code is available in
vm$ cd /freedombox
```
FreedomBox Service runs as plinth.service in the virtual machine. This service
restarts when it detects a change to the source code file. This provides a quick
feedback cycle during development. To watch service logs run:
Run the development version of FreedomBox Service (Plinth) from your source
directory in the virtual machine using the following command. This command
continuously deploys your code changes into the virtual machine providing a
quick feedback cycle during development.
```bash
vm$ sudo freedombox-logs
vm$ freedombox-develop
```
If you have changed any system configuration files during your development,
@ -416,16 +396,15 @@ for more details.
### Translating literals (contributing translations)
The easiest way to start translating is with your browser, by using
[Weblate](https://hosted.weblate.org/projects/freedombox/freedombox/).
[Weblate](https://hosted.weblate.org/projects/freedombox/plinth/).
Your changes will automatically get pushed to the code repository.
Alternatively, you can directly edit the `.po` file in your language directory
`freedombox/freedombox/locale/` and create a pull request (see
[CONTRIBUTING.md](CONTRIBUTING.md)). In that case, consider introducing yourself
on #freedombox IRC (irc.debian.org), because some work may have been done
already on the [Debian translators discussion
lists](https://www.debian.org/MailingLists/subscribe) or the Weblate
localization platform.
`Plinth/plinth/locale/` and create a pull request (see [CONTRIBUTING.md](CONTRIBUTING.md)).
In that case, consider introducing yourself on #freedombox IRC (irc.debian.org),
because some work may have been done already on the [Debian translators
discussion lists](https://www.debian.org/MailingLists/subscribe)
or the Weblate localization platform.
For more information on translations: https://wiki.debian.org/FreedomBox/Translate
@ -450,16 +429,16 @@ options. See pytest documentation for further filter options.
```bash
# Run tests in a directory
guest$ py.test-3 freedombox/tests
guest$ py.test-3 plinth/tests
# Run tests in a module
guest$ py.test-3 freedombox/tests/test_actions.py
guest$ py.test-3 plinth/tests/test_actions.py
# Run tests of one class in test module
guest$ py.test-3 freedombox/tests/test_actions.py::TestActions
guest$ py.test-3 plinth/tests/test_actions.py::TestActions
# Run one test in a class or module
guest$ py.test-3 freedombox/tests/test_actions.py::TestActions::test_is_package_manager_busy
guest$ py.test-3 plinth/tests/test_actions.py::TestActions::test_is_package_manager_busy
```
Some tests are skipped by default:
@ -490,13 +469,13 @@ guest$ sudo EXTENDED_TESTING=1 py.test-3
To run the coverage tool in the container/VM:
```bash
guest$ py.test-3 --cov=freedombox
guest$ py.test-3 --cov=plinth
```
To collect HTML report:
```bash
guest$ py.test-3 --cov=freedombox --cov-report=html
guest$ py.test-3 --cov=plinth --cov-report=html
```
Invoking this command generates a HTML report to the `htmlcov` directory.
@ -520,7 +499,7 @@ executed (red).
Inside the container run
```bash
guest$ cd /freedombox ; sudo freedombox/tests/functional/install.sh
guest$ cd /freedombox ; sudo plinth/tests/functional/install.sh
```
##### For running tests inside the VM
@ -566,14 +545,13 @@ on the guest.
#### Setup FreedomBox Service for tests
Via FreedomBox web interface, create a new user as follows:
Via Plinth, create a new user as follows:
* Username: tester
* Password: testingtesting
This step is optional if a fresh install of FreedomBox is being tested.
Functional tests will create the required user using FreedomBox's first boot
process.
This step is optional if a fresh install of Plinth is being tested. Functional
tests will create the required user using FreedomBox's first boot process.
#### Running Functional Tests
@ -622,7 +600,7 @@ In the VM or container, run the following command:
```
guest$ cd /freedombox
guest$ sudo make build install
guest$ freedombox/tests/functional/enable-all-apps
guest$ plinth/tests/functional/enable-all-apps
```
[back to index](#hacking)

View File

@ -30,12 +30,12 @@ FreedomBox [Manual](https://wiki.debian.org/FreedomBox/Manual/)'s
2. Run FreedomBox Service (Plinth):
```
$ sudo systemctl start plinth.service
$ sudo plinth
```
3. Access FreedomBox UI:
UI should be accessible at http://localhost:8000/freedombox
UI should be accessible at http://localhost:8000/plinth
If you are installing FreedomBox Service (Plinth) for development purposes, see
HACKING.md instead.

View File

@ -20,9 +20,7 @@ DISABLED_APPS_TO_REMOVE := \
repro \
tahoe \
mldonkey \
i2p \
ttrss \
sso
i2p
APP_FILES_TO_REMOVE := $(foreach app,$(DISABLED_APPS_TO_REMOVE),$(ENABLED_APPS_PATH)/$(app))
@ -39,7 +37,6 @@ DIRECTORIES_TO_CREATE := \
STATIC_FILES_DIRECTORY := $(DESTDIR)/usr/share/plinth/static
BIN_DIR := $(DESTDIR)/usr/bin
LIB_DIR := $(DESTDIR)/usr/lib
FIND_ARGS := \
-not -iname "*.log" \
@ -58,14 +55,10 @@ FIND_ARGS := \
ROOT_DATA_FILES := $(shell find data -type f $(FIND_ARGS))
MODULE_DATA_FILES := $(shell find $(wildcard freedombox/modules/*/data) -type f $(FIND_ARGS))
MODULE_DATA_FILES := $(shell find $(wildcard plinth/modules/*/data) -type f $(FIND_ARGS))
update-translations:
$(DJANGO_ADMIN) makemessages --all --domain django --keep-pot \
--verbosity=1 --ignore conftest.py --ignore doc --ignore build \
--ignore htmlcov --ignore screenshots --ignore debian --ignore \
actions --ignore preseed --ignore static --ignore data \
--settings freedombox.settings --pythonpath .
cd plinth; $(DJANGO_ADMIN) makemessages --all --domain django --keep-pot --verbosity=1
configure:
# Nothing to do
@ -78,7 +71,7 @@ build:
$(MAKE) -C doc -j 8
# Build .whl package
rm -f dist/freedombox-*.whl
rm -f dist/plinth-*.whl
$(PYTHON) -m build --no-isolation --skip-dependency-check --wheel
install:
@ -96,18 +89,18 @@ install:
# Python package
temp=$$(mktemp -d) && \
lib_dir=$$($(PYTHON) -c 'import sysconfig; print(sysconfig.get_paths(scheme="deb_system")["purelib"])') && \
$(PYTHON) -m pip install dist/freedombox-*.whl --break-system-packages \
$(PYTHON) -m pip install dist/plinth-*.whl --break-system-packages \
--no-deps --no-compile --no-warn-script-location \
--ignore-installed --target=$${temp} && \
$(INSTALL) -d $(DESTDIR)$${lib_dir} && \
rm -rf $(DESTDIR)$${lib_dir}/freedombox $(DESTDIR)$${lib_dir}/freedombox*.dist-info && \
mv $${temp}/freedombox $${temp}/freedombox*.dist-info $(DESTDIR)$${lib_dir} && \
rm -f $(DESTDIR)$${lib_dir}/freedombox*.dist-info/licenses/COPYING.md && \
rm -f $(DESTDIR)$${lib_dir}/freedombox*.dist-info/direct_url.json && \
$(INSTALL) -D -t $(BIN_DIR) bin/freedombox
$(INSTALL) -D -t $(LIB_DIR)/freedombox bin/freedombox-privileged
$(INSTALL) -D -t $(BIN_DIR) bin/freedombox-cmd
$(INSTALL) -D -t $(BIN_DIR) bin/freedombox-change-password
rm -rf $(DESTDIR)$${lib_dir}/plinth $(DESTDIR)$${lib_dir}/plinth*.dist-info && \
mv $${temp}/plinth $${temp}/plinth*.dist-info $(DESTDIR)$${lib_dir} && \
rm -f $(DESTDIR)$${lib_dir}/plinth*.dist-info/COPYING.md && \
rm -f $(DESTDIR)$${lib_dir}/plinth*.dist-info/direct_url.json && \
$(INSTALL) -D -t $(BIN_DIR) bin/plinth
# Actions
$(INSTALL) -D -t $(DESTDIR)/usr/share/plinth/actions actions/actions
# Static web server files
rm -rf $(STATIC_FILES_DIRECTORY)
@ -121,7 +114,7 @@ install:
cp $(CP_ARGS) $${file} $${target} ; \
done
for file in $(MODULE_DATA_FILES) ; do \
target=$$(dirname $(DESTDIR)$$(echo $${file} | sed -e 's|^freedombox/modules/[^/]*/data||')) ; \
target=$$(dirname $(DESTDIR)$$(echo $${file} | sed -e 's|^plinth/modules/[^/]*/data||')) ; \
$(INSTALL) --directory --mode=755 $${target} ; \
cp $(CP_ARGS) $${file} $${target} ; \
done
@ -137,12 +130,12 @@ check-tests:
# Tests with coverage report
check-tests-cov:
$(PYTHON) -m pytest $(PYTEST_ARGS) --cov=freedombox \
$(PYTHON) -m pytest $(PYTEST_ARGS) --cov=plinth \
--cov-report=html:./htmlcov --cov-report=term
# Code quality checking using flake8
check-code:
$(PYTHON) -m flake8 freedombox container
$(PYTHON) -m flake8 plinth actions/actions container
# Static type checking using mypy
check-type:
@ -154,25 +147,8 @@ check-doc:
clean:
make -C doc clean
rm -rf Freedombox.egg-info
find freedombox/locale -name *.mo -delete
define DEVELOP_SERVICE_CONF
[Service]
Environment=FREEDOMBOX_DEVELOP=1
Environment=PYTHONPATH=/freedombox/
endef
export DEVELOP_SERVICE_CONF
define DEVELOP_LOGS_SCRIPT
#!/usr/bin/bash
set -e
set -x
journalctl --follow --unit=plinth.service --unit=freedombox-privileged.service
endef
export DEVELOP_LOGS_SCRIPT
rm -rf Plinth.egg-info
find plinth/locale -name *.mo -delete
# Run basic setup for a developer environment (VM or container)
provision-dev:
@ -183,29 +159,9 @@ provision-dev:
# Install latest code over .deb
$(MAKE) build install
# Configure privileged and web daemon for development setup
mkdir -p /etc/systemd/system/freedombox-privileged.service.d/
echo "$$DEVELOP_SERVICE_CONF" > /etc/systemd/system/freedombox-privileged.service.d/develop.conf
mkdir -p /etc/systemd/system/plinth.service.d/
echo "$$DEVELOP_SERVICE_CONF" > /etc/systemd/system/plinth.service.d/develop.conf
# Create a command to easily watch service logs
echo "$$DEVELOP_LOGS_SCRIPT" > /usr/bin/freedombox-logs
chmod 755 /usr/bin/freedombox-logs
# Reload newer systemd units, ignore failure
-systemctl daemon-reload
# Enable privileged daemon
-systemctl stop freedombox-privileged.service
-test -d /run/systemd/system && \
systemctl enable --now freedombox-privileged.socket
# Enable and restart plinth service if it is running
-systemctl enable plinth.service
-systemctl restart plinth.service
# Stop any ongoing upgrade, ignore failure
-killall -9 unattended-upgr
@ -230,12 +186,6 @@ provision-dev:
DEBIAN_FRONTEND=noninteractive apt-get install --yes ncurses-term \
sshpass bash-completion
wait-while-first-setup:
while [ x$$(curl -k https://localhost/freedombox/status/ 2> /dev/null | \
json_pp 2> /dev/null | grep 'is_first_setup_running' | \
tr -d '[:space:]' | cut -d':' -f2 ) != 'xfalse' ] ; do \
sleep 1; echo -n .; done
.PHONY: \
build \
check \
@ -248,5 +198,4 @@ wait-while-first-setup:
configure \
install \
provision \
update-translations \
wait-while-first-setup
update-translations

View File

@ -62,7 +62,7 @@ See the [HACKING.md](https://salsa.debian.org/freedombox-team/freedombox/blob/ma
# Localization
[![Translation status](https://hosted.weblate.org/widget/freedombox/horizontal-auto.svg)](https://hosted.weblate.org/engage/freedombox/)
[![Translation status](https://hosted.weblate.org/widgets/freedombox/-/287x66-white.png)](https://hosted.weblate.org/engage/freedombox/?utm_source=widget)
# License

31
Vagrantfile vendored
View File

@ -6,33 +6,42 @@ require 'etc'
Vagrant.configure(2) do |config|
config.vm.box = "freedombox/freedombox-testing-dev"
config.vm.network "public_network"
config.vm.network "forwarded_port", guest: 443, host: 4430
config.vm.network "forwarded_port", guest: 445, host: 4450
config.vm.synced_folder ".", "/freedombox", owner: "plinth", group: "plinth"
config.vm.provider "virtualbox" do |vb|
vb.cpus = Etc.nprocessors
vb.memory = 2048
vb.linked_clone = true
vb.customize ["modifyvm", :id, "--firmware", "efi"]
end
config.vm.provision "shell", run: 'always', inline: <<-SHELL
# Disable automatic upgrades
echo -e 'APT::Periodic::Update-Package-Lists "0";\nAPT::Periodic::Unattended-Upgrade "0";' > //etc/apt/apt.conf.d/20auto-upgrades
# Do not run system plinth
systemctl stop plinth
systemctl disable plinth
SHELL
config.vm.provision "shell", inline: <<-SHELL
cd /freedombox/
make provision-dev
SHELL
config.vm.provision "tests", run: "never", type: "shell", path: "freedombox/tests/functional/install.sh"
config.vm.post_up_message = "FreedomBox virtual machine is ready
for development. To get the IP address:
$ vagrant ssh
$ ip address show
FreedomBox interface will be available at https://<ip address>/freedombox
(with an invalid SSL certificate). To watch logs:
echo 'alias freedombox-develop="cd /freedombox; sudo -u plinth /freedombox/run --develop"' >> /home/vagrant/.bashrc
SHELL
config.vm.provision "tests", run: "never", type: "shell", path: "plinth/tests/functional/install.sh"
config.vm.post_up_message = "FreedomBox virtual machine is ready
for development. You can run the development version of Plinth using
the following command.
$ vagrant ssh
$ sudo freedombox-logs
$ freedombox-develop
Plinth will be available at https://localhost:4430/plinth (with
an invalid SSL certificate).
"
config.trigger.after [:up, :resume, :reload] do |trigger|
trigger.info = "Set plinth user permissions for development environment"
trigger.run_remote = {
path: ".vagrant-scripts/plinth-user-permissions.py"
}
end
config.vm.boot_timeout=1200
end

7
actions/actions Executable file
View File

@ -0,0 +1,7 @@
#!/usr/bin/python3
# SPDX-License-Identifier: AGPL-3.0-or-later
from plinth.actions import privileged_main
if __name__ == '__main__':
privileged_main()

View File

@ -1,61 +0,0 @@
#!/usr/bin/python3
# SPDX-License-Identifier: AGPL-3.0-or-later
"""
Utility to change user password in FreedomBox's Django database.
Usage:
$ freedombox-change-password <username>
"""
import argparse
import getpass
import sys
import freedombox.web_framework
from freedombox.modules.users import privileged
def main():
"""Ask for new password, setup Django and update a user's password."""
try:
freedombox.web_framework.init()
except Exception:
_print('Error initializing Django.')
return
parser = argparse.ArgumentParser()
parser.add_argument('username',
help='Username of the account to change password for')
args = parser.parse_args()
username = args.username
password = getpass.getpass('Enter new password: ')
try:
_change_password(username, password)
privileged._set_user_password(username, password)
privileged._set_samba_user(username, password)
_print('Password updated in web interface, LDAP, and samba databases.')
except Exception as exception:
_print('Error setting password:', str(exception))
def _print(*args, **kwargs):
"""Write to stderr."""
print(*args, **kwargs, file=sys.stderr)
def _change_password(username: str, password: str):
"""Update the password in SQLite database file."""
from django.contrib.auth.models import User
try:
user = User.objects.get(username=username)
user.set_password(password)
user.save()
except User.DoesNotExist:
_print('User account does not exist:', username)
raise
if __name__ == '__main__':
main()

View File

@ -1,6 +0,0 @@
#!/usr/bin/python3
# SPDX-License-Identifier: AGPL-3.0-or-later
import freedombox.privileged_daemon
freedombox.privileged_daemon.client_main()

View File

@ -1,6 +0,0 @@
#!/usr/bin/python3
# SPDX-License-Identifier: AGPL-3.0-or-later
import freedombox.privileged_daemon
freedombox.privileged_daemon.main()

View File

@ -1,6 +1,6 @@
#!/usr/bin/python3
# SPDX-License-Identifier: AGPL-3.0-or-later
import freedombox.__main__
import plinth.__main__
freedombox.__main__.main()
plinth.__main__.main()

168
container
View File

@ -160,10 +160,8 @@ from typing import Callable
from urllib.request import urlopen
URLS_AMD64 = {
'oldstable': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
'amd64/bookworm/freedombox-bookworm_all-amd64.img.xz',
'stable': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
'amd64/trixie/freedombox-trixie_all-amd64.img.xz',
'amd64/bookworm/freedombox-bookworm_all-amd64.img.xz',
'testing': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
'amd64/testing/freedombox-testing_dev_all-amd64.img.xz',
'unstable': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
@ -171,10 +169,8 @@ URLS_AMD64 = {
}
URLS_ARM64 = {
'oldstable': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
'arm64/bookworm/freedombox-bookworm_all-arm64.img.xz',
'stable': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
'arm64/trixie/freedombox-trixie_all-arm64.img.xz',
'arm64/bookworm/freedombox-bookworm_all-arm64.img.xz',
'testing': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
'arm64/testing/freedombox-testing_dev_all-arm64.img.xz',
'unstable': 'https://ftp.freedombox.org/pub/freedombox/hardware/'
@ -196,6 +192,9 @@ cd /freedombox/
sudo apt-get -y install make
sudo make provision-dev
echo 'alias freedombox-develop="cd /freedombox; sudo -u plinth /freedombox/run --develop"' \
>> /home/fbx/.bashrc
# Make some pytest related files and directories writable to the fbx user
sudo touch geckodriver.log
sudo chmod a+rw geckodriver.log
@ -222,24 +221,41 @@ mount -o remount /freedombox
if [[ "{distribution}" == "stable" && ! -e $BACKPORTS_SOURCES_LIST ]]
then
echo "> In machine: Enable backports"
/freedombox/bin/freedombox-cmd upgrades activate_backports --no-args
/freedombox/actions/actions upgrades activate_backports --no-args
fi
echo "> In machine: Upgrade packages"
apt-get update
apt-mark hold freedombox freedombox-doc-en freedombox-doc-es
DEBIAN_FRONTEND=noninteractive apt-get -yq --with-new-pkgs upgrade
# Install requirements for tests if not already installed as root
if ! [[ -e /usr/local/bin/geckodriver ]]
then
/freedombox/freedombox/tests/functional/install.sh
/freedombox/plinth/tests/functional/install.sh
fi
# Wait for the server to start if functional tests are requested
# Run the plinth server if functional tests are requested
if [[ "{pytest_command}" =~ "--include-functional" ]]
then
make -C /freedombox wait-while-first-setup
is_plinth_running=0
ps -ax -o cmd | grep -q "^sudo -u plinth /freedombox/run" && \
is_plinth_running=1
ps -ax -o cmd | grep -q "^/usr/bin/python3 /usr/bin/plinth" && \
is_plinth_running=1
if [[ $is_plinth_running -eq 1 ]]
then
echo "> In machine: Plinth is already running"
else
echo -n "> In machine: Starting plinth ... "
sudo -u plinth /freedombox/run --develop > plinth.log 2>&1 &
while ! grep -q "Setup finished" plinth.log
do
sleep 1
echo -n .
done
echo
fi
if [[ "{pytest_command}" != *"--splinter-headless"* ]]
then
@ -277,7 +293,7 @@ LIBVIRT_DOMAIN_XML_TEMPLATE = '''<domain type="kvm">
<access mode="shared"/>
</memoryBacking>
<vcpu placement="static">{cpus}</vcpu>
<os {firmware}>
<os>
<type arch="x86_64" machine="pc-q35-7.2">hvm</type>
<boot dev="hd"/>
</os>
@ -475,18 +491,14 @@ def parse_arguments() -> argparse.Namespace:
help='Type of the machine, container to virtual machine, to run '
'operation on')
# Start
subparser = subparsers.add_parser('start', help='Bring up the container',
formatter_class=formatter_class,
aliases=['up'])
# Up
subparser = subparsers.add_parser('up', help='Bring up the container',
formatter_class=formatter_class)
_add_common_args(subparser)
subparser.add_argument('--image-size', default='16G',
help='Disk image size to resize to after download')
subparser.add_argument('--hkp-client', choices=('gpg', 'wget'),
default='gpg', help='Client for key retrieval')
subparser.add_argument(
'--skip-install', action='store_true',
help='Skip running make provision-dev in the container')
# Print IP address
subparser = subparsers.add_parser(
@ -510,8 +522,7 @@ def parse_arguments() -> argparse.Namespace:
# Stop
subparser = subparsers.add_parser('stop', help='Stop the container',
formatter_class=formatter_class,
aliases=['down'])
formatter_class=formatter_class)
_add_common_args(subparser)
# Destroy
@ -689,27 +700,10 @@ def _verify_signature(hkp_client: str, data_file: pathlib.Path,
def _extract_image(compressed_file: pathlib.Path):
"""Extract the image file."""
# Strip the .xz extension, then replace .img with .raw
decompressed_file = compressed_file.with_suffix('').with_suffix('.raw')
older_image = compressed_file.with_suffix('')
decompressed_file = compressed_file.with_suffix('')
if decompressed_file.exists():
return decompressed_file
# Rename older image and its corresponding state files.
if older_image.exists():
logger.info('Renaming .img file to .raw')
older_image.rename(decompressed_file)
for ext in ['.setup', '.provisioned']:
old_state = older_image.with_suffix(older_image.suffix + ext)
new_state = decompressed_file.with_suffix(
decompressed_file.suffix + ext)
if old_state.exists():
old_state.rename(new_state)
return decompressed_file
logger.info('Decompressing file %s', compressed_file)
partial_file = compressed_file.with_suffix('.partial')
with partial_file.open('w', encoding='utf-8') as file_handle:
@ -732,8 +726,7 @@ def _get_compressed_image_path(distribution: str) -> pathlib.Path:
def _get_image_file(distribution: str) -> pathlib.Path:
"""Return the path of the image file."""
compressed_image = _get_compressed_image_path(distribution)
# Strip the .xz extension, then replace .img with .raw
return compressed_image.with_suffix('').with_suffix('.raw')
return compressed_image.with_suffix('')
def _get_project_folder() -> pathlib.Path:
@ -784,8 +777,7 @@ def _get_partition_info(image_file: pathlib.Path) -> tuple[str, str]:
return partition_table_type, last_partition_number
def _resize_disk_image(image_file: pathlib.Path, new_size: str,
distribution: str):
def _resize_disk_image(image_file: pathlib.Path, new_size: str):
"""Resize the disk image if has not already been."""
if new_size[-1] != 'G':
raise ValueError(f'Invalid size: {new_size}')
@ -828,11 +820,10 @@ def _resize_disk_image(image_file: pathlib.Path, new_size: str,
with tempfile.TemporaryDirectory(
dir=_get_work_directory().resolve()) as mount_point:
subprocess.run(['sudo', 'mount', partition, mount_point], check=True)
time.sleep(2) # Mount may trigger some re-balancing
subprocess.run(
['sudo', 'btrfs', 'filesystem', 'resize', 'max', mount_point],
check=True, stdout=subprocess.DEVNULL)
_update_fsid(mount_point, partition, old_fsid, new_fsid, distribution)
_update_fsid(mount_point, partition, old_fsid, new_fsid)
subprocess.run(['sudo', 'umount', mount_point], check=True)
subprocess.run(
@ -850,26 +841,17 @@ def _get_fsid(partition: str) -> str:
def _update_fsid(mount_point: str, partition: str, old_fsid: str,
new_fsid: str, distribution: str):
new_fsid: str):
"""After changing btrfs fsid, run grub-install to keep image bootable."""
is_efi = (platform.machine() in ('aarch64', 'arm64')
or distribution != 'oldstable')
# Guess the loopback device for the filesystem
matches = re.match(r'^/dev/mapper/loop(\d+)p(\d+)$', partition)
matches = re.match(r'^/dev/mapper/loop(\d+)p\d+$', partition)
assert matches
loop_device = f'/dev/loop{matches[1]}'
if is_efi:
efi_device = f'/dev/mapper/loop{matches[1]}p{int(matches[2]) - 1}'
# Mount /dev, /proc and run grub commands in chroot
grub_args = []
if platform.machine() in ('aarch64', 'arm64'):
grub_args += ['--no-nvram']
elif distribution != 'oldstable':
grub_args += [
'--target=x86_64-efi', '--no-nvram', '--uefi-secure-boot'
]
subprocess.run(
['sudo', 'mount', '-o', 'bind', '/dev/', f'{mount_point}/dev'],
@ -877,11 +859,6 @@ def _update_fsid(mount_point: str, partition: str, old_fsid: str,
subprocess.run(
['sudo', 'mount', '-o', 'bind', '/proc/', f'{mount_point}/proc'],
check=True)
if is_efi:
subprocess.run(
['sudo', 'mount', efi_device, f'{mount_point}/boot/efi'],
check=True)
subprocess.run(['sudo', 'chroot', mount_point, 'update-grub'], check=True)
subprocess.run(
['sudo', 'chroot', mount_point, 'grub-install', loop_device] +
@ -890,10 +867,6 @@ def _update_fsid(mount_point: str, partition: str, old_fsid: str,
'sudo', 'chroot', mount_point, 'sed', '-ie',
f's|UUID={old_fsid}|UUID={new_fsid}|', '/etc/fstab'
], check=True)
if is_efi:
subprocess.run(['sudo', 'umount', f'{mount_point}/boot/efi'],
check=True)
subprocess.run(['sudo', 'umount', f'{mount_point}/proc'], check=True)
subprocess.run(['sudo', 'umount', f'{mount_point}/dev'], check=True)
@ -930,7 +903,11 @@ def _setup_users(image_file: pathlib.Path):
str(gid), 'plinth'], stdout=subprocess.DEVNULL)
logger.info('In image: Setting up sudo for users "fbx" and "plinth"')
sudo_config = 'fbx ALL=(ALL:ALL) NOPASSWD : ALL\n'
sudo_config = 'Cmnd_Alias FREEDOMBOX_ACTION_DEV = /usr/share/plinth/' \
'actions/actions, /freedombox/actions/actions\n' \
'Defaults!FREEDOMBOX_ACTION_DEV closefrom_override\n' \
'plinth ALL=(ALL:ALL) NOPASSWD:SETENV : FREEDOMBOX_ACTION_DEV\n' \
'fbx ALL=(ALL:ALL) NOPASSWD : ALL\n'
_runc(image_file, ['tee', '/etc/sudoers.d/01-freedombox-development'],
input=sudo_config.encode(), stdout=subprocess.DEVNULL)
@ -967,7 +944,7 @@ def _setup_ssh(image_file: pathlib.Path):
_runc(image_file, ['chown', 'fbx:fbx', '/home/fbx/.ssh/authorized_keys'])
def _setup_image(image_file: pathlib.Path, skip_install: bool = False):
def _setup_image(image_file: pathlib.Path):
"""Prepare the image for execution."""
setup_file = image_file.with_suffix(image_file.suffix + '.setup')
if setup_file.exists():
@ -979,10 +956,9 @@ def _setup_image(image_file: pathlib.Path, skip_install: bool = False):
_runc(image_file, ['tee', '/etc/apt/apt.conf.d/20auto-upgrades'],
input=contents.encode())
if not skip_install:
logger.info('In image: Disabling FreedomBox service')
_runc(image_file, ['systemctl', 'disable', 'plinth'],
stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
logger.info('In image: Disabling FreedomBox service')
_runc(image_file, ['systemctl', 'disable', 'plinth'],
stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
logger.info('In image: Creating virtiofs mount at /freedombox')
mount = '''[Unit]
@ -1040,19 +1016,15 @@ def _is_provisioned(distribution: str) -> bool:
return provision_file.exists()
def _provision(image_file: pathlib.Path, machine_type: str, distribution: str,
skip_install: bool = False):
def _provision(image_file: pathlib.Path, machine_type: str, distribution: str):
"""Run app setup inside the container."""
if _is_provisioned(distribution):
return
if skip_install:
logger.info('Skipping provision step (--skip-install)')
else:
machine = Machine.get_instance(machine_type, distribution)
ssh_command = machine.get_ssh_command()
subprocess.run(ssh_command + ['bash'], check=True,
input=PROVISION_SCRIPT.encode())
machine = Machine.get_instance(machine_type, distribution)
ssh_command = machine.get_ssh_command()
subprocess.run(ssh_command + ['bash'], check=True,
input=PROVISION_SCRIPT.encode())
provision_file = image_file.with_suffix(image_file.suffix + '.provisioned')
provision_file.touch()
@ -1082,7 +1054,7 @@ Folder overlay : (host, read-only){project_folder}
SSH easily : {script} ssh {options}
Run tests : {script} run-tests {options} [ --pytest-args ... ]
Watch FreedomBox logs : sudo freedombox-logs
Run FreedomBox inside : freedombox-develop
Web access : https://{ip_address}/
Ports access : Any port on {ip_address}
@ -1091,7 +1063,7 @@ Terminal login : sudo machinectl login fbx-{distribution}
Open a root shell : sudo machinectl shell fbx-{distribution}
Shutdown : {script} stop {options}
Destroy : {script} destroy {options}
Reset : {script} destroy {options}; {script} start {options}'''
Reset : {script} destroy {options}; {script} up {options}'''
logger.info(message)
@ -1355,8 +1327,9 @@ VirtualEthernet=yes
if result.returncode:
raise Exception(f'Image file {image_link} is not a symlink.')
# May be linked to wrong place (such as old .img file)
subprocess.run(['sudo', 'rm', '--force', str(image_link)], check=False)
subprocess.run(['sudo', 'rm', '--force',
str(image_link)], check=False)
subprocess.run([
'sudo', 'ln', '--symbolic',
str(image_file.resolve()),
@ -1384,15 +1357,12 @@ class VM(Machine):
pass
qcow_image = self._create_qcow_image()
firmware = 'firmware="efi"' if self.distribution != 'oldstable' else ''
domain_xml = LIBVIRT_DOMAIN_XML_TEMPLATE.format(
domain_name=self.machine_name, memory_mib='2048', cpus='4',
firmware=firmware, image_file=qcow_image,
source_dir=_get_project_folder())
image_file=qcow_image, source_dir=_get_project_folder())
with tempfile.NamedTemporaryFile() as file_handle:
file_handle.write(domain_xml.encode())
file_handle.flush()
logger.info('Running `virsh define %s`', file_handle.name)
self._virsh(['define', file_handle.name],
stdout=subprocess.DEVNULL)
@ -1420,7 +1390,7 @@ class VM(Machine):
logger.info('Running `virsh destroy %s`', self.machine_name)
try:
self._virsh(['undefine', '--nvram', self.machine_name],
self._virsh(['undefine', self.machine_name],
stdout=subprocess.DEVNULL)
except subprocess.CalledProcessError:
pass
@ -1429,7 +1399,7 @@ class VM(Machine):
"""Remove all traces of the VM from the host."""
logger.info('Running `virsh undefine %s`', self.machine_name)
try:
self._virsh(['undefine', '--nvram', self.machine_name],
self._virsh(['undefine', self.machine_name],
stdout=subprocess.DEVNULL)
except subprocess.CalledProcessError:
pass
@ -1488,7 +1458,7 @@ class VM(Machine):
qcow_image.unlink(missing_ok=True)
def subcommand_start(arguments: argparse.Namespace):
def subcommand_up(arguments: argparse.Namespace):
"""Download, setup and bring up the container."""
machine = Machine.get_instance(arguments.machine_type,
arguments.distribution)
@ -1500,13 +1470,11 @@ def subcommand_start(arguments: argparse.Namespace):
_verify_dependencies()
image_file = _download_disk_image(arguments.distribution,
arguments.hkp_client)
_resize_disk_image(image_file, arguments.image_size,
arguments.distribution)
_setup_image(image_file, arguments.skip_install)
_resize_disk_image(image_file, arguments.image_size)
_setup_image(image_file)
machine.setup()
machine.launch()
_provision(image_file, arguments.machine_type, arguments.distribution,
arguments.skip_install)
_provision(image_file, arguments.machine_type, arguments.distribution)
_print_banner(arguments.machine_type, arguments.distribution)
@ -1593,13 +1561,7 @@ def main():
logging.basicConfig(level='INFO', format='> %(message)s')
arguments = parse_arguments()
aliases = {
'up': 'start',
'down': 'stop',
}
subcommand: str = arguments.subcommand.replace('-', '_')
subcommand = aliases.get(subcommand, subcommand)
subcommand = arguments.subcommand.replace('-', '_')
subcommand_method = globals()['subcommand_' + subcommand]
subcommand_method(arguments)

View File

@ -16,14 +16,8 @@
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
# Automatically obtained certificates from Let's Encrypt
<IfFile /etc/letsencrypt/live/$domain/privkey.pem>
SSLCertificateFile /etc/letsencrypt/live/$domain/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/$domain/privkey.pem
</IfFile>
<IfFile !/etc/letsencrypt/live/$domain/privkey.pem>
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
</IfFile>
SSLCertificateFile /etc/letsencrypt/live/$domain/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/$domain/privkey.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
@ -31,19 +25,6 @@
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
<IfFile /etc/apache2/includes/all-domains-include-freedombox.conf>
Include includes/all-domains-include-freedombox.conf
</IfFile>
<IfFile /etc/apache2/includes/all-domains-include.conf>
Include includes/all-domains-include.conf
</IfFile>
<IfFile /etc/apache2/includes/$domain-include-freedombox.conf>
Include includes/$domain-include-freedombox.conf
</IfFile>
<IfFile /etc/apache2/includes/$domain-include.conf>
Include includes/$domain-include.conf
</IfFile>
</VirtualHost>
</IfModule>
</Macro>

View File

@ -12,7 +12,6 @@
# Don't redirect for onion sites as it is not needed and leads to
# unnecessary warning.
RewriteCond %{HTTP_HOST} !^.*\.onion$ [NC]
RewriteCond %{REQUEST_URI} !^/freedombox/apache/discover-idp/$ [NC]
ReWriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</LocationMatch>

View File

@ -39,16 +39,56 @@
</If>
##
## Redirect traffic on home to /freedombox as part of turning the machine into
## FreedomBox server. FreedomBox then acts as a portal to reach all other
## services.
## Redirect traffic on home to /plinth as part of turning the machine
## into FreedomBox server. Plinth then acts as a portal to reach all
## other services.
##
<IfFile !/etc/apache2/conf-enabled/freedombox-apache-homepage.conf>
RedirectMatch "^/$" "/freedombox"
</IfFile>
RedirectMatch "^/$" "/plinth"
##
## On all sites, provide FreedomBox on a default path: /freedombox
## Disable sending Referer (sic) header from FreedomBox web interface to
## external websites. This improves privacy by not disclosing FreedomBox
## domains/URLs to external domains. Apps such as blogs which want to popularize
## themselves with referrer header may still do so.
##
## A strict Content Security Policy.
## - @fonts are allowed only from FreedomBox itself.
## - <frame>/<iframe> sources are disabled.
## - <img> sources are allowed only from FreedomBox itself.
## - Manifest file is not allowed as there is none yet.
## - <audio>, <video>, <track> tags are not allowed yet.
## - <object>, <embed>, <applet> tags are not allowed yet.
## - Allow JS from FreedomBox itself (no inline and attribute scripts).
## - Allow inline CSS and CSS files from Freedombox itself.
## - Web worker sources are allowed only from FreedomBox itself (for JSXC).
## - All other fetch sources including Ajax are not allowed from FreedomBox
## itself.
## - <base> tag is not allowed.
## - No plugins types are alllowed since object-src is 'none'.
## - Form action should be to FreedomBox itself.
## - This interface may be not embedded in <frame>, <iframe>, etc. tags.
## - When serving HTTPS, don't allow HTTP assets.
##
## Enable strict sandboxing enabled with some exceptions:
## - Allow running Javascript.
## - Allow popups as sometimes we use <a target=_blank>
## - Allow popups to have different sandbox requirements as we launch apps' web
## clients.
## - Allow forms to support configuration forms.
## - Allow policies to treat same origin differently from other origins
## - Allow downloads such as backup tarballs.
##
## Disable browser guessing of MIME types. FreedoBox already sets good content
## types for all the common file types.
##
<LocationMatch "^/(plinth|freedombox)">
Header set Referrer-Policy 'same-origin'
Header set Content-Security-Policy "font-src 'self'; frame-src 'none'; img-src 'self' data:; manifest-src 'none'; media-src 'none'; object-src 'none'; script-src 'self'; style-src 'self'; worker-src 'self'; default-src 'self'; base-uri 'none'; sandbox allow-scripts allow-popups allow-popups-to-escape-sandbox allow-forms allow-same-origin allow-downloads; form-action 'self'; frame-ancestors 'none'; block-all-mixed-content;"
Header set X-Content-Type-Options 'nosniff'
</LocationMatch>
##
## On all sites, provide FreedomBox on a default path: /plinth
##
## Requires the following Apache modules to be enabled:
## mod_headers
@ -56,9 +96,8 @@
## mod_proxy_http
##
<Location /freedombox>
ProxyPass http://127.0.0.1:8000/freedombox
ProxyPreserveHost On
## Send the scheme from user's request to enable FreedomBox to redirect
ProxyPass http://127.0.0.1:8000/plinth
## Send the scheme from user's request to enable Plinth to redirect
## URLs, set cookies, set absolute URLs (if any) properly.
RequestHeader set X-Forwarded-Proto 'https' env=HTTPS
@ -71,20 +110,7 @@
RequestHeader unset X-Forwarded-For
</Location>
<Location /plinth>
ProxyPass http://127.0.0.1:8000/freedombox
ProxyPreserveHost On
RequestHeader set X-Forwarded-Proto 'https' env=HTTPS
RequestHeader unset X-Forwarded-For
</Location>
<Location /.well-known/openid-configuration>
ProxyPass http://127.0.0.1:8000/freedombox/o/.well-known/openid-configuration
ProxyPreserveHost On
RequestHeader set X-Forwarded-Proto 'https' env=HTTPS
RequestHeader unset X-Forwarded-For
</Location>
<Location /.well-known/jwks.json>
ProxyPass http://127.0.0.1:8000/freedombox/o/.well-known/jwks.json
ProxyPreserveHost On
ProxyPass http://127.0.0.1:8000/plinth
RequestHeader set X-Forwarded-Proto 'https' env=HTTPS
RequestHeader unset X-Forwarded-For
</Location>
@ -96,7 +122,7 @@
<Location ~ ^/favicon\.ico$>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule /favicon\.ico$ "/freedombox/static/theme/img/favicon.ico" [PT]
RewriteRule /favicon\.ico$ "/plinth/static/theme/img/favicon.ico" [PT]
</IfModule>
</Location>
@ -126,12 +152,3 @@ ErrorLog "|/usr/bin/systemd-cat --identifier=apache-error"
# records its own timestamp.
ErrorLogFormat "[%-m:%l] [pid %P:tid %{g}T] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i"
CustomLog "|/usr/bin/systemd-cat --identifier=apache-access" vhost_combined
## When showing an index page for a directory listing, ensure that viewport's
## width is the same as the device's width. Directory index pages generated by
## mod_autoindex are reasonably suitable for mobile devices. However, without
## the directive, mobile devices will assume the page to be not-mobile friendly
## and use a larger view port than the device size.
<IfModule mod_autoindex.c>
IndexHeadInsert "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">"
</IfModule>

View File

@ -1,3 +1,11 @@
#
# Allow plinth user to run plinth action scripts with superuser privileges
# without needing a password.
#
Cmnd_Alias FREEDOMBOX_ACTION = /usr/share/plinth/actions/actions
Defaults!FREEDOMBOX_ACTION closefrom_override
plinth ALL=(ALL:ALL) NOPASSWD:FREEDOMBOX_ACTION
#
# On FreedomBox, allow all users in the 'admin' LDAP group to execute
# commands as root.

View File

@ -1,27 +0,0 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
[Unit]
Description=FreedomBox Privileged Service
Documentation=https://wiki.debian.org/FreedomBox/
# Don't hit the start rate limiting.
StartLimitIntervalSec=0
# Stop/restart along with .socket unit (invoked from dpkg scripts).
PartOf=freedombox-privileged.socket
# Uploaded files in /var/tmp/ are shared with FreedomBox web service.
JoinsNamespaceOf=plinth.service
[Service]
Type=notify
ExecStart=/usr/lib/freedombox/freedombox-privileged
TimeoutSec=300s
User=root
Group=root
NotifyAccess=main
# Uploaded files in /var/tmp/ are shared with FreedomBox web service by joining
# namespaces.
PrivateTmp=yes
Restart=on-failure
# Don't restart too fast
RestartSec=1
RestartSteps=3
RestartMaxDelaySec=5

View File

@ -1,16 +0,0 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
[Unit]
Description=FreedomBox Privileged Service Socket
Documentation=https://wiki.debian.org/FreedomBox/
[Socket]
Accept=no
ListenStream=/run/freedombox/privileged.socket
SocketUser=root
SocketGroup=root
SocketMode=0666
DirectoryMode=755
[Install]
WantedBy=sockets.target

View File

@ -2,24 +2,22 @@
[Unit]
Description=FreedomBox Service (Plinth)
Documentation=man:freedombox(1)
Documentation=man:plinth(1)
After=network.target
StartLimitIntervalSec=0
# Uploaded files in /var/tmp/ are shared with FreedomBox privileged service.
JoinsNamespaceOf=freedombox-privileged.service
[Service]
Type=notify
ExecStart=/usr/bin/freedombox
ExecStart=/usr/bin/plinth
TimeoutSec=300s
Restart=on-failure
RestartSec=5
ExecReload=/bin/kill -HUP $MAINPID
User=plinth
Group=plinth
StandardOutput=null
StandardError=null
NotifyAccess=main
# Uploaded files in /var/tmp/ are shared with FreedomBox privileged service by
# joining namespaces.
PrivateTmp=yes
[Install]

1479
debian/changelog vendored

File diff suppressed because it is too large Load Diff

61
debian/control vendored
View File

@ -1,66 +1,69 @@
Source: freedombox
Section: web
Priority: optional
Maintainer: FreedomBox packaging team <freedombox-pkg-team@lists.alioth.debian.org>
Uploaders:
Tzafrir Cohen <tzafrir@debian.org>,
Piotr Ożarowski <piotr@debian.org>,
Petter Reinholdtsen <pere@debian.org>,
Sunil Mohan Adapa <sunil@medhas.org>,
Nick Daly <Nick.M.Daly@gmail.com>,
Federico Ceratto <federico@debian.org>,
James Valleroy <jvalleroy@mailbox.org>,
Build-Depends:
debhelper-compat (= 13),
dh-sequence-installsysusers,
dblatex,
dh-python,
docbook-xsl,
e2fsprogs <!nocheck>,
e2fsprogs,
gir1.2-nm-1.0,
libjs-bootstrap5 <!nocheck>,
libjs-htmx <!nocheck>,
libjs-bootstrap5,
# Older libjs-bootstrap5 does not have proper dependency on popper.js >= 2.0
node-popper2 <!nocheck>,
node-popper2,
pybuild-plugin-pyproject,
python3-all:any,
python3-apt <!nocheck>,
python3-apt,
python3-augeas,
python3-bootstrapform <!nocheck>,
python3-bootstrapform,
python3-build,
python3-cherrypy3,
python3-configobj <!nocheck>,
python3-cryptography <!nocheck>,
python3-configobj,
python3-cryptography,
python3-dbus,
python3-django,
python3-django-axes <!nocheck>,
python3-django-captcha <!nocheck>,
python3-django-axes,
python3-django-captcha,
# Explictly depend on ipware as it is optional dependecy of django-axes
python3-django-ipware <!nocheck>,
python3-django-oauth-toolkit <!nocheck>,
python3-django-stronghold <!nocheck>,
python3-fido2 <!nocheck>,
python3-django-ipware,
python3-django-stronghold,
python3-gi,
python3-markupsafe,
python3-mypy <!nocheck>,
python3-pampy <!nocheck>,
python3-mypy,
python3-pampy,
python3-pexpect,
python3-pip,
python3-psutil,
python3-pytest <!nocheck>,
python3-pytest-cov <!nocheck>,
python3-pytest-django <!nocheck>,
python3-pytest-runner <!nocheck>,
python3-pytest,
python3-pytest-cov,
python3-pytest-django,
python3-pytest-runner,
python3-requests,
python3-ruamel.yaml,
python3-segno <!nocheck>,
python3-setuptools,
python3-setuptools-git,
python3-systemd,
python3-typeshed <!nocheck>,
# python3-tomli is needed by python3-coverage when pyproject.toml is used
python3-tomli,
python3-typeshed,
python3-yaml,
sshpass <!nocheck>,
sshpass,
xmlto,
xsltproc
Standards-Version: 4.7.3
Standards-Version: 4.6.2
Homepage: https://salsa.debian.org/freedombox-team/freedombox
Vcs-Git: https://salsa.debian.org/freedombox-team/freedombox.git
Vcs-Browser: https://salsa.debian.org/freedombox-team/freedombox
Rules-Requires-Root: no
Package: freedombox
Breaks:
@ -73,10 +76,13 @@ Depends:
${python3:Depends},
${misc:Depends},
${freedombox:Depends},
adduser,
augeas-tools,
bind9-dnsutils,
curl,
debconf,
fonts-fork-awesome,
fonts-lato,
# sgdisk is used in storage app to expand GPT disks
gdisk,
gettext,
@ -87,7 +93,6 @@ Depends:
# For gdbus used to call hooks into service
libglib2.0-bin,
libjs-bootstrap5,
libjs-htmx,
lsof,
netcat-openbsd,
network-manager,
@ -107,9 +112,7 @@ Depends:
python3-django-captcha,
# Explictly depend on ipware as it is optional dependecy of django-axes
python3-django-ipware,
python3-django-oauth-toolkit,
python3-django-stronghold,
python3-fido2,
python3-gi,
python3-markupsafe,
python3-pampy,
@ -135,6 +138,8 @@ Recommends:
libnss-mdns,
# Resolve current hostname without /etc/hosts
libnss-myhostname,
# Block repeated failed PAM login attempts
libpam-abl,
# Priority: standard
locales,
# Precompiled data for all locales

479
debian/copyright vendored
View File

@ -2,11 +2,11 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Source: https://salsa.debian.org/freedombox-team/freedombox
Files: *
Copyright: 2011-2026 FreedomBox Authors
Copyright: 2011-2024 FreedomBox Authors
License: AGPL-3+
Files: freedombox/modules/jsxc/static/icons/jsxc.png
freedombox/modules/jsxc/static/icons/jsxc.svg
Files: plinth/modules/jsxc/static/icons/jsxc.png
plinth/modules/jsxc/static/icons/jsxc.svg
Copyright: 2011-2019 FreedomBox Authors
License: AGPL-3+
@ -15,7 +15,7 @@ Files: doc/*.xml
doc/*.png
doc/*.jpg
doc/*.wiki
Copyright: 2011-2025 FreedomBox Authors
Copyright: 2011-2023 FreedomBox Authors
License: CC-BY-SA-4.0
Files: doc/visual_design/apple-touch-icon*
@ -32,53 +32,48 @@ Copyright: 2012 FreedomBox Foundation
Comment: Original Author: Robert Martinez
License: GPL-3+
Files: static/themes/default/icons/app-store.svg
Files: static/themes/default/icons/app-store.png
static/themes/default/icons/app-store.svg
Copyright: Marie Van den Broeck (https://thenounproject.com/marie49/)
Comment: https://thenounproject.com/icon/162372/
License: CC-BY-SA-3.0
Files: static/themes/default/js/color-modes.js
Copyright: 2011-2025 The Bootstrap Authors
Comment: https://getbootstrap.com/docs/5.3/customize/color-modes/
License: CC-BY-3.0
Files: freedombox/modules/bepasty/static/icons/bepasty.svg
Files: plinth/modules/bepasty/static/icons/bepasty.svg
Copyright: (c) 2014 by the Bepasty Team, see the AUTHORS file.
Comment: https://github.com/bepasty/bepasty-server/blob/master/src/bepasty/static/app/bepasty.svg
License: BSD-2-clause
Files: freedombox/modules/cockpit/static/icons/cockpit.svg
Files: plinth/modules/cockpit/static/icons/cockpit.svg
Copyright: Cockpit Authors (https://github.com/cockpit-project/cockpit/blob/master/AUTHORS)
Comment: https://github.com/cockpit-project/cockpit/blob/master/src/branding/default/logo.svg
License: LGPL-2.1+
Files: freedombox/modules/coturn/static/icons/coturn.png
freedombox/modules/coturn/static/icons/coturn.svg
Files: plinth/modules/coturn/static/icons/coturn.png
plinth/modules/coturn/static/icons/coturn.svg
Copyright: Kmg Design (https://thenounproject.com/kmgdesignid/)
Comment: Video Call by Kmg Design from the Noun Project https://thenounproject.com/term/video-call/3256092/
License: CC-BY-3.0-US
Files: freedombox/modules/deluge/static/icons/deluge.png
freedombox/modules/deluge/static/icons/deluge.svg
Files: plinth/modules/deluge/static/icons/deluge.png
plinth/modules/deluge/static/icons/deluge.svg
Copyright: 2007 Andrew Wedderburn
Comment: https://commons.wikimedia.org/wiki/File:Deluge-Logo.svg
License: GPL-2+
Files: freedombox/modules/ejabberd/static/icons/ejabberd.png
freedombox/modules/ejabberd/static/icons/ejabberd.svg
freedombox/modules/email/static/icons/email.png
freedombox/modules/email/static/icons/email.svg
freedombox/modules/gnome/static/icons/gnome.png
freedombox/modules/gnome/static/icons/gnome.svg
freedombox/modules/matrixsynapse/static/icons/matrixsynapse.svg
freedombox/modules/privoxy/static/icons/privoxy.png
freedombox/modules/privoxy/static/icons/privoxy.svg
freedombox/modules/radicale/static/icons/radicale.svg
freedombox/modules/rssbridge/static/icons/rssbridge.png
freedombox/modules/rssbridge/static/icons/rssbridge.svg
freedombox/modules/zoph/static/icons/zoph.png
freedombox/modules/zoph/static/icons/zoph.svg
static/themes/default/img/application.svg
Files: plinth/modules/ejabberd/static/icons/ejabberd.png
plinth/modules/ejabberd/static/icons/ejabberd.svg
plinth/modules/email/static/icons/email.png
plinth/modules/email/static/icons/email.svg
plinth/modules/gnome/static/icons/gnome.png
plinth/modules/gnome/static/icons/gnome.svg
plinth/modules/matrixsynapse/static/icons/matrixsynapse.svg
plinth/modules/privoxy/static/icons/privoxy.png
plinth/modules/privoxy/static/icons/privoxy.svg
plinth/modules/radicale/static/icons/radicale.svg
plinth/modules/rssbridge/static/icons/rssbridge.png
plinth/modules/rssbridge/static/icons/rssbridge.svg
plinth/modules/zoph/static/icons/zoph.png
plinth/modules/zoph/static/icons/zoph.svg
static/themes/default/img/network-connection.svg
static/themes/default/img/network-connection-vertical.svg
static/themes/default/img/network-ethernet.svg
@ -100,109 +95,123 @@ Copyright: 2020 Adwaita Icon Theme Authors, GNOME Project
Comment: https://github.com/GNOME/adwaita-icon-theme/ http://www.gnome.org
License: LGPL-3 or CC-BY-SA-3.0-US
Files: freedombox/modules/featherwiki/static/icons/featherwiki.png
freedombox/modules/featherwiki/static/icons/featherwiki.svg
Files: static/themes/default/icons/f-droid.png
static/themes/default/icons/f-droid.svg
Copyright: 2012 William Theaker
2013 Robert Martinez
2015 Andrew Nayenko
Comment: https://gitlab.com/fdroid/artwork/blob/master/fdroid-logo-2015/fdroid-logo.svg
License: CC-BY-SA-3.0 or GPL-3+
Files: plinth/modules/featherwiki/static/icons/featherwiki.png
plinth/modules/featherwiki/static/icons/featherwiki.svg
Copyright: 2022 Robbie Antenesse <dev@alamantus.com>
Comment: https://codeberg.org/Alamantus/FeatherWiki/src/branch/main/logo.svg
License: AGPL-3+
Files: freedombox/modules/gitweb/static/icons/gitweb.png
freedombox/modules/gitweb/static/icons/gitweb.svg
Files: plinth/modules/gitweb/static/icons/gitweb.png
plinth/modules/gitweb/static/icons/gitweb.svg
Copyright: 2010 Git Authors
Comment: https://github.com/git/git/blob/master/gitweb/static/git-logo.png
License: GPL-2
Files: freedombox/modules/homeassistant/static/icons/homeassistant.png
freedombox/modules/homeassistant/static/icons/homeassistant.svg
Copyright: Home Assistant Core Developers
Comment: https://github.com/home-assistant/core/blob/dev/tests/components/image_upload/logo.png
License: Apache-2.0
Files: static/themes/default/icons/google-play.png
Copyright: Chameleon Design (https://thenounproject.com/Chamedesign/)
Comment: https://thenounproject.com/icon/887917/
License: CC-BY-3.0-US
Files: freedombox/modules/ikiwiki/static/icons/ikiwiki.png
freedombox/modules/ikiwiki/static/icons/ikiwiki.svg
Files: static/themes/default/icons/gnu-linux.png
Copyright: 2017 Cowemoji
License: CC0-1.0
Files: plinth/modules/ikiwiki/static/icons/ikiwiki.png
plinth/modules/ikiwiki/static/icons/ikiwiki.svg
Copyright: 2006 Recai Oktaş <roktas@debian.org>
Comment: https://commons.wikimedia.org/wiki/File:Ikiwiki.svg
License: GPL-2+
Files: freedombox/modules/infinoted/static/icons/infinoted.png
freedombox/modules/infinoted/static/icons/infinoted.svg
Files: plinth/modules/infinoted/static/icons/infinoted.png
plinth/modules/infinoted/static/icons/infinoted.svg
Copyright: 2008-2014 Armin Burgmeier <armin@arbur.net>
License: ISC
Files: freedombox/modules/janus/static/icons/janus.png
freedombox/modules/janus/static/icons/janus.svg
freedombox/modules/janus/static/janus-video-room.css
freedombox/modules/janus/static/janus-video-room.js
freedombox/modules/janus/templates/janus_video_room.html
Copyright: 2014-2025 Meetecho
Files: plinth/modules/janus/static/icons/janus.png
plinth/modules/janus/static/icons/janus.svg
Copyright: 2014-2022 Meetecho
License: GPL-3 with OpenSSL exception
Files: freedombox/modules/kiwix/static/icons/kiwix.png
freedombox/modules/kiwix/static/icons/kiwix.svg
Files: plinth/modules/kiwix/static/icons/kiwix.png
plinth/modules/kiwix/static/icons/kiwix.svg
Copyright: 2020 The other Kiwix guy
Comment: https://commons.wikimedia.org/wiki/File:Kiwix_logo_v3.svg
License: CC-BY-SA-4.0
Files: freedombox/modules/matrixsynapse/static/icons/matrixsynapse.png
Files: static/themes/default/icons/macos.png
static/themes/default/icons/macos.svg
Copyright: Vectors Market (https://thenounproject.com/vectorsmarket/)
Comment: https://thenounproject.com/icon/1203053/
License: CC-BY-SA-3.0
Files: plinth/modules/matrixsynapse/static/icons/matrixsynapse.png
Copyright: 2017 Kishan Raval
Comment: https://github.com/thekishanraval/Logos
License: GPL-3+
Files: freedombox/modules/mediawiki/static/icons/mediawiki.png
freedombox/modules/mediawiki/static/icons/mediawiki.svg
Files: plinth/modules/mediawiki/static/icons/mediawiki.png
plinth/modules/mediawiki/static/icons/mediawiki.svg
Copyright: 2020 Serhio Magpie
Comment: https://commons.wikimedia.org/wiki/File:MediaWiki-2020-icon.svg
License: CC-BY-SA-4.0
Files: freedombox/modules/minetest/static/icons/minetest.png
Files: plinth/modules/minetest/static/icons/minetest.png
Copyright: 2011 erlehmann
License: CC-BY-SA-3.0
Files: freedombox/modules/minetest/static/icons/minetest.svg
Files: plinth/modules/minetest/static/icons/minetest.svg
Copyright: 2015 Calinou, Nils Dagsson Moskopp
Comment: https://github.com/luanti-org/luanti/blob/master/misc/luanti.svg
Comment: https://github.com/minetest/minetest/blob/master/misc/minetest.svg
License: CC-BY-SA-3.0
Files: freedombox/modules/miniflux/static/icons/miniflux.png
freedombox/modules/miniflux/static/icons/miniflux.svg
Files: plinth/modules/miniflux/static/icons/miniflux.png
plinth/modules/miniflux/static/icons/miniflux.svg
Copyright: 2018, 2019 Frédéric Guillot
Comment: https://github.com/miniflux/logo
License: CC-BY-SA-4.0
Files: freedombox/modules/mumble/static/icons/mumble.png
Files: plinth/modules/mumble/static/icons/mumble.png
Copyright: 2009 Martin Skilnand
Comment: https://commons.wikimedia.org/wiki/File:Icons_mumble.svg
License: BSD-3-clause
Files: freedombox/modules/mumble/static/icons/mumble.svg
Files: plinth/modules/mumble/static/icons/mumble.svg
Copyright: 2005-2019 The Mumble Developers
Comment: https://github.com/mumble-voip/mumble/blob/master/icons/mumble.svg
https://github.com/mumble-voip/mumble/blob/master/LICENSE
License: BSD-3-clause
Files: freedombox/modules/nextcloud/static/icons/nextcloud.png
freedombox/modules/nextcloud/static/icons/nextcloud.svg
Files: plinth/modules/nextcloud/static/icons/nextcloud.png
plinth/modules/nextcloud/static/icons/nextcloud.svg
Copyright: 2016 Nextcloud GmbH.
Comment: https://nextcloud.com/trademarks/
License: AGPL-3+
Files: freedombox/modules/openvpn/static/icons/openvpn.png
Files: plinth/modules/openvpn/static/icons/openvpn.png
Copyright: 2017 Kishan Raval
Comment: https://github.com/thekishanraval/Logos
License: GPL-3+
Files: freedombox/modules/openvpn/static/icons/openvpn.svg
Files: plinth/modules/openvpn/static/icons/openvpn.svg
Copyright: OpenVPN Technologies, Inc.
Comment: https://commons.wikimedia.org/wiki/File:Ovpntech_logo-s_REVISED.png
License: CC-BY-SA-3.0
Files: freedombox/modules/quassel/static/icons/quassel.png
freedombox/modules/quassel/static/icons/quassel.svg
Files: plinth/modules/quassel/static/icons/quassel.png
plinth/modules/quassel/static/icons/quassel.svg
Copyright: 2005-2019 Quassel Project <devel@quassel-irc.org>
Comment: https://github.com/quassel/quassel/blob/master/pics/quassel-64.svg
License: GPL-2 or GPL-3
Files: freedombox/modules/radicale/static/icons/radicale.png
Files: plinth/modules/radicale/static/icons/radicale.png
Copyright: 2008, Nicolas Kandel
2008, Pascal Halter
2008-2017, Guillaume Ayoub <guillaume.ayoub@kozea.fr>
@ -210,7 +219,7 @@ Copyright: 2008, Nicolas Kandel
2017, Unrud <unrud@outlook.com>
License: GPL-3+
Files: freedombox/modules/roundcube/static/icons/roundcube.png
Files: plinth/modules/roundcube/static/icons/roundcube.png
Copyright: 2000 Edmund Grimley Evans <edmundo@rano.org>
2013 Thomas Yu - Sian, Liu
Copyright (C) 2005-2017, The Roundcube Dev Team
@ -218,21 +227,21 @@ Copyright: 2000 Edmund Grimley Evans <edmundo@rano.org>
2005-2007, Jon Abernathy <jon@chuggnutt.com>
License: GPL-3+
Files: freedombox/modules/roundcube/static/icons/roundcube.svg
Files: plinth/modules/roundcube/static/icons/roundcube.svg
Copyright: Thomas B. (https://github.com/thomascube)
Aleksander Machniak (https://github.com/alecpl)
Comment: https://raw.githubusercontent.com/roundcube/roundcubemail/master/skins/elastic/images/logo.svg
License: CC-BY-SA-3.0
Files: freedombox/modules/samba/static/icons/samba.png
freedombox/modules/samba/static/icons/samba.svg
Files: plinth/modules/samba/static/icons/samba.png
plinth/modules/samba/static/icons/samba.svg
Copyright: None
Comment: 2010 Samba Team
https://commons.wikimedia.org/wiki/File:Samba_logo_2010.svg
License: public-domain
Files: freedombox/modules/searx/static/icons/searx.png
freedombox/modules/searx/static/icons/searx.svg
Files: plinth/modules/searx/static/icons/searx.png
plinth/modules/searx/static/icons/searx.svg
Copyright:
2013-2017 Adam Tauber <asciimoo@gmail.com>
2016 Alexandre Flament <alex@al-f.net>
@ -240,84 +249,92 @@ Copyright:
2014 Thomas Pointhuber <thomas.pointhuber@gmx.at>
License: AGPL-3+
Files: freedombox/modules/shaarli/static/icons/shaarli.png
freedombox/modules/shaarli/static/icons/shaarli.svg
Files: plinth/modules/shaarli/static/icons/shaarli.png
plinth/modules/shaarli/static/icons/shaarli.svg
Copyright: 2011-2015 Sébastien SAUVAGE <sebsauvage@sebsauvage.net>
2011-2018 The Shaarli Community
Comment: https://github.com/shaarli/Shaarli/blob/master/doc/md/images/doc-logo.svg
https://github.com/shaarli/Shaarli/blob/master/assets/default/img/favicon.png
License: Zlib
Files: freedombox/modules/shadowsocks/static/icons/shadowsocks.png
freedombox/modules/shadowsocksserver/static/icons/shadowsocks.png
Files: plinth/modules/shadowsocks/static/icons/shadowsocks.png
plinth/modules/shadowsocksserver/static/icons/shadowsocks.png
Copyright: 2014-2018 Symeon Huang (librehat) <hzwhuang@gmail.com>
Comment: https://commons.wikimedia.org/wiki/File:Shadowsocks_logo.png
License: LGPL-3+
Files: freedombox/modules/shadowsocks/static/icons/shadowsocks.svg
freedombox/modules/shadowsocksserver/static/icons/shadowsocks.svg
Files: plinth/modules/shadowsocks/static/icons/shadowsocks.svg
plinth/modules/shadowsocksserver/static/icons/shadowsocks.svg
Copyright: Clowwindy
Comment: https://commons.wikimedia.org/wiki/File:Shadowsocks-Logo.svg
License: Apache-2.0
Files: freedombox/modules/sharing/static/icons/sharing.png
freedombox/modules/sharing/static/icons/sharing.svg
Files: plinth/modules/sharing/static/icons/sharing.png
plinth/modules/sharing/static/icons/sharing.svg
Copyright: Interface (https://www.shareicon.net/author/interface)
Comment: https://www.shareicon.net/universal-interface-interface-sharing-share-697502
License: CC-BY-3.0
Files: freedombox/modules/sogo/static/icons/sogo.png
freedombox/modules/sogo/static/icons/sogo.svg
Files: plinth/modules/sogo/static/icons/sogo.png
plinth/modules/sogo/static/icons/sogo.svg
Copyright: 2024 Inverse inc./Alinto
Comment: https://github.com/Alinto/sogo/blob/master/COPYING.GPL
License: GPL-2
Files: freedombox/modules/syncthing/static/icons/syncthing.png
Files: plinth/modules/syncthing/static/icons/syncthing.png
Copyright: 2015 Jack Palevich <jack.palevich@gmail.com>
2014 The Syncthing Authors
2015 Audrius Butkevicius and Contributors
License: MPL-2.0
Files: freedombox/modules/syncthing/static/icons/syncthing.svg
Files: plinth/modules/syncthing/static/icons/syncthing.svg
Copyright: Jakob Borg and the Syncthing project
Comment: https://commons.wikimedia.org/wiki/File:SyncthingLogoHorizontal.svg
License: MPL-2.0
Files: freedombox/modules/tiddlywiki/static/icons/tiddlywiki.svg
freedombox/modules/tiddlywiki/static/icons/tiddlywiki.png
Files: plinth/modules/tiddlywiki/static/icons/tiddlywiki.svg
plinth/modules/tiddlywiki/static/icons/tiddlywiki.png
Copyright: 2004-2007 Jeremy Ruston <jeremy@jermolene.com>
2007-2016 UnaMesa Association
Comment: https://github.com/Jermolene/TiddlyWiki5/blob/086506012d98e9db34c7d96dc27aea249a9bdbc8/editions/introduction/tiddlers/images/Motovun%20Jack.svg
License: BSD-3-clause
Files: freedombox/modules/tor/static/icons/tor.png
freedombox/modules/tor/static/icons/tor.svg
Files: plinth/modules/tor/static/icons/tor.png
plinth/modules/tor/static/icons/tor.svg
Copyright: The Tor Project, Inc.
Comment: https://commons.wikimedia.org/wiki/File:Tor_logo1.png
https://commons.wikimedia.org/wiki/File:Tor-logo-2011-flat.svg
License: CC-BY-3.0-US
Files: freedombox/modules/transmission/static/icons/transmission.png
freedombox/modules/transmission/static/icons/transmission.svg
Files: plinth/modules/transmission/static/icons/transmission.png
plinth/modules/transmission/static/icons/transmission.svg
Copyright: Transmission Authors
Comment: https://github.com/transmission/transmission/blob/master/gtk/icons/hicolor_apps_scalable_transmission.svg
License: GPL-3
Files: freedombox/modules/upgrades/data/usr/share/augeas/lenses/aptsources.aug
freedombox/modules/upgrades/data/usr/share/augeas/lenses/tests/test_aptsources.aug
Copyright: 2007-2025 David Lutterkort
Comment: https://github.com/hercules-team/augeas/blob/master/lenses/aptsources.aug
https://github.com/hercules-team/augeas/blob/master/lenses/tests/test_aptsources.aug
License: LGPL-2.1+
Files: plinth/modules/ttrss/static/icons/ttrss.png
Copyright: Mark James <mjames@gmail.com>
License: CC-BY-3.0
Files: freedombox/modules/wordpress/static/icons/wordpress.png
freedombox/modules/wordpress/static/icons/wordpress.svg
Files: plinth/modules/ttrss/static/icons/ttrss.svg
Copyright: 2005 Andrew Dolgov
Comment: https://git.tt-rss.org/fox/tt-rss/src/master/images/favicon-72px.png
License: GPL-3+
Files: plinth/modules/wordpress/static/icons/wordpress.png
plinth/modules/wordpress/static/icons/wordpress.svg
Copyright: 2011-2021 WordPress Contributors
Comment: https://github.com/WordPress/wordpress-develop/blob/master/src/wp-admin/images/wordpress-logo.svg
License: GPL-2+
Files: freedombox/modules/wireguard/static/icons/wireguard.png
freedombox/modules/wireguard/static/icons/wireguard.svg
Files: static/themes/default/icons/windows.png
static/themes/default/icons/windows.svg
Copyright: 2007 ruli (https://thenounproject.com/2007ruli/)
Comment: https://thenounproject.com/icon/1206946/
License: CC-BY-SA-3.0
Files: plinth/modules/wireguard/static/icons/wireguard.png
plinth/modules/wireguard/static/icons/wireguard.svg
Copyright: 2019 WireGuard LLC
Comment: https://git.zx2c4.com/wireguard-windows/plain/ui/icon/wireguard.svg
License: Expat
@ -327,88 +344,13 @@ Copyright: 2008 GNOME icon artists
Comment: https://commons.wikimedia.org/wiki/File:Gnome-computer.svg
License: LGPL-3+ or CC-BY-SA-3.0
Files: static/themes/default/icons/adjust.svg
static/themes/default/icons/android.svg
static/themes/default/icons/arrow-right.svg
static/themes/default/icons/ban.svg
static/themes/default/icons/bar-chart.svg
static/themes/default/icons/bars.svg
static/themes/default/icons/bell-o.svg
static/themes/default/icons/book.svg
static/themes/default/icons/check-circle.svg
static/themes/default/icons/check.svg
static/themes/default/icons/chevron-right.svg
static/themes/default/icons/clock-o.svg
static/themes/default/icons/cog.svg
static/themes/default/icons/comments.svg
static/themes/default/icons/compass.svg
static/themes/default/icons/debian.svg
static/themes/default/icons/download.svg
static/themes/default/icons/eject.svg
static/themes/default/icons/exclamation-triangle.svg
static/themes/default/icons/external-link.svg
static/themes/default/icons/eye-slash.svg
static/themes/default/icons/eye.svg
static/themes/default/icons/f-droid.svg
static/themes/default/icons/files-o.svg
static/themes/default/icons/film.svg
static/themes/default/icons/flag.svg
static/themes/default/icons/freedombox.svg
static/themes/default/icons/frown-o.svg
static/themes/default/icons/globe-w.svg
static/themes/default/icons/gnu-linux.svg
static/themes/default/icons/google-play.svg
static/themes/default/icons/hdd-o.svg
static/themes/default/icons/heartbeat.svg
static/themes/default/icons/heart.svg
static/themes/default/icons/home.svg
static/themes/default/icons/hourglass-o.svg
static/themes/default/icons/info-circle.svg
static/themes/default/icons/key.svg
static/themes/default/icons/life-ring.svg
static/themes/default/icons/line-chart.svg
static/themes/default/icons/lock.svg
static/themes/default/icons/macos.svg
static/themes/default/icons/moon.svg
static/themes/default/icons/pencil-square-o.svg
static/themes/default/icons/plus.svg
static/themes/default/icons/power-off.svg
static/themes/default/icons/question-circle.svg
static/themes/default/icons/refresh.svg
static/themes/default/icons/repeat.svg
static/themes/default/icons/rocket.svg
static/themes/default/icons/shield.svg
static/themes/default/icons/signal.svg
static/themes/default/icons/smile-o.svg
static/themes/default/icons/spinner.svg
static/themes/default/icons/star.svg
static/themes/default/icons/sun.svg
static/themes/default/icons/tags.svg
static/themes/default/icons/tag.svg
static/themes/default/icons/terminal.svg
static/themes/default/icons/th.svg
static/themes/default/icons/times.svg
static/themes/default/icons/trash-o.svg
static/themes/default/icons/trash.svg
static/themes/default/icons/upload.svg
static/themes/default/icons/user.svg
static/themes/default/icons/users.svg
static/themes/default/icons/wifi.svg
static/themes/default/icons/windows.svg
static/themes/default/icons/wrench.svg
Copyright: 2018, Fork Awesome
Comment: https://github.com/ForkAwesome/Fork-Awesome/tree/master/src/icons/svg/
Files: static/themes/default/lato/*
Copyright: (c) 2010-2014, Łukasz Dziedzic
License: OFL-1.1
Files: static/themes/default/icons/fedora.svg
static/themes/default/icons/homebrew.svg
Copyright: 2026, Simple Icons
Comment: https://github.com/simple-icons/simple-icons/
License: CC0-1.0
Files: debian/*
Copyright: 2013 Tzafrir Cohen
2013-2026 FreedomBox Authors
2013-2024 FreedomBox Authors
License: GPL-2+
License: AGPL-3+
@ -2875,6 +2817,90 @@ License: MPL-2.0
On Debian systems, the complete text of the Mozilla Public License, v. 2.0 can
be found in "/usr/share/common-licenses/MPL-2.0".
License: OFL-1.1
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
.
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
.
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
.
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font
name as presented to the users.
.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
License: public-domain
This software has been placed into the public domain by its authors.
@ -2897,94 +2923,3 @@ License: Zlib
.
3. This notice may not be removed or altered from any source
distribution.
License: OFL-1.1
This Font Software is licensed under the SIL Open Font License,
Version 1.1.
.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL
.
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
.
PREAMBLE The goals of the Open Font License (OFL) are to stimulate
worldwide development of collaborative font projects, to support the font
creation efforts of academic and linguistic communities, and to provide
a free and open framework in which fonts may be shared and improved in
partnership with others.
.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves.
The fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply to
any document created using the fonts or their derivatives.
.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such.
This may include source files, build scripts and documentation.
.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
.
"Original Version" refers to the collection of Font Software components
as distributed by the Copyright Holder(s).
.
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting ? in part or in whole ?
any of the components of the Original Version, by changing formats or
by porting the Font Software to a new environment.
.
"Author" refers to any designer, engineer, programmer, technical writer
or other person who contributed to the Font Software.
.
PERMISSION & CONDITIONS
.
Permission is hereby granted, free of charge, to any person obtaining a
copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
.
1) Neither the Font Software nor any of its individual components, in
Original or Modified Versions, may be sold by itself.
.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the
corresponding Copyright Holder. This restriction only applies to the
primary font name as presented to the users.
.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
.
5) The Font Software, modified or unmodified, in part or in whole, must
be distributed entirely under this license, and must not be distributed
under any other license. The requirement for fonts to remain under
this license does not apply to any document created using the Font
Software.
.
TERMINATION
This license becomes null and void if any of the above conditions are not met.
.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER
DEALINGS IN THE FONT SOFTWARE.

View File

@ -1,2 +0,0 @@
usr/bin/freedombox usr/bin/plinth
usr/share/man/man1/freedombox.1.gz usr/share/man/man1/plinth.1.gz

View File

@ -1,25 +1,21 @@
# Apache configuration for the FreedomBox service itself is shipped with proper
# name freedombox.conf. However, due to the nature of the package, FreedomBox
# takes the responsibility of configuring various other services behind Apache.
# The upstream hence ships various Apache configuration files which are enabled
# and disabled when user requests.
# debconf is used only to display a message, and not to get
# configuration.
freedombox binary: no-debconf-config
# Apache configuration for the Plinth itself is shipped with proper
# name plinth.conf. However, due to the nature of the package, Plinth
# takes the responsibility of configuring various other services
# behind Apache. The upstream hence ships various Apache
# configuration files which are enabled and disabled when user
# requests.
freedombox binary: non-standard-apache2-configuration-name *
# FreedomBox depends on Apache2 and cannot work with just any web server.
# Instead of being a simple web application it is an administration console that
# configures web servers. At some point we would like to work with other web
# servers but that requires significant effort.
# Plinth depends on Apache2 and cannot work with just any web server. Instead of
# being a simple web application it is an administration console that configures
# web servers. At some point we would like to work with other web servers but
# that requires significant effort.
freedombox binary: web-application-works-only-with-apache
# Not documentation
freedombox: package-contains-documentation-outside-usr-share-doc [usr/share/plinth/static/jslicense.html]
freedombox: package-contains-documentation-outside-usr-share-doc [usr/lib/python3/dist-packages/freedombox-*.dist-info/top_level.txt]
# This executable is meant to executed from systemd service file and is not
# meant for user. However, don't install to /usr/libexec and follow systemd
# convention instead.
freedombox: executable-in-usr-lib [usr/lib/freedombox/freedombox-privileged]
# [Install] section is missing for the privileged daemon service because it is
# socket activated.
freedombox: systemd-service-file-missing-install-key [usr/lib/systemd/system/freedombox-privileged.service]
freedombox: package-contains-documentation-outside-usr-share-doc [usr/lib/python3/dist-packages/plinth-*.dist-info/top_level.txt]

View File

@ -1,2 +1 @@
./doc/freedombox-cmd.1
./doc/freedombox.1
./doc/plinth.1

40
debian/freedombox.postinst vendored Executable file
View File

@ -0,0 +1,40 @@
#!/bin/sh
set -e
# Source debconf library.
. /usr/share/debconf/confmodule
# Due to a change in sudo, now it runs PAM modules even on password-less
# invocations. This leads to plinth not being able to run root privileges. This
# is because of our own restrictions in /etc/security/access.conf. Since Plinth
# is locked out after upgrade, we need to do this in postinst.
sed -i 's+-:ALL EXCEPT root fbx (admin) (sudo):ALL+-:ALL EXCEPT root fbx plinth (admin) (sudo):ALL+' /etc/security/access.conf
case "$1" in
configure)
if ! getent group plinth >/dev/null; then
addgroup --system --quiet plinth
fi
if ! getent passwd plinth >/dev/null; then
adduser --system --quiet --ingroup plinth --no-create-home --home /var/lib/plinth plinth
fi
chown plinth: /var/lib/plinth
chown plinth: /var/lib/plinth/sessions
if [ ! -e '/var/lib/freedombox/is-freedombox-disk-image' ]; then
umask 377
base64 < /dev/urandom | head -c 16 | sed -e 's+$+\n+' > /var/lib/plinth/firstboot-wizard-secret
chown plinth:plinth /var/lib/plinth/firstboot-wizard-secret
db_subst plinth/firstboot_wizard_secret secret $(cat /var/lib/plinth/firstboot-wizard-secret)
db_input high plinth/firstboot_wizard_secret || true
db_go
fi
;;
esac
#DEBHELPER#
exit 0

View File

@ -4,6 +4,7 @@ set -e
case "$1" in
purge)
deluser --system --quiet plinth || true
rm -rf /var/lib/plinth
# Remove legacy directory too

43
debian/freedombox.preinst vendored Executable file
View File

@ -0,0 +1,43 @@
#!/bin/sh
set -e
case "$1" in
upgrade)
# Handle removing freedombox-setup-repositories.timer from 20.5.
if dpkg --compare-versions "$2" le 20.7; then
if [ -x "/usr/bin/deb-systemd-invoke" ]; then
deb-systemd-invoke stop freedombox-setup-repositories.timer >/dev/null 2>/dev/null || true
fi
if [ -x "/usr/bin/deb-systemd-helper" ]; then
deb-systemd-helper purge freedombox-setup-repositories.timer >/dev/null || true
deb-systemd-helper unmask freedombox-setup-repositories.timer >/dev/null || true
fi
if [ -d /run/systemd/system ]; then
systemctl daemon-reload
fi
fi
# Handle removing freedombox-udiskie.service from 20.9.
if dpkg --compare-versions "$2" le 20.9; then
if [ -x "/usr/bin/deb-systemd-invoke" ]; then
deb-systemd-invoke stop freedombox-udiskie.service >/dev/null 2>/dev/null || true
fi
if [ -x "/usr/bin/deb-systemd-helper" ]; then
deb-systemd-helper purge freedombox-udiskie.service >/dev/null || true
deb-systemd-helper unmask freedombox-udiskie.service >/dev/null || true
fi
if [ -d /run/systemd/system ]; then
systemctl daemon-reload
fi
fi
;;
esac
#DEBHELPER#
exit 0

View File

@ -1 +0,0 @@
u! plinth - "FreedomBox service" /var/lib/plinth

9
debian/freedombox.templates vendored Normal file
View File

@ -0,0 +1,9 @@
Template: plinth/firstboot_wizard_secret
Type: note
#flag:translate!:3
_Description: FreedomBox first wizard secret - ${secret}
Please note down the above secret. You will be asked to enter this in the
first screen after you launch the FreedomBox web interface. In case you lose
it, you can retrieve it by running the following command:
.
$ sudo cat /var/lib/plinth/firstboot-wizard-secret

View File

@ -1,2 +0,0 @@
d /var/lib/plinth 0755 plinth plinth
d /var/lib/plinth/sessions 0755 plinth plinth

3
debian/gbp.conf vendored
View File

@ -1,9 +1,6 @@
[DEFAULT]
debian-branch = main
[buildpackage]
export-dir = ../build-area/
[dch]
git-log = --no-merges
multimaint-merge = True

1
debian/po/POTFILES.in vendored Normal file
View File

@ -0,0 +1 @@
[type: gettext/rfc822deb] freedombox.templates

36
debian/po/ca.po vendored Normal file
View File

@ -0,0 +1,36 @@
# Catalan translation of plinth's debconf messages
# Copyright © 2024 Free Software Foundation, Inc.
# This file is distributed under the same license as the plinth package.
# poc senderi <pocsenderi@protonmail.com>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: plinth\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: 2024-11-05 22:18+0100\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Last-Translator: poc senderi <pocsenderi@protonmail.com>\n"
"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
"X-Generator: Poedit 2.4.2\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Secret per a l'engegada inicial del «wizard» de FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Anoteu el secret anterior. Us serà demanat a la primera pantalla després "
"d'engegar la interfície web del FreedomBox. En cas que el perdeu, el podeu "
"recuperar executant la següent ordre:"

37
debian/po/de.po vendored Normal file
View File

@ -0,0 +1,37 @@
# Translation of plinth debconf templates to German
# Copyright (C) 2019 FreedomBox packaging team <freedombox-pkg-team@lists.alioth.debian.org>
# This file is distributed under the same license as the plinth package.
# Helge Kreutzmann <debian@helgefjell.de>, 2018, 2019.
#
msgid ""
msgstr ""
"Project-Id-Version: plinth 19.21\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: 2019-11-24 06:46+0100\n"
"Last-Translator: Helge Kreutzmann <debian@helgefjell.de>\n"
"Language-Team: german <debian-l10n-german@lists.debian.org>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Passphrase des Ersteinrichtungsprogramms der FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Bitte schreiben Sie diese geheime Zeichenkette auf. Sie werden auf dem "
"ersten Bildschirm nach dem Start der FreedomBox-Schnittstelle nach dieser "
"Zeichenkette gefragt werden. Falls Sie sie verlieren, können Sie sie durch "
"Ausführung des folgenden Befehls wiedererlangen:"

37
debian/po/es.po vendored Normal file
View File

@ -0,0 +1,37 @@
# Translation of plinth debconf templates to Spanish
# Copyright (C) 2019 FreedomBox packaging team <freedombox-pkg-team@lists.alioth.debian.org>
# This file is distributed under the same license as the plinth package.
# Fioddor Superconcentrado <fioddor@gmail.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: plinth 19.20\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-07-31 16:07+0000\n"
"PO-Revision-Date: 2022-08-01 15:13+0200\n"
"Last-Translator: Camaleón <noelamac@gmail.com>\n"
"Language-Team: Debian L10n Spanish <debian-l10n-spanish@lists.debian.org>\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.4.2\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Secreto del asistente al primer arranque de FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Por favor, anote esta cadena de texto. Se le pedirá en la primera pantalla "
"al iniciar la interfaz web de FreedomBox. Si la pierde, podrá recuperarla "
"ejecutando la siguiente orden:"

42
debian/po/fr.po vendored Normal file
View File

@ -0,0 +1,42 @@
# Translation of plinth debconf templates to French
# Copyright (C) 2018 FreedomBox packaging team <freedombox-pkg-team@lists.alioth.debian.org>
# This file is distributed under the same license as the plinth package.
#
# Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>, 2018, 2019.
msgid ""
msgstr ""
"Project-Id-Version: plinth\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: 2019-12-16 10:23+0100\n"
"Last-Translator: Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>\n"
"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Lokalize 2.0\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Phrase secrète du premier assistant de FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../templates:1001
#| msgid ""
#| "Please save this string. You will be asked to enter this in the first "
#| "screen after you launch the FreedomBox interface. In case you lose it, "
#| "you can find it in the file /var/lib/plinth/firstboot-wizard-secret."
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Veuillez noter cette phrase secrète. Le premier écran après le chargement de "
"l'interface web de FreedomBox vous la demandera. Si vous l'avez oubliée, vous "
"pourrez la récupérer en exécutant la commande suivante :"

35
debian/po/it.po vendored Normal file
View File

@ -0,0 +1,35 @@
# freedombox po-debconf italian translation
# Copyright (C) 2022 freedombox's copyright holder
# This file is distributed under the same license as the freedombox package.
# Ceppo <ceppo@oziosi.org>, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: freedombox\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-08-18 16:09+0000\n"
"PO-Revision-Date: 2022-08-25 00:00+0000\n"
"Last-Translator: Ceppo <ceppo@oziosi.org>\n"
"Language-Team: Italian <debian-l10n-italian@lists.debian.org>\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Codice del primo wizard di FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Annotare il codice indicato sopra. Sarà richiesto di inserirlo nella prima "
"schermata dopo l'avvio dell'interfaccia web di FreedomBox. Qualora venisse "
"perso, sarebbe possibile recuperarlo eseguendo il comando seguente:"

39
debian/po/nl.po vendored Normal file
View File

@ -0,0 +1,39 @@
# Dutch translation of plinth debconf templates.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the plinth package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# Frans Spiesschaert <Frans.Spiesschaert@yucom.be>, 2018.
#
msgid ""
msgstr ""
"Project-Id-Version: plinth_19.21\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: 2019-12-02 21:04+0100\n"
"Last-Translator: Frans Spiesschaert <Frans.Spiesschaert@yucom.be>\n"
"Language-Team: Debian Dutch l10n Team <debian-l10n-dutch@lists.debian.org>\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.2.1\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Geheime code voor de initiële wizard van FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Noteer bovenstaande geheime code. Er zal u gevraagd worden om ze in het "
"openingsscherm in te voeren wanneer u de FreedomBox-interface opstart. In "
"geval u ze kwijtraakt, kunt u ze terughalen door het volgende commando uit "
"te voeren:"

40
debian/po/pt.po vendored Normal file
View File

@ -0,0 +1,40 @@
# Translation of plinth debconf templates to Portuguese
# Copyright (C) 2019 FreedomBox packaging team <freedombox-pkg-team@lists.alioth.debian.org>
# This file is distributed under the same license as the plinth package.
# Rui Branco - DebianPT <ruipb@debianpt.org>, 2018.
#
msgid ""
msgstr ""
"Project-Id-Version: plinth 0.37.0\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: 2018-09-27 15:33+0100\n"
"Last-Translator: Rui Branco - DebianPT <ruipb@debianpt.org>\n"
"Language-Team: Portuguese <traduz@debianpt.org>\n"
"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Primeiro segredo FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../templates:1001
#, fuzzy
#| msgid ""
#| "Please save this string. You will be asked to enter this in the first "
#| "screen after you launch the FreedomBox interface. In case you lose it, "
#| "you can find it in the file /var/lib/plinth/firstboot-wizard-secret."
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Por favor guarde esta 'string'. Ser-lhe-á pedido para a introduzir na "
"primeira tela assim que lance a interface FreedomBox. No caso de a perder, "
"poderá encontrá-la no ficheiro /var/lib/plinth/firstboot-wizard-secret."

36
debian/po/pt_BR.po vendored Normal file
View File

@ -0,0 +1,36 @@
# Debconf translations for plinth.
# Copyright (C) 2020 THE plinth'S COPYRIGHT HOLDER
# This file is distributed under the same license as the plinth package.
# Adriano Rafael Gomes <adrianorg@debian.org>, 2020.
#
msgid ""
msgstr ""
"Project-Id-Version: plinth 20.11\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-06-24 18:00+0000\n"
"PO-Revision-Date: 2020-06-24 20:14-0300\n"
"Last-Translator: Adriano Rafael Gomes <adrianorg@debian.org>\n"
"Language-Team: Brazilian Portuguese <debian-l10n-portuguese@lists.debian."
"org>\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Segredo do primeiro assistente do FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Por favor, anote o segredo acima. Você deverá informá-lo na primeira tela "
"depois de iniciar a interface web do FreedomBox. Caso você o perca, você "
"poderá recuperá-lo executando o seguinte comando:"

38
debian/po/ru.po vendored Normal file
View File

@ -0,0 +1,38 @@
# Russian translation of plinth debconf template.
# Copyright (C) 2019 FreedomBox packaging team <freedombox-pkg-team@lists.alioth.debian.org>
# This file is distributed under the same license as the plinth package.
# Lev Lamberov <dogsleg@debian.org>, 2020.
#
msgid ""
msgstr ""
"Project-Id-Version: plinth\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: 2020-02-10 10:17+0500\n"
"Last-Translator: Lev Lamberov <dogsleg@debian.org>\n"
"Language-Team: Debian L10n Russian <debian-l10n-russian@lists.debian.org>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.2.4\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Секретная строка мастера настройки FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Запишите эту секретную строку. Вам будет необходимо ввести её на самом "
"первом экране после запуска веб-интерфейса FreedomBox. Если вы потеряете эту "
"строку, то вы сможете получить её, выполнив следующую команду:"

37
debian/po/sq.po vendored Normal file
View File

@ -0,0 +1,37 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the plinth package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: plinth\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: 2021-04-14 11:43+0300\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.4.2\n"
"Last-Translator: Besnik Bleta <besnik@programeshqip.org>\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Language: sq\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "E fshehtë për skenën e parë të ndihmësit FreedomBox - ${secret}"
#. Type: note
#. Description
#: ../templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Ju lutemi, mbajeni shënim të fshehtën më sipër. Do t’ju kërkohet ta jepni "
"këtë në skenën e parë pasi të vini në punë ndërfaqen web të FreedomBox-it. "
"Po e humbët, mund ta rimerrni duke xhiruar urdhrin vijues:"

35
debian/po/sv.po vendored Normal file
View File

@ -0,0 +1,35 @@
# Translation of freedombox 23.13 debconf to Swedish.
# Copyright (C) 2011-2023 FreedomBox Authors
# This file is distributed under the same license as the freedombox package.
# Peter Kvillegård <quat@sdfeu.org>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: freedombox 23.13\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-21 16:31+0000\n"
"PO-Revision-Date: 2023-07-22 15:55+0200\n"
"Last-Translator: Peter Kvillegård <quat@sdfeu.org>\n"
"Language-Team: Swedish <debian-l10n-swedish@lists.debian.org>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr "Hemlighet för FreedomBox första guidade installerare - ${secret}"
#. Type: note
#. Description
#: ../freedombox.templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""
"Skriv ner ovanstående hemlighet. Du kommer att bli ombedd att ange den i "
"den första skärmen efter att du startat FreedomBox webbgränssnitt. Om du "
"tappar bort den kan den hämtas igen genom att köra följande kommando:"

33
debian/po/templates.pot vendored Normal file
View File

@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the plinth package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: plinth\n"
"Report-Msgid-Bugs-To: plinth@packages.debian.org\n"
"POT-Creation-Date: 2019-11-18 18:11-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: note
#. Description
#: ../templates:1001
msgid "FreedomBox first wizard secret - ${secret}"
msgstr ""
#. Type: note
#. Description
#: ../templates:1001
msgid ""
"Please note down the above secret. You will be asked to enter this in the "
"first screen after you launch the FreedomBox web interface. In case you lose "
"it, you can retrieve it by running the following command:"
msgstr ""

18
debian/rules vendored
View File

@ -1,7 +1,5 @@
#!/usr/bin/make -f
include /usr/share/dpkg/pkg-info.mk
export DH_VERBOSE=1
export PYBUILD_DESTDIR=debian/tmp
export PYBUILD_SYSTEM=custom
@ -11,8 +9,6 @@ export PYBUILD_INSTALL_ARGS=make PYTHON={interpreter} DESTDIR={destdir} install
export PYBUILD_CLEAN_ARGS=make clean
export PYBUILD_TEST_ARGS=make PYTHON={interpreter} check-tests
FBX_VERSION := $(shell ./run --develop --version | awk 'NF{ print $$NF }')
%:
dh $@ --with python3 --buildsystem=pybuild
@ -23,12 +19,10 @@ override_dh_auto_install-indep:
# Ensure the list of dependencies is not empty.
test -s debian/freedombox.substvars || exit 1
# Check that FreedomBox version number is matching.
ifneq ($(FBX_VERSION),$(DEB_VERSION))
>&2 echo "WARNING: FreedomBox version $(FBX_VERSION) does not match package version $(DEB_VERSION)."
endif
override_dh_installsystemd:
# Do not enable or start any service other than FreedomBox service.
dh_installsystemd --package=freedombox plinth.service \
freedombox-privileged.socket
# Do not enable or start any service other than FreedomBox service. Use
# of --tmpdir is a hack to workaround an issue with dh_installsystemd
# (as of debhelper 13.5.2) that still has hardcoded search path of
# /lib/systemd/system for searching systemd services. See #987989 and
# reversion of its changes.
dh_installsystemd --tmpdir=debian/tmp/usr --package=freedombox plinth.service

View File

@ -5,4 +5,7 @@
very-long-line-length-in-source-file * [doc/manual/*.raw.wiki:*]
# Misc. files which can't be fixed to have short line lengths.
very-long-line-length-in-source-file * [plinth/modules/deluge/tests/data/sample.torrent:*]
very-long-line-length-in-source-file * [plinth/modules/transmission/tests/data/sample.torrent:*]
very-long-line-length-in-source-file * [doc/visual_design/FreedomBox-Logo.7z:*]
very-long-line-length-in-source-file * [COPYING.md:*]

View File

@ -1,38 +0,0 @@
#!/bin/sh
set -e
# Wait for FreedomBox first-boot setup to complete and the web server to
# start listening. App setup order is not deterministic, so a fixed sleep can
# expire before the apache app configures port 443. Poll instead of guessing.
echo "Waiting for first-boot setup to complete..."
SETUP_COMPLETE=0
for _ in $(seq 1 120); do
if curl --fail --insecure --silent --output /tmp/fbx_status.json \
https://localhost/freedombox/status/; then
if grep -q '"is_first_setup_running"[[:space:]]*:[[:space:]]*false' /tmp/fbx_status.json; then
SETUP_COMPLETE=1
break
fi
fi
sleep 2
done
# Print final status in test log
cat /tmp/fbx_status.json || true
rm -f /tmp/fbx_status.json
journalctl --unit=plinth --unit=freedombox-privileged
# Access FreedomBox interface
curl --location --cookie "" --fail --write-out "%{response_code}" --insecure \
--stderr - https://localhost/freedombox/
if [ "$SETUP_COMPLETE" -eq 0 ]; then
echo "Error: first-boot setup did not complete in the allotted time." >&2
exit 1
fi

16
debian/tests/control vendored
View File

@ -1,5 +1,5 @@
#
# Smoke test to check various basics on an installed version of FreedomBox. This
# Smoke test to check various basics on an installed version of Plinth. This
# checks that the following aspects are working okay:
# - Python runtime
# - Python library dependencies
@ -13,16 +13,6 @@ Restrictions: needs-root, breaks-testbed
#
# Run unit and integration tests on installed files.
#
Test-Command: PYTHONPATH='/usr/lib/python3/dist-packages/' py.test-3 -p no:cacheprovider --cov=freedombox --cov-report=html:debci/htmlcov --cov-report=term
Depends: e2fsprogs, git, python3-pytest, python3-pytest-cov, python3-pytest-django, @
Test-Command: PYTHONPATH='/usr/lib/python3/dist-packages/' py.test-3 -p no:cacheprovider --cov=plinth --cov-report=html:debci/htmlcov --cov-report=term
Depends: e2fsprogs, git, python3-pytest, python3-pytest-cov, python3-pytest-django, python3-tomli, @
Restrictions: breaks-testbed
#
# Try to access the FreedomBox web interface.
#
# iptables package installs alternatives files, with iptables-nft as default alternative.
# Without it, firewalld has this error: INVALID_IPV: 'ipv4' is not a valid backend or is unavailable
#
Tests: access-web-interface
Depends: iptables, @
Restrictions: needs-root, isolation-machine, breaks-testbed

View File

@ -13,7 +13,7 @@ SCRIPTS_DIR=scripts
manual-pdfs=$(foreach lang,$(MANUAL_LANGUAGES),manual/$(lang)/freedombox-manual.pdf)
manual-xmls=$(patsubst %.pdf,%.xml,$(manual-pdfs))
OUTPUTS=$(manual-pdfs) freedombox.1 freedombox-cmd.1
OUTPUTS=$(manual-pdfs) plinth.1
INSTALL_OPTS=-D --mode=644
@ -33,7 +33,7 @@ endif
all: $(OUTPUTS) manual-pages
install: all
install $(INSTALL_OPTS) -t $(MAN_INSTALL_DIR)/man1 freedombox.1
install $(INSTALL_OPTS) -t $(MAN_INSTALL_DIR)/man1 plinth.1
for file in $(manual-pages-part-html) $(manual-pdfs); do \
install $(INSTALL_OPTS) -t $(INSTALL_DIR)/$$(dirname $${file}) \
$${file} ; \
@ -109,25 +109,20 @@ manual-pages-xml:=$(patsubst %.raw.wiki, %.xml, $(manual-pages-raw-wiki))
manual-pages: $(manual-pages-part-html)
$(manual-pdfs): %.pdf: %.xml
@echo "[PDF] $<"
@xmlto $(XMLTO_DEBUG_FLAGS) --with-dblatex pdf -o $(dir $@) $< 2> /dev/null
xmlto $(XMLTO_DEBUG_FLAGS) --with-dblatex pdf -o $(dir $@) $<
$(manual-pages-part-html): %.part.html: %.xml
@echo "[XSLT] $<"
@xsltproc /usr/share/xml/docbook/stylesheet/docbook-xsl/xhtml5/docbook.xsl $< 2> /dev/null | \
xsltproc /usr/share/xml/docbook/stylesheet/docbook-xsl/xhtml5/docbook.xsl $< | \
perl -pe 'BEGIN {undef $$/} s/.*<body[^>]*>(.*)<\/body\s*>.*/$$1/si' > $@
@rm -f docbook.css
@rm -f $(dir $@)docbook.css
$(manual-xmls) $(manual-pages-xml): %.xml: %.raw.wiki $(SCRIPTS_DIR)/wikiparser.py
@echo "[WIKIPARSE] $<"
@$(SCRIPTS_DIR)/wikiparser.py $< | xmllint --format - > $@
$(SCRIPTS_DIR)/wikiparser.py $< | xmllint --format - > $@
%.1: %.xml
@echo "[MAN] $<"
@xmlto man $< 2> /dev/null
xmlto man $<
.PHONY: clean
clean:
@echo "[RM] {part-htmls} {xmls} {manuals} {outputs}"
@rm -f $(manual-pages-part-html) $(manual-pages-xml) $(manual-xmls)
@rm -f $(OUTPUTS)
rm -f $(manual-pages-part-html) $(manual-pages-xml) $(manual-xmls)
rm -f $(OUTPUTS)

View File

@ -19,7 +19,6 @@ Install the following Debian packages:
* python3-sphinx
* python3-sphinx-autobuild
* python3-sphinx-book-theme
* python3-django
* python3-django-axes
* python3-django-captcha

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1,15 @@
{%- extends "alabaster/layout.html" %}
{%- block footer %}
<div class="footer">
{% if show_copyright %}&copy;{{ copyright }} | {% endif %}
Licensed under the <a href="https://creativecommons.org/licenses/by-sa/4.0/">
CC BY-SA 4.0</a> license
{%- if show_source and has_source and sourcename %}
{% if show_copyright or theme_show_powered_by %}|{% endif %}
<a href="{{ pathto('_sources/' + sourcename, true)|e }}"
rel="nofollow">{{ _('Page source') }}</a>
{%- endif %}
</div>
{% endblock %}

View File

@ -15,19 +15,18 @@ list see the documentation: http://www.sphinx-doc.org/en/master/config
#
import os
import sys
from datetime import datetime
import django
sys.path.insert(0, os.path.abspath('../../'))
os.environ['DJANGO_SETTINGS_MODULE'] = 'freedombox.settings'
os.environ['DJANGO_SETTINGS_MODULE'] = 'plinth.settings'
django.setup()
# -- Project information -----------------------------------------------------
# pylint: disable=invalid-name
project = 'FreedomBox'
copyright = f'2021-{datetime.now().year}'
copyright = '2021-2024, FreedomBox Authors'
author = 'FreedomBox Authors'
# The short X.Y version
@ -83,23 +82,15 @@ pygments_style = None
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'sphinx_book_theme'
html_theme = 'alabaster'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#
html_theme_options = {
'home_page_in_toc': True,
'repository_provider': 'gitlab',
'repository_url': 'https://salsa.debian.org/freedombox-team/freedombox/',
'use_edit_page_button': True,
'use_source_button': True,
'use_repository_button': True,
'use_issues_button': True,
'path_to_docs': 'doc/dev/',
'extra_footer': 'Licensed under the <a href="https://creativecommons.org/'
'licenses/by-sa/4.0/">CC BY-SA 4.0</a> license.',
'fixed_sidebar': True,
'show_related': True,
}
# Add any paths that contain custom static files (such as style sheets) here,
@ -230,4 +221,3 @@ autodoc_mock_imports = [
]
html_favicon = './_static/favicon.ico'
html_logo = './_static/logo.svg'

View File

@ -6,5 +6,5 @@ Action Utils
Several utilities to help with the implementation of actions and diagnostic
tests are implemented in this module.
.. automodule:: freedombox.action_utils
.. automodule:: plinth.action_utils
:members:

View File

@ -1,14 +1,16 @@
.. SPDX-License-Identifier: CC-BY-SA-4.0
Privileged Actions
^^^^^^^^^^^^^^^^^^
Actions
^^^^^^^
FreedomBox Service performs most changes to the underlying operating system
using remote calls into the **freedombox-privileged** daemon or other daemons
such as NetworkManager and UDisks.
FreedomBox's web front does not directly change any aspect of the underlying
operating system. Instead, it calls upon **actions**, as shell commands. Actions
live in ``/usr/share/plinth/actions`` directory. They require no interaction
beyond passing command line arguments or taking sensitive arguments via stdin.
They change the operation of the services and apps of the FreedomBox and nothing
else. These actions are also directly usable by a skilled administrator.
The following documentation for the ``actions`` module which contains function
decorators to mark a method to run with privileged permissions.
The following documentation for the ``actions`` module.
.. automodule:: freedombox.actions
.. automodule:: plinth.actions
:members: privileged

View File

@ -3,5 +3,5 @@
App
---
.. autoclass:: freedombox.app.App
.. autoclass:: plinth.app.App
:members:

View File

@ -3,5 +3,5 @@
Backups
^^^^^^^
.. autoclass:: freedombox.modules.backups.components.BackupRestore
.. autoclass:: plinth.modules.backups.components.BackupRestore
:members:

View File

@ -3,5 +3,5 @@
Configuration
^^^^^^^^^^^^^
.. autoclass:: freedombox.config.DropinConfigs
.. autoclass:: plinth.config.DropinConfigs
:members:

View File

@ -1,7 +0,0 @@
.. SPDX-License-Identifier: CC-BY-SA-4.0
Container
^^^^^^^^^
.. autoclass:: freedombox.container.Container
:members:

View File

@ -3,8 +3,8 @@
Coturn
^^^^^^
.. autoclass:: freedombox.modules.coturn.components.TurnConsumer
.. autoclass:: plinth.modules.coturn.components.TurnConsumer
:members:
.. autoclass:: freedombox.modules.coturn.components.TurnConfiguration
.. autoclass:: plinth.modules.coturn.components.TurnConfiguration
:members:

View File

@ -3,11 +3,11 @@
Daemon
^^^^^^
.. autoclass:: freedombox.daemon.Daemon
.. autoclass:: plinth.daemon.Daemon
:members:
.. autoclass:: freedombox.daemon.RelatedDaemon
.. autoclass:: plinth.daemon.RelatedDaemon
:members:
.. autoclass:: freedombox.daemon.SharedDaemon
.. autoclass:: plinth.daemon.SharedDaemon
:members:

View File

@ -3,8 +3,8 @@
Domain Name
^^^^^^^^^^^
.. autoclass:: freedombox.modules.names.components.DomainName
.. autoclass:: plinth.modules.names.components.DomainName
:members:
.. autoclass:: freedombox.modules.names.components.DomainType
.. autoclass:: plinth.modules.names.components.DomainType
:members:

View File

@ -3,5 +3,5 @@
EnableState
^^^^^^^^^^^
.. autoclass:: freedombox.app.EnableState
.. autoclass:: plinth.app.EnableState
:members:

View File

@ -3,8 +3,8 @@
Firewall
^^^^^^^^
.. autoclass:: freedombox.modules.firewall.components.Firewall
.. autoclass:: plinth.modules.firewall.components.Firewall
:members:
.. autoclass:: freedombox.modules.firewall.components.FirewallLocalProtection
.. autoclass:: plinth.modules.firewall.components.FirewallLocalProtection
:members:

View File

@ -3,5 +3,5 @@
Frontpage
^^^^^^^^^
.. autoclass:: freedombox.frontpage.Shortcut
.. autoclass:: plinth.frontpage.Shortcut
:members:

View File

@ -22,25 +22,24 @@ Components
staticfiles
backups
coturn
container
Base Classes
^^^^^^^^^^^^
.. autoclass:: freedombox.app.Component
.. autoclass:: plinth.app.Component
:members:
.. autoclass:: freedombox.app.LeaderComponent
.. autoclass:: plinth.app.LeaderComponent
:members:
.. autoclass:: freedombox.app.FollowerComponent
.. autoclass:: plinth.app.FollowerComponent
:members:
Other Classes
^^^^^^^^^^^^^
.. autoclass:: freedombox.diagnostic_check.DiagnosticCheck
.. autoclass:: plinth.diagnostic_check.DiagnosticCheck
:members:
.. autoclass:: freedombox.diagnostic_check.Result
.. autoclass:: plinth.diagnostic_check.Result
:members:

View File

@ -3,5 +3,5 @@
Info
^^^^
.. autoclass:: freedombox.app.Info
.. autoclass:: plinth.app.Info
:members:

View File

@ -3,5 +3,5 @@
Let's Encrypt
^^^^^^^^^^^^^
.. autoclass:: freedombox.modules.letsencrypt.components.LetsEncrypt
.. autoclass:: plinth.modules.letsencrypt.components.LetsEncrypt
:members:

View File

@ -3,5 +3,5 @@
Menu
^^^^
.. autoclass:: freedombox.menu.Menu
.. autoclass:: plinth.menu.Menu
:members:

View File

@ -3,5 +3,5 @@
Packages
^^^^^^^^
.. autoclass:: freedombox.package.Packages
.. autoclass:: plinth.package.Packages
:members:

View File

@ -3,5 +3,5 @@
StaticFiles
^^^^^^^^^^^
.. autoclass:: freedombox.web_server.StaticFiles
.. autoclass:: plinth.web_server.StaticFiles
:members:

View File

@ -3,5 +3,5 @@
Users
^^^^^
.. autoclass:: freedombox.modules.users.components.UsersAndGroups
.. autoclass:: plinth.modules.users.components.UsersAndGroups
:members:

View File

@ -3,8 +3,8 @@
Webserver
^^^^^^^^^
.. autoclass:: freedombox.modules.apache.components.Webserver
.. autoclass:: plinth.modules.apache.components.Webserver
:members:
.. autoclass:: freedombox.modules.apache.components.WebserverRoot
.. autoclass:: plinth.modules.apache.components.Uwsgi
:members:

View File

@ -3,8 +3,8 @@
Forms
-----
.. autoclass:: freedombox.forms.DomainSelectionForm
.. autoclass:: plinth.forms.DomainSelectionForm
:members:
.. autoclass:: freedombox.forms.CheckboxSelectMultipleWithReadOnly
.. autoclass:: plinth.forms.CheckboxSelectMultipleWithReadOnly
:members:

View File

@ -3,5 +3,5 @@
Notification
^^^^^^^^^^^^
.. autoclass:: freedombox.notification.Notification
.. autoclass:: plinth.notification.Notification
:members:

View File

@ -3,5 +3,5 @@
Views
-----
.. autoclass:: freedombox.views.AppView
.. autoclass:: plinth.views.AppView
:members:

View File

@ -6,56 +6,56 @@ Full Code
Transmission app is already included in FreedomBox. Here is the full source for
the module for reference.
freedombox/modules/transmission/__init__.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/__init__.py
:language: python3
freedombox/modules/transmission/forms.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/forms.py
:language: python3
freedombox/modules/transmission/manifest.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/manifest.py
:language: python3
freedombox/modules/transmission/privileged.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/privileged.py
:language: python3
freedombox/modules/transmission/urls.py
plinth/modules/transmission/__init__.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/urls.py
.. literalinclude:: ../../../plinth/modules/transmission/__init__.py
:language: python3
freedombox/modules/transmission/views.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
plinth/modules/transmission/forms.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/views.py
.. literalinclude:: ../../../plinth/modules/transmission/forms.py
:language: python3
freedombox/modules/transmission/data/usr/share/freedombox/modules-enabled/transmission
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
plinth/modules/transmission/manifest.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/data/usr/share/freedombox/modules-enabled/transmission
.. literalinclude:: ../../../plinth/modules/transmission/manifest.py
:language: python3
plinth/modules/transmission/privileged.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../plinth/modules/transmission/privileged.py
:language: python3
plinth/modules/transmission/urls.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../plinth/modules/transmission/urls.py
:language: python3
plinth/modules/transmission/views.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../plinth/modules/transmission/views.py
:language: python3
plinth/modules/transmission/data/usr/share/freedombox/modules-enabled/transmission
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../plinth/modules/transmission/data/usr/share/freedombox/modules-enabled/transmission
:language: text
freedombox/modules/transmission/data/usr/share/freedombox/etc/apache2/conf-available/transmission-plinth.conf
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
plinth/modules/transmission/data/usr/share/freedombox/etc/apache2/conf-available/transmission-plinth.conf
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/data/usr/share/freedombox/etc/apache2/conf-available/transmission-plinth.conf
.. literalinclude:: ../../../plinth/modules/transmission/data/usr/share/freedombox/etc/apache2/conf-available/transmission-plinth.conf
:language: apache
freedombox/modules/transmission/tests/__init__.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
plinth/modules/transmission/tests/__init__.py
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../freedombox/modules/transmission/tests/__init__.py
.. literalinclude:: ../../../plinth/modules/transmission/tests/__init__.py
:language: python3

View File

@ -3,11 +3,11 @@
Part 4: Components
------------------
Each :class:`~freedombox.app.App` contains various
:class:`~freedombox.app.Component` components that each provide one small
functionality needed by the app. Each of these components are instantiated and
added to the app as children. The :class:`~freedombox.menu.Menu` object added in
the previous step is one such component.
Each :class:`~plinth.app.App` contains various :class:`~plinth.app.Component`
components that each provide one small functionality needed by the app. Each of
these components are instantiated and added to the app as children. The
:class:`~plinth.menu.Menu` object added in the previous step is one such
component.
Providing basic information about the app
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@ -20,7 +20,7 @@ function normally.
from django.utils.translation import gettext_lazy as _
from freedombox import app as app_module
from plinth import app as app_module
from . import manifest
@ -44,7 +44,7 @@ needs to be called again. name, icon_filename, description, manual_page,
clients, and tags provide information that is shown on the app's main page. The
donation_url encourages our users to contribute to upstream projects in order
ensure their long term sustainability. More information about the parameters is
available in :class:`~freedombox.app.Info` class documentation.
available in :class:`~plinth.app.Info` class documentation.
The description of app should provide basic information on what the app is about
and how to use it. It is impractical, however, to explain everything about the
@ -82,13 +82,13 @@ running in the system to work. When the app is enabled, the daemon should be
enabled. When the app is disabled, the daemon should be disabled. We should also
show the status of whether the daemon is running in the app's view. All of these
concerns are automatically handled by the framework if a
:class:`~freedombox.daemon.Daemon` component is added to the app. Let us do that
in our app's class.
:class:`~plinth.daemon.Daemon` component is added to the app. Let us do that in
our app's class.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox.daemon import Daemon
from plinth.daemon import Daemon
class TransmissionApp(app_module.App):
...
@ -101,8 +101,8 @@ in our app's class.
self.add(daemon)
The first argument to instantiate the :class:`~freedombox.daemon.Daemon` class
is a unique ID. The second is the name of the `systemd
The first argument to instantiate the :class:`~plinth.daemon.Daemon` class is a
unique ID. The second is the name of the `systemd
<https://www.freedesktop.org/wiki/Software/systemd/>`_ unit file which manages
the daemon. The final argument is the list of ports that this daemon listens on.
This information is used to check if the daemon is listening on the expected
@ -113,14 +113,14 @@ Package management
Transmission server is installed through a set of packages fetched from Debian
package repositories. The packages required for this are passed on to a
:class:`~freedombox.package.Packages` component which takes care of installing,
:class:`~plinth.package.Packages` component which takes care of installing,
upgrading and uninstalling the Debian packages. An app might require one or more
Debian packages to be installed.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox.package import Packages
from plinth.package import Packages
class TransmissionApp(app_module.App):
@ -146,13 +146,13 @@ write a configuration snippet for Apache, the default web server on FreedomBox.
This configuration snippet needs to be activated when our app is enabled. The
configuration snippet needs to be deactivated when our app is disabled. All of
these concerns are automatically handled by the framework if a
:class:`~freedombox.modules.apache.components.Webserver` component is added to
the app. Let us do that in our app's class.
:class:`~plinth.modules.apache.components.Webserver` component is added to the
app. Let us do that in our app's class.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox.modules.apache.components import Webserver
from plinth.modules.apache.components import Webserver
class TransmissionApp(app_module.App):
...
@ -165,13 +165,13 @@ the app. Let us do that in our app's class.
self.add(webserver)
The first argument to instantiate the
:class:`~freedombox.modules.apache.components.Webserver` class is a unique ID.
The second is the name of the Apache2 web server configuration snippet that
contains the directives to proxy Transmission web interface via Apache2. We then
need to create the configuration file itself in ``transmission-plinth.conf``.
The final argument is the list of URLs that the app exposes to the users of the
app. This information is used to check if the URLs are accessible as expected
when the user requests diagnostic tests on the app.
:class:`~plinth.modules.apache.components.Webserver` class is a unique ID. The
second is the name of the Apache2 web server configuration snippet that contains
the directives to proxy Transmission web interface via Apache2. We then need to
create the configuration file itself in ``transmission-plinth.conf``. The
final argument is the list of URLs that the app exposes to the users of the app.
This information is used to check if the URLs are accessible as expected when
the user requests diagnostic tests on the app.
Simply creating and shipping a configuration file into ``/etc`` folder creates
some hassles. Consider the following scenario: a debian package, either
@ -181,13 +181,13 @@ debian package provides a newer version of the configuration file with, say,
more tweaks. As a result, a configuration file prompt is shown to the user
during package upgrade process. In case of unattended upgrades, the package is
not upgraded at all. To avoid such problems, FreedomBox provides the
:class:`~freedombox.config.DropinConfigs` component. Let us add it in our app's
:class:`~plinth.config.DropinConfigs` component. Let us add it in our app's
class.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox.config import DropinConfigs
from plinth.config import DropinConfigs
class TransmissionApp(app_module.App):
...
@ -200,9 +200,9 @@ class.
])
self.add(dropin_configs)
The first argument to instantiate the :class:`~freedombox.config.DropinConfigs`
The first argument to instantiate the :class:`~plinth.config.DropinConfigs`
class is the unique ID. The second argument is the list of configuration files
as paths is ``/etc/``. The :class:`~freedombox.config.DropinConfigs` component
as paths is ``/etc/``. The :class:`~plinth.config.DropinConfigs` component
requires that a file be shipped into ``/usr/share/freedombox/etc`` instead of
``/etc``. The component will handle the creation of a symlink from ``/usr`` path
to ``/etc`` path. To ship the file, we can simply create file in the ``data/``
@ -231,13 +231,13 @@ special port since the web ports are always kept open. However, it is still good
to specify that we operate on http/https ports so that users can be provided
this information along with additional information on whether the service is
available over Internet. Create the
:class:`~freedombox.modules.firewall.components.Firewall` component during app
:class:`~plinth.modules.firewall.components.Firewall` component during app
initialization.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox.modules.firewall.components import Firewall
from plinth.modules.firewall.components import Firewall
class TransmissionApp(app_module.App):
...
@ -268,7 +268,7 @@ with the FreedomBox framework in ``__init.py__``.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox.modules.users.components import UsersAndGroups
from plinth.modules.users.components import UsersAndGroups
class TransmissionApp(app_module.App):
...
@ -291,8 +291,10 @@ file ``transmission-plinth.conf``, add the following.
<Location /transmission>
...
Use AuthOpenIDConnect
Use RequireGroup bit-torrent
Include includes/freedombox-single-sign-on.conf
<IfModule mod_auth_pubtkt.c>
TKTAuthToken "admin" "bit-torrent"
</IfModule>
</Location>
Showing a shortcut in the front page
@ -303,12 +305,12 @@ since only they can configure the app. Other users who have access to this app
should have a way of discovering the app. This is done by providing a link in
the front page of FreedomBox web interface. This is the page that user's see
when they visit FreedomBox. To provide this shortcut, a
:class:`~freedombox.frontpage.Shortcut` component can added to the app.
:class:`~plinth.frontpage.Shortcut` component can added to the app.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox import frontpage
from plinth import frontpage
group = ('bit-torrent', 'Download files using BitTorrent applications')
@ -344,15 +346,15 @@ Each app in FreedomBox needs to provide the ability to backup and restore its
configuration and data. Apart from providing durability to users' data, this
allows the user to migrate from one machine to another. FreedomBox framework
provides a component for handling these operations. Create the
:class:`~freedombox.modules.backups.components.BackupRestore` component during
app initialization.
:class:`~plinth.modules.backups.components.BackupRestore` component during app
initialization.
In ``__init__.py``, add:
.. code-block:: python3
:caption: ``__init__.py``
from freedombox.modules.backups.components import BackupRestore
from plinth.modules.backups.components import BackupRestore
from . import manifest

View File

@ -101,7 +101,7 @@ the user submits it. Let us implement that in ``views.py``.
from django.contrib import messages
from freedombox import actions, views
from plinth import actions, views
from .forms import TransmissionForm
@ -161,8 +161,8 @@ for transmission daemon. We will do this by creating a file ``privileged.py``.
import json
import pathlib
from freedombox import action_utils
from freedombox.actions import privileged
from plinth import action_utils
from plinth.actions import privileged
_transmission_config = pathlib.Path('/etc/transmission-daemon/settings.json')
@ -187,8 +187,8 @@ for transmission daemon. We will do this by creating a file ``privileged.py``.
action_utils.service_reload('transmission-daemon')
This is a simple Python3 module but it runs in a separate process with superuser
privileges due to the :meth:`freedombox.actions.privileged` decorator. All such
privileges due to the :meth:`plinth.actions.privileged` decorator. All such
methods must have full type annotations for the method parameters. Further, the
parameters and return value must be JSON serializable. It may use various helper
utilities provided by the FreedomBox framework in :obj:`freedombox.action_utils`
to easily perform it's duties.
utilities provided by the FreedomBox framework in :obj:`plinth.action_utils` to
easily perform it's duties.

View File

@ -13,9 +13,9 @@ framework as part of the components used by an app. FreedomBox takes care of
calling the diagnostics method and displaying the list in a formatted manner.
To implement additional diagnostic tests on top of those provided by the
framework, the method :meth:`freedombox.app.App.diagnose` has to be overridden
or in a component that belongs to the app, the method
:meth:`freedombox.app.Component.diagnose` has to be overridden. The methods must
framework, the method :meth:`plinth.app.App.diagnose` has to be overridden or in
a component that belongs to the app, the method
:meth:`plinth.app.Component.diagnose` has to be overridden. The methods must
return a list in which each item is the result of a test performed. The item
itself is a two-tuple containing the display name of the test followed by the
result as ``passed``, ``failed`` or ``error``.
@ -36,7 +36,7 @@ result as ``passed``, ``failed`` or ``error``.
The user can trigger the diagnostics test by going to **System -> Diagnostics**
page. This runs diagnostics for all the applications. Users can also run
diagnostics specifically for this app from the app's page. A diagnostics menu
item is shown by the :class:`freedombox.views.AppView` and `app.html` template
item is shown by the :class:`plinth.views.AppView` and `app.html` template
automatically when ``diagnose()`` method is overridden in the app or a
component.

View File

@ -11,8 +11,8 @@ Creating the project structure
Create a directory structure as follows with empty files. We will fill them up
in a step-by-step manner::
─┬ <freedombox_root>/
└─┬ freedombox/
─┬ <plinth_root>/
└─┬ plinth/
└─┬ modules/
└─┬ transmission/
├─ __init__.py
@ -41,46 +41,46 @@ The file ``__init__.py`` indicates that the directory in which it is present is
a Python module. For now, it is an empty file.
FreedomBox's build system will automatically install the
``freedombox/modules/transmission`` directory (along with other files described
``plinth/modules/transmission`` directory (along with other files described
later) to an appropriate location. If you are creating an app that stays
independent and outside of FreedomBox source tree, then build system in your
source tree will need to install it to a proper location on the system. The
``freedombox/modules/`` directory is a Python3 `namespace package
``plinth/modules/`` directory is a Python3 `namespace package
<https://www.python.org/dev/peps/pep-0420/>`_. So, you can install it with the
``freedombox/modules/`` directory structure into any Python path and still be
discovered as ``freedombox.modules.*``.
``plinth/modules/`` directory structure into any Python path and still be
discovered as ``plinth.modules.*``.
Tell FreedomBox that our app exists
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The first thing to do is tell FreedomBox that our app exists. This is done by
writing a small file with the Python import path to our app and placing it in
``freedombox/modules/transmission/data/usr/share/freedombox/modules-enabled/``.
Let us create this file ``transmission``:
``plinth/modules/transmission/data/usr/share/freedombox/modules-enabled/``. Let
us create this file ``transmission``:
.. code-block:: text
:caption: ``freedombox/modules/transmission/data/usr/share/freedombox/modules-enabled/transmission``
:caption: ``plinth/modules/transmission/data/usr/share/freedombox/modules-enabled/transmission``
freedombox.modules.transmission
plinth.modules.transmission
This file is automatically installed to
``/usr/share/freedombox/modules-enabled/`` by FreedomBox's build system. If we
are writing a module that resides independently outside the FreedomBox's source
code, the setup script will need to copy it to the target location. Further, it
is not necessary for the app to be part of the ``freedombox.modules`` namespace.
It can, for example, be ``freedombox_transmission``.
is not necessary for the app to be part of the ``plinth.modules`` namespace. It
can, for example, be ``freedombox_transmission``.
Creating the App class
^^^^^^^^^^^^^^^^^^^^^^
In the FreedomBox framework, each app must be a class derived from the
:class:`freedombox.app.App`. Let us do that in ``__init__.py``. We will fill up
the class later.
:class:`plinth.app.App`. Let us do that in ``__init__.py``. We will fill up the
class later.
.. code-block:: python3
:caption: ``__init__.py``
from freedombox import app as app_module
from plinth import app as app_module
class TransmissionApp(app_module.App):
"""FreedomBox app for Transmission."""

View File

@ -22,7 +22,7 @@ write the following:
]
This routes the ``/apps/transmission/`` URL to a view called
``TransmissionAppView`` defined in ``freedombox/modules/transmission/views.py``.
``TransmissionAppView`` defined in ``plinth/modules/transmission/views.py``.
This is no different than how routing URLs is done in Django. See :doc:`Django
URL dispatcher <django:topics/http/urls>` for more information.
@ -36,7 +36,7 @@ a link in FreedomBox web interface. Let us add a link in the apps list. In
.. code-block:: python3
:caption: ``__init__.py``
from freedombox import menu
from plinth import menu
class TransmissionApp(app_module.App):
...
@ -63,7 +63,7 @@ menu item we want to present.
* The third parameter is the name of the icon to use when showing the menu
item. An SVG file and a PNG should be created in the
``freedombox/modules/transmission/static/icons/`` directory.
``plinth/modules/transmission/static/icons/`` directory.
* The fourth parameter is the list of tags to show on the menu item.
@ -87,15 +87,15 @@ view to show the app page for our app. In ``views.py``, let us add a view.
.. code-block:: python3
:caption: ``views.py``
from freedombox import views
from freedombox.modules import transmission
from plinth import views
from plinth.modules import transmission
class TransmissionAppView(views.AppView):
"""Serve configuration page."""
app_id = 'transmission'
The base view :class:`~freedombox.views.AppView` takes care of a lot of details
for us. First, it shows basic information about the app like name, description,
The base view :class:`~plinth.views.AppView` takes care of a lot of details for
us. First, it shows basic information about the app like name, description,
desktop/mobiles clients for the service (described later), link to the manual
page (described later), link to diagnostics button, etc. Then it shows the
status of the app whether it is running and can also present a form for

View File

@ -1,160 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.docbook.org/xml/4.4/docbookx.dtd">
<!--
# SPDX-License-Identifier: AGPL-3.0-or-later
-->
<refentry>
<refmeta>
<refentrytitle><application>freedombox-cmd</application></refentrytitle>
<manvolnum>1</manvolnum>
<refmiscinfo class="manual">FreedomBox Command Line Utility</refmiscinfo>
<refmiscinfo class="version"> </refmiscinfo>
</refmeta>
<refnamediv>
<refname><application>freedombox-cmd</application></refname>
<refpurpose>
command line utility to perform FreedomBox operations
</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>freedombox-cmd</command>
<arg><option>-h, </option><option>--help</option></arg>
<arg choice="req">module</arg>
<arg choice="req">action</arg>
<arg><option>--no-args</option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>
FreedomBox is a community project to develop, design and promote
personal servers running free software for private, personal
communications. It is a networking appliance designed to allow
interfacing with the rest of the Internet under conditions of
protected privacy and data security. It hosts applications such
as blog, wiki, website, social network, email, web proxy and a
Tor relay on a device that can replace a wireless router so that
data stays with the users.
</para>
<para>
freedombox-cmd is a command line interface to some of the operations
performed by FreedomBox. It is typically not needed by the end users who
use FreedomBox's web interface. The command may be used in some cases
while debugging problems, especially where the web interface is not
accessible or when a piece of functionality that is not provided in the
web interface needs to be triggered.
</para>
<para>
The command is simply a client to the FreedomBox's privileged daemon and
relays user's request to it. It waits for the request to complete and
prints the output of the operation or an error message collected form the
daemon. The daemon only allows connections from an pre-allowed list of
user accounts. So, be sure to run the command as 'root' superuser.
</para>
</refsect1>
<refsect1>
<title>Options</title>
<variablelist>
<varlistentry>
<term><option>module</option></term>
<listitem>
<para>
Name of the module from which to execute an action.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>action</option></term>
<listitem>
<para>
Name of the action to execute. It should found in the provided
module.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--no-args</option></term>
<listitem>
<para>
Don't try to read the arguments to the command on the standard
input. Instead, assume that the operation does not have any
arguments and execute the method without arguments.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--help</option></term>
<listitem>
<para>
Show brief help about arguments allowed for this command.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Examples</title>
<example>
<title>Re-run FreedomBox network setup</title>
<synopsis>$ sudo freedombox-cmd networks setup --no-args</synopsis>
<para>
When FreedomBox starts for the first time, it will setup Network Manager
connections suitable for the hardware found. If you wish to re-create
these connections at a later time, you can re-run setup for the Networks
app using the web interface or run this command on a terminal.
</para>
</example>
<example>
<title>Delete a user account from LDAP database</title>
<synopsis>$ echo '{"args": ["USERNAME", "AUTH_USER", "AUTH_PASSWORD"], "kwargs": {}}' | sudo freedombox-cmd users remove_user</synopsis>
<para>
USERNAME is the name of the user account that must be removed. AUTH_USER
is name of the user account that is authorizing this operation.
AUTH_PASSWORD is the password for user account that is authorizing this
operation. This operation may be needed if FreedomBox's sqlite3 database
is wiped, removing the user accounts in the database but the
corresponding entries from LDAP database are not removed. A new user
with that name can't be created until the LDAP account is also removed.
</para>
</example>
<example>
<title>Set the logging mode to persistent</title>
<synopsis>$ echo '{"args": ["persistent"], "kwargs": {}}' | sudo freedombox-cmd config set_logging_mode</synopsis>
<para>
By default, FreedomBox sets up systemd-journald to 'volatile' logging.
This means that logs will not be stored on the disk and will be lost
after a reboot. If you are tackling a problem and wish to store the logs
persistently, you can change the setting in the web interface or run
this command.
</para>
</example>
</refsect1>
<refsect1>
<title>Bugs</title>
<para>
See <ulink
url="https://salsa.debian.org/freedombox-team/freedombox/issues">FreedomBox
issue tracker</ulink> for a full list of known issues and TODO items.
</para>
</refsect1>
<refsect1>
<title>Author</title>
<para>
<author>
<firstname>FreedomBox Developers</firstname>
<contrib>Original author</contrib>
</author>
</para>
</refsect1>
</refentry>

View File

@ -43,7 +43,7 @@ An alternative to downloading these images is to [[InstallingDebianOn/Allwinner|
=== Known Issues ===
* Revision G2 (written on the board): The current stable Debian11/bullseye image (from 2021-08-27) '''will not start an Ethernet connection!''' This means you can not continue with the installation process at first. This can be fixed by following [[https://wiki.debian.org/InstallingDebianOn/Allwinner#Olimex_A20-OLinuXino-LIME2__rev._F_and_newer_and_Debian11.2F_bullseye_kernel | this description]] after you [[https://wiki.debian.org/FreedomBox/Download#Installation | copied the image to your SD card]]. Or you Download and use the [[https://ftp.freedombox.org/pub/freedombox/hardware/pioneer/|Pioneer Edition image]] to fix the issue. It contains a slightly [[https://salsa.debian.org/freedombox-team/u-boot/commit/2cb18893ef|modified u-boot]].
* Revision G2 (written on the board): The current stable Debian11/bullseye image (from 2021-08-27) '''will not start an Ethernet connection!''' This means you can not continue with the installation process at first. This can be fixed by following [[https://wiki.debian.org/InstallingDebianOn/Allwinner#Olimex_A20-OLinuXino-LIME2__rev._F_and_newer_and_Debian11.2F_bullseye_kernel | this description]] after you [[https://wiki.debian.org/FreedomBox/Download#Installation | copied the image to your SD card]]. Or you Download and use the [[https://ftp.freedombox.org/pub/freedombox/pioneer/|Pioneer Edition image]] to fix the issue. It contains a slightly [[https://salsa.debian.org/freedombox-team/u-boot/commit/2cb18893ef|modified u-boot]].
* Revision G2 hardware has also [[DebianBug:927397|poor performance when transmitting Ethernet data in Gigabit mode]] for older FreedomBox releases. The procedure above or for rev. C fixes this.
* Revision C hardware has [[DebianBug:845128|poor performance when receiving Ethernet data in Gigabit mode]]. To workaround the problem, you can switch to 100 Mbps mode instead of Gigabit mode. Login to your !FreedomBox as root (or plugin the SD card into another computer) and create the file /etc/NetworkManager/dispatcher.d/20-fix-ethernet-problem with the following contents:

View File

@ -2,7 +2,7 @@
{{attachment:apu1d.jpg|PC Engines APU 1D|width=632,height=319}}
[[https://www.pcengines.ch/apu.htm|PC Engines APU]] boards are single board computers with 3 Gigabit ethernet ports, a powerful AMD64 APU and Coreboot firmware. !FreedomBox images built for AMD64 machines are tested to work well for [[http://www.pcengines.ch/apu1d.htm|APU1D]] and [[http://www.pcengines.ch/apu3b2.htm|APU3B ]] models and are expected to work also well on the other, very similar versions.
[[http://www.pcengines.ch/apu1d.htm|PC Engines APU 1D]] is a single board computer with 3 Gigabit ethernet ports, a powerful AMD APU and Coreboot firmware. !FreedomBox images built for AMD64 machines are tested to work well for it.
'''Important:''' Read [[FreedomBox/Hardware|general advice]] about hardware before building a !FreedomBox with this single board computer.
@ -21,26 +21,21 @@ Although untested, the following similar hardware is also likely to work well wi
* [[http://www.pcengines.ch/apu2c4.htm|apu2c4]]
* [[http://www.pcengines.ch/apu3a2.htm|apu3a2]]
* [[http://www.pcengines.ch/apu3a4.htm|apu3a4]]
* [[http://www.pcengines.ch/apu3b2.htm|apu3b2]]
* [[http://www.pcengines.ch/apu3b4.htm|apu3b4]]
=== Installation ===
=== Download ===
!FreedomBox disk [[FreedomBox/Download|images]] for this hardware are available. Follow the instructions on the [[FreedomBox/Download|download]] page to create a !FreedomBox SD card, USB disk, SSD or hard drive and boot into !FreedomBox. Pick the image meant for all amd64 machines.
An alternative to downloading these images is to [[InstallingDebianOn/Alix3d2|install Debian]] on the APU and then [[FreedomBox/Hardware/Debian|install FreedomBox]] on it.
An [[https://github.com/huubsch/APU-Installation-HomeAssistant-Freedombox|installation manual]] tested on the APU3B is available on GitHub, including flashing with UEFI-BIOS
=== Networking ===
The first network port, the left most one in the above picture, is configured by !FreedomBox to be an upstream Internet link and the remaining 2 ports are configured for local computers to connect to.
=== Availability ===
PCEngines announced the [[https://www.pcengines.ch/eol.htm|phase-out]] of these boards in June 2023.
In 2024 [[https://pcengines.github.io/|Dasharo announced the support of APU-boards]] : coreboot + SeaBIOS and coreboot+UEFI.
* Price: 110 - 170 USD (depending on the board and supplier)
* [[http://www.pcengines.ch/order.htm|PC Engines]]
* [[http://www.pcengines.ch/order.htm|Full list of suppliers]]
@ -48,17 +43,18 @@ In 2024 [[https://pcengines.github.io/|Dasharo announced the support of APU-boar
=== Hardware ===
* Open Hardware: No
* CPU: [[http://www.amd.com/en-gb/products/embedded/processors/g-series|AMD G series T40E]]; [[https://teklager.se/en/amd-gx-412tc-cpu-specification/|GX-412TC]], 1 GHz quad core (depending on model)
* RAM: 2 GB DDR3-1066 DRAM - 4 GB (depending on model)
* Storage: SD card, External USB, mSATA module
* CPU: [[http://www.amd.com/en-gb/products/embedded/processors/g-series|AMD G series T40E]]
* RAM: 2 GB DDR3-1066 DRAM
* Storage: SD card, External USB
* Architecture: amd64
* Ethernet: 3 Gigabit Ethernet ports
* WiFi: wle200nx / wle600vx / wle900vx miniPCI express wireless modules
* SATA: 1 mSATA-module and 1 SATA
* !WiFi: None, use a [[FreedomBox/Hardware/USBWiFi|USB WiFi device]]
* SATA: 1 m-SATA and 1 SATA
=== Non-Free Status ===
* Non-free blobs required: No
* !WiFi: Not available
* Boot firmware: [[http://www.pcengines.ch/apu1d.htm|Coreboot]]
## END_INCLUDE
@ -66,4 +62,4 @@ In 2024 [[https://pcengines.github.io/|Dasharo announced the support of APU-boar
<<Include(FreedomBox/Portal)>>
----
CategoryFreedomBox CategoryFreedomBox
CategoryFreedomBox

View File

@ -14,15 +14,13 @@
=== What is User Websites? ===
User websites is a feature that allows any (even non-admin) user on a !FreedomBox to host their own website simply by copying files to well known location in their home directory on the !FreedomBox server. The URL for the website will look like `https://mydomain.example/~myusername/`. The website will be available on the local network and/or the internet according to the network and firewall setup. If the copied files are HTML pages, they will show up as a website. If they are other types of files such as photos or documents. A list of those files is shown and a visitor will be able to view or download them.
User websites is a standard location for webservers to allow host users to expose static files on the filesystem as a website to the local network and/or the internet according to the network and firewall setup.
Apache is the web server used in !FreedomBox and this feature is implemented using an Apache module.
The standard webserver in !FreedomBox is Apache and this is implemented by means of a specific Apache module.
=== Screenshot ===
{{attachment:user-websites-folder.png|User Website copied to FreedomBox using GNOME File Browser}}
{{attachment:user-websites-browser.png|User Website accessed using a browser}}
/* Add when/if an interface is made for FreedomBox */
=== Using User Websites ===
@ -32,8 +30,9 @@ To serve documents, place the files in the designated directory in a !FreedomBox
This directory is: '''public_html'''
Thus, the absolute path for the directory of a user named ''fbx'' with home directory in ''/home/fbx'' will be '''/home/fbx/public_html'''.
The User Websites feature will serve documents placed in this directory when requests for documents with the URI path ''~fbx'' are received. For example, if `mydomain.example` is your domain then a request for the URL `https://mydomain.example/~fbx/photo.jpg` will display the file in `/home/fbx/public_html/photo.jpg`. If a file named ''index.html'' is placed in the directory, it will shown when no file name is provided in the URL. So, the URL `https://mydomain.example/~fbx/` will show the HTML page `/home/fbx/public_html/index.html`
Thus the absolute path for the directory of a user named fbx with home directory in /home/fbx will be '''/home/fbx/public_html'''.
User websites will serve documents placed in this directory when requests for documents with the URI path "~fbx" are received. For the the `example.org` domain thus a request for the document `example.org/~fbx/index.html` will transfer the file in `/home/fbx/public_html/index.html`.
=== Creating public_html folder and uploading documents ===
@ -45,7 +44,7 @@ Linux standard desktop file managers use to support remote filesystem access thr
* Gnome's Nautilus:
1. To lauch Nautilus you can seek its archive icon, or search ether its name or the word "file".
1. At the bottom of the left pane you'll find an option "+ Other locations".
1. It leads you to a list of locations. Find "`freedombox SFTP server`" (english literal for all desktop languages). Click on it. If you don't find this, you can instead type `sftp://username@freedombox.local` in the address bar.
1. It leads you to a list of locations. Find "`freedombox SFTP server`" (english literal for all desktop languages). Click on it.
1. The first time you'll be asked for your user and password. Enter your !FreedomBox user and its password. The dialog will also offer you some options to remember it for some time.
* Plasma file manager AKA Dolphin:
1. Click on the location bar at the top of the window.

View File

@ -37,4 +37,4 @@ The Cubieboard 2 is a single board computer based on the Allwinner A20 processor
CategoryFreedomBox
Cubieboard 2 image is licensed under the [[https://creativecommons.org/licenses/by-sa/2.0/|Creative Commons Attribution-Share Alike 2.0 Generic license]] by [[https://commons.wikimedia.org/wiki/File:Cubieboard_2_-_Top_(14673300334).jpg|Gareth Halfacree]].
Cubieboard 2 image is licensed under a Creative Commons Attribution-!ShareAlike 2.0 Generic License by [[https://www.flickr.com/photos/120586634@N05/14673300334/in/photolist-pMbdDm-omCuYN-o5kVMu-dy9jTD-dy99Kz|Flickr]].

View File

@ -33,9 +33,9 @@ e.g. A university using !MediaWiki running on !FreedomBox as a course wiki wants
'''Configuration:'''
!FreedomBox reads custom shortcuts you have created from various files paths on the server. A shortcuts file can be any file with `.json` extension in the following directories: `/etc/freedombox/custom-shortcuts.json.d/`, `/var/lib/freedombox/custom-shortcuts.json.d/` and `/usr/share/freedombox/custom-shortcuts.json.d/`. Or they can be a file named `custom-shortcuts.json` in these directories: `/etc/freedombox/`, `/etc/plinth/` (only for compatibility), `/var/lib/freedombox/` and `/usr/share/freedombox/`. The file should follow the same JSON schema as the !FreedomBox API. You can refer to the JSON schema by visiting `https://<my-freedombox-url>/plinth/api/1/shortcuts`.
Create a file called `custom-shortcuts.json` in Plinth's configuration directory `/etc/plinth` and add additional shortcuts in JSON format. The file should have follow the same JSON schema as the Plinth API. You can refer to the JSON schema by visiting https://<my-freedombox-url>/plinth/api/1/shortcuts.
As an example, to add one additional shortcut for [[https://nextcloud.com|NextCloud]] app, create a file called `/etc/freedombox/custom-shortcuts.json.d/nextcloud.json` (create directories as needed).
An example file adding one additional shortcut for [[https://nextcloud.com|NextCloud]].
{{{#!highlight json
{
@ -55,9 +55,9 @@ As an example, to add one additional shortcut for [[https://nextcloud.com|NextCl
}
}}}
The corresponding icons for the shortcuts listed in the above file should be placed in the directory `/var/www/plinth/custom/static/icons/`. The file names of the icons should match with those provided in `/etc/freedombox/custom-shortcuts.json.d/nextcloud.json`.
The corresponding icons for the shortcuts listed in the above file should be placed in the directory `/var/www/plinth/custom/static/icons/`. The file names of the icons should match with those provided in `/etc/plinth/custom-shortcuts.json`.
After adding an entry for !NextCloud in `nextcloud.json` and an icon, restart Plinth by executing the command {{{ systemctl restart plinth }}} on the !FreedomBox. You can also restart the !FreedomBox from the web interface.
After adding an entry for !NextCloud in custom-shortcuts.json and an icon, restart Plinth by executing the command {{{ systemctl restart plinth }}} on the !FreedomBox. You can also restart the !FreedomBox from the web interface.
After restart the Plinth home page will display an additional shortcut for !NextCloud as shown below: <<BR>>
{{attachment:nextcloud-frontpage-shortcut.png|NextCloud custom shortcut on the Plinth home page}}

View File

@ -13,7 +13,7 @@
!FreedomBox is a [[DebianPureBlends|pure blend]] of Debian. This means that all the work on !FreedomBox is available in Debian as packages. It also means that any machine running Debian can be turned into a !FreedomBox.
This page describes the process of installing !FreedomBox on a Debian system. Currently, !FreedomBox works in Debian Stable (trixie), Testing (forky), and Unstable (sid).
This page describes the process of installing !FreedomBox on a Debian system. Currently, !FreedomBox works in Debian Stable (bookworm), Testing (trixie), and Unstable (sid).
'''Important:''' Read [[FreedomBox/Hardware|general advice]] about hardware before building a !FreedomBox with this approach.
@ -21,15 +21,13 @@ This page describes the process of installing !FreedomBox on a Debian system. Cu
'''Use a fresh Debian installation'''
Installing !FreedomBox changes your Debian system in many important ways. This includes installing a firewall and regenerating server certificates. It is hence recommended that you install !FreedomBox on a fresh Debian installation instead of an existing setup.
During installation of Debian, it is recommended that you choose btrfs as the filesystem for the root partition. Btrfs filesystem is needed for the Snapshots feature to work.
}}}
=== Installing on Debian 13 (trixie) or newer ===
=== Installing on Debian 12 (bookworm) or newer ===
Check the Troubleshooting section below, for any tips or workarounds that might help during the install.
1. [[InstallingDebianOn|Install Debian]] 13 (Trixie) or newer on your hardware. During installation choosing "Btrfs" for root filesystem type is recommended as !FreedomBox uses it take regular snapshots of the system.
1. [[InstallingDebianOn|Install Debian]] 12 (Bookworm) or newer on your hardware. During installation choosing "Btrfs" for root filesystem type is recommended as !FreedomBox uses it take regular snapshots of the system.
1. Update your package list.
@ -49,16 +47,6 @@ $ sudo DEBIAN_FRONTEND=noninteractive apt-get install freedombox
1. You can start [[FreedomBox/Manual/QuickStart|using]] !FreedomBox. During initial wizard, you will need to enter the secret noted above.
=== Difference between Debian Package and Disk Image ===
Following are the differences between setup using a !FreedomBox image vs. installing !FreedomBox using a Debian package on an existing Debian installation:
1. '''Filesystem:''' The disk images have btrfs as the filesystem. When installing a Debian package, the existing filesystem is not altered. The snapshots feature is currently only available if btrfs is the filesystem. So, for those wanting to install freedombox .deb package, it is recommended that they install Debian on a btrfs filesystem first.
1. '''First Wizard:''' When installing from a Debian package, !FreedomBox will ask for a secret (stored at a path on the disk) during first wizard. The secret is for security and has no relevance after the first wizard is completed. This secret is not asked if first wizard is run from a disk image (as hardware is expected to be in possession of the user and the user won't be able to easily peak the secret on the disk without running the first wizard first).
1. '''Networking:''' When disk image is booted, all the Ethernet and Wi-Fi devices are automatically configured to be managed by Network Manager. When !FreedomBox is installed from Debian package, existing network connections are not reconfigured. These network interfaces can later be reconfigured (by commenting out entries in /etc/network/interfaces) to be managed by Network Manager.
=== Tips and Troubleshooting ===
1. !FreedomBox uses !NetworkManager to manage network configuration. If you have configured your network interfaces using Debian installer or by editing `/etc/network/interfaces`, !FreedomBox will not manage those interfaces. (See [[https://bugs.debian.org/797614|bug #797614]].) To let !FreedomBox/NetworkManager manage your network interfaces, edit the `/etc/network/interfaces` manually and ensure that it contains only the following:

View File

@ -44,11 +44,36 @@ It is important to verify the images you have downloaded to ensure that the file
* First open a terminal and import the public keys of the !FreedomBox developers who built the images:
{{{
$ gpg --keyserver keyserver.ubuntu.com --recv-keys BCBEBD57A11F70B23782BC5736C361440C9BC971
$ gpg --keyserver keyserver.ubuntu.com --recv-keys 7D6ADB750F91085589484BE677C0C75E7B650808
# This is the FreedomBox CI server's key
$ gpg --keyserver keyserver.ubuntu.com --recv-keys 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
# This is the new FreedomBox CI server's key
$ gpg --keyserver keyserver.ubuntu.com --recv-keys D4B069124FCF43AA1FCD7FBC2ACFC1E15AF82D8C
}}}
* Next, verify the fingerprint of the public keys:
{{{
$ gpg --fingerprint BCBEBD57A11F70B23782BC5736C361440C9BC971
pub 4096R/0C9BC971 2011-11-12
Key fingerprint = BCBE BD57 A11F 70B2 3782 BC57 36C3 6144 0C9B C971
uid Sunil Mohan Adapa <sunil@medhas.org>
sub 4096R/4C1D4B57 2011-11-12
$ gpg --fingerprint 7D6ADB750F91085589484BE677C0C75E7B650808
pub 4096R/7B650808 2015-06-07 [expires: 2020-06-05]
Key fingerprint = 7D6A DB75 0F91 0855 8948 4BE6 77C0 C75E 7B65 0808
uid James Valleroy <jvalleroy@mailbox.org>
uid James Valleroy <jvalleroy@freedombox.org>
sub 4096R/25D22BF4 2015-06-07 [expires: 2020-06-05]
sub 4096R/DDA11207 2015-07-03 [expires: 2020-07-01]
sub 2048R/2A624357 2015-12-22
$ gpg --fingerprint 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
pub rsa4096 2018-06-06 [SC]
013D 86D8 BA32 EAB4 A669 1BF8 5D41 53D6 FE18 8FC8
uid [ unknown] FreedomBox CI (Continuous Integration server) <admin@freedombox.org>
sub rsa4096 2018-06-06 [E]
$ gpg --fingerprint D4B069124FCF43AA1FCD7FBC2ACFC1E15AF82D8C
pub rsa4096 2022-03-09 [SC]
D4B0 6912 4FCF 43AA 1FCD 7FBC 2ACF C1E1 5AF8 2D8C
@ -151,7 +176,7 @@ On MacOS (OSX) you can use programs like ''balenaetcher'' and ''rosaimagewriter'
=== From within FreedomBox ===
!FreedomBox is made up of several software programs and you can obtain the source code to any of them. These instructions are similar to obtaining and [[https://www.debian.org/doc/manuals/maint-guide/build.en.html|building]] [[https://wiki.debian.org/Packaging/SourcePackage#How_to_Download_a_source_package|source code]] [[https://wiki.debian.org/BuildingTutorial|for Debian]] since !FreedomBox is a pure blend of Debian. Using this process you can obtain the source code to the exact version of the package you are currently using in !FreedomBox.
!FreedomBox is made up of several software programs and you can obtain the source code to any of them. These instructions are similar to obtaining and [[https://www.debian.org/doc/manuals/maint-guide/build.en.html|building]] [[https://www.debian.org/doc/manuals/apt-howto/ch-sourcehandling.en.html|source code]] [[https://wiki.debian.org/BuildingTutorial|for Debian]] since !FreedomBox is a pure blend of Debian. Using this process you can obtain the source code to the exact version of the package you are currently using in !FreedomBox.
1. To see the list of software packages installed on your !FreedomBox, run the following in a terminal:
{{{
@ -225,37 +250,6 @@ dd if=temp/usr/lib/u-boot/A20-OLinuXino-Lime2/u-boot-sunxi-with-spl.bin of=<lime
The resulting image will have the modified u-boot in it.
=== Old Signing Keys ===
Some very old disk images of !FreedomBox have been signed by different GPG keys than the one listed above. Those signatures are still valid and can be verified using the older keys.
{{{
$ gpg --keyserver keyserver.ubuntu.com --recv-keys BCBEBD57A11F70B23782BC5736C361440C9BC971
$ gpg --keyserver keyserver.ubuntu.com --recv-keys 7D6ADB750F91085589484BE677C0C75E7B650808
# This is the FreedomBox CI server's key
$ gpg --keyserver keyserver.ubuntu.com --recv-keys 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
$ gpg --fingerprint BCBEBD57A11F70B23782BC5736C361440C9BC971
pub 4096R/0C9BC971 2011-11-12
Key fingerprint = BCBE BD57 A11F 70B2 3782 BC57 36C3 6144 0C9B C971
uid Sunil Mohan Adapa <sunil@medhas.org>
sub 4096R/4C1D4B57 2011-11-12
$ gpg --fingerprint 7D6ADB750F91085589484BE677C0C75E7B650808
pub 4096R/7B650808 2015-06-07 [expires: 2020-06-05]
Key fingerprint = 7D6A DB75 0F91 0855 8948 4BE6 77C0 C75E 7B65 0808
uid James Valleroy <jvalleroy@mailbox.org>
uid James Valleroy <jvalleroy@freedombox.org>
sub 4096R/25D22BF4 2015-06-07 [expires: 2020-06-05]
sub 4096R/DDA11207 2015-07-03 [expires: 2020-07-01]
sub 2048R/2A624357 2015-12-22
$ gpg --fingerprint 013D86D8BA32EAB4A6691BF85D4153D6FE188FC8
pub rsa4096 2018-06-06 [SC]
013D 86D8 BA32 EAB4 A669 1BF8 5D41 53D6 FE18 8FC8
uid [ unknown] FreedomBox CI (Continuous Integration server) <admin@freedombox.org>
sub rsa4096 2018-06-06 [E]
}}}
## END_INCLUDE
<<Include(FreedomBox/Portal)>>

View File

@ -16,12 +16,6 @@ Dynamic DNS service providers assist in working around a problem. First they pr
For this to work, every time you connect to the Internet, you will have to tell your Dynamic DNS provider what your current IP address is. Hence you need special software on your server to perform this operation. The Dynamic DNS function in !FreedomBox will allow users without a static public IP address to push the current public IP address to a Dynamic DNS Server. This allows you to expose services on !FreedomBox, such as ownCloud, to the Internet.
=== A Free Domain for your FreedomBox ===
You can get a free domain name for your !FreedomBox using the free Dynamic DNS service provided by the !FreedomBox community at https://ddns.freedombox.org . With this service, your domain name will look like ''myaccount.fbx.one'' or ''myaccount.freedombox.rocks'' where ''myaccount'' is the account you created on the service.
The service also provides you with free unlimited number of subdomains. For this, login to the account, go to ''Change Settings'', check the option ''Wild Card'', and click ''Save Changes''. After this you can add any number of subdomains like ''foo.myaccount.fbx.one'' to your !FreedomBox in ''System -> Names -> Add Domain (regular)''. TLS certificates (for HTTPS) will be automatically obtained by !FreedomBox using Let's Encrypt for these subdomains. Subdomains are especially useful for applications that require being hosted on a separate domain, such as [[FreedomBox/Manual/HomeAssistant|Home Assistant]].
=== GnuDIP vs. Update URL ===
There are two main mechanism to notify the Dynamic DNS server of your new IP address; using the ''GnuDIP'' protocol and using the ''Update URL'' mechanism.
@ -33,6 +27,7 @@ On the other hand, the GnuDIP protocol will only transport a salted MD5 value of
=== Using the GnuDIP protocol ===
1. Register an account with any Dynamic DNS service provider. A free service provided by the !FreedomBox community is available at https://ddns.freedombox.org .
1. In !FreedomBox UI, enable the Dynamic DNS Service.
1. Select ''GnuDIP'' as ''Service type'', enter your Dynamic DNS service provider address (for example, ddns.freedombox.org) into ''GnuDIP Server Address'' field.

View File

@ -1,158 +0,0 @@
#language en
##TAG:TRANSLATION-HEADER-START
~- [[FreedomBox/Guide/ExposeLocalService|English]] - [[es/FreedomBox/Guide/ExposeLocalService|Español]] - [[DebianWiki/EditorGuide#translation|(+)]] -~
##TAG:TRANSLATION-HEADER-END
<<TableOfContents>>
## BEGIN_INCLUDE
== Expose a Local Service to Internet using FreedomBox ==
This guide describes to expose a local service you have on your LAN to the internet using a !FreedomBox that is already exposed on the internet.
=== Goal ===
* ''You have a !FreedomBox running'' with a working domain already setup. You are able to access your !FreedomBox using a URL such as `https://www.mysite.example/` .
* ''You have a different server running a local service'' on LAN that you wish to expose to the Internet on the same domain as your !FreedomBox. The local service must be a web service using the HTTP protocol (it is also possible to setup non-HTTP service, but that is a different approach). Optionally, you can have special domain assigned specifically for this local service.
* You wish for ''!FreedomBox to handle the TLS certificates'' for this domain as !FreedomBox typically does. Your local service need not setup and manage TLS certificates.
* Optionally, you may want to ''limit access to local service using !FreedomBox credentials''. Only users with a !FreedomBox account (and belonging to a chosen group) will be able to access this service. The local service will not be available to general public on the Internet. This way you can host local services that don’t implement their own authentication or local services with their own authentication mechanisms disabled.
=== Exposing Local LAN servers ===
* To expose the service, create an Apache configuration file in `/etc/apache2/conf-available/` and write a `ProxyPass` directive. Assuming your local service is running on a computer with IP address `192.168.0.20` on port `3000`, you can do this by running a command (as a root user on the terminal):
{{{#!highlight bash
cat > /etc/apache2/conf-available/my-local-service.conf <<EOL
ProxyPass /myservice http://192.168.0.20:3000/
EOL
}}}
* Then, enable this Apache configuration. Run the following command:
{{{#!highlight bash
a2enconf my-local-service
}}}
* Then reload Apache web server.
{{{#!highlight bash
systemctl reload apache2
}}}
You can now access your local service at the following URL `https://www.mysite.example/myservice/` . Note that the URL is a secure URL with `https://`. The certificates will be managed by FreedomBox/Let’s Encrypt. All your other apps and services work as usual. You can add any number services you want this way.
=== Running the Service on FreedomBox Itself ===
The above approach will also work if the local service is running on !FreedomBox itself. In this case, the `ProxyPass` directive in the configuration should be modified to look like `ProxyPass /myservice http://127.0.0.1:3000/`.
=== Disabling the service ===
To disable exposing the local service:
1. Disable the Apache configuration file.
{{{#!highlight bash
a2disconf my-local-service
}}}
1. Then, reload Apache web server.
{{{#!highlight bash
systemctl reload apache2
}}}
=== Adding Authentication ===
You can configure the service to be available to only users with !FreedomBox account. This is a good choice if:
* The local service that is exposed to the Internet should not be available to everyone. And,
* The local service does not provide its own authentication mechanism. Or,
* The local service provides it’s own authentication but you don’t want to maintain a different set of user accounts for that service and want to reuse your !FreedomBox user accounts.
1. Update the Apache configuration file `/etc/apache2/conf-available/my-local-service.conf` to look like the following.
{{{#!highlight apache
<Location /myservice/>
Include includes/freedombox-single-sign-on.conf
ProxyPass http://192.168.0.20:3000/
</Location>
}}}
1. Then, reload Apache web server.
{{{#!highlight bash
systemctl reload apache2
}}}
If you wish for only some groups of users to be able to access the service, another change to the configuration is needed. Make the configuration look like the following if you wish to allow users of “web-search” group and also users of “admin” group to access the local service. All other users even if they have a valid !FreedomBox account will be denied access.
{{{#!highlight apache
<Location /myservice/>
Include includes/freedombox-single-sign-on.conf
<IfModule mod_auth_pubtkt.c>
TKTAuthToken "web-search" "admin"
</IfModule>
ProxyPass http://192.168.0.20:3000/
</Location>
}}}
=== Hosting the Service on a Separate Domain ===
Some services and web applications hosted under a URL fragment such as `/myservice/` do not work well. They require an entire domain or subdomain to be dedicated to them. In these cases too, !FreedomBox can expose local services.
1. First acquire a domain or a subdomain.
* If your domain is a custom domain that you own, go to the DNS settings on your domain name provider and add a subdomain. You can create a CNAME record that simply points to the main domain.
* If you are using !FreedomBox Dynamic DNS service, then login into https://ddns.freedombox.org and enable the “Wildcard” option. With this change, for a domain (such as `example.fbx.one`), all subdomains (such as `myservice.example.fbx.one`) of your domain will point to your main domain.
1. Add the new domain into !FreedomBox. Goto System → Name Services → Domain (regular) → Add. For example, add `myservice.mysite.example`.
1. Then create an Apache configuration file at `/etc/apache2/includes/<domainname>-include.conf`. For our example this is: `/etc/apache2/includes/myservice.mysite.example-include.conf`. The contents of the file should be:
{{{#!highlight apache
ProxyPass / http://192.168.0.20:3000/
}}}
1. Modify the above file for authentication if necessary by adding the `Include` and `<IfModule>` configuration directives as shown in the authentication section above.
=== Troubleshooting ===
When your setup does not work as expected, to debug, run a temporary web service on your !FreedomBox.
1. Create a temporary directory with an index.html page on the !FreedomBox.
{{{#!highlight bash
mkdir temp
cd temp
cat > index.html <<EOL
<!DOCTYPE html>
<html>
<head>
<title>My test page</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
EOL
}}}
1. Run a temporary web server (press Control-C to terminate):
{{{#!highlight bash
python3 -m http.server 3000
}}}
1. Update the Apache configuration to point to this temporary service on !FreedomBox.
{{{#!highlight apache
ProxyPass /myservice http://127.0.0.1:3000/
}}}
=== Extras ===
There are many additional features that Apache can provide to improve the local service. For these, [[https://httpd.apache.org/docs/current/|explore Apache documentation]]. Some features include:
* Serving static files such as JS, CSS, and media files from local directory without invoking the local service to improve performance.
* Caching the responses from the local service to improve performance.
* Setting additional headers for security, cache control, etc.
* Modify the HTTP header responses from the service when it does not work well to hosting under a URL fragment such as `/myservice/`.
* Perform redirects from `http://` URL to `https://` and setting HSTS header.
* Load balancing among multiple local services for high availability, scaling, etc.
* And more.
## END_INCLUDE
Back to [[FreedomBox/Features|Features introduction]] or [[FreedomBox/Manual|manual]] pages.
<<Include(FreedomBox/Portal)>>
----
CategoryFreedomBox

View File

@ -72,7 +72,6 @@ You might want to configure your wiki with different [[https://feather.wiki/?pag
=== External links ===
* Website: https://feather.wiki
* Source code for Feather Wiki: https://codeberg.org/Alamantus/FeatherWiki
## END_INCLUDE

View File

@ -12,17 +12,7 @@ In addition to supporting various single board computers and other devices, any
== Recommended Hardware ==
=== Libre Crafts FreedomBox ===
Libre Crafts in an endeavor from the !FreedomBox developers themselves to bring you a powerful !FreedomBox device capable of hosting even the most demanding home server needs. The device is crafted, tested, and delivered to you by !FreedomBox developers. Your purchase helps !FreedomBox development.
This hardware features a powerful CPU, plenty of main memory, a fast OS disk, ability to add two high capacity hard disk drives, dual multi-gigabit Ethernet ports, all with a low power consumption. Use it to host all your photos, to backup all home devices, as a NAS, as home automation hub, as a desktop computer, and more all at once.
||<style="text-align: center;"> [[FreedomBox/Hardware/LibreCrafts|{{attachment:libre-crafts.png|Libre Crafts FreedomBox|height=300}}]]<<BR>> [[FreedomBox/Hardware/LibreCrafts|Libre Crafts FreedomBox]] ||
=== Olimex's FreedomBox Pioneer Edition ===
On April 22nd, 2019, the !FreedomBox Foundation announced the [[https://freedomboxfoundation.org/buy/|sales]] of the Pioneer Edition !FreedomBox Home Server Kits. This pre-installed hardware is for all users who don't wish to build their own !FreedomBox by choosing the right components, downloading the image and preparing an SD card with !FreedomBox.
On April 22nd, 2019, the !FreedomBox Foundation announced the [[https://freedomboxfoundation.org/buy/|sales]] of the Pioneer Edition !FreedomBox Home Server Kits. This is the recommended pre-installed hardware for all users who don't wish to build their own !FreedomBox by choosing the right components, downloading the image and preparing an SD card with !FreedomBox.
The kit includes all the hardware needed for launching a !FreedomBox home server on an Olimex A20-OLinuXino-LIME2 board. This product provides the perfect combination of open source hardware and free and open source software. By purchasing this product, you also support the !FreedomBox Foundation's efforts to create and promote its free and open source server software.

Some files were not shown because too many files have changed in this diff Show More