mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-01-28 08:03:36 +00:00
freedombox Debian release 20.21
-----BEGIN PGP SIGNATURE----- iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAl/qmU0WHGp2YWxsZXJv eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICDu6D/oCABorNsl9pKDa4FaY4NXRAga7 33bYrVraW8f7EB5EBRakV8P0L8rQDSGEPK5bZf3WrjkebyLHe5IEFW7w2m6eclTb P37N+VrLEWCsvKVauCAPQcRV/Rlk+giNBSwsh7yyn70e/Gp4DntkRI4nJQuxO/E3 /HhdrkluzEofoXzir/p1rLHL37C/mWHXJqpCBLrVILX9QH0jw6h3w/uEL8bX7i8l k1fUGsLxgwuoTOwjovZo+bKZmz1BFa0Qh4aoDzAwImaZZBraYX2v1NLdVhwoc0eU RL259NnjJD/oQvfRWPMq9npk1iSrm/RPRm2shkQZHVPoGlN9FDhlZg0CPGNP5nQL YVaB1kZIaLe/kBcv3ljUtDOpWJl/Jy6pq0Ma6BzhN/LQ2aRZL+eF1wRUGxjXqEJB 2Et3IB9xLVA8jk0YoNVpQP2y0/+HXZBoNAMYfcMogmQfL4W1OYOdtJKaUDpzFV7W nIQINH6UBng0ucCXhJNfrozSzWRWOPcyx+4nMBNGYE6dXLp4i9NlNyAf6Y82k4a/ sy2HUwfgkCDlnkfECIOnneQ2a/9A7/cKwhwryJlJz9Ib2sC/o1QBPyL6BGLGvoJS jvP14QR6WnqbkXM8sdsHi6LGwYadqn0e8jbCtIajQUICZmjWMM6rbGm+2TtqEtvy 5f2rv/nc9BqGzWLBoA== =Jv5A -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQJKBAABCgA0FiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAl/t5LEWHGp2YWxsZXJv eUBtYWlsYm94Lm9yZwAKCRB3wMdee2UICPJaD/9jcXR3rBkyxJe9F+XCfG593Tkf ovSqnVKDPP1CGC0byN4QxdhYr99j9nJx5eY8MeCxKt4vhrS0Gjp+GRmtIyFCXSEE kxtY1sp86F3tI54zaWpDdnEc8edwpumU7BnOPiclgacl370CZ08mK5qmy+rYad4/ dWro+5kXYcoy+2vWt1bNHRjQGfMyv/arbjgzclGI06segP6QVbHivhoMVbfDGmfz cX1YxT7yrW0Jz0JLEjSVoUzzeNVvmUilK8BKmQE7zDHg8hSm76SiTtUZkYmFlEh8 2PqRsOpW/xA2al+OCjsrld0Rk3a4YFRPE3ex0bqbRP9TEgDOwPHR1rblNrKol+fJ 7e7Z2cRjH9HVchedh4z+xeQYBLRPLdlCe6S+By8AD4xZYTFgUmllrj9EvXttptUV KwbGYogCoYVgH8AM2+fNwcgQCHNIMQizVyNOPcPYBzV5q6cOEgTq6Z23feaSxqVA 9p0OQh0iR2TbnOHFXD6t2D2wtHILEptxIoG2n/Ec734XWt+BSf3rnFPRimA+Enn2 WXIS0uOqX6HyTriNueFEdUCf+99+HmB+AqLmDy23RdMCWDh2vyOEAWwrCcUBIBJd b0C803B1DDcjEIo3/tmogZPS+L7j4eBES9nWKvfvdE/vI2Gw5hp9sujhOQOtNN3/ RFvSXMvgElvcu40m8A== =WL06 -----END PGP SIGNATURE----- Merge tag 'v20.21' into debian/buster-backports freedombox Debian release 20.21 Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
commit
0bb36844fc
@ -7,6 +7,7 @@ Configuration helper for Apache web server.
|
||||
|
||||
import argparse
|
||||
import glob
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
|
||||
@ -97,6 +98,11 @@ def subcommand_setup(arguments):
|
||||
subprocess.run([
|
||||
'make-ssl-cert', 'generate-default-snakeoil', '--force-overwrite'
|
||||
], check=True)
|
||||
# In case the certificate has been removed after ssl-cert is installed
|
||||
# on a fresh Debian machine.
|
||||
elif not os.path.exists('/etc/ssl/certs/ssl-cert-snakeoil.pem'):
|
||||
subprocess.run(['make-ssl-cert', 'generate-default-snakeoil'],
|
||||
check=True)
|
||||
|
||||
with action_utils.WebserverChange() as webserver:
|
||||
# Disable mod_php as we have switched to mod_fcgi + php-fpm. Disable
|
||||
|
||||
@ -11,7 +11,8 @@ import re
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
from plinth.action_utils import apt_hold, run_apt_command, service_restart
|
||||
from plinth.action_utils import (apt_hold, debconf_set_selections,
|
||||
run_apt_command, service_restart)
|
||||
from plinth.modules.apache.components import check_url
|
||||
from plinth.modules.upgrades import (BACKPORTS_SOURCES_LIST, SOURCES_LIST,
|
||||
get_current_release, is_backports_current)
|
||||
@ -383,43 +384,54 @@ def _check_and_dist_upgrade(develop=False, test_upgrade=False):
|
||||
def _perform_dist_upgrade():
|
||||
"""Perform upgrade to next release of Debian."""
|
||||
# Hold freedombox package during entire dist upgrade.
|
||||
print('Holding freedombox package...')
|
||||
print('Holding freedombox package...', flush=True)
|
||||
with apt_hold():
|
||||
print('Updating Apt cache...')
|
||||
print('Updating Apt cache...', flush=True)
|
||||
run_apt_command(['update'])
|
||||
|
||||
print('Upgrading base-files and unattended-upgrades...')
|
||||
print('Upgrading base-files and unattended-upgrades...', flush=True)
|
||||
run_apt_command(['install', 'base-files'])
|
||||
run_apt_command(['install', 'unattended-upgrades'])
|
||||
|
||||
print('Running unattended-upgrade...')
|
||||
# Tell grub-pc to continue without installing grub again.
|
||||
print('Set grub-pc to not require re-installing grub...', flush=True)
|
||||
debconf_set_selections(
|
||||
['grub-pc grub-pc/install_devices_empty boolean true'])
|
||||
|
||||
print('Running unattended-upgrade...', flush=True)
|
||||
subprocess.run(['unattended-upgrade', '--verbose'])
|
||||
|
||||
# Remove obsolete packages that may prevent other packages from
|
||||
# upgrading.
|
||||
print('Removing libgcc1...')
|
||||
print('Removing libgcc1...', flush=True)
|
||||
run_apt_command(['remove', 'libgcc1'])
|
||||
|
||||
# Hold packages known to have conffile prompts. FreedomBox service
|
||||
# will handle their upgrade later.
|
||||
packages_with_prompts = ['firewalld', 'mumble-server', 'radicale']
|
||||
print('Holding packages with conffile prompts: ' +
|
||||
', '.join(packages_with_prompts) + '...')
|
||||
print(
|
||||
'Holding packages with conffile prompts: ' +
|
||||
', '.join(packages_with_prompts) + '...', flush=True)
|
||||
with apt_hold(packages_with_prompts):
|
||||
print('Running apt full-upgrade...')
|
||||
print('Running apt full-upgrade...', flush=True)
|
||||
run_apt_command(['full-upgrade'])
|
||||
|
||||
print('Running apt autoremove...')
|
||||
# If searx is installed, update search engines list.
|
||||
if pathlib.Path('/etc/searx/settings.yml').exists():
|
||||
print('Updating searx search engines list...', flush=True)
|
||||
subprocess.run(['./searx', 'setup'], check=True)
|
||||
|
||||
print('Running apt autoremove...', flush=True)
|
||||
run_apt_command(['autoremove'])
|
||||
|
||||
print('Dist upgrade complete. Removing flag.')
|
||||
print('Dist upgrade complete. Removing flag.', flush=True)
|
||||
if dist_upgrade_flag.exists():
|
||||
dist_upgrade_flag.unlink()
|
||||
|
||||
# FreedomBox Service may have tried to restart several times
|
||||
# during the upgrade, but failed. It will stop trying after 5
|
||||
# retries. Restart it once more to ensure it is running.
|
||||
print('Restarting FreedomBox service...')
|
||||
print('Restarting FreedomBox service...', flush=True)
|
||||
service_restart('plinth')
|
||||
|
||||
|
||||
|
||||
@ -365,13 +365,11 @@ def set_samba_user(username, password):
|
||||
|
||||
If a user already exists, update password.
|
||||
"""
|
||||
proc = subprocess.Popen(['smbpasswd', '-a', '-s', username],
|
||||
stdin=subprocess.PIPE, stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE)
|
||||
_, stderr = proc.communicate(input='{0}\n{0}\n'.format(password).encode(),
|
||||
timeout=10)
|
||||
proc = subprocess.run(['smbpasswd', '-a', '-s', username],
|
||||
input='{0}\n{0}\n'.format(password).encode(),
|
||||
stderr=subprocess.PIPE)
|
||||
if proc.returncode != 0:
|
||||
raise RuntimeError('Unable to add Samba user: ', stderr)
|
||||
raise RuntimeError('Unable to add Samba user: ', proc.stderr)
|
||||
|
||||
|
||||
def subcommand_set_user_password(arguments):
|
||||
|
||||
46
debian/changelog
vendored
46
debian/changelog
vendored
@ -1,3 +1,49 @@
|
||||
freedombox (20.21) unstable; urgency=medium
|
||||
|
||||
[ Johannes Keyser ]
|
||||
* Translated using Weblate (German)
|
||||
|
||||
[ Fioddor Superconcentrado ]
|
||||
* Translated using Weblate (Spanish)
|
||||
* Translated using Weblate (Spanish)
|
||||
|
||||
[ Joseph Nuthalapati ]
|
||||
* deluge: Sync apache2 config with Transmission
|
||||
* deluge: Functional tests for bit-torrent group
|
||||
|
||||
[ Michael Breidenbach ]
|
||||
* Translated using Weblate (Swedish)
|
||||
|
||||
[ Veiko Aasa ]
|
||||
* apache: Create snake oil certificate if not exists
|
||||
* users: Remove timeout when creating Samba user
|
||||
* security: Fix access denied for user daemon from cron
|
||||
|
||||
[ n0nie4HP ]
|
||||
* Translated using Weblate (Polish)
|
||||
* Translated using Weblate (Polish)
|
||||
|
||||
[ spectral ]
|
||||
* calibre: Fix manual page name
|
||||
|
||||
[ James Valleroy ]
|
||||
* upgrades: Allow grub-pc upgrade without reinstalling grub
|
||||
* upgrades: Update searx search engines during dist upgrade
|
||||
* locale: Update translation strings
|
||||
* doc: Fetch latest manual
|
||||
* debian: Bump standards version to 4.5.1
|
||||
|
||||
[ Nikita Epifanov ]
|
||||
* Translated using Weblate (Russian)
|
||||
|
||||
[ ikmaak ]
|
||||
* Translated using Weblate (Polish)
|
||||
|
||||
[ Doma Gergő ]
|
||||
* Translated using Weblate (Hungarian)
|
||||
|
||||
-- James Valleroy <jvalleroy@mailbox.org> Mon, 28 Dec 2020 21:08:41 -0500
|
||||
|
||||
freedombox (20.20.1~bpo10+1) buster-backports; urgency=medium
|
||||
|
||||
* Rebuild for buster-backports.
|
||||
|
||||
2
debian/control
vendored
2
debian/control
vendored
@ -48,7 +48,7 @@ Build-Depends:
|
||||
sshpass,
|
||||
xmlto,
|
||||
xsltproc
|
||||
Standards-Version: 4.5.0
|
||||
Standards-Version: 4.5.1
|
||||
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
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
#language en
|
||||
|
||||
##TAG:TRANSLATION-HEADER-START
|
||||
~-[[FreedomBox/Manual/GettingHelp|English]] - [[es/FreedomBox/Manual/GettingHelp|Español]] - [[fr/FreedomBox/Manuel/ObtenirAide|Français]] - [[DebianWiki/EditorGuide#translation|(+)]]-~
|
||||
~-[[FreedomBox/Manual/GettingHelp|English]] - [[es/FreedomBox/Manual/GettingHelp|Español]] - [[fr/FreedomBox/Manual/GettingHelp|Français]] - [[DebianWiki/EditorGuide#translation|(+)]]-~
|
||||
##TAG:TRANSLATION-HEADER-END
|
||||
|
||||
## BEGIN_INCLUDE
|
||||
|
||||
@ -1,6 +1,9 @@
|
||||
#language en
|
||||
#pragma section-numbers 2
|
||||
~- [[DebianWiki/EditorGuide#translation|Translation(s)]]: [[de/FreedomBox/Handbuch/Schnelleinstieg|Deutsch]] - English - [[es/FreedomBox/Manual/QuickStart|Español]] -~
|
||||
|
||||
##TAG:TRANSLATION-HEADER-START
|
||||
~-[[de/FreedomBox/Manual/QuickStart|Deutsch]] - [[FreedomBox/Manual/QuickStart|English]] - [[es/FreedomBox/Manual/QuickStart|Español]] - [[fr/FreedomBox/Manual/QuickStart|Français]] - [[ru/FreedomBox/Manual/QuickStart|Русский]] - [[DebianWiki/EditorGuide#translation|(+)]]-~
|
||||
##TAG:TRANSLATION-HEADER-END
|
||||
|
||||
## BEGIN_INCLUDE
|
||||
= Quick Start =
|
||||
|
||||
@ -10,6 +10,23 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f
|
||||
|
||||
The following are the release notes for each !FreedomBox version.
|
||||
|
||||
== FreedomBox 20.21 (2020-12-28) ==
|
||||
|
||||
=== Highlights ===
|
||||
|
||||
* apache: Create snake oil certificate if not exists
|
||||
* Fixes an issue when installing !FreedomBox on Hetzner Cloud's Debian image
|
||||
* calibre: Fix link to manual page
|
||||
|
||||
=== Other Changes ===
|
||||
|
||||
* deluge: Require user to be in bit-torrent group to access
|
||||
* locale: Update translations for German, Hungarian, Polish, Russian, Spanish, Swedish
|
||||
* security: Fix access denied for user daemon from cron
|
||||
* upgrades: Allow grub-pc upgrade without reinstalling grub
|
||||
* upgrades: Update searx search engines during dist upgrade
|
||||
* users: Remove timeout when creating Samba user
|
||||
|
||||
== FreedomBox 20.20.1 (2020-12-19) ==
|
||||
|
||||
=== Highlights ===
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
#language en
|
||||
|
||||
~- [[DebianWiki/EditorGuide#translation|Translation(s)]]: English - [[es/FreedomBox/Manual/bepasty|Español]] -~
|
||||
##TAG:TRANSLATION-HEADER-START
|
||||
~- [[de/FreedomBox/Manual/bepasty|Deutsch]] - [[FreedomBox/Manual/bepasty|English]] - [[es/FreedomBox/Manual/bepasty|Español]] - [[DebianWiki/EditorGuide#translation|(+)]] -~
|
||||
##TAG:TRANSLATION-HEADER-END
|
||||
|
||||
<<TableOfContents()>>
|
||||
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
#language en
|
||||
|
||||
~- [[DebianWiki/EditorGuide#translation|Translation(s)]]: English - [[es/FreedomBox/Manual|Español]] -~
|
||||
##TAG:TRANSLATION-HEADER-START
|
||||
~-[[de/FreedomBox/Manual|Deutsch]] - [[FreedomBox/Manual|English]] - [[es/FreedomBox/Manual|Español]] - [[fr/FreedomBox/Manual|Français]] - [[DebianWiki/EditorGuide#translation|(+)]]-~
|
||||
##TAG:TRANSLATION-HEADER-END
|
||||
|
||||
## BEGIN_INCLUDE
|
||||
|
||||
|
||||
@ -15,7 +15,7 @@ El 22 de Abril de 2019, la ''!FreedomBox Foundation'' anunció que los kits ''Pi
|
||||
|
||||
El kit incluye todo el hardware necesario para arrancar un servidor casero !FreedomBox sobre una placa ''Olimex A20-OLinuXino-LIME2''. Este producto proporciona la combinación perfecta de hardware de fuentes abiertas y software libre. Al comprar este producto, soportas también los esfuerzos de la ''!FreedomBox Foundation'' para crear y promover su software de servidor libre.
|
||||
|
||||
||<style="text-align: center;"> [[es/FreedomBox/Hardware/PioneerEdition|{{attachment:FreedomBox/Hardware/pioneer-edition_thumb.jpg|Kits de Servidor Casero FreedomBox Pioneer Edition|width=320,height=257}}]]<<BR>> [[es/FreedomBox/Hardware/PioneerEdition|Kits de Servidor Casero FreedomBox Pioneer Edition]] ||
|
||||
||<style="text-align: center;"> [[es/FreedomBox/Hardware/PioneerEdition|{{attachment:FreedomBox/Hardware/pioneer-edition_thumb.jpg|Kits de servidor doméstico FreedomBox edición Pioneer|width=320,height=257}}]]<<BR>> [[es/FreedomBox/Hardware/PioneerEdition|Kits de servidor doméstico FreedomBox edición Pioneer]] ||
|
||||
|
||||
== Hardware Soportado ==
|
||||
|
||||
|
||||
135
doc/manual/es/Manual.raw.wiki
Normal file
135
doc/manual/es/Manual.raw.wiki
Normal file
@ -0,0 +1,135 @@
|
||||
#language en
|
||||
|
||||
##TAG:TRANSLATION-HEADER-START
|
||||
~-[[de/FreedomBox/Manual|Deutsch]] - [[FreedomBox/Manual|English]] - [[es/FreedomBox/Manual|Español]] - [[fr/FreedomBox/Manual|Français]] - [[DebianWiki/EditorGuide#translation|(+)]]-~
|
||||
##TAG:TRANSLATION-HEADER-END
|
||||
|
||||
## BEGIN_INCLUDE
|
||||
|
||||
<<TableOfContents(2)>>
|
||||
|
||||
|
||||
<<Include(FreedomBox/Introduction, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/QuickStart, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/GettingHelp, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Download, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
|
||||
= Apps =
|
||||
/* Add entries here sorted after the level 2 heading inside the page to keep the list alphabetically sorted */
|
||||
<<Include(FreedomBox/Manual/bepasty, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Calibre, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Coturn, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Deluge, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/ejabberd, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/GitWeb, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/I2P, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Ikiwiki, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Infinoted, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/JSXC, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/MatrixSynapse, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/MediaWiki, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Minetest, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/MiniDLNA, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/MLDonkey, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Mumble, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/OpenVPN, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Privoxy, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Quassel, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Radicale, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Roundcube, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Samba, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Searx, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Shadowsocks, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Sharing, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Syncthing, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/TinyTinyRSS, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Tor, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Transmission, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Apache_userdir, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/WireGuard, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
|
||||
= System =
|
||||
<<Include(FreedomBox/Manual/Backups, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Bind, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Cockpit, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Configure, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/DateTime, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Diagnostics, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/DynamicDNS, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Firewall, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/LetsEncrypt, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Monkeysphere, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/NameServices, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Networks, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/PageKite, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Performance, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Power, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/SecureShell, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Security, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/ServiceDiscovery, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Storage, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Snapshots, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Upgrades, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Manual/Users, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
|
||||
= Hardware =
|
||||
<<Include(FreedomBox/Hardware, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/PioneerEdition, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/A20-OLinuXino-Lime2, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/A20-OLinuXino-MICRO, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/APU, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/Cubietruck, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/Cubieboard2, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/BeagleBone, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/pcDuino3, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/Debian, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/VirtualBox, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/PineA64+, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/BananaPro, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/OrangePiZero, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/RockPro64, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/Rock64, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/RaspberryPi2, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/RaspberryPi3B, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/RaspberryPi3B+, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/RaspberryPi4B, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Hardware/USBWiFi, , to="## END_INCLUDE")>>
|
||||
|
||||
<<Include(FreedomBox/ReleaseNotes, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
|
||||
= Contributing =
|
||||
|
||||
<<Include(FreedomBox/Contribute, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
|
||||
= Developer Guide =
|
||||
|
||||
<<Include(FreedomBox/Manual/Developer, , from="## BEGIN_INCLUDE", to="## END_INCLUDE")>>
|
||||
|
||||
= Hacking =
|
||||
|
||||
!FreedomBox consists of two main projects:
|
||||
|
||||
* !FreedomBox Service (Plinth), the web interface
|
||||
* Freedom Maker, a script to build disk images for various hardware
|
||||
|
||||
<<Include(FreedomBox/Plinth, , to="## END_INCLUDE")>>
|
||||
<<Include(FreedomBox/Maker, , to="## END_INCLUDE")>>
|
||||
|
||||
= Tell people around you =
|
||||
|
||||
* [[https://freedombox.org/|FreedomBox]]
|
||||
* [[../Press|FreedomBox in the Press]]
|
||||
* [[../Conferences|Conferences]]
|
||||
* [[../TalksAndPresentations|Talks and presentations]]
|
||||
* [[../TalksAndPresentations/AvailableMaterial|Available Material]] Slides and other raw material
|
||||
* [[http://www.facebook.com/freedomboxfoundation|Facebook]]
|
||||
* [[http://twitter.com/#!/FreedomBoxFndn|Twitter]]
|
||||
* [[https://mastodon.social/@freedomboxfndn|Mastodon]]
|
||||
* [[http://meetings-archive.debian.net/pub/debian-meetings/2011/debconf11/low/|Debconf11 Videos]]
|
||||
|
||||
## END_INCLUDE
|
||||
|
||||
<<Include(FreedomBox/Portal)>>
|
||||
|
||||
----
|
||||
CategoryFreedomBox
|
||||
@ -1,6 +1,6 @@
|
||||
#language es
|
||||
#pragma section-numbers 2
|
||||
~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[de/FreedomBox/Handbuch/Schnelleinstieg|Deutsch]] - [[FreedomBox/Manual/QuickStart|English]] - Español -~
|
||||
<<Include(FreedomBox/Manual/QuickStart, ,from="^##TAG:TRANSLATION-HEADER-START",to="^##TAG:TRANSLATION-HEADER-END")>>
|
||||
|
||||
## BEGIN_INCLUDE
|
||||
= Guía de Inicio Rápido =
|
||||
@ -64,7 +64,7 @@ Alternativamente podrías optar por montarlo tu mismo reuniendo todas las piezas
|
||||
* Nota: El usuario que creas aquí tendrá privilegios de ``Admin`` y también podrá [[es/FreedomBox/Manual/SecureShell|entrar por SSH]]. Por mayor seguridad deberías emplear para tareas administrativas una cuenta diferente de la de uso habitual. Luego puedes añadir más usuarios, entre ellos el tuyo de uso habitual.
|
||||
. {{attachment:ui_firstboot_account-es.png|Cuenta|width=500}}
|
||||
1. Tras completar el formulario estarás en el interfaz web de !FreedomBox y podrás acceder a las apps y a la configuración mediante el interfaz web.
|
||||
. {{attachment:ui_firstboot_complete-es.png|Completado|width=500}}mayor
|
||||
. {{attachment:ui_firstboot_complete-es.png|Completado|width=500}}
|
||||
Ahora puedes probar [[es/FreedomBox/Features|cualquier App]] disponible en !FreedomBox.
|
||||
|
||||
== Orientándote ==
|
||||
|
||||
@ -10,6 +10,23 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f
|
||||
|
||||
The following are the release notes for each !FreedomBox version.
|
||||
|
||||
== FreedomBox 20.21 (2020-12-28) ==
|
||||
|
||||
=== Highlights ===
|
||||
|
||||
* apache: Create snake oil certificate if not exists
|
||||
* Fixes an issue when installing !FreedomBox on Hetzner Cloud's Debian image
|
||||
* calibre: Fix link to manual page
|
||||
|
||||
=== Other Changes ===
|
||||
|
||||
* deluge: Require user to be in bit-torrent group to access
|
||||
* locale: Update translations for German, Hungarian, Polish, Russian, Spanish, Swedish
|
||||
* security: Fix access denied for user daemon from cron
|
||||
* upgrades: Allow grub-pc upgrade without reinstalling grub
|
||||
* upgrades: Update searx search engines during dist upgrade
|
||||
* users: Remove timeout when creating Samba user
|
||||
|
||||
== FreedomBox 20.20.1 (2020-12-19) ==
|
||||
|
||||
=== Highlights ===
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
#language es
|
||||
|
||||
~- [[DebianWiki/EditorGuide#translation|Translation(s)]]: [[FreedomBox/Manual/bepasty|English]] - Español -~
|
||||
<<Include(FreedomBox/Manual/bepasty, ,from="^##TAG:TRANSLATION-HEADER-START",to="^##TAG:TRANSLATION-HEADER-END")>>
|
||||
|
||||
<<TableOfContents()>>
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
#language es
|
||||
|
||||
~- [[DebianWiki/EditorGuide#translation|Translation(s)]]: [[FreedomBox/Manual|English]] - Español -~
|
||||
<<Include(FreedomBox/Manual, ,from="^##TAG:TRANSLATION-HEADER-START",to="^##TAG:TRANSLATION-HEADER-END")>>
|
||||
|
||||
## BEGIN_INCLUDE
|
||||
|
||||
|
||||
@ -3,4 +3,4 @@
|
||||
Package init file.
|
||||
"""
|
||||
|
||||
__version__ = '20.20.1'
|
||||
__version__ = '20.21'
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -59,7 +59,7 @@ class CalibreApp(app_module.App):
|
||||
info = app_module.Info(app_id=self.app_id, version=version,
|
||||
name=_('calibre'), icon_filename='calibre',
|
||||
short_description=_('E-book Library'),
|
||||
description=_description, manual_page='calibre',
|
||||
description=_description, manual_page='Calibre',
|
||||
clients=clients,
|
||||
donation_url='https://calibre-ebook.com/donate')
|
||||
self.add(info)
|
||||
|
||||
@ -1,6 +1,18 @@
|
||||
##
|
||||
## On all sites, provide Deluge on a default path: /deluge
|
||||
##
|
||||
## Requires the following Apache modules to be enabled:
|
||||
## mod_headers
|
||||
## mod_proxy
|
||||
## mod_proxy_http
|
||||
##
|
||||
<Location /deluge>
|
||||
ProxyPass http://localhost:8112
|
||||
ProxyPass http://localhost:8112
|
||||
Include includes/freedombox-single-sign-on.conf
|
||||
<IfModule mod_auth_pubtkt.c>
|
||||
TKTAuthToken "admin" "bit-torrent"
|
||||
</IfModule>
|
||||
## Send the scheme from user's request to enable Deluge to redirect URLs,
|
||||
## set cookies, set absolute URLs (if any) properly.
|
||||
RequestHeader set X-Forwarded-Proto 'https' env=HTTPS
|
||||
</Location>
|
||||
|
||||
@ -13,6 +13,18 @@ Scenario: Enable deluge application
|
||||
When I enable the deluge application
|
||||
Then the deluge site should be available
|
||||
|
||||
Scenario: User of 'bit-torrent' group
|
||||
Given the deluge application is enabled
|
||||
When I create a user named delugeuser with password deluge&456 in group bit-torrent
|
||||
And I'm logged in as the user delugeuser with password deluge&456
|
||||
Then the deluge site should be available
|
||||
|
||||
Scenario: User not of 'bit-torrent' group
|
||||
Given the deluge application is enabled
|
||||
When I create a user named nogroupuser with password somep@ssw6
|
||||
And I'm logged in as the user nogroupuser with password somep@ssw6
|
||||
Then the deluge site should not be available
|
||||
|
||||
Scenario: Upload a torrent to deluge
|
||||
Given the deluge application is enabled
|
||||
When all torrents are removed from deluge
|
||||
|
||||
@ -0,0 +1,2 @@
|
||||
# allow debsecan cron job
|
||||
+:daemon:cron
|
||||
@ -170,7 +170,7 @@ def create_user(session_browser, name, password):
|
||||
|
||||
@when(
|
||||
parsers.parse('I create a user named {name:w} with password {password:S} '
|
||||
'in group {group:w}'))
|
||||
'in group {group:S}'))
|
||||
def create_user_in_group(session_browser, name, password, group):
|
||||
if not functional.user_exists(session_browser, name):
|
||||
functional.create_user(session_browser, name, password, groups=[group])
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user