summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorintrigeri <intrigeri@boum.org>2019-08-27 11:11:28 +0000
committerintrigeri <intrigeri@boum.org>2019-08-27 11:11:28 +0000
commit15c969a2693cafe9acd8da283ed00bd183896e75 (patch)
treef53e90624f3018da7734cf32b58979fd5796ca01
parent0d8a2b71774ee1e06788efcf8498a6d3acdd04cf (diff)
parentc036fc091816f198120f9c6ec603fecfd67e7dd0 (diff)
Merge remote-tracking branch 'origin/devel' into bugfix/misc-buster+force-all-testsbugfix/misc-buster+force-all-tests
-rw-r--r--.gitmodules6
-rwxr-xr-xauto/config6
-rw-r--r--config/amnesia2
-rw-r--r--config/chroot_apt/preferences4
-rwxr-xr-xconfig/chroot_local-hooks/13-aufs4
-rw-r--r--config/chroot_local-hooks/16-greeter14
-rwxr-xr-xconfig/chroot_local-hooks/31-gdm-tails42
-rwxr-xr-xconfig/chroot_local-hooks/98-remove_unwanted_packages28
-rwxr-xr-xconfig/chroot_local-includes/etc/gdm3/PostLogin/Default142
-rw-r--r--config/chroot_local-includes/etc/polkit-1/localauthority/10-vendor.d/org.boum.tails.accounts.pkla6
-rw-r--r--config/chroot_local-includes/etc/sudoers.d/tails-greeter-cryptsetup1
-rw-r--r--config/chroot_local-includes/etc/sudoers.d/tails-greeter-live-persist1
-rw-r--r--config/chroot_local-includes/etc/sudoers.d/tails-greeter-umount1
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/__init__.py29
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/config.py49
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/errors.py34
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gdmclient.py105
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py1171
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py861
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py174
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/physicalsecurity.py69
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/rootaccess.py62
-rw-r--r--config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py94
-rwxr-xr-xconfig/chroot_local-includes/usr/local/lib/tails-greeter5
-rwxr-xr-xconfig/chroot_local-includes/usr/local/lib/tails-unblock-network26
-rw-r--r--config/chroot_local-includes/usr/share/applications/tails-greeter.desktop7
-rw-r--r--config/chroot_local-includes/usr/share/gnome-shell/modes/gdm-tails.json16
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-admin.svg9
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-camouflage.svg24
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-formats.svg94
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-help.svg49
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-keyboard-layout.svg8
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-language.svg12
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-locked.svg8
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-macspoof.svg13
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-network.svg8
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-timezone.svg9
-rw-r--r--config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-unlocked.svg8
-rw-r--r--config/chroot_local-includes/usr/share/tails-greeter/default_langcodes72
-rw-r--r--config/chroot_local-includes/usr/share/tails-greeter/greeter.css3
-rw-r--r--config/chroot_local-includes/usr/share/tails-greeter/greeter.ui2021
-rw-r--r--config/chroot_local-includes/usr/share/tails-greeter/no-password-lecture.txt7
-rwxr-xr-xconfig/chroot_local-includes/usr/share/tails-greeter/set-cursor.py26
-rwxr-xr-xconfig/chroot_local-includes/usr/share/tails-greeter/tails-greeter.py162
-rw-r--r--config/chroot_local-includes/usr/share/tails-greeter/tails-logging.conf27
-rw-r--r--config/chroot_local-packageslists/tails-common.list13
-rw-r--r--config/chroot_local-patches/greeter-buster-blocking-tails-unblock-network.diff14
-rw-r--r--config/chroot_local-patches/greeter-buster.diff35
-rw-r--r--config/chroot_local-patches/tweak-gnome-applications-menu.diff34
-rw-r--r--po/POTFILES.in5
-rw-r--r--po/POTFILES.skip3
-rw-r--r--po/ar.po950
-rw-r--r--po/az.po336
-rw-r--r--po/bg.po330
-rw-r--r--po/bn.po337
-rw-r--r--po/bn_BD.po337
-rw-r--r--po/ca.po340
-rw-r--r--po/cs.po332
-rw-r--r--po/cy.po340
-rw-r--r--po/da.po339
-rw-r--r--po/de.po341
-rw-r--r--po/el.po338
-rw-r--r--po/en_GB.po339
-rw-r--r--po/es.po340
-rw-r--r--po/es_AR.po338
-rw-r--r--po/fa.po339
-rw-r--r--po/fi.po332
-rw-r--r--po/fr.po340
-rw-r--r--po/fr_CA.po332
-rw-r--r--po/ga.po337
-rw-r--r--po/he.po339
-rw-r--r--po/hr_HR.po332
-rw-r--r--po/id.po330
-rw-r--r--po/is.po339
-rw-r--r--po/it.po339
-rw-r--r--po/ka.po339
-rw-r--r--po/km.po336
-rw-r--r--po/ko.po332
-rw-r--r--po/lt.po339
-rw-r--r--po/lv.po332
-rw-r--r--po/ms_MY.po339
-rw-r--r--po/nb.po332
-rw-r--r--po/nn.po332
-rw-r--r--po/pl.po339
-rw-r--r--po/pt.po332
-rw-r--r--po/pt_BR.po340
-rw-r--r--po/pt_PT.po340
-rw-r--r--po/ro.po341
-rw-r--r--po/ru.po341
-rw-r--r--po/sk_SK.po332
-rw-r--r--po/sl_SI.po336
-rw-r--r--po/sq.po332
-rw-r--r--po/sr.po336
-rw-r--r--po/sv.po337
-rw-r--r--po/tails.pot327
-rw-r--r--po/tr.po339
-rw-r--r--po/uk.po330
-rw-r--r--po/vi.po332
-rw-r--r--po/zh_CN.po339
-rw-r--r--po/zh_HK.po332
-rw-r--r--po/zh_TW.po339
-rwxr-xr-xrefresh-translations10
m---------submodules/aufs-standalone0
m---------submodules/aufs4-standalone0
-rw-r--r--vagrant/lib/tails_build_settings.rb2
-rw-r--r--wiki/src/blueprint/update_camouflage_for_jessie.mdwn2
-rw-r--r--wiki/src/contribute/Linux_kernel.mdwn2
-rw-r--r--wiki/src/contribute/design/MAC_address.mdwn2
-rw-r--r--wiki/src/contribute/design/Tor_network_configuration.mdwn2
-rw-r--r--wiki/src/contribute/glossary.mdwn3
-rw-r--r--wiki/src/contribute/how/translate/with_Transifex.mdwn2
-rw-r--r--wiki/src/contribute/l10n_tricks.mdwn2
-rwxr-xr-xwiki/src/contribute/l10n_tricks/transifex_translators.sh2
-rw-r--r--wiki/src/contribute/release_process.mdwn3
-rw-r--r--wiki/src/contribute/release_process/tails-greeter.mdwn46
-rw-r--r--wiki/src/shortcuts.mdwn1
116 files changed, 21479 insertions, 1644 deletions
diff --git a/.gitmodules b/.gitmodules
index a5302b2..8309dd2 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -11,6 +11,6 @@
[submodule "submodules/mirror-pool-dispatcher"]
path = submodules/mirror-pool-dispatcher
url = https://git-tails.immerda.ch/mirror-pool-dispatcher
-[submodule "submodules/aufs4-standalone"]
- path = submodules/aufs4-standalone
- url = https://github.com/sfjro/aufs4-standalone.git
+[submodule "submodules/aufs-standalone"]
+ path = submodules/aufs-standalone
+ url = https://github.com/sfjro/aufs5-standalone.git
diff --git a/auto/config b/auto/config
index d777038..c931639 100755
--- a/auto/config
+++ b/auto/config
@@ -203,9 +203,9 @@ install -m 0755 \
submodules/mirror-pool-dispatcher/lib/js/mirror-dispatcher.js \
config/chroot_local-includes/usr/local/lib/nodejs/
-# aufs4-standalone
-rm -rf config/chroot_local-includes/usr/src/aufs4-standalone
-cp -a submodules/aufs4-standalone config/chroot_local-includes/usr/src/
+# aufs-standalone
+rm -rf config/chroot_local-includes/usr/src/aufs-standalone
+cp -a submodules/aufs-standalone config/chroot_local-includes/usr/src/
# custom debootstrap script, setting some APT magic to log downloads:
patch \
diff --git a/config/amnesia b/config/amnesia
index 03023eb..97955d7 100644
--- a/config/amnesia
+++ b/config/amnesia
@@ -23,7 +23,7 @@ AMNESIA_APPEND="live-media=removable nopersistence noprompt timezone=Etc/UTC blo
AMNESIA_ISOHYBRID_OPTS="-h 255 -s 63 --id 42 --verbose"
# Kernel version
-KERNEL_VERSION='4.19.0-5'
+KERNEL_VERSION='5.2.0-2'
KERNEL_SOURCE_VERSION=$(
echo "$KERNEL_VERSION" \
| perl -p -E 's{\A (\d+ [.] \d+) [.] .*}{$1}xms'
diff --git a/config/chroot_apt/preferences b/config/chroot_apt/preferences
index ada51e3..457af5c 100644
--- a/config/chroot_apt/preferences
+++ b/config/chroot_apt/preferences
@@ -53,6 +53,10 @@ Package: obfs4proxy
Pin: release o=TorProject,n=obfs4proxy
Pin-Priority: 990
+Package: squashfs-tools
+Pin: release o=Debian,n=sid
+Pin-Priority: 999
+
Package: tails-installer
Pin: origin deb.tails.boum.org
Pin-Priority: 999
diff --git a/config/chroot_local-hooks/13-aufs b/config/chroot_local-hooks/13-aufs
index b6267fd..122d3dd 100755
--- a/config/chroot_local-hooks/13-aufs
+++ b/config/chroot_local-hooks/13-aufs
@@ -23,7 +23,7 @@ ln -s \
"/usr/src/linux-source-${KERNEL_SOURCE_VERSION}/fs" \
"/usr/src/linux-headers-${KERNEL_VERSION}-${arch}/fs"
(
- cd /usr/src/aufs4-standalone
+ cd /usr/src/aufs-standalone
perl -pi -E \
's{\A CONFIG_AUFS_DEBUG \s* = \s* y $}{CONFIG_AUFS_DEBUG =}xms' \
config.mk
@@ -42,5 +42,5 @@ done
strip --strip-debug /lib/modules/*/extra/aufs.ko
depmod "${KERNEL_VERSION}-${arch}"
-rm -r /usr/src/aufs4-standalone
+rm -r /usr/src/aufs-standalone
rm -r "/usr/src/linux-source-${KERNEL_SOURCE_VERSION}"
diff --git a/config/chroot_local-hooks/16-greeter b/config/chroot_local-hooks/16-greeter
new file mode 100644
index 0000000..5069f36
--- /dev/null
+++ b/config/chroot_local-hooks/16-greeter
@@ -0,0 +1,14 @@
+#! /bin/sh
+
+set -e
+set -u
+
+echo "Set up greeter language codes"
+
+# Extract language codes from the supported locales
+perl -n -E 'next unless m{_}xms; \
+ next if m{\@}xms; \
+ say $1 if m{(.*?) [. ]}xms' \
+ /usr/share/i18n/SUPPORTED \
+ | uniq \
+ > /usr/share/tails-greeter/language_codes
diff --git a/config/chroot_local-hooks/31-gdm-tails b/config/chroot_local-hooks/31-gdm-tails
new file mode 100755
index 0000000..db3285d
--- /dev/null
+++ b/config/chroot_local-hooks/31-gdm-tails
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+set -e
+set -u
+
+ORIG_SHELL_DESKTOP_FILE="/usr/share/applications/org.gnome.Shell.desktop"
+TAILS_SHELL_DESKTOP_FILE="/usr/share/gdm/greeter/applications/gdm-shell-tails.desktop"
+
+ORIG_SESSION_FILE="/usr/share/gnome-session/sessions/gnome-classic.session"
+TAILS_SESSION_FILE="/usr/share/gnome-session/sessions/gdm-tails.session"
+
+create_gdm_shell_tails_desktop_file() {
+ if ! grep -q --fixed-strings --line-regexp "Exec=/usr/bin/gnome-shell" \
+ "${ORIG_SHELL_DESKTOP_FILE}"; then
+ echo "Couldn't find expected exec line in GNOME Shell's .desktop file:" >&2
+ echo "(${ORIG_SHELL_DESKTOP_FILE})" >&2
+ exit 1
+ fi
+ sed -E "s,^Exec=/usr/bin/gnome-shell$,Exec=/usr/bin/gnome-shell --mode=gdm-tails," \
+ "${ORIG_SHELL_DESKTOP_FILE}" \
+ > "${TAILS_SHELL_DESKTOP_FILE}"
+}
+
+create_tails_session_file() {
+ if ! grep -q -E \
+ "^RequiredComponents=org\.gnome\.Shell;" "${ORIG_SESSION_FILE}" || \
+ ! grep -q --fixed-strings --line-regexp \
+ "Name=GNOME Classic" "${ORIG_SESSION_FILE}"; then
+ echo "Couldn't find expected Name and RequiredComponents lines in GNOME's session file:" >&2
+ echo "(${ORIG_SESSION_FILE})" >&2
+ exit 1
+ fi
+ sed -E \
+ -e "s,^RequiredComponents=org\.gnome\.Shell;,RequiredComponents=gdm-shell-tails;tails-greeter;," \
+ -e "s,^Name=GNOME Classic$,Name=Display Manager," \
+ -e "/^Name\[/d" \
+ "${ORIG_SESSION_FILE}" \
+ > "${TAILS_SESSION_FILE}"
+}
+
+create_gdm_shell_tails_desktop_file
+create_tails_session_file
diff --git a/config/chroot_local-hooks/98-remove_unwanted_packages b/config/chroot_local-hooks/98-remove_unwanted_packages
index 3648933..ca8da06 100755
--- a/config/chroot_local-hooks/98-remove_unwanted_packages
+++ b/config/chroot_local-hooks/98-remove_unwanted_packages
@@ -58,21 +58,18 @@ apt-get --yes purge \
packages_to_purge=""
### Remove packages that can get a different priority in the security
-### archive (see https://bugs.debian.org/867668):
-if is_package_installed mutt; then
- packages_to_purge="${packages_to_purge} mutt"
-fi
-
-### Hotfix for 3.14: procmail is no longer known by apt in tagged
-### snapshots, likely because no longer pulled by monkeysphere:
-if is_package_installed procmail; then
- packages_to_purge="${packages_to_purge} procmail"
-fi
+### archive (see https://bugs.debian.org/867668).
+for package in mutt rpcbind tcpd ; do
+ if is_package_installed "${package}"; then
+ packages_to_purge="${packages_to_purge} ${package}"
+ fi
+done
-### Hotfix for 4.0~beta1: similar as for procmail, above.
-for p in gcc-6 gcc-7 libgcc-7-dev; do
- if is_package_installed "${p}"; then
- packages_to_purge="${packages_to_purge} ${p}"
+### Remove unwanted packages that might, or might not,
+### have been installed during the build.
+for package in gcc-7 libgcc-7-dev procmail; do
+ if is_package_installed "${package}"; then
+ packages_to_purge="${packages_to_purge} ${package}"
fi
done
@@ -93,6 +90,9 @@ apt-get --yes purge \
if dpkg --get-selections | grep -qs -E '^geoclue'; then
apt-get --yes purge '^geoclue*'
fi
+if dpkg --get-selections | grep -qs -E '^exim4'; then
+ apt-get --yes purge '^exim4*'
+fi
### Deinstall dependencies of the just removed packages.
apt-get --yes --purge autoremove
diff --git a/config/chroot_local-includes/etc/gdm3/PostLogin/Default b/config/chroot_local-includes/etc/gdm3/PostLogin/Default
new file mode 100755
index 0000000..ada42a8
--- /dev/null
+++ b/config/chroot_local-includes/etc/gdm3/PostLogin/Default
@@ -0,0 +1,142 @@
+#! /bin/bash
+
+# This script is run as root by GDM after user's login.
+# It must return exit code 0, otherwise it totally breaks the logon process.
+
+# Input
+# =====
+#
+# * /etc/live/config.d/username.conf : $LIVE_USERNAME
+# * /var/lib/gdm3/tails.locale : $TAILS_LOCALE_NAME, $TAILS_XKBMODEL,
+# $TAILS_XKBLAYOUT, $TAILS_XKBVARIANT, $TAILS_XKBOPTIONS, $CODESET
+# * /var/lib/gdm3/tails.password : $TAILS_USER_PASSWORD
+# * /var/lib/gdm3/tails.physical_security : $TAILS_MACSPOOF_ENABLED
+
+# For whatever reason, /usr/sbin (needed by at least chpasswd)
+# is not in our PATH
+export PATH="/usr/sbin:${PATH}"
+LIVE_PASSWORD=live
+POLKIT=/etc/polkit-1/localauthority.conf.d/52-tails-greeter.conf
+SUDOERS=/etc/sudoers.d/tails-greeter
+NO_PASSWORD_LECTURE=/etc/sudoers.d/tails-greeter-no-password-lecture
+KBDSET=/etc/default/keyboard
+CONSET=/etc/default/console-setup
+LOCALE_CFG=/etc/default/locale
+CODSET="Uni1" # universal codeset to properly display glyphs in localized console
+
+log() {
+ echo "$1" >&2
+}
+
+log_n_exit() {
+ log "$1"
+ log "Leaving PostLogin"
+ exit 0
+}
+
+# enforce value $3 for variable $1 in file $2
+force_set() {
+ sed -i -e "s|^$1=.*$|$1=\"$3\"|" "$2"
+}
+
+# check if variable $1 is in file $2, if not - add with value $3 to file $2
+# $4 enforce adding $3 only (without $1= prefix)
+grep_n_set() {
+ FCHK=yes
+ grep -qs "$1" "$2" || FCHK=no
+ if [ -n "$4" ] ; then
+ if [ "$FCHK" = "no" ] ; then
+ echo "$3" >> "$2"
+ fi
+ else
+ if [ "$FCHK" = "no" ] ; then
+ echo "$1=$3" >> "$2"
+ else
+ force_set "$1" "$2" "$3"
+ fi
+ fi
+}
+
+### Let's go
+
+log "Entering PostLogin"
+
+### Gather general configuration
+
+# Import the name of the live user
+. /etc/live/config.d/username.conf || log_n_exit "Username file not found."
+if [ -z "${LIVE_USERNAME}" ] ; then
+ log_n_exit "Username variable not found."
+fi
+
+### Physical security
+log "Running /usr/local/lib/tails-unblock-network..."
+/usr/local/lib/tails-unblock-network
+log "tails-unblock-network has exited (status=$?)."
+
+### Localization
+
+# Import locale name
+. /var/lib/gdm3/tails.locale || log_n_exit "Locale file not found."
+if [ -z "${TAILS_LOCALE_NAME}" ] ; then
+ log_n_exit "Locale variable not found."
+fi
+
+# Set the keyboard mapping for X11 and the console
+localectl set-x11-keymap "$TAILS_XKBLAYOUT" "$TAILS_XKBMODEL" "$TAILS_XKBVARIANT" "$TAILS_XKBOPTIONS"
+
+# Set the system locale and formats
+localectl set-locale \
+ "LANG=${TAILS_LOCALE_NAME}.UTF-8" \
+ "LC_TIME=${TAILS_FORMATS}.UTF-8" \
+ "LC_NUMERIC=${TAILS_FORMATS}.UTF-8" \
+ "LC_MONETARY=${TAILS_FORMATS}.UTF-8" \
+ "LC_MEASUREMENT=${TAILS_FORMATS}.UTF-8" \
+ "LC_PAPER=${TAILS_FORMATS}.UTF-8" \
+
+# Save keyboard settings so that tails-configure-keyboard can set it
+# in the GNOME session.
+cat > /var/lib/tails-user-session/keyboard <<EOF
+XKBMODEL="$TAILS_XKBMODEL"
+XKBLAYOUT="$TAILS_XKBLAYOUT"
+XKBVARIANT="$TAILS_XKBVARIANT"
+XKBOPTIONS="$TAILS_XKBOPTIONS"
+EOF
+
+### Password
+
+# Import password for superuser access
+if [ -e /var/lib/gdm3/tails.password ] ; then
+ . /var/lib/gdm3/tails.password
+fi
+
+# Remove password file
+rm --interactive=never -f /var/lib/gdm3/tails.password
+
+# Check if password is actually set
+if [ -z "${TAILS_USER_PASSWORD}" ] ; then
+ rm -f "${POLKIT}" "${SUDOERS}"
+ deluser "${LIVE_USERNAME}" sudo
+ passwd -d "${LIVE_USERNAME}"
+ install -o root -g root -m 0440 /dev/null "${NO_PASSWORD_LECTURE}"
+ echo "Defaults:amnesia lecture=always" > "${NO_PASSWORD_LECTURE}"
+ echo "Defaults:amnesia lecture_file=/usr/share/tails-greeter/no-password-lecture.txt" >> "${NO_PASSWORD_LECTURE}"
+ echo "Defaults:amnesia badpass_message=\"The administration password is disabled.\"" >> "${NO_PASSWORD_LECTURE}"
+ log_n_exit "Password variable not found."
+fi
+
+# Sets the password
+echo "${LIVE_USERNAME}:${TAILS_USER_PASSWORD}" | chpasswd
+
+# Add sudoers entry
+echo "${LIVE_USERNAME} ALL = (ALL) ALL" >> "${SUDOERS}"
+chmod 0440 "${SUDOERS}"
+
+# Add PolKit config
+echo "[Configuration]" > "${POLKIT}"
+echo "AdminIdentities=unix-user:${LIVE_USERNAME}" >> "${POLKIT}"
+
+# Configure su-to-root to use sudo
+sudo -u "${LIVE_USERNAME}" sh -c "echo 'SU_TO_ROOT_SU=sudo' >> /home/${LIVE_USERNAME}/.su-to-rootrc"
+
+log "Leaving PostLogin"
diff --git a/config/chroot_local-includes/etc/polkit-1/localauthority/10-vendor.d/org.boum.tails.accounts.pkla b/config/chroot_local-includes/etc/polkit-1/localauthority/10-vendor.d/org.boum.tails.accounts.pkla
new file mode 100644
index 0000000..83d0571
--- /dev/null
+++ b/config/chroot_local-includes/etc/polkit-1/localauthority/10-vendor.d/org.boum.tails.accounts.pkla
@@ -0,0 +1,6 @@
+[Manage user accounts]
+Identity=unix-user:Debian-gdm
+Action=org.freedesktop.accounts.user-administration
+ResultAny=no
+ResultInactive=no
+ResultActive=yes
diff --git a/config/chroot_local-includes/etc/sudoers.d/tails-greeter-cryptsetup b/config/chroot_local-includes/etc/sudoers.d/tails-greeter-cryptsetup
new file mode 100644
index 0000000..94c955d
--- /dev/null
+++ b/config/chroot_local-includes/etc/sudoers.d/tails-greeter-cryptsetup
@@ -0,0 +1 @@
+Debian-gdm ALL = NOPASSWD: /sbin/cryptsetup
diff --git a/config/chroot_local-includes/etc/sudoers.d/tails-greeter-live-persist b/config/chroot_local-includes/etc/sudoers.d/tails-greeter-live-persist
new file mode 100644
index 0000000..9b8883d
--- /dev/null
+++ b/config/chroot_local-includes/etc/sudoers.d/tails-greeter-live-persist
@@ -0,0 +1 @@
+Debian-gdm ALL = NOPASSWD: /usr/local/sbin/live-persist
diff --git a/config/chroot_local-includes/etc/sudoers.d/tails-greeter-umount b/config/chroot_local-includes/etc/sudoers.d/tails-greeter-umount
new file mode 100644
index 0000000..ec55416
--- /dev/null
+++ b/config/chroot_local-includes/etc/sudoers.d/tails-greeter-umount
@@ -0,0 +1 @@
+Debian-gdm ALL = NOPASSWD: /bin/umount
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/__init__.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/__init__.py
new file mode 100644
index 0000000..45230ec
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/__init__.py
@@ -0,0 +1,29 @@
+# Copyright 2012-2016 Tails developers <tails@boum.org>
+# Copyright 2011 Max <govnototalitarizm@gmail.com>
+# Copyright 2011 Martin Owens
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""Tails Greeter
+
+"""
+import tailsgreeter.errors
+
+__appname__ = 'tails-greeter'
+__version__ = '1.0.11'
+__all__ = tailsgreeter.errors
+
+APPLICATION_TITLE = "Welcome to Tails!"
+APPLICATION_ICON_NAME = 'gdm-setup'
+TRANSLATION_DOMAIN = "tails" \ No newline at end of file
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/config.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/config.py
new file mode 100644
index 0000000..dbc8f89
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/config.py
@@ -0,0 +1,49 @@
+# Copyright 2012-2016 Tails developers <tails@boum.org>
+# Copyright 2011 Max <govnototalitarizm@gmail.com>
+# Copyright 2011 Martin Owens
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""Tails Greeter configuration"""
+
+import os.path
+
+# default Tails credentials
+LPASSWORD = 'live'
+LUSER = 'amnesia'
+
+# data path
+data_path = '/usr/share/tails-greeter/'
+
+# File where supported language codes (such as en_US) are stored
+# while building the tails-greeter binary package
+language_codes_path = os.path.join(data_path, 'language_codes')
+
+# File where default language code for languages are stored
+default_langcodes_path = os.path.join(data_path, 'default_langcodes')
+
+# Locales path
+locales_path = '/usr/share/locale/'
+
+# File where session locale settings are stored
+locale_output_path = '/var/lib/gdm3/tails.locale'
+
+# File where the session sudo password is stored
+rootpassword_output_path = '/var/lib/gdm3/tails.password'
+
+# World-readable file where Tails persistence status is stored
+persistence_state_file = '/var/lib/live/config/tails.persistence'
+
+# File where settings related to physical security are stored
+physical_security_settings = '/var/lib/gdm3/tails.physical_security'
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/errors.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/errors.py
new file mode 100644
index 0000000..97ed8d2
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/errors.py
@@ -0,0 +1,34 @@
+# Copyright 2013-2016 Tails developers <tails@boum.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""Tails Greeter exceptions
+
+"""
+
+
+class TailsGreeterError(Exception):
+ pass
+
+
+class LivePersistError(TailsGreeterError):
+ pass
+
+
+class WrongPassphraseError(LivePersistError):
+ pass
+
+
+class GdmServerError(TailsGreeterError):
+ pass
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gdmclient.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gdmclient.py
new file mode 100644
index 0000000..95bd73a
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gdmclient.py
@@ -0,0 +1,105 @@
+# Copyright 2013-2016 Tails developers <tails@boum.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""
+A very simple GDM client
+"""
+
+import gi
+import logging
+
+gi.require_version('Gdm', '1.0')
+from gi.repository import Gdm # NOQA: E402
+
+import tailsgreeter.config # NOQA: E402
+import tailsgreeter.errors # NOQA: E402
+
+
+class GdmClient (object):
+ """Greeter client class"""
+
+ def __init__(self, session_opened_cb=None):
+ self.session_opened_cb = session_opened_cb
+
+ greeter_client = Gdm.Client()
+ self.__greeter = greeter_client.get_greeter_sync(None)
+
+ self.__greeter.connect('default-session-name-changed',
+ self.__on_default_session_changed)
+ self.__greeter.connect('session-opened', self.__on_session_opened)
+ self.__greeter.connect('timed-login-requested',
+ self.__on_timed_login_requested)
+
+ self.__user_verifier = greeter_client.get_user_verifier_sync(None)
+ self.__user_verifier.connect('info', self.__on_info)
+ self.__user_verifier.connect('problem', self.__on_problem)
+ self.__user_verifier.connect('info_query', self.__on_info_query)
+ self.__user_verifier.connect('secret_info_query',
+ self.__on_secret_info_query)
+ self.__user_verifier.connect('conversation-stopped',
+ self.__on_conversation_stopped)
+ self.__user_verifier.connect('reset', self.__on_reset)
+ self.__user_verifier.connect('verification-complete',
+ self.__on_verification_complete)
+
+ def __on_info(self, client, service_name, info):
+ logging.debug("Received info %s from %s" % (info, service_name))
+
+ def __on_problem(self, client, service_name, problem):
+ logging.debug("Received problem %s from %s" % (problem, service_name))
+ raise tailsgreeter.errors.GdmServerError
+
+ def __on_info_query(self, client, service_name, question):
+ logging.debug("Received info_query %s from %s"
+ % (question, service_name))
+ raise NotImplementedError
+
+ def __on_secret_info_query(self, client, service_name, secret_question):
+ logging.debug("Received secret_info_query %s from %s"
+ % (secret_question, service_name))
+ self.__user_verifier.call_answer_query(
+ service_name, tailsgreeter.config.LPASSWORD, None, None, None)
+
+ def __on_conversation_stopped(self, client, service_name):
+ logging.debug("Received conversation-stopped from %s" % service_name)
+
+ def __on_reset(self):
+ logging.debug("Received reset")
+ raise NotImplementedError
+
+ def __on_verification_complete(self, *args):
+ logging.debug("Received verification-complete")
+
+ def __on_session_opened(self, client, service_name):
+ logging.debug("Received session-opened with %s" % service_name)
+ if self.session_opened_cb:
+ self.session_opened_cb()
+ self.__greeter.call_start_session_when_ready_sync(
+ service_name, True, None)
+ logging.debug("start_session_when_ready_sync called")
+
+ def __on_default_session_changed(self, client, session_id):
+ logging.debug("Received default-session-name-changed: %s" % session_id)
+
+ def __on_timed_login_requested(self, client, user_name, seconds):
+ logging.debug("Received timed-login-requested for %s in %s"
+ % (user_name, seconds))
+ raise NotImplementedError
+
+ def do_login(self):
+ """Login using autologin"""
+ logging.debug("Begin verification")
+ self.__user_verifier.call_begin_verification_for_user_sync(
+ "gdm-password", tailsgreeter.config.LUSER, None)
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py
new file mode 100644
index 0000000..91d1ec9
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py
@@ -0,0 +1,1171 @@
+# -*- coding: utf-8 -*-/
+#
+# Copyright 2015-2016 Tails developers <tails@boum.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+
+import locale
+import logging
+import threading
+import webbrowser
+
+import gi
+
+gi.require_version('GLib', '2.0')
+from gi.repository import GLib # NOQA: E402
+gi.require_version('Gdk', '3.0')
+from gi.repository import Gdk # NOQA: E402
+gi.require_version('Gtk', '3.0')
+from gi.repository import Gtk # NOQA: E402
+gi.require_version('Pango', '1.0')
+from gi.repository import Pango # NOQA: E402
+gi.require_version('WebKit2', '4.0')
+from gi.repository import WebKit2 # NOQA: E402
+
+import tailsgreeter # NOQA: E402
+import tailsgreeter.config # NOQA: E402
+import tailsgreeter.utils # NOQA: E402
+from tailsgreeter.language import TranslatableWindow # NOQA: E402
+
+from tailsgreeter import TRANSLATION_DOMAIN
+
+UI_FILE = 'greeter.ui'
+CSS_FILE = 'greeter.css'
+ICON_DIR = 'icons/'
+MAIN_WINDOW_PREFERRED_WIDTH = 620
+MAIN_WINDOW_PREFERRED_HEIGHT = 470
+ADD_SETTING_DIALOG_PREFERRED_WIDTH = 400
+HELP_WINDOW_PREFERRED_WIDTH = 800
+
+locale.bindtextdomain(TRANSLATION_DOMAIN, tailsgreeter.config.locales_path)
+# Mark translatable strings, but don't actually translate them, as we
+# delegate this to TranslatableWindow that handles on-the-fly language changes
+_ = lambda text: text # NOQA: E731
+
+
+class GreeterSetting(object):
+ def __init__(self, setting_id):
+ self.setting_id = setting_id
+ self.listbox_container = None
+ self.accel_key = None
+
+ def cb_popover_closed(self, popover, user_data=None):
+ self.listbox_container.unselect_all()
+ return False
+
+ @staticmethod
+ def _add_popover(widget, content, closed_cb=None):
+ popover = Gtk.Popover.new(widget)
+ popover.set_position(Gtk.PositionType.BOTTOM)
+ popover.add(content)
+ if closed_cb:
+ popover.connect('closed', closed_cb)
+ return popover
+
+ @staticmethod
+ def _fill_tree_view(name, treeview):
+ assert isinstance(name, str)
+ assert isinstance(treeview, Gtk.TreeView)
+ renderer = Gtk.CellRendererText()
+ renderer.props.ellipsize = Pango.EllipsizeMode.END
+ column = Gtk.TreeViewColumn(name, renderer, text=1)
+ treeview.append_column(column)
+
+
+class RegionSetting(GreeterSetting):
+ def __init__(self, setting_id, greeter, builder, setting_target=None):
+ super().__init__(setting_id)
+ self.greeter = greeter
+
+ if not setting_target:
+ setting_target = setting_id
+ self.target = setting_target
+
+ self.target.connect("notify::value", self.cb_value_changed)
+
+ self.treestore = self.target.get_tree()
+ self.build_ui(builder)
+
+ def build_ui(self, builder):
+ self.listbox_container = builder.get_object("listbox_language")
+
+ listboxrow = builder.get_object(
+ "listboxrow_{}".format(self.setting_id))
+ self.label_value = builder.get_object(
+ "label_{}_value".format(self.setting_id))
+ box = builder.get_object(
+ "box_{}_popover".format(self.setting_id))
+ self.treeview = builder.get_object(
+ "treeview_{}".format(self.setting_id))
+ searchentry = builder.get_object(
+ "searchentry_{}".format(self.setting_id))
+
+ self.popover = GreeterSetting._add_popover(
+ listboxrow, box, closed_cb=self.cb_popover_closed)
+
+ GreeterSetting._fill_tree_view("", self.treeview)
+ self.treestore_filtered = self.treestore.filter_new()
+ self.treestore_filtered.set_visible_func(
+ self.cb_liststore_filtered_visible_func, data=searchentry)
+ self.treeview.set_model(self.treestore_filtered)
+
+ searchentry.connect("search-changed",
+ self.cb_searchentry_search_changed)
+ searchentry.connect("activate", self.cb_searchentry_activate)
+ self.treeview.connect("row-activated", self.cb_treeview_row_activated)
+
+ def cb_searchentry_activate(self, searchentry, user_data=None):
+ """Selects the topmost item in the treeview when pressing Enter"""
+ if searchentry.get_text():
+ self.treeview.row_activated(Gtk.TreePath.new_from_string("0"),
+ self.treeview.get_column(0))
+ else:
+ self.popover.set_visible(False)
+
+ def cb_searchentry_search_changed(self, searchentry, user_data=None):
+ self.treestore_filtered.refilter()
+ if searchentry.get_text():
+ self.treeview.expand_all()
+ self.treeview.scroll_to_point(0, 0) # scroll to top
+ else:
+ self.treeview.collapse_all()
+ return False
+
+ def cb_treeview_row_activated(self, treeview, path, column,
+ user_data=None):
+ treemodel = treeview.get_model()
+ code = treemodel.get_value(treemodel.get_iter(path), 0)
+ name = treemodel.get_value(treemodel.get_iter(path), 1)
+
+ self.label_value.set_label(name)
+ self.popover.set_visible(False)
+
+ self.target.set_value(code)
+
+ def cb_value_changed(self, obj, param):
+ logging.debug("refreshing {}".format(self.target))
+ self.label_value.set_label(self.target.get_name())
+
+ def treeview_select_line(model, path, iter, data):
+ if model.get_value(iter, 0) == data:
+ self.treeview.get_selection().select_iter(iter)
+ self.treeview.scroll_to_cell(path, use_align=True,
+ row_align=0.5)
+ return True
+ else:
+ return False
+
+ self.treestore_filtered.foreach(
+ treeview_select_line,
+ self.target.get_value())
+
+ def cb_liststore_filtered_visible_func(self, model, treeiter, searchentry):
+ search_query = searchentry.get_text().lower()
+ if not search_query:
+ return True
+
+ # Does the current node match the search?
+ value = model.get_value(treeiter, 1).lower()
+ if search_query in value:
+ return True
+
+ # Does the parent node match the search?
+ treepath = model.get_path(treeiter)
+ parent_treepath = treepath.copy()
+ parent_treepath.up()
+ if parent_treepath.get_depth() == 1:
+ # treepath is now the parent
+ parent_value = model.get_value(model.get_iter(parent_treepath), 0)
+ return search_query in parent_value
+
+ # Does any of the children nodes match the search?
+ children_treeiter = model.iter_children(treeiter)
+ while children_treeiter:
+ child_value = model.get_value(children_treeiter, 0)
+ if search_query in child_value:
+ return True
+ children_treeiter = model.iter_next(children_treeiter)
+
+ return False
+
+
+class TextSetting(RegionSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("text", greeter, builder,
+ greeter.localisationsettings.text)
+
+
+class KeyboardSetting(RegionSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("keyboard", greeter, builder,
+ greeter.localisationsettings.layout)
+
+
+class FormatsSetting(RegionSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("formats", greeter, builder,
+ greeter.localisationsettings.formats)
+
+
+class TimezoneSetting(RegionSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("tz", greeter, builder,
+ greeter.localisationsettings.timezone)
+
+
+class AdditionalSetting(GreeterSetting):
+ def __init__(self, setting_id, greeter, builder):
+ super().__init__(setting_id)
+ self.greeter = greeter
+ self.build_ui(builder)
+
+ def build_ui(self, builder):
+ self.listbox_container = builder.get_object("listbox_settings")
+
+ self.listboxrow = builder.get_object(
+ "listboxrow_{}".format(self.setting_id))
+ self.label_value = builder.get_object(
+ "label_{}_value".format(self.setting_id))
+ self.box = builder.get_object(
+ "box_{}_popover".format(self.setting_id))
+
+ def build_popover(self):
+ self.popover = GreeterSetting._add_popover(
+ self.listboxrow, self.box, closed_cb=self.cb_popover_closed)
+
+ return self.popover
+
+ def close_popover_if_any(self):
+ """Closes the popover if it exists
+
+ Returns True if the popover was closed, False if there is no popover"""
+ if self.has_popover():
+ self.popover.set_visible(False)
+ return True
+ else:
+ return False
+
+ def has_popover(self):
+ return hasattr(self, 'popover')
+
+
+class AdminSetting(AdditionalSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("admin", greeter, builder)
+ self.accel_key = Gdk.KEY_a
+
+ def build_ui(self, builder):
+ super().build_ui(builder)
+ tailsgreeter.utils.import_builder_objects(self, builder, [
+ 'box_admin_password',
+ 'box_admin_verify',
+ 'button_admin_disable',
+ 'entry_admin_password',
+ 'entry_admin_verify',
+ 'label_admin_value',
+ ])
+
+ # XXX-non-blocker: avoid mixing business logic with GUI code?
+ # The "check and return a boolean" operation should live in a pure function
+ # outside of this file, and a method here should use it to update the GUI
+ # accordingly.
+ def check(self):
+ password = self.entry_admin_password.get_text()
+ verify = self.entry_admin_verify.get_text()
+ if verify and verify == password:
+ icon = 'emblem-ok-symbolic'
+ elif verify and not (verify == password):
+ icon = 'dialog-warning-symbolic'
+ else:
+ icon = None
+ self.entry_admin_verify.set_icon_from_icon_name(
+ Gtk.EntryIconPosition.SECONDARY, icon)
+ return (verify == password)
+
+ def apply(self):
+ if self.check():
+ password = self.entry_admin_password.get_text()
+ self.greeter.rootaccess.password = password
+ # XXX-non-blocker: the action at a distance on next line is
+ # scary; better return the admin password (or False if the check
+ # fails), and let the caller modify its own state... or do some
+ # slightly less scary action at a distance?
+ # Same comment wrt. the disable method, and more
+ # generally it feels wrong that each *Setting objects gets a
+ # greeter attribute they can mess with as they want.
+ self.label_admin_value.set_label(
+ tailsgreeter.utils.get_on_off_string(password, default=None))
+ self.box_admin_password.set_visible(False)
+ self.box_admin_verify.set_visible(False)
+ self.button_admin_disable.set_visible(True)
+ return True
+ else:
+ return False
+
+ def disable(self):
+ self.greeter.rootaccess.password = None
+ self.label_admin_value.set_label(
+ tailsgreeter.utils.get_on_off_string(None, default=None))
+ self.entry_admin_password.set_text("")
+ self.entry_admin_verify.set_text("")
+ self.box_admin_password.set_visible(True)
+ self.box_admin_verify.set_visible(True)
+ self.button_admin_disable.set_visible(False)
+
+
+class MACSpoofSetting(AdditionalSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("macspoof", greeter, builder)
+ self.accel_key = Gdk.KEY_m
+
+ def build_ui(self, builder):
+ super().build_ui(builder)
+ tailsgreeter.utils.import_builder_objects(self, builder, [
+ 'image_macspoof_off',
+ 'image_macspoof_on',
+ 'label_macspoof_value',
+ 'listboxrow_macspoof_off',
+ 'listboxrow_macspoof_on',
+ ])
+
+ def row_activated(self, row):
+ macspoof = None
+ if row == self.listboxrow_macspoof_on:
+ macspoof = True
+ self.image_macspoof_on.set_visible(True)
+ self.image_macspoof_off.set_visible(False)
+ elif row == self.listboxrow_macspoof_off:
+ macspoof = False
+ self.image_macspoof_off.set_visible(True)
+ self.image_macspoof_on.set_visible(False)
+ self.greeter.physical_security.macspoof = macspoof
+ self.label_macspoof_value.set_label(
+ tailsgreeter.utils.get_on_off_string(macspoof, default=True))
+
+
+class NetworkSetting(AdditionalSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("network", greeter, builder)
+ self.accel_key = Gdk.KEY_n
+
+ def build_ui(self, builder):
+ super().build_ui(builder)
+ tailsgreeter.utils.import_builder_objects(self, builder, [
+ 'infobar_network',
+ 'image_network_clear',
+ 'image_network_specific',
+ 'image_network_off',
+ 'label_network_value',
+ 'listboxrow_network_clear',
+ 'listboxrow_network_specific',
+ 'listboxrow_network_off',
+ ])
+
+ def build_popover(self):
+ super().build_popover()
+ self.show_bridge_info_if_needed()
+
+ def row_activated(self, row):
+ netconf = None
+ if row == self.listboxrow_network_clear:
+ netconf = self.greeter.physical_security.NETCONF_DIRECT
+ self.image_network_clear.set_visible(True)
+ self.image_network_specific.set_visible(False)
+ self.image_network_off.set_visible(False)
+ self.label_network_value.set_label(_("Direct (default)"))
+ elif row == self.listboxrow_network_specific:
+ netconf = self.greeter.physical_security.NETCONF_OBSTACLE
+ self.image_network_specific.set_visible(True)
+ self.image_network_clear.set_visible(False)
+ self.image_network_off.set_visible(False)
+ self.label_network_value.set_label(_("Bridge & Proxy"))
+ elif row == self.listboxrow_network_off:
+ netconf = self.greeter.physical_security.NETCONF_DISABLED
+ self.image_network_off.set_visible(True)
+ self.image_network_specific.set_visible(False)
+ self.image_network_clear.set_visible(False)
+ self.label_network_value.set_label(_("Offline"))
+ if netconf:
+ self.greeter.physical_security.netconf = netconf
+
+ def show_bridge_info_if_needed(self):
+ if (self.greeter.physical_security.netconf ==
+ self.greeter.physical_security.NETCONF_OBSTACLE):
+ self.infobar_network.set_visible(True)
+ else:
+ self.infobar_network.set_visible(False)
+
+
+class CamouflageSetting(AdditionalSetting):
+ def __init__(self, greeter, builder):
+ super().__init__("camouflage", greeter, builder)
+
+ def build_ui(self, builder):
+ super().build_ui(builder)
+ tailsgreeter.utils.import_builder_objects(self, builder, [
+ 'label_camouflage_value'])
+
+ def switch_active(self, switch):
+ state = switch.get_active()
+ if state:
+ self.greeter.camouflage.os = 'win8'
+ else:
+ self.greeter.camouflage.os = None
+ self.label_camouflage_value.set_label(
+ tailsgreeter.utils.get_on_off_string(state, default=None))
+
+
+class PersistentStorage(object):
+ def __init__(self, greeter, builder):
+ self.greeter = greeter
+ self.build_ui(builder)
+
+ def build_ui(self, builder):
+ tailsgreeter.utils.import_builder_objects(self, builder, [
+ 'box_storage',
+ 'box_storage_unlock',
+ 'box_storage_unlocked',
+ 'button_storage_configure',
+ 'button_storage_unlock',
+ 'checkbutton_storage_show_passphrase',
+ 'entry_storage_passphrase',
+ 'image_storage_state',
+ 'infobar_persistence',
+ 'label_infobar_persistence',
+ 'spinner_storage_unlock',
+ ])
+
+ if self.greeter.persistence.has_persistence():
+ self.button_storage_configure.set_visible(False)
+ self.checkbutton_storage_show_passphrase.set_visible(True)
+ self.box_storage_unlock.set_visible(True)
+ self.image_storage_state.set_visible(True)
+ self.entry_storage_passphrase.set_visible(True)
+ self.spinner_storage_unlock.set_visible(False)
+ else:
+ # XXX-future: We have a nice button to configure the persistence
+ # but nothing is implemented to do so currently. So let's
+ # hide the whole thing for now.
+ self.box_storage.set_visible(False)
+
+ def configure(self):
+ # XXX-future: this should launch the configuration of the persistence.
+ logging.warn("User would be able to set up an encrypted storage.")
+ raise NotImplementedError
+
+ def lock(self):
+ if self.greeter.persistence.lock():
+ self.button_storage_lock.set_visible(False)
+ self.checkbutton_storage_show_passphrase.set_visible(True)
+ self.box_storage_unlock.set_visible(True)
+ self.image_storage_state.set_visible(True)
+ self.image_storage_state.set_from_icon_name(
+ 'tails-locked', Gtk.IconSize.BUTTON)
+ self.entry_storage_passphrase.set_visible(True)
+ self.entry_storage_passphrase.set_sensitive(True)
+ self.button_storage_unlock.set_visible(True)
+ self.button_storage_unlock.set_sensitive(True)
+ self.button_storage_unlock.set_label(_("Unlock"))
+ else:
+ self.label_infobar_persistence.set_label(
+ _("Failed to relock persistent storage."))
+ self.infobar_persistence.set_visible(True)
+
+ def passphrase_changed(self, editable):
+ # Remove warning icon
+ editable.set_icon_from_icon_name(
+ Gtk.EntryIconPosition.SECONDARY,
+ None)
+
+ def unlock(self, unlocked_cb=None, failed_cb=None):
+ if not unlocked_cb:
+ unlocked_cb = self.cb_unlocked
+ if not failed_cb:
+ failed_cb = self.cb_unlock_failed
+
+ self.checkbutton_storage_show_passphrase.set_visible(False)
+ self.entry_storage_passphrase.set_sensitive(False)
+ self.button_storage_unlock.set_sensitive(False)
+ self.button_storage_unlock.set_label(_("Unlocking…"))
+ self.image_storage_state.set_visible(False)
+ self.spinner_storage_unlock.set_visible(True)
+
+ passphrase = self.entry_storage_passphrase.get_text()
+
+ # Let's execute the unlocking in a thread
+ def do_unlock_storage(unlock_method, passphrase, unlocked_cb,
+ failed_cb):
+ if unlock_method(passphrase):
+ GLib.idle_add(unlocked_cb)
+ else:
+ GLib.idle_add(failed_cb)
+
+ unlocking_thread = threading.Thread(
+ target=do_unlock_storage,
+ args=(self.greeter.persistence.unlock,
+ passphrase,
+ unlocked_cb,
+ failed_cb)
+
+ )
+ unlocking_thread.start()
+
+ def cb_unlock_failed(self):
+ logging.debug("Storage unlock failed")
+ self.checkbutton_storage_show_passphrase.set_visible(True)
+ self.entry_storage_passphrase.set_sensitive(True)
+ self.button_storage_unlock.set_sensitive(True)
+ self.button_storage_unlock.set_label(_("Unlock"))
+ self.image_storage_state.set_visible(True)
+ self.spinner_storage_unlock.set_visible(False)
+ self.label_infobar_persistence.set_label(
+ _("Cannot unlock encrypted storage with this passphrase."))
+ self.infobar_persistence.set_visible(True)
+ self.entry_storage_passphrase.select_region(0, -1)
+ self.entry_storage_passphrase.set_icon_from_icon_name(
+ Gtk.EntryIconPosition.SECONDARY,
+ 'dialog-warning-symbolic')
+ self.entry_storage_passphrase.grab_focus()
+
+ def cb_unlocked(self):
+ logging.debug("Storage unlocked")
+ self.spinner_storage_unlock.set_visible(False)
+ self.entry_storage_passphrase.set_visible(False)
+ self.button_storage_unlock.set_visible(False)
+ self.infobar_persistence.set_visible(False)
+ self.image_storage_state.set_from_icon_name('tails-unlocked',
+ Gtk.IconSize.BUTTON)
+ self.image_storage_state.set_visible(True)
+ self.box_storage_unlocked.set_visible(True)
+
+
+class GreeterSettingsCollection(object):
+ def __init__(self, greeter, builder):
+ # Region settings
+ self.text = TextSetting(greeter, builder)
+ self.keyboard = KeyboardSetting(greeter, builder)
+ self.formats = FormatsSetting(greeter, builder)
+ self.timezone = TimezoneSetting(greeter, builder)
+
+ # Additional settings views
+ self.admin = AdminSetting(greeter, builder)
+ self.macspoof = MACSpoofSetting(greeter, builder)
+ self.network = NetworkSetting(greeter, builder)
+ self.camouflage = CamouflageSetting(greeter, builder)
+
+ def __getitem__(self, key):
+ return self.__getattribute__(key)
+
+ def __iter__(self):
+ return iter([getattr(self, k) for k in self.__dict__.keys()])
+
+
+class DialogAddSetting(Gtk.Dialog):
+ def __init__(self, builder, settings):
+ super().__init__(use_header_bar=True)
+ self.build_ui(builder)
+ self.settings = settings
+
+ def build_ui(self, builder):
+ tailsgreeter.utils.import_builder_objects(self, builder, [
+ 'box_admin_popover',
+ 'box_camouflage_popover',
+ 'box_macspoof_popover',
+ 'box_network_popover',
+ 'entry_admin_password',
+ 'listbox_add_setting',
+ 'listboxrow_admin',
+ 'listboxrow_camouflage',
+ 'listboxrow_macspoof',
+ 'listboxrow_network',
+ ])
+
+ self.set_transient_for(self)
+ self.set_title(_("Additional Settings"))
+ self.set_default_size(-1, ADD_SETTING_DIALOG_PREFERRED_WIDTH)
+
+ sizegroup = Gtk.SizeGroup(Gtk.SizeGroupMode.HORIZONTAL)
+
+ accelgroup = Gtk.AccelGroup.new()
+ self.add_accel_group(accelgroup)
+
+ self.button_cancel = self.add_button(_("Cancel"),
+ Gtk.ResponseType.CANCEL)
+ accelgroup.connect(Gdk.KEY_Escape, 0, 0,
+ self.cb_accelgroup_cancel_activated)
+ sizegroup.add_widget(self.button_cancel)
+
+ self.button_add = self.add_button(_("Add"), Gtk.ResponseType.YES)
+ Gtk.StyleContext.add_class(self.button_add.get_style_context(),
+ 'suggested-action')
+ sizegroup.add_widget(self.button_add)
+ accelgroup.connect(Gdk.KEY_Return, 0, 0,
+ self.cb_accelgroup_add_activated)
+ self.button_add.set_visible(False)
+
+ self.button_back = Gtk.Button.new_with_label(_("Back"))
+ self.button_back.set_visible(False)
+ self.button_back.connect('clicked', self.cb_button_back_clicked, None)
+ sizegroup.add_widget(self.button_back)
+ accelgroup.connect(Gdk.KEY_Back, 0, 0,
+ self.cb_accelgroup_back_activated)
+ # These key bindings are copied from Firefox, and are the same with
+ # right-to-left languages.
+ accelgroup.connect(Gdk.KEY_Left, Gdk.ModifierType.MOD1_MASK, 0,
+ self.cb_accelgroup_back_activated)
+ accelgroup.connect(Gdk.KEY_KP_Left, Gdk.ModifierType.MOD1_MASK, 0,
+ self.cb_accelgroup_back_activated)
+ self.get_header_bar().pack_end(self.button_back)
+
+ self.stack = Gtk.Stack()
+ self.stack.add_named(self.listbox_add_setting, "setting-type")
+ self.listbox_add_setting.set_valign(Gtk.Align.FILL)
+ self.listbox_add_setting.set_vexpand(True)
+ self.stack.set_visible(True)
+ # XXX: is SLIDE_LEFT_RIGHT automatically inversed in RTL mode?
+ self.stack.set_transition_type(
+ Gtk.StackTransitionType.SLIDE_LEFT_RIGHT)
+ self.get_content_area().add(self.stack)
+
+ def go_back(self):
+ self.stack.set_visible_child_name('setting-type')
+ self.button_back.set_visible(False)
+ self.button_add.set_visible(False)
+ self.stack.remove(self.stack.get_child_by_name('setting-details'))
+
+ def listbox_focus(self):
+ # Workaround autoselection of 1st item on focus
+ self.listbox_add_setting.unselect_all()
+
+ def listbox_row_activated(self, row):
+ if not row: # this happens when the row gets unselected
+ return False
+ setting_id = tailsgreeter.utils.setting_id_from_row(row)
+ self.stack.add_named(self.settings[setting_id].box, 'setting-details')
+ self.stack.set_visible_child_name('setting-details')
+ # XXX: this is an ugly workaround for a buggy default focus
+ if setting_id == "admin":
+ self.entry_admin_password.grab_focus()
+ self.button_back.set_visible(True)
+ self.button_add.set_visible(True)
+
+ def run(self, setting_id=None):
+ if setting_id:
+ row = self.settings[setting_id].listboxrow
+ row.emit("activate")
+ else:
+ self.stack.set_visible_child_name('setting-type')
+ self.button_back.set_visible(False)
+ self.button_add.set_visible(False)
+ return super().run()
+
+ def cb_accelgroup_add_activated(self, accel_group, accelerable, keyval,
+ modifier, user_data=None):
+ if self.button_add.get_visible() and self.button_add.get_sensitive():
+ self.response(Gtk.ResponseType.YES)
+ return False
+
+ def cb_accelgroup_back_activated(self, accel_group, accelerable, keyval,
+ modifier, user_data=None):
+ self.go_back()
+ return False
+
+ def cb_accelgroup_cancel_activated(self, accel_group, accelerable, keyval,
+ modifier, user_data=None):
+ self.response(Gtk.ResponseType.CANCEL)
+ return True # disable the default callbacks that destroys the dialog
+
+ def cb_button_back_clicked(self, widget, user_data=None):
+ self.go_back()
+ return False
+
+
+class GreeterMainWindow(Gtk.Window, TranslatableWindow):
+
+ def __init__(self, greeter):
+ Gtk.Window.__init__(self, title=_(tailsgreeter.APPLICATION_TITLE))
+ TranslatableWindow.__init__(self, self)
+ self.greeter = greeter
+
+ self._build_ui()
+ self.store_translations(self)
+
+ self.connect('delete-event', self.cb_window_delete_event, None)
+ self.set_position(Gtk.WindowPosition.CENTER)
+
+ # Utility methods
+
+ def __align_checkbuttons(self):
+ """Put the text before the checkbox rather than the opposite (assuming
+ LTR), because it's what designers want."""
+ for checkbutton in [self.checkbutton_language_save,
+ self.checkbutton_storage_show_passphrase,
+ self.checkbutton_settings_save]:
+ checkbutton.set_direction(not Gtk.Widget.get_default_direction())
+
+ def _build_accelerators(self):
+ accelgroup = Gtk.AccelGroup.new()
+ self.add_accel_group(accelgroup)
+ for accel_key in [s.accel_key for s in self.settings if s.accel_key]:
+ accelgroup.connect(
+ accel_key,
+ Gdk.ModifierType.SHIFT_MASK | Gdk.ModifierType.CONTROL_MASK,
+ Gtk.AccelFlags.VISIBLE,
+ self.cb_accelgroup_setting_activated)
+
+ def _build_headerbar(self):
+ headerbar = Gtk.HeaderBar()
+ headerbar_sizegroup = Gtk.SizeGroup(Gtk.SizeGroupMode.HORIZONTAL)
+
+ self.button_shutdown = Gtk.Button.new_with_label(_("Shutdown"))
+ self.button_shutdown.connect('clicked', self.cb_button_shutdown_clicked)
+ headerbar_sizegroup.add_widget(self.button_shutdown)
+ headerbar.pack_start(self.button_shutdown)
+
+ self.button_start = Gtk.Button.new_with_mnemonic(_("_Start Tails"))
+ Gtk.StyleContext.add_class(self.button_start.get_style_context(),
+ 'suggested-action')
+ self.button_start.connect('clicked', self.cb_button_start_clicked)
+ headerbar_sizegroup.add_widget(self.button_start)
+ headerbar.pack_end(self.button_start)
+
+ # XXX-future: the button Take a tour is for phase 2
+ # button_tour = Gtk.Button.new_with_label(_("Take a Tour"))
+ # button_tour.connect('clicked', self.cb_button_tour_clicked)
+ # headerbar_sizegroup.add_widget(button_tour)
+ # headerbar.pack_end(button_tour)
+
+ headerbar.show_all()
+
+ return headerbar
+
+ def _build_ui(self):
+ # Load custom CSS
+ css_provider = Gtk.CssProvider.new()
+ css_provider.load_from_path(tailsgreeter.config.data_path + CSS_FILE)
+ Gtk.StyleContext.add_provider_for_screen(
+ Gdk.Screen.get_default(),
+ css_provider,
+ Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
+
+ # Load UI interface definition
+ builder = Gtk.Builder()
+ builder.set_translation_domain(TRANSLATION_DOMAIN)
+ builder.add_from_file(tailsgreeter.config.data_path + UI_FILE)
+ builder.connect_signals(self)
+
+ for widget in builder.get_objects():
+ # Store translations for the builder objects
+ self.store_translations(widget)
+ # Workaround Gtk bug #710888 - GtkInfoBar not shown after calling
+ # gtk_widget_show:
+ # https://bugzilla.gnome.org/show_bug.cgi?id=710888
+ if isinstance(widget, Gtk.InfoBar):
+ revealer = widget.get_template_child(Gtk.InfoBar, 'revealer')
+ revealer.set_transition_type(Gtk.RevealerTransitionType.NONE)
+
+ tailsgreeter.utils.import_builder_objects(self, builder, [
+ 'box_admin_popover',
+ 'box_camouflage_popover',
+ 'box_language',
+ 'box_language_header',
+ 'box_macspoof_popover',
+ 'box_main',
+ 'box_network_popover',
+ 'box_settings',
+ 'box_settings_header',
+ 'box_settings_values',
+ 'box_storage',
+ 'box_storage_unlock',
+ 'box_storage_unlocked',
+ 'button_storage_configure',
+ 'checkbutton_language_save',
+ 'checkbutton_settings_save',
+ 'checkbutton_storage_show_passphrase',
+ 'entry_admin_verify',
+ 'entry_storage_passphrase',
+ 'frame_language',
+ 'label_settings_default',
+ 'listbox_add_setting',
+ 'listbox_settings',
+ 'listboxrow_formats',
+ 'listboxrow_keyboard',
+ 'listboxrow_admin',
+ 'listboxrow_camouflage',
+ 'listboxrow_macspoof',
+ 'listboxrow_network',
+ 'listboxrow_text',
+ 'listboxrow_tz',
+ 'switch_camouflage',
+ 'toolbutton_settings_add',
+ ])
+
+ # Set preferred width
+ self.set_default_size(min(Gdk.Screen.get_default().get_width(),
+ MAIN_WINDOW_PREFERRED_WIDTH),
+ min(Gdk.Screen.get_default().get_height(),
+ MAIN_WINDOW_PREFERRED_HEIGHT))
+
+ # Add our icon dir to icon theme
+ icon_theme = Gtk.IconTheme.get_default()
+ icon_theme.prepend_search_path(
+ tailsgreeter.config.data_path + ICON_DIR)
+
+ # Add placeholder to settings ListBox
+ self.listbox_settings.set_placeholder(self.label_settings_default)
+
+ # Settings view
+ self.settings = GreeterSettingsCollection(self.greeter, builder)
+
+ # Persistent storage
+ self.persistent_storage = PersistentStorage(self.greeter, builder)
+
+ # Add children to ApplicationWindow
+ self.add(self.box_main)
+ self.set_titlebar(self._build_headerbar())
+
+ # Set keyboard focus chain
+ self.__set_focus_chain()
+
+ # Setup keyboard accelerators
+ self._build_accelerators()
+
+ # Adapt CheckButtons direction to the mockups
+ self.__align_checkbuttons()
+
+ # Add settings dialog
+ self.dialog_add_setting = DialogAddSetting(builder, self.settings)
+ self.dialog_add_setting.set_transient_for(self)
+ self.store_translations(self.dialog_add_setting)
+
+ # Settings popovers
+ self.switch_camouflage.connect('notify::active',
+ self.cb_switch_camouflage_active)
+
+ def __set_focus_chain(self):
+ self.box_language.set_focus_chain([
+ self.frame_language,
+ self.box_language_header])
+ self.box_storage.set_focus_chain([
+ self.box_storage_unlock,
+ self.box_storage_unlocked,
+ self.button_storage_configure,
+ self.checkbutton_storage_show_passphrase])
+ self.box_settings.set_focus_chain([
+ self.box_settings_values,
+ self.box_settings_header])
+
+ # TranslatableWindow implementation
+ def translate_to(self, lang):
+ TranslatableWindow.translate_to(self, lang)
+ self.__align_checkbuttons()
+
+ # Actions
+
+ def check_and_login(self):
+ if (self.greeter.persistence.has_persistence() and
+ self.entry_storage_passphrase.get_text() and
+ not self.greeter.persistence.is_unlocked):
+ logging.debug("Unlocking persistent storage before login")
+ self.persistent_storage.unlock(unlocked_cb=self.finish_login)
+ else:
+ self.finish_login()
+
+ def finish_login(self):
+ logging.info("Starting the session")
+ self.greeter.login()
+ return False
+
+ def setting_add(self, setting_id=None):
+ response = self.dialog_add_setting.run(setting_id)
+ if response == Gtk.ResponseType.YES:
+ row = self.listbox_add_setting.get_selected_row()
+ setting_id = tailsgreeter.utils.setting_id_from_row(row)
+ box = self.__getattribute__("box_{}_popover".format(setting_id))
+
+ self.listbox_add_setting.remove(row)
+ self.listbox_settings.add(row)
+ self.dialog_add_setting.set_visible(False)
+ self.dialog_add_setting.stack.remove(box)
+ self.settings[setting_id].build_popover()
+
+ self.listbox_settings.unselect_all()
+ if True not in [c.get_visible() for c in
+ self.listbox_add_setting.get_children()]:
+ self.toolbutton_settings_add.set_sensitive(False)
+ self.dialog_add_setting.set_visible(False)
+ else:
+ old_details = self.dialog_add_setting.stack.get_child_by_name(
+ 'setting-details')
+ if old_details:
+ self.dialog_add_setting.stack.remove(old_details)
+ self.dialog_add_setting.set_visible(False)
+
+ def setting_edit(self, setting_id):
+ if self.settings[setting_id].has_popover():
+ self.settings[setting_id].listboxrow.emit("activate")
+ else:
+ self.setting_add(setting_id)
+
+ def setting_admin_check(self):
+ match = self.settings.admin.check()
+ self.dialog_add_setting.button_add.set_sensitive(match)
+
+ def setting_admin_apply(self):
+ if (self.settings.admin.apply() and
+ not self.settings.admin.close_popover_if_any()):
+ # There is no popover, because we are in the add setting dialog
+ self.dialog_add_setting.response(Gtk.ResponseType.YES)
+
+ def setting_admin_disable(self):
+ self.settings.admin.disable()
+ self.settings.admin.close_popover_if_any()
+
+ def setting_network_close(self, only_if_popover=False):
+ if self.settings.network.close_popover_if_any():
+ # we are in the popover
+ self.settings.network.show_bridge_info_if_needed()
+ elif not only_if_popover:
+ # We are in the "Add Additional Setting" dialog
+ self.dialog_add_setting.response(Gtk.ResponseType.YES)
+
+ def show(self):
+ super().show()
+ self.button_start.grab_focus()
+ self.get_root_window().set_cursor(Gdk.Cursor.new(Gdk.CursorType.ARROW))
+
+ # Callbacks
+
+ # XXX-refactor: some of these callbacks could be totally moved out of this
+ # class
+
+ def cb_accelgroup_setting_activated(self, accel_group, accelerable,
+ keyval, modifier):
+ for setting in self.settings:
+ if setting.accel_key == keyval:
+ self.setting_edit(setting.setting_id)
+ return False
+
+ def cb_button_admin_disable_clicked(self, widget, user_data=None):
+ self.setting_admin_disable()
+
+ def cb_linkbutton_help_activate(self, linkbutton, user_data=None):
+ linkbutton.set_sensitive(False)
+ # Display progress cursor and update the UI
+ self.get_window().set_cursor(Gdk.Cursor.new(Gdk.CursorType.WATCH))
+ while Gtk.events_pending():
+ Gtk.main_iteration()
+ # Note that we add the "file://" part here, not in the URI.
+ # We're forced to add this
+ # callback *in addition* to the standard one (Gtk.show_uri),
+ # which will do nothing for uri:s without a protocol
+ # part. This is critical since we otherwise would open the
+ # default browser (iceweasel) in T-G. If pygtk had a mechanism
+ # like gtk's g_signal_handler_find() this could be dealt with
+ # in a less messy way by just removing the default handler.
+ page = linkbutton.get_uri()
+ uri = "file:///usr/share/doc/tails/website/" + page
+ logging.debug("Opening help window for {}".format(uri))
+ helpwindow = GreeterHelpWindow(uri)
+ helpwindow.show()
+
+ def restore_linkbutton_status(widget, event, linkbutton):
+ linkbutton.set_sensitive(True)
+ return False
+
+ helpwindow.connect('delete-event', restore_linkbutton_status,
+ linkbutton)
+ # Restore default cursor
+ self.get_window().set_cursor(None)
+
+ def cb_button_shutdown_clicked(self, widget, user_data=None):
+ self.greeter.shutdown()
+ return False
+
+ def cb_button_start_clicked(self, widget, user_data=None):
+ self.check_and_login()
+ return False
+
+ def cb_button_storage_configure_clicked(self, user_data=None):
+ self.persistent_storage.configure()
+ return False
+
+ def cb_button_tour_clicked(self, user_data=None):
+ # XXX-future: the button Take a tour is for phase 2
+ raise NotImplementedError
+ return False
+
+ def cb_button_storage_lock_clicked(self, widget, user_data=None):
+ self.persistent_storage.lock()
+ return False
+
+ def cb_button_storage_unlock_clicked(self, widget, user_data=None):
+ self.persistent_storage.unlock()
+ return False
+
+ def cb_checkbutton_storage_show_passphrase_toggled(self, widget,
+ user_data=None):
+ self.entry_storage_passphrase.set_visibility(widget.get_active())
+
+ def cb_entry_admin_changed(self, editable, user_data=None):
+ self.setting_admin_check()
+ return False
+
+ def cb_entry_admin_focus_out_event(self, widget, event, user_data=None):
+ self.setting_admin_apply()
+ return False
+
+ def cb_entry_admin_password_activate(self, widget, user_data=None):
+ self.entry_admin_verify.grab_focus()
+ return False
+
+ def cb_entry_admin_verify_activate(self, widget, user_data=None):
+ self.setting_admin_apply()
+ return False
+
+ def cb_entry_storage_passphrase_activated(self, entry, user_data=None):
+ self.persistent_storage.unlock()
+ return False
+
+ def cb_entry_storage_passphrase_changed(self, editable, user_data=None):
+ self.persistent_storage.passphrase_changed(editable)
+ return False
+
+ def cb_infobar_close(self, infobar, user_data=None):
+ infobar.set_visible(False)
+ return False
+
+ def cb_infobar_response(self, infobar, response_id, user_data=None):
+ infobar.set_visible(False)
+ return False
+
+ def cb_listbox_add_setting_focus(self, widget, direction, user_data=None):
+ self.dialog_add_setting.listbox_focus()
+ return False
+
+ def cb_listbox_add_setting_row_activated(self, listbox, row,
+ user_data=None):
+ self.dialog_add_setting.listbox_row_activated(row)
+ return False
+
+ # XXX-refactor: an object could wrap the whole RegionSettings box
+ def cb_listbox_language_row_activated(self, listbox, row, user_data=None):
+ setting_id = tailsgreeter.utils.setting_id_from_row(row)
+ tailsgreeter.utils.popover_toggle(self.settings[setting_id].popover)
+ return False
+
+ def cb_listbox_network_button_press(self, widget, event, user_data=None):
+ if event.type == Gdk.EventType._2BUTTON_PRESS:
+ self.setting_network_close()
+ return False
+
+ def cb_listbox_macspoof_row_activated(self, listbox, row, user_data=None):
+ self.settings.macspoof.row_activated(row)
+ self.settings.macspoof.close_popover_if_any()
+
+ def cb_listbox_network_row_activated(self, listbox, row, user_data=None):
+ self.settings.network.row_activated(row)
+ self.setting_network_close(only_if_popover=True)
+ return False
+
+ def cb_listbox_settings_row_activated(self, listbox, row, user_data=None):
+ setting_id = tailsgreeter.utils.setting_id_from_row(row)
+ tailsgreeter.utils.popover_toggle(self.settings[setting_id].popover)
+ return False
+
+ def cb_switch_camouflage_active(self, switch, pspec, user_data=None):
+ self.settings.camouflage.switch_active(switch)
+ self.settings.camouflage.close_popover_if_any()
+
+ def cb_toolbutton_settings_add_clicked(self, user_data=None):
+ self.setting_add()
+ return False
+
+ def cb_toolbutton_settings_mnemonic_activate(self, widget, group_cycling):
+ self.setting_add()
+ return False
+
+ def cb_window_delete_event(self, widget, event, user_data=None):
+ # Don't close the toplevel window on user request (e.g. pressing
+ # Alt+F4)
+ return True
+
+
+class GreeterHelpWindow(Gtk.Window, TranslatableWindow):
+ """Displays a modal HTML help window"""
+
+ def __init__(self, uri):
+ Gtk.Window.__init__(self, title=_(tailsgreeter.APPLICATION_TITLE))
+ TranslatableWindow.__init__(self, self)
+
+ self._build_ui()
+ self.store_translations(self)
+
+ self.load_uri(uri)
+ # Replace the busy cursor set by the tails-greeter startup script with
+ # the default cursor.
+ self.get_window().set_cursor(None)
+
+ def _build_ui(self):
+ self.set_position(Gtk.WindowPosition.CENTER)
+
+ # Create HeaderBar
+ headerbar = Gtk.HeaderBar()
+ headerbar.set_show_close_button(True)
+ headerbar.show_all()
+
+ # Create webview with custom stylesheet
+ css = WebKit2.UserStyleSheet(
+ ".sidebar, .banner { display: none; }",
+ WebKit2.UserContentInjectedFrames.ALL_FRAMES,
+ WebKit2.UserStyleLevel.USER,
+ None,
+ None)
+ content_manager = WebKit2.UserContentManager()
+ content_manager.add_style_sheet(css)
+ self.webview = WebKit2.WebView.new_with_user_content_manager(
+ content_manager)
+ self.webview.connect("resource-load-started",
+ self.cb_load_started)
+ self.webview.show()
+
+ scrolledwindow = Gtk.ScrolledWindow()
+ scrolledwindow.add(self.webview)
+ scrolledwindow.show()
+
+ # Add children to ApplicationWindow
+ self.add(scrolledwindow)
+ self.set_titlebar(headerbar)
+
+ def load_uri(self, uri):
+ self.webview.load_uri(uri)
+ self.resize(
+ min(HELP_WINDOW_PREFERRED_WIDTH,
+ self.get_screen().get_width()),
+ self.get_screen().get_height())
+ self.present()
+
+ def cb_load_started(self, web_view, ressource, request):
+ if not request.get_uri().startswith("file://"):
+ webbrowser.open_new(request.get_uri())
+ request.set_uri(web_view.get_uri())
+
+
+class GreeterBackgroundWindow(Gtk.ApplicationWindow):
+
+ def __init__(self, app):
+ Gtk.Window.__init__(self, title=_(tailsgreeter.APPLICATION_TITLE),
+ application=app)
+ self.override_background_color(
+ Gtk.StateFlags.NORMAL, Gdk.RGBA(0, 0, 0, 1))
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py
new file mode 100644
index 0000000..68bb76d
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py
@@ -0,0 +1,861 @@
+# -*- coding: utf-8 -*-
+#
+# Copyright 2012-2016 Tails developers <tails@boum.org>
+# Copyright 2011 Max <govnototalitarizm@gmail.com>
+# Copyright 2011 Martin Owens
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""Localization handling
+
+"""
+
+import logging
+import gettext
+import os
+import locale
+
+import gi
+import pycountry
+import pytz
+
+gi.require_version('Gio', '2.0')
+from gi.repository import Gio # NOQA: E402
+gi.require_version('GLib', '2.0')
+from gi.repository import GLib # NOQA: E402
+gi.require_version('GObject', '2.0')
+from gi.repository import GObject # NOQA: E402
+gi.require_version('GnomeDesktop', '3.0')
+from gi.repository import GnomeDesktop # NOQA: E402
+gi.require_version('Gtk', '3.0')
+from gi.repository import Gtk # NOQA: E402
+gi.require_version('AccountsService', '1.0')
+from gi.repository import AccountsService # NOQA: E402
+
+import tailsgreeter.config # NOQA: E402
+
+from tailsgreeter import TRANSLATION_DOMAIN
+
+
+def ln_iso639_tri(ln_CC):
+ """get iso639 3-letter code from a language code
+
+ example: en -> eng"""
+ return pycountry.languages.get(
+ alpha2=language_from_locale(ln_CC)).terminology
+
+
+def ln_iso639_2_T_to_B(lng):
+ """Convert a ISO-639-2/T code (e.g. deu for German) to a 639-2/B one
+ (e.g. ger for German)"""
+ return pycountry.languages.get(terminology=lng).bibliographic
+
+
+def language_from_locale(locale):
+ """Obtain the language code from a locale code
+
+ example: fr_FR -> fr"""
+ return locale.split('_')[0]
+
+
+def languages_from_locales(locales):
+ """Obtain a language code list from a locale code list
+
+ example: [fr_FR, en_GB] -> [fr, en]"""
+ language_codes = []
+ for l in locales:
+ language_code = language_from_locale(l)
+ if language_code not in language_codes:
+ language_codes.append(language_code)
+ return language_codes
+
+
+def country_from_locale(locale):
+ """Obtain the country code from a locale code
+
+ example: fr_FR -> FR"""
+ return locale.split('_')[1]
+
+
+def countries_from_locales(locales):
+ """Obtain a country code list from a locale code list
+
+ example: [fr_FR, en_GB] -> [FR, GB]"""
+ country_codes = []
+ for l in locales:
+ country_code = country_from_locale(l)
+ if country_code not in country_codes:
+ country_codes.append(country_code)
+ return country_codes
+
+
+class TranslatableWindow(object):
+ """Interface providing functions to translate a window on the fly
+ """
+ retain_focus = True
+ registered_windows = []
+
+ def __init__(self, window):
+ self.window = window
+ self.translation = gettext.translation(
+ TRANSLATION_DOMAIN,
+ tailsgreeter.config.locales_path,
+ fallback=True
+ )
+
+ self.containers = []
+ self.labels = {}
+ self.placeholder_texts = {}
+ self.titles = {}
+ self.tooltips = {}
+
+ TranslatableWindow.registered_windows.append(window)
+
+ @staticmethod
+ def get_locale_direction(lang):
+ """Return Gtk.TextDirection for lang
+
+ This method in basically the same as Gtk.get_locale_direction
+ (gtk_get_locale_direction in gtk/gtkmain.c), but it accepts a lang
+ parameter rather than using current locale.
+ """
+ gtk_translation = gettext.translation("gtk30",
+ languages=[str(lang)],
+ fallback=True)
+ logging.debug("%s has GTK translation: %s" % (lang, gtk_translation))
+ # Translators: please do not translate this string (it is read from
+ # Gtk translation)
+ default_dir = gtk_translation.gettext("default:LTR")
+ logging.debug("translation for direction is %s" % (default_dir))
+ if default_dir == "default:RTL":
+ logging.debug("%s is RTL" % lang)
+ return Gtk.TextDirection.RTL
+ else:
+ return Gtk.TextDirection.LTR
+
+ def store_translations(self, widget):
+ """Store the elements that should be localised inside widget
+
+ Go through all children of widget and store the translations
+ of labels, tooltips and titles and the containers whose text direction
+ should be updated when switching between LTR and RTL.
+
+ This method should be called once the widgets are created"""
+ if not isinstance(widget, Gtk.Widget):
+ logging.debug("%s is not a Gtk.Widget" % widget)
+ return None
+ if isinstance(widget, Gtk.Label) or isinstance(widget, Gtk.Button):
+ if widget not in self.labels:
+ self.labels[widget] = widget.get_label()
+ # Wrap set_label to get notified about string changes
+ widget.original_set_label = widget.set_label
+
+ def wrapped_set_label(text):
+ self.labels[widget] = text
+ widget.original_set_label(self.gettext(text))
+ widget.set_label = wrapped_set_label
+ elif isinstance(widget, Gtk.Entry):
+ if widget not in self.placeholder_texts:
+ self.placeholder_texts[widget] = widget.get_placeholder_text()
+ elif isinstance(widget, Gtk.Container):
+ self.containers.append(widget)
+ if ((isinstance(widget, Gtk.HeaderBar) or
+ isinstance(widget, Gtk.Window)) and
+ widget not in self.titles and
+ widget.get_title()):
+ self.titles[widget] = widget.get_title()
+ for child in widget.get_children():
+ self.store_translations(child)
+ else:
+ logging.debug("W: unhandled widget: %s" % widget)
+ if widget.get_has_tooltip():
+ if widget not in self.tooltips:
+ self.tooltips[widget] = widget.get_tooltip_text()
+
+ def gettext(self, text):
+ """Return text, translated if possible"""
+ if self.translation and text:
+ text = self.translation.gettext(text)
+ return text
+
+ def translate_to(self, lang):
+ """Translate registered widgets on the fly
+
+ Loop through widgets registered with store_translations and translate
+ them on the fly"""
+ logging.debug("translating %s to %s" % (self, lang))
+ try:
+ self.translation = gettext.translation(
+ TRANSLATION_DOMAIN,
+ tailsgreeter.config.locales_path, [str(lang)])
+ except IOError:
+ self.translation = None
+
+ text_direction = self.get_locale_direction(lang)
+ for container in self.containers:
+ container.set_default_direction(text_direction)
+ for widget, label in self.labels.items():
+ if label:
+ widget.original_set_label(self.gettext(label))
+ for widget in self.placeholder_texts.keys():
+ widget.set_placeholder_text(self.gettext(self.placeholder_texts[widget]))
+ for widget in self.titles.keys():
+ widget.set_title(self.gettext(self.titles[widget]))
+ for widget in self.tooltips.keys():
+ widget.set_tooltip_markup(self.gettext(self.tooltips[widget]))
+ if (self.window.get_sensitive() and
+ self.window.get_visible() and
+ self.retain_focus):
+ self.window.present()
+
+ @staticmethod
+ def translate_all(lang):
+ for widget in TranslatableWindow.registered_windows:
+ widget.translate_to(lang)
+
+
+class RegionSetting(GObject.Object):
+
+ value = GObject.property(type=str)
+ is_default = GObject.property(type=bool, default=True)
+
+ def __init__(self, settings_object):
+ super().__init__()
+ self._settings = settings_object
+
+ def get_value(self):
+ return self.value
+
+ # is_default will be used by subclasses to register default value
+ def set_value(self, value, is_default=False):
+ self.value = value
+ if not is_default:
+ self.is_default = False
+ self._settings._apply_settings_to_upcoming_session()
+
+ def get_name(self):
+ raise NotImplementedError
+
+ def get_tree(self):
+ raise NotImplementedError
+
+ def set_default(self):
+ raise NotImplementedError
+
+ def set_default_if_needed(self):
+ """Update default value if it was not user choosen"""
+ if self.is_default:
+ self.set_default()
+
+
+class TextSetting(RegionSetting):
+
+ def __init__(self, settings_object):
+ super().__init__(settings_object)
+ super().set_value('en_US', is_default=True)
+
+ def get_tree(self, locale_codes=None):
+ if not locale_codes:
+ locale_codes = self._settings._system_locales_list
+
+ treestore = Gtk.TreeStore(GObject.TYPE_STRING, # id
+ GObject.TYPE_STRING) # name
+
+ lang_codes = languages_from_locales(
+ self._settings._system_locales_list)
+ lang_codes.sort(key=lambda x: self._language_name(x).lower())
+ for lang_code in lang_codes:
+ language_name = self._language_name(lang_code)
+ if not language_name:
+ # Don't display languages without a name
+ continue
+ treeiter_language = treestore.append(parent=None)
+ treestore.set(treeiter_language,
+ 0, self.get_default_locale(lang_code))
+ treestore.set(treeiter_language, 1, language_name)
+ locale_codes = sorted(
+ self.get_default_locales(lang_code),
+ key=lambda x: self._locale_name(x).lower())
+ if len(locale_codes) > 1:
+ for locale_code in locale_codes:
+ treeiter_locale = treestore.append(
+ parent=treeiter_language)
+ treestore.set(treeiter_locale, 0, locale_code)
+ treestore.set(treeiter_locale, 1,
+ self._locale_name(locale_code))
+ return treestore
+
+ def get_name(self):
+ return self._locale_name(self.get_value())
+
+ def get_default_locales(self, lang_code):
+ """Return available locales for given language
+
+ """
+ if lang_code in self._settings._system_languages_dict:
+ return self._settings._system_languages_dict[lang_code]
+
+ def get_default_locale(self, lang_code=None):
+ """Return default locale for given language
+
+ Returns the 1st locale among:
+ - the locale whose country name matches language name
+ - the 1st locale for the language
+ - en_US
+ """
+ default_locales = self.get_default_locales(lang_code)
+ if default_locales:
+ for locale_code in default_locales:
+ if (country_from_locale(locale_code).lower() ==
+ language_from_locale(locale_code)):
+ return locale_code
+ return default_locales[0]
+ else:
+ return 'en_US'
+
+ def set_value(self, locale, is_default=False):
+ super().set_value(locale, is_default)
+ self.__apply_locale()
+ self._settings.formats.set_default_if_needed() # XXX: notify
+ self._settings.layout.set_default_if_needed() # XXX: notify
+ if self._settings._locale_selected_cb:
+ self._settings._locale_selected_cb(locale)
+
+ def _language_name(self, lang_code):
+ default_locale = 'C'
+ local_locale = self.get_default_locale(lang_code)
+ try:
+ native_name = GnomeDesktop.get_language_from_code(
+ lang_code, local_locale).capitalize()
+ except AttributeError:
+ return ""
+ localized_name = GnomeDesktop.get_language_from_code(
+ lang_code, default_locale).capitalize()
+ if native_name == localized_name:
+ return native_name
+ else:
+ return "{native} ({localized})".format(
+ native=native_name, localized=localized_name)
+
+ def _locale_name(self, locale_code):
+ lang_code = language_from_locale(locale_code)
+ country_code = country_from_locale(locale_code)
+ language_name_locale = GnomeDesktop.get_language_from_code(lang_code)
+ language_name_native = GnomeDesktop.get_language_from_code(
+ lang_code, locale_code)
+ country_name_locale = GnomeDesktop.get_country_from_code(country_code)
+ country_name_native = GnomeDesktop.get_country_from_code(
+ country_code, locale_code)
+ try:
+ if (language_name_native == language_name_locale and
+ country_name_native == country_name_locale):
+ return "{language} - {country}".format(
+ language=language_name_native.capitalize(),
+ country=country_name_native)
+ else:
+ return "{language} - {country} " \
+ "({local_language} - {local_country})".format(
+ language=language_name_native.capitalize(),
+ country=country_name_native,
+ local_language=language_name_locale.capitalize(),
+ local_country=country_name_locale)
+ except AttributeError:
+ return locale_code
+
+ def __apply_locale(self):
+ locale_code = locale.normalize(
+ self.get_value() + '.' + locale.getpreferredencoding())
+ logging.debug("Setting session language to %s", locale_code)
+ if self._settings._act_user:
+ GLib.idle_add(
+ lambda: self._settings._act_user.set_language(locale_code))
+ else:
+ logging.warning("AccountsManager not ready")
+
+
+class FormatSetting(RegionSetting):
+ def __init__(self, settings_object):
+ super().__init__(settings_object)
+ super().set_value('en_US', is_default=True)
+
+ def get_tree(self, format_codes=None):
+ if not format_codes:
+ format_codes = self._settings._system_locales_list
+
+ treestore = Gtk.TreeStore(GObject.TYPE_STRING, # id
+ GObject.TYPE_STRING) # name
+
+ format_codes = countries_from_locales(
+ self._settings._system_locales_list)
+ format_codes.sort(key=lambda x: self._country_name(x).lower())
+ logging.debug("format_codes=%s" % format_codes)
+ for format_code in format_codes:
+ format_name = self._country_name(format_code)
+ if not format_name:
+ # Don't display languages without a name
+ continue
+ treeiter_format = treestore.append(parent=None)
+ treestore.set(treeiter_format,
+ 0, self.get_default_locale(format_code))
+ treestore.set(treeiter_format, 1, format_name)
+ locale_codes = sorted(
+ self.get_default_locales(format_code),
+ key=lambda x: self._locale_name(x).lower())
+ if len(locale_codes) > 1:
+ for locale_code in locale_codes:
+ treeiter_locale = treestore.append(
+ parent=treeiter_format)
+ treestore.set(treeiter_locale, 0, locale_code)
+ treestore.set(treeiter_locale, 1,
+ self._locale_name(locale_code))
+ return treestore
+
+ def get_name(self):
+ return self._locale_name(self.get_value())
+
+ def get_default_locales(self, country_code):
+ """Return available locales for given country
+
+ """
+ if country_code in self._settings._system_formats_dict:
+ return self._settings._system_formats_dict[country_code]
+
+ def get_default_locale(self, country_code=None):
+ """Return default locale for given country
+
+ Returns the 1st locale among:
+ - the locale whose country name matches country name
+ - the 1st locale for the language
+ - en_US
+ """
+ default_locales = self.get_default_locales(country_code)
+ if default_locales:
+ for locale_code in default_locales:
+ if (country_from_locale(locale_code).lower() ==
+ language_from_locale(locale_code)):
+ return locale_code
+ return default_locales[0]
+ else:
+ return 'en_US'
+
+ def _country_name(self, country_code):
+ default_locale = 'C'
+ local_locale = self.get_default_locale(country_code)
+ native_name = GnomeDesktop.get_country_from_code(
+ country_code, local_locale)
+ if not native_name:
+ return ""
+ localized_name = GnomeDesktop.get_country_from_code(
+ country_code, default_locale)
+ if native_name == localized_name:
+ return native_name
+ else:
+ return "{native} ({localized})".format(
+ native=native_name, localized=localized_name)
+
+ def _locale_name(self, locale_code):
+ lang_code = language_from_locale(locale_code)
+ country_code = country_from_locale(locale_code)
+ language_name_locale = GnomeDesktop.get_language_from_code(lang_code)
+ language_name_native = GnomeDesktop.get_language_from_code(
+ lang_code, locale_code)
+ country_name_locale = GnomeDesktop.get_country_from_code(country_code)
+ country_name_native = GnomeDesktop.get_country_from_code(
+ country_code, locale_code)
+ try:
+ if (language_name_native == language_name_locale and
+ country_name_native == country_name_locale):
+ return "{country} - {language}".format(
+ language=language_name_native.capitalize(),
+ country=country_name_native)
+ else:
+ return "{country} - {language} " \
+ "({local_country} - {local_language})".format(
+ language=language_name_native.capitalize(),
+ country=country_name_native,
+ local_language=language_name_locale.capitalize(),
+ local_country=country_name_locale)
+ except AttributeError:
+ return locale_code
+
+ def set_default(self):
+ """Set default format for current language
+
+ Select the same locale for formats that the language
+ """
+ default_format = self._settings.text.get_value()
+ logging.debug("setting default formats to %s" % default_format)
+ self.set_value(default_format, is_default=True)
+
+
+class LayoutSetting(RegionSetting):
+
+ def __init__(self, settings_object):
+ super().__init__(settings_object)
+ super().set_value('en+us', is_default=True)
+ self.__xklinfo = GnomeDesktop.XkbInfo()
+
+ def get_tree(self, layout_codes=None):
+ if not layout_codes:
+ layout_codes = self.get_all()
+
+ treestore = Gtk.TreeStore(GObject.TYPE_STRING, # id
+ GObject.TYPE_STRING) # name
+ layouts = self._layouts_split_names(layout_codes)
+ for group_name in sorted(layouts.keys()):
+ layout_codes = sorted(
+ layouts[group_name],
+ key=lambda x: self._layout_name(x).lower())
+ treeiter_group = treestore.append(parent=None)
+ # we fill the title with the 1st layout of the group
+ treestore.set(treeiter_group, 0, layout_codes[0])
+ treestore.set(treeiter_group, 1, group_name)
+ if len(layout_codes) > 1:
+ for layout_code in layout_codes:
+ treeiter_layout = treestore.append(parent=treeiter_group)
+ treestore.set(treeiter_layout, 0, layout_code)
+ treestore.set(treeiter_layout, 1,
+ self._layout_name(layout_code))
+ return treestore
+
+ def get_name(self):
+ return self._layout_name(self.get_value())
+
+ def get_all(self):
+ """Return a list of all keyboard layout codes
+
+ """
+ return self.__xklinfo.get_all_layouts()
+
+ def get_defaults(self):
+ """Return list of supported keyboard layouts for current language
+
+ """
+ lang_code = language_from_locale(self._settings.text.get_value())
+ layouts = self._layouts_for_language(lang_code)
+ if not layouts:
+ country_code = country_from_locale(self._settings.text.get_value())
+ layouts = self._layouts_for_country(country_code)
+ if not layouts:
+ layouts = ['us']
+ return layouts
+
+ def set_value(self, layout, is_default=False):
+ super().set_value(layout, is_default)
+ self._apply_layout_to_current_screen()
+
+ def _layout_name(self, layout_code):
+ id, display_name, short_name, xkb_layout, xkb_variant = \
+ self.__xklinfo.get_layout_info(layout_code)
+ return display_name
+
+ def _layouts_split_names(self, layout_codes):
+ layouts_names = {}
+ for layout_code in layout_codes:
+ layout_name = self._layout_name(layout_code)
+ country_name, s, v = layout_name.partition(' (')
+ if country_name not in layouts_names:
+ layouts_names[country_name] = set([layout_code])
+ else:
+ layouts_names[country_name].add(layout_code)
+ return layouts_names
+
+ def _layouts_for_language(self, lang_code):
+ """Return the list of available layouts for given language
+ """
+ layouts = []
+ try:
+ t_code = ln_iso639_tri(lang_code)
+ except KeyError:
+ t_code = lang_code
+ if t_code == 'nno' or t_code == 'nob':
+ t_code = 'nor'
+
+ layouts = self.__xklinfo.get_layouts_for_language(t_code)
+
+ if t_code == 'hrv':
+ layouts.append('hr')
+
+ if len(layouts) == 0:
+ b_code = ln_iso639_2_T_to_B(t_code)
+ logging.debug(
+ "got no layout for ISO-639-2/T code %s, "
+ "trying with ISO-639-2/B code %s",
+ t_code, b_code)
+
+ layouts = self.__xklinfo.get_layouts_for_language(b_code)
+
+ logging.debug('got %d layouts for %s', len(layouts), lang_code)
+ return layouts
+
+ def _layouts_for_country(self, country):
+ """Return the list of available layouts for given country
+ """
+ # XXX: it would be logical to use:
+ # self.__xklinfo.get_layouts_for_language(country)
+ # but it doesn't actually return the list of all layouts matching a
+ # country.
+ def country_filter(layout):
+ cc = country.lower()
+ return ((layout == cc)
+ or ('+' in layout) and (layout.split('+')[0] == cc))
+
+ layouts = list(filter(country_filter, self.get_all()))
+
+ logging.debug('got %d layouts for %s', len(layouts), country)
+ return layouts
+
+ @staticmethod
+ def _split_variant(layout_code):
+ if '+' in layout_code:
+ return layout_code.split('+')
+ else:
+ return (layout_code, None)
+
+ def _filter_layouts(self, layouts, country, language):
+ """Try to select the best layout in a layout list
+ """
+ if len(layouts) > 1:
+ def variant_filter(layout):
+ layout_name, layout_variant = self._split_variant(layout)
+ return layout_variant is None
+ filtered_layouts = list(filter(variant_filter, layouts))
+ logging.debug("Filter by variant: %s", filtered_layouts)
+ if len(filtered_layouts) > 0:
+ layouts = filtered_layouts
+ if len(layouts) > 1:
+ def country_filter(layout):
+ layout_name, layout_variant = self._split_variant(layout)
+ return layout_variant == country.lower()
+ filtered_layouts = list(filter(country_filter, layouts))
+ logging.debug("Filter by country %s: %s", country,
+ filtered_layouts)
+ if len(filtered_layouts) > 0:
+ layouts = filtered_layouts
+ if len(layouts) > 1:
+ def language_filter(layout):
+ layout_name, layout_variant = self._split_variant(layout)
+ return layout_variant == language
+ filtered_layouts = list(filter(language_filter, layouts))
+ logging.debug("Filter by language %s: %s", language,
+ filtered_layouts)
+ if len(filtered_layouts) > 0:
+ layouts = filtered_layouts
+ return layouts
+
+ def set_default(self):
+ """Sets the best default layout for the current locale
+ """
+ default_layout = False
+
+ language = language_from_locale(self._settings.text.get_value())
+ country = country_from_locale(self._settings.text.get_value())
+
+ # First, build a list of layouts to consider for the language
+ language_layouts = self._layouts_for_language(language)
+ logging.debug("Language %s layouts: %s", language, language_layouts)
+ country_layouts = self._layouts_for_country(country)
+ logging.debug("Country %s layouts: %s", country, country_layouts)
+ layouts = set(language_layouts).intersection(country_layouts)
+ logging.debug("Intersection of language %s and country %s: %s",
+ language, country, layouts)
+ if not len(layouts) > 0:
+ def country_filter(layout):
+ layout_name, layout_variant = self._split_variant(layout)
+ return layout_name == country.lower()
+ layouts = list(filter(country_filter, language_layouts))
+ logging.debug("Empty intersection of language and country, filter "
+ "by country %s only: %s", country, layouts)
+ if not len(layouts) > 0:
+ def language_filter(layout):
+ layout_name, layout_variant = self._split_variant(layout)
+ return layout_name == language
+ layouts = list(filter(language_filter, language_layouts))
+ logging.debug("List still empty, filter by language %s only: %s",
+ language, layouts)
+ if not len(layouts) > 0:
+ layouts = language_layouts
+ logging.debug("List still empty, use all language %s layouts: %s",
+ language, layouts)
+
+ # Then, filter the list
+ layouts = self._filter_layouts(layouts, country, language)
+ if len(layouts) != 1:
+ # Can't find a single result, build a new list for the country
+ layouts = country_layouts
+ logging.debug("Still not 1 layouts. Try again using all country "
+ "%s layouts: %s", country, layouts)
+ layouts = self._filter_layouts(layouts, country, language)
+ if len(layouts) == 1:
+ default_layout = layouts.pop()
+ logging.debug("Selecting single matching layout %s",
+ default_layout)
+ elif len(layouts) > 1:
+ default_layout = layouts.pop()
+ logging.debug("No good layout, arbitrary using layout %s",
+ default_layout)
+ else:
+ default_layout = 'us'
+ logging.debug("Using us as fallback default layout")
+ self.set_value(default_layout, is_default=True)
+
+ def _apply_layout_to_current_screen(self):
+ layout = self.get_value()
+ logging.debug("layout=%s" % layout)
+
+ settings = Gio.Settings('org.gnome.desktop.input-sources')
+ settings.set_value('sources', GLib.Variant('a(ss)', [('xkb', layout)]))
+
+
+class TimezoneSetting(RegionSetting):
+
+ def get_tree(self):
+ timezones = self.get_all()
+ treestore = Gtk.TreeStore(GObject.TYPE_STRING, # id
+ GObject.TYPE_STRING) # name
+ areas = self._timezone_split_area(timezones)
+ for area in sorted(areas.keys()):
+ locations = sorted(
+ areas[area],
+ key=lambda x: self._timezone_name(x).lower())
+ treeiter_area = treestore.append(parent=None)
+ # we fill the title with the 1st layout of the group
+ treestore.set(treeiter_area, 0, locations[0])
+ treestore.set(treeiter_area, 1, area)
+ if len(locations) > 1:
+ for location in locations:
+ treeiter_location = treestore.append(parent=treeiter_area)
+ treestore.set(treeiter_location, 0, location)
+ treestore.set(treeiter_location, 1,
+ self._timezone_name(location))
+ return treestore
+
+ def get_name(self):
+ return self._timezone_name(self.get_value())
+
+ def get_all(self):
+ """Return a list of all timezones
+
+ """
+ return pytz.common_timezones
+
+ def _timezone_name(self, timezone):
+ if '/' in timezone:
+ area, s, location = timezone.partition('/')
+ return location
+ else:
+ return timezone
+
+ def _timezone_split_area(self, timezones):
+ timezone_areas = {}
+ for timezone in timezones:
+ area, s, v = timezone.partition('/')
+ if area not in timezone_areas:
+ timezone_areas[area] = set([timezone])
+ else:
+ timezone_areas[area].add(timezone)
+ return timezone_areas
+
+
+class LocalisationSettings(object):
+ """Controller for localisation settings
+
+ """
+ def __init__(self, usermanager_loaded_cb=None, locale_selected_cb=None):
+ self._usermanager_loaded_cb = usermanager_loaded_cb
+ self._locale_selected_cb = locale_selected_cb
+
+ self._act_user = None
+ self.__actusermanager_loadedid = None
+
+ self._system_locales_list = self.__get_langcodes()
+ self._system_languages_dict = self.__fill_languages_dict(
+ self._system_locales_list)
+ self._system_formats_dict = self.__fill_formats_dict(
+ self._system_locales_list)
+
+ actusermanager = AccountsService.UserManager.get_default()
+ self.__actusermanager_loadedid = actusermanager.connect(
+ "notify::is-loaded", self.__on_usermanager_loaded)
+
+ self.text = TextSetting(self)
+ self.formats = FormatSetting(self)
+ self.layout = LayoutSetting(self)
+ self.timezone = TimezoneSetting(self)
+
+ def __del__(self):
+ if self.__actusermanager_loadedid:
+ self.__actusermanager.disconnect(self.__actusermanager_loadedid)
+
+ def __get_langcodes(self):
+ with open(tailsgreeter.config.default_langcodes_path, 'r') as f:
+ defcodes = [line.rstrip('\n') for line in f.readlines()]
+ with open(tailsgreeter.config.language_codes_path, 'r') as f:
+ langcodes = [line.rstrip('\n') for line in f.readlines()]
+ logging.debug('%s languages found', len(langcodes))
+ return defcodes + langcodes
+
+ def __on_usermanager_loaded(self, manager, pspec, data=None):
+ logging.debug("Received AccountsManager signal is-loaded")
+ act_user = manager.get_user(tailsgreeter.config.LUSER)
+ if not act_user.is_loaded():
+ raise RuntimeError("User manager for %s not loaded"
+ % tailsgreeter.config.LUSER)
+ self._act_user = act_user
+ if self._usermanager_loaded_cb:
+ self._usermanager_loaded_cb()
+
+ def __fill_languages_dict(self, locale_codes):
+ """assemble dictionary of language codes to corresponding locales list
+
+ example {en: [en_US, en_GB], ...}"""
+ languages_dict = {}
+ for locale_code in locale_codes:
+ lang_code = language_from_locale(locale_code)
+ if lang_code not in languages_dict:
+ languages_dict[lang_code] = []
+ if locale_code not in languages_dict[lang_code]:
+ languages_dict[lang_code].append(locale_code)
+ return languages_dict
+
+ def __fill_formats_dict(self, locale_codes):
+ """assemble dictionary of country codes to corresponding locales list
+
+ example {FR: [fr_FR, en_FR], ...}"""
+ formats_dict = {}
+ for locale_code in locale_codes:
+ country_code = country_from_locale(locale_code)
+ if country_code not in formats_dict:
+ formats_dict[country_code] = []
+ if locale_code not in formats_dict[country_code]:
+ formats_dict[country_code].append(locale_code)
+ return formats_dict
+
+ def _apply_settings_to_upcoming_session(self):
+ with open(tailsgreeter.config.locale_output_path, 'w') as f:
+ os.chmod(tailsgreeter.config.locale_output_path, 0o600)
+ if hasattr(self, "text"):
+ f.write('TAILS_LOCALE_NAME=%s\n' % self.text.get_value())
+ if hasattr(self, "formats"):
+ f.write('TAILS_FORMATS=%s\n' % self.formats.get_value())
+ if hasattr(self, "layout"):
+ try:
+ layout, variant = self.layout.get_value().split('+')
+ except ValueError:
+ layout = self.layout.get_value()
+ variant = ''
+ # XXX: use default value from /etc/default/keyboard
+ f.write('TAILS_XKBMODEL=%s\n' % 'pc105')
+ f.write('TAILS_XKBLAYOUT=%s\n' % layout)
+ f.write('TAILS_XKBVARIANT=%s\n' % variant)
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py
new file mode 100644
index 0000000..cabefd6
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py
@@ -0,0 +1,174 @@
+# Copyright 2012-2016 Tails developers <tails@boum.org>
+# Copyright 2011 Max <govnototalitarizm@gmail.com>
+# Copyright 2011 Martin Owens
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""Persistence handling
+
+"""
+import logging
+import os
+
+import gettext
+_ = gettext.gettext
+
+import tailsgreeter # NOQA: E402
+import tailsgreeter.config # NOQA: E402
+import tailsgreeter.errors # NOQA: E402
+import tailsgreeter.utils # NOQA: E402
+
+
+class PersistenceSettings(object):
+ """Controller for settings related to persistence
+
+ """
+ def __init__(self):
+ self.is_unlocked = False
+ self.containers = []
+ self.cleartext_name = 'TailsData_unlocked'
+ self.cleartext_device = '/dev/mapper/' + self.cleartext_name
+
+ def has_persistence(self):
+ # FIXME: list_containers may raise exceptions. Deal with that.
+ self.containers = [
+ {"path": container, "locked": True}
+ for container in self.list_containers()
+ ]
+ return len(self.containers)
+
+ def unlock(self, passphrase, readonly=False):
+ """Ask the backend to activate persistence and handle errors
+
+ Returns: True if everything went fine, False if the user should try
+ again."""
+ logging.debug("Unlocking persistence")
+ for container in self.containers:
+ try:
+ self.activate_container(
+ device=container['path'],
+ password=passphrase,
+ readonly=readonly)
+ self.is_unlocked = True
+ return True
+ except tailsgreeter.errors.WrongPassphraseError:
+ pass
+ return False
+
+ def lock(self):
+ logging.debug("Locking persistence")
+ try:
+ self.unmount_persistence()
+ self.lock_device()
+ self.is_unlocked = False
+ return True
+ except tailsgreeter.errors.LivePersistError as e:
+ logging.exception(e)
+ return False
+
+ def list_containers(self):
+ """Returns a list of persistence containers we might want to unlock."""
+ args = [
+ "/usr/bin/sudo", "-n", "/usr/local/sbin/live-persist",
+ "--log-file=/var/log/live-persist",
+ "--encryption=luks",
+ "list", "TailsData"
+ ]
+ out = tailsgreeter.utils.check_output_and_error(
+ args,
+ exception=tailsgreeter.errors.LivePersistError,
+ error_message=_("live-persist failed with return code "
+ "{returncode}:\n"
+ "{stderr}")
+ )
+ containers = str.splitlines(out)
+ logging.debug("found containers: %s", containers)
+ return containers
+
+ def activate_container(self, device, password, readonly):
+ cleartext_device = self.unlock_device(device, password)
+ logging.debug("unlocked cleartext_device: %s", cleartext_device)
+ self.setup_persistence(cleartext_device, readonly)
+ # This file must be world-readable so that software running
+ # as LIVE_USERNAME or tails-persistence-setup can read it.
+ with open(tailsgreeter.config.persistence_state_file, 'w') as f:
+ os.chmod(tailsgreeter.config.persistence_state_file, 0o644)
+ f.write('TAILS_PERSISTENCE_ENABLED=true\n')
+ if readonly:
+ f.write('TAILS_PERSISTENCE_READONLY=true\n')
+
+ def unlock_device(self, device, password):
+ """Unlock the LUKS persistent device"""
+ if not os.path.exists(self.cleartext_device):
+ args = [
+ "/usr/bin/sudo", "-n",
+ "/sbin/cryptsetup", "luksOpen",
+ "--tries", "1",
+ device, self.cleartext_name
+ ]
+ tailsgreeter.utils.check_output_and_error(
+ args,
+ stdin="{password}\n".format(password=password),
+ exception=tailsgreeter.errors.WrongPassphraseError,
+ error_message=_("cryptsetup failed with return code "
+ "{returncode}:\n"
+ "{stdout}\n{stderr}"))
+ logging.debug("crytpsetup success")
+ return self.cleartext_device
+
+ def lock_device(self):
+ """Unlock the LUKS persistent device"""
+ if os.path.exists(self.cleartext_device):
+ args = [
+ "/usr/bin/sudo", "-n",
+ "/sbin/cryptsetup", "luksClose",
+ self.cleartext_name
+ ]
+ tailsgreeter.utils.check_output_and_error(
+ args,
+ exception=tailsgreeter.errors.LivePersistError,
+ error_message=_("cryptsetup failed with return code "
+ "{returncode}:\n"
+ "{stdout}\n{stderr}")
+ )
+
+ def setup_persistence(self, cleartext_device, readonly):
+ args = ["/usr/bin/sudo", "-n", "/usr/local/sbin/live-persist"]
+ if readonly:
+ args.append('--read-only')
+ else:
+ args.append('--read-write')
+ args.append('--log-file=/var/log/live-persist')
+ args.append('activate')
+ args.append(cleartext_device)
+ tailsgreeter.utils.check_output_and_error(
+ args,
+ exception=tailsgreeter.errors.LivePersistError,
+ error_message=_("live-persist failed with return code "
+ "{returncode}:\n"
+ "{stdout}\n{stderr}")
+ )
+
+ def unmount_persistence(self):
+ args = [
+ "/usr/bin/sudo", "-n",
+ "/bin/umount", "-A",
+ self.cleartext_device
+ ]
+ tailsgreeter.utils.check_output_and_error(
+ args,
+ exception=tailsgreeter.errors.LivePersistError,
+ error_message=_("umount failed with return code {returncode}:\n"
+ "{stdout}\n{stderr}")
+ )
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/physicalsecurity.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/physicalsecurity.py
new file mode 100644
index 0000000..75b744b
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/physicalsecurity.py
@@ -0,0 +1,69 @@
+# Copyright 2013-2016 Tails developers <tails@boum.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""Physical security settings
+
+"""
+import os
+import logging
+import pipes
+
+import tailsgreeter.config
+
+
+class PhysicalSecuritySettings(object):
+ """Model storing settings related to physical security
+
+ """
+
+ NETCONF_DIRECT = "direct"
+ NETCONF_OBSTACLE = "obstacle"
+ NETCONF_DISABLED = "disabled"
+
+ def __init__(self):
+ # Whether to run macspoof
+ self._netconf = self.NETCONF_DIRECT
+ self._macspoof = True
+ self.write_settings()
+
+ def write_settings(self):
+ physical_security_settings_file = \
+ tailsgreeter.config.physical_security_settings
+ with open(physical_security_settings_file, 'w') as f:
+ os.chmod(physical_security_settings_file, 0o600)
+ f.write('TAILS_NETCONF={0}\n'.format(
+ pipes.quote(self.netconf)))
+ f.write('TAILS_MACSPOOF_ENABLED={0}\n'.format(
+ pipes.quote(str(self.macspoof).lower())))
+ logging.debug('physical security settings written to %s',
+ physical_security_settings_file)
+
+ @property
+ def netconf(self):
+ return self._netconf
+
+ @property
+ def macspoof(self):
+ return self._macspoof
+
+ @netconf.setter
+ def netconf(self, new_state):
+ self._netconf = new_state
+ self.write_settings()
+
+ @macspoof.setter
+ def macspoof(self, new_state):
+ self._macspoof = new_state
+ self.write_settings()
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/rootaccess.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/rootaccess.py
new file mode 100644
index 0000000..057f8be
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/rootaccess.py
@@ -0,0 +1,62 @@
+# Copyright 2012-2016 Tails developers <tails@boum.org>
+# Copyright 2011 Max <govnototalitarizm@gmail.com>
+# Copyright 2011 Martin Owens
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""Root access handling
+
+"""
+import os
+import os.path
+import logging
+import pipes
+
+import tailsgreeter.config
+
+
+class RootAccessSettings(object):
+ """Model storing settings related to root access
+
+ """
+ def __init__(self):
+ # Root password
+ self.password = None
+ # XXX: this should read the content of the setting file
+
+ @property
+ def password(self):
+ return self._password
+
+ @password.setter
+ def password(self, password):
+ self._password = password
+ if password:
+ with open(tailsgreeter.config.rootpassword_output_path, 'w') as f:
+ os.chmod(tailsgreeter.config.rootpassword_output_path, 0o600)
+ f.write('TAILS_USER_PASSWORD=%s\n'
+ % pipes.quote(self.password))
+ logging.debug('password written to %s',
+ tailsgreeter.config.rootpassword_output_path)
+ else:
+ try:
+ os.unlink(tailsgreeter.config.rootpassword_output_path)
+ logging.debug('removed %s',
+ tailsgreeter.config.rootpassword_output_path)
+ except OSError:
+ if not os.path.exists(
+ tailsgreeter.config.rootpassword_output_path):
+ pass
+ else:
+ raise
diff --git a/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py
new file mode 100644
index 0000000..438cd60
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py
@@ -0,0 +1,94 @@
+# -*- coding: utf-8 -*-/
+#
+# Copyright 2015-2016 Tails developers <tails@boum.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+
+import logging
+import subprocess
+
+import gi
+
+gi.require_version('Gtk', '3.0')
+from gi.repository import Gtk # NOQA: E402
+
+# Mark translatable strings, but don't actually translate them, as we
+# delegate this to TranslatableWindow that handles on-the-fly language changes
+_ = lambda text: text # NOQA: E731
+
+
+def popover_toggle(popover):
+ """Toggle the visibility of popover"""
+ if popover.get_visible():
+ popover.set_visible(False)
+ else:
+ popover.set_visible(True)
+
+
+def get_on_off_string(value, default=None):
+ """Return "On"|"Off" [" (default)"] based on value and default"""
+ if value == default:
+ if value:
+ return _("On (default)")
+ else:
+ return _("Off (default)")
+ else:
+ if value:
+ return _("On")
+ else:
+ return _("Off")
+
+
+def import_builder_objects(cls, builder, names):
+ """Import Gtk.Builder objects with names as attributes of cls"""
+ for name in names:
+ setattr(cls, name, builder.get_object(name))
+
+
+def check_output_and_error(args, exception, error_message, stdin=None):
+ """Launch a process checking its output and raising exception if needed
+
+ Launch process with args, giving stdin as input, raising exception with
+ error_message as exception message (replacing {returncode}, {stdout} and
+ {stderr} with their values) and return its output.
+ """
+ proc = subprocess.Popen(
+ args,
+ stdin=subprocess.PIPE,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE,
+ universal_newlines=True
+ )
+ out, err = proc.communicate(stdin)
+ if proc.returncode:
+ logging.debug(error_message.format(
+ returncode=proc.returncode, stdout=out, stderr=err)
+ )
+ raise exception(
+ error_message.format(
+ returncode=proc.returncode, stdout=out, stderr=err)
+ )
+ return out
+
+
+def setting_id_from_row(row):
+ """Return a setting id from a Gtk.ListRow
+
+ The Gtk.ListRow should be named listboxrow_settings_<setting_id>.
+ """
+ if not row:
+ return None
+ else:
+ row_id = Gtk.Buildable.get_name(row)
+ return row_id.replace("listboxrow_", "")
diff --git a/config/chroot_local-includes/usr/local/lib/tails-greeter b/config/chroot_local-includes/usr/local/lib/tails-greeter
new file mode 100755
index 0000000..7637a04
--- /dev/null
+++ b/config/chroot_local-includes/usr/local/lib/tails-greeter
@@ -0,0 +1,5 @@
+#!/bin/bash
+cd /usr/share/tails-greeter/
+export LANG="en_US.UTF-8"
+/usr/share/tails-greeter/set-cursor.py watch
+/usr/bin/python3 ./tails-greeter.py
diff --git a/config/chroot_local-includes/usr/local/lib/tails-unblock-network b/config/chroot_local-includes/usr/local/lib/tails-unblock-network
index f2c07d3..5f8e1b5 100755
--- a/config/chroot_local-includes/usr/local/lib/tails-unblock-network
+++ b/config/chroot_local-includes/usr/local/lib/tails-unblock-network
@@ -4,21 +4,41 @@ set -e
set -u
set -x
+CONFIG_FILE=/var/lib/gdm3/tails.physical_security
+NET_MODULES_BLACKLIST=/etc/modprobe.d/all-net-blacklist.conf
+
+# Import the TAILS_NETCONF variable
+. "$CONFIG_FILE"
+
systemctl start tails-unblock-network.service
# Without this, network is sometimes not unblocked, probably due to some
# race condition between tails-unblock-network.service (that deletes the
# blacklist file) and udevadm trigger, possibly caused by yet another aufs
# weirdness (#9012)...
-echo "Sleeping..." >&2
-sleep 5
-echo "slept." >&2
+if [ "${TAILS_NETCONF}" != "disabled" ]; then
+ echo "Waiting for ${NET_MODULES_BLACKLIST} to be gone..." >&2
+ while [ -e "${NET_MODULES_BLACKLIST}" ]; do
+ sleep 0.5
+ done
+ echo "${NET_MODULES_BLACKLIST} is gone." >&2
+fi
# XXX: add debugging information for #9012 to the Journal
ls /etc/modprobe.d
/sbin/lsmod
ls -l /sys/class/net
+# There's a chance that udev won't pick up quickly and automatically
+# changes to /etc/modprobe.d, for example if it monitors that
+# directory via its inode number at the time udev started: the inode
+# number of that directory might have changed since (this is
+# a documented possibility with aufs' noxino mount option).
+# So let's instruct udev to update its knowledge of the world.
+echo "Asking systemd-udevd to reload databases..." >&2
+udevadm control --reload
+echo "systemd-udevd has reloaded its databases." >&2
+
# Now we'll load any present network device previously blocked by
# the blacklist. In particular, the MAC spoofing udev rule should trigger
# for each network device added.
diff --git a/config/chroot_local-includes/usr/share/applications/tails-greeter.desktop b/config/chroot_local-includes/usr/share/applications/tails-greeter.desktop
new file mode 100644
index 0000000..1a4e202
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/applications/tails-greeter.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=Tails Greeter
+Exec=/usr/local/lib/tails-greeter
+X-GNOME-Provides=tails-greeter
+NoDisplay=true
+StartupNotify=false
diff --git a/config/chroot_local-includes/usr/share/gnome-shell/modes/gdm-tails.json b/config/chroot_local-includes/usr/share/gnome-shell/modes/gdm-tails.json
new file mode 100644
index 0000000..dcaac5e
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/gnome-shell/modes/gdm-tails.json
@@ -0,0 +1,16 @@
+{
+ "hasNotifications": true,
+ "isGreeter": false,
+ "isPrimary": true,
+ "unlockDialog": null,
+ "isLocked": true,
+ "hasWindows": true,
+ "components": ["polkitAgent"],
+ "panel": {
+ "left": [],
+ "center": ["dateMenu"],
+ "right": ["a11y", "keyboard", "aggregateMenu"]
+ },
+ "panelStyle": "loginScreen",
+ "stylesheetName": "gnome-classic.css"
+}
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-admin.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-admin.svg
new file mode 100644
index 0000000..8aeabb6
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-admin.svg
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="Administrative_Account" fill="#2E3436" d="M16,16H0c0-2.678,1.597-5.573,4.293-6.165C5.345,10.568,6.621,11,8,11l0,0h0h0
+ c1.379,0,2.655-0.432,3.707-1.165C14.403,10.427,16,13.322,16,16z M3.5,4.5C3.5,6.985,5.515,9,8,9s4.5-2.015,4.5-4.5S10.486,0,8,0
+ S3.5,2.015,3.5,4.5z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-camouflage.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-camouflage.svg
new file mode 100644
index 0000000..c8840ab
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-camouflage.svg
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="Desktop_Camouflage" fill="#2E3436" d="M8,0C3.582,0,0,3.582,0,8s3.582,8,8,8s8-3.582,8-8S12.418,0,8,0z M3.886,3.644
+ c0.543-0.513,1.18-0.927,1.885-1.21C5.712,2.671,5.667,2.871,5.646,2.968C5.504,3.647,4.677,3.89,3.886,3.644z M10.044,13.632
+ C9.405,13.865,8.719,14,8,14c-1.133,0-2.19-0.322-3.095-0.87c1.157-0.579,2.348-0.548,3.608,0.049
+ c0.463,0.219,0.987,0.402,1.503,0.454C10.027,13.634,10.033,13.631,10.044,13.632z M2.542,10.478C2.197,9.721,2,8.884,2,8
+ c0-0.459,0.056-0.903,0.154-1.333C2.377,6.872,2.614,7.007,2.845,7c0.631-0.018,1.031-0.304,1.187-0.926
+ c0.069-0.276,0.125-0.565,0.235-0.823c0.12-0.281,0.351-0.475,0.694-0.333c0.266,0.11,0.182,0.867,0.221,1.016
+ c0.178,0.668,0.68,1.041,1.235,0.924C7.125,6.71,7.535,6.166,7.453,5.481C7.408,5.103,7.315,4.723,7.328,4.347
+ c0.018-0.52,0.36-0.736,0.855-0.583c0.273,0.084,0.526,0.237,0.801,0.312c0.281,0.076,0.582,0.089,0.777-0.199
+ c0.176-0.259,0.095-0.725-0.198-0.949C9.365,2.778,9.169,2.494,8.41,2.541C8.112,2.56,8.069,2.291,8.09,2.052
+ c0.002-0.018,0.01-0.03,0.013-0.047c1.648,0.028,3.136,0.725,4.205,1.829c-0.724,0.56-0.766,1.224-0.375,2.123
+ c0.122,0.28,0.237,0.574,0.268,0.872c0.017,0.161-0.121,0.423-0.26,0.492c-0.147,0.073-0.423,0.029-0.57-0.071
+ c-0.189-0.129-0.306-0.365-0.458-0.551C10.6,6.318,10.173,6.186,9.718,6.324c-0.391,0.119-0.633,0.46-0.67,0.946
+ C8.993,7.99,9.28,8.503,10.005,8.822C10.41,9,10.854,9.096,11.287,9.203c1.233,0.307,1.673,0.832,1.716,2.096
+ c0,0.002,0,0.003,0,0.005c-0.519,0.783-1.218,1.433-2.035,1.901c0.048-0.132,0.076-0.287,0.073-0.48
+ c-0.009-0.512-0.23-0.924-0.699-1.232c-0.871-0.572-1.805-0.757-2.832-0.372c-0.429,0.161-0.849,0.342-1.286,0.488
+ c-0.451,0.151-0.91,0.166-1.353-0.05c-0.607-0.296-0.747-0.836-0.271-1.265c0.27-0.243,0.648-0.39,0.971-0.589
+ c0.293-0.18,0.606-0.346,0.856-0.566c0.287-0.253,0.291-0.562,0.059-0.874c-0.208-0.28-0.495-0.215-0.771-0.152
+ C4.594,8.37,3.676,8.874,3.083,9.797C2.929,10.037,2.74,10.262,2.542,10.478z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-formats.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-formats.svg
new file mode 100644
index 0000000..99ec44d
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-formats.svg
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="svg12863"
+ viewBox="0 0 14 14.786"
+ height="4.1729379mm"
+ width="3.9511111mm"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="tails-formats.svg">
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#000000"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="773"
+ id="namedview13039"
+ showgrid="false"
+ inkscape:zoom="15.961044"
+ inkscape:cx="-4.1521528"
+ inkscape:cy="7.3930002"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g7043" />
+ <defs
+ id="defs12865" />
+ <metadata
+ id="metadata12868">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-688,-396.214)"
+ id="g7043">
+ <g
+ id="g7045">
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#000000"
+ d="m 697,403.004 0,0.974 -2,5.022 -1.522,0 1.725,-4.771 -2.203,0 0,-1.225 4,0 z"
+ id="path7047" />
+ </g>
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#000000"
+ d="M 702,399.628 C 702,398.729 701.271,398 700.372,398 l -10.744,0 c -0.899,0 -1.628,0.729 -1.628,1.628 l 0,9.744 c 0,0.899 0.729,1.628 1.628,1.628 l 10.744,0 c 0.899,0 1.628,-0.729 1.628,-1.628 l 0,-9.744 z M 689,410 l 0,-8 12,0 0,8 -12,0 z"
+ id="path7049" />
+ <g
+ id="g7051">
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#000000"
+ d="m 691.5,400.393 c -0.492,0 -0.893,-0.4 -0.893,-0.893 l 0,-2 c 0,-0.492 0.4,-0.893 0.893,-0.893 0.493,0 0.893,0.401 0.893,0.893 l 0,2 c 0,0.492 -0.401,0.893 -0.893,0.893 z"
+ id="path7053" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff"
+ d="m 691.5,397 c 0.276,0 0.5,0.224 0.5,0.5 l 0,2 c 0,0.276 -0.224,0.5 -0.5,0.5 -0.276,0 -0.5,-0.224 -0.5,-0.5 l 0,-2 c 0,-0.276 0.224,-0.5 0.5,-0.5 m 0,-0.786 c -0.709,0 -1.286,0.577 -1.286,1.286 l 0,2 c 0,0.709 0.577,1.286 1.286,1.286 0.709,0 1.286,-0.577 1.286,-1.286 l 0,-2 c 0,-0.709 -0.577,-1.286 -1.286,-1.286 l 0,0 z"
+ id="path7055" />
+ </g>
+ <g
+ id="g7057">
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#000000"
+ d="m 698.5,400.393 c -0.492,0 -0.893,-0.4 -0.893,-0.893 l 0,-2 c 0,-0.492 0.4,-0.893 0.893,-0.893 0.493,0 0.893,0.401 0.893,0.893 l 0,2 c 0,0.492 -0.401,0.893 -0.893,0.893 z"
+ id="path7059" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff"
+ d="m 698.5,397 c 0.276,0 0.5,0.224 0.5,0.5 l 0,2 c 0,0.276 -0.224,0.5 -0.5,0.5 -0.276,0 -0.5,-0.224 -0.5,-0.5 l 0,-2 c 0,-0.276 0.224,-0.5 0.5,-0.5 m 0,-0.786 c -0.709,0 -1.286,0.577 -1.286,1.286 l 0,2 c 0,0.709 0.577,1.286 1.286,1.286 0.709,0 1.286,-0.577 1.286,-1.286 l 0,-2 c 0,-0.709 -0.577,-1.286 -1.286,-1.286 l 0,0 z"
+ id="path7061" />
+ </g>
+ </g>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-help.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-help.svg
new file mode 100644
index 0000000..68cd7fc
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-help.svg
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ id="svg12743"
+ viewBox="0 0 11.000001 11"
+ height="3.1044445mm"
+ width="3.1044445mm">
+ <defs
+ id="defs12745" />
+ <metadata
+ id="metadata12748">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(574.78571,-526.8622)"
+ id="layer1">
+ <g
+ id="g7699"
+ transform="translate(-748.78571,213.8622)">
+ <path
+ id="path7701"
+ d="m 179.5,324 c -3.033,0 -5.5,-2.467 -5.5,-5.5 0,-3.033 2.467,-5.5 5.5,-5.5 3.033,0 5.5,2.467 5.5,5.5 0,3.033 -2.467,5.5 -5.5,5.5 z m 0,-10.01 c -2.487,0 -4.51,2.023 -4.51,4.509 0,2.487 2.023,4.51 4.51,4.51 2.486,0 4.509,-2.023 4.509,-4.51 0.001,-2.486 -2.022,-4.509 -4.509,-4.509 z"
+ style="fill:#4a90d9" />
+ <g
+ id="g7703">
+ <g
+ id="g7705">
+ <path
+ id="path7707"
+ d="m 179.948,317.201 c 0,-0.38 -0.25,-0.584 -0.621,-0.584 -0.342,0 -0.593,0.176 -0.842,0.426 l -0.75,-0.685 c 0.417,-0.5 1,-0.843 1.686,-0.843 1.046,0 1.834,0.491 1.834,1.584 0,1.149 -1.389,1.491 -1.278,2.594 l -1.195,0 c -0.187,-1.27 1.166,-1.798 1.166,-2.492 z m -0.574,3.028 c 0.473,0 0.824,0.37 0.824,0.862 0,0.482 -0.351,0.852 -0.824,0.852 -0.472,0 -0.815,-0.37 -0.815,-0.852 -0.001,-0.491 0.343,-0.862 0.815,-0.862 z"
+ style="fill:#4a90d9" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-keyboard-layout.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-keyboard-layout.svg
new file mode 100644
index 0000000..536077a
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-keyboard-layout.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="Keyboard_Layout" fill="#2E3436" d="M0,2v12h15V2H0z M8,4h2v2H8V4z M8,7h2v2H8V7z M5,4h2v2H5V4z M5,7h2v2H5V7z M2,4h2v2H2
+ V4z M2,7h2v2H2V7z M13,12H2v-2h11V12z M13,9h-2V7h2V9z M13,6h-2V4h2V6z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-language.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-language.svg
new file mode 100644
index 0000000..e0b80b4
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-language.svg
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="Text_Language" fill="#2E3436" d="M16,5c0,2.761-2.239,5-5,5c-0.343,0-0.677-0.035-1-0.101V7.571
+ c0.45-0.236,0.839-0.506,1.167-0.781c1.036,1.039,2.574,1.337,2.574,1.337l0.266-0.941c0,0-1.289-0.295-2.161-1.111
+ c0.954-1.122,1.305-2.345,1.425-2.93h1.13V2.168h-2.715v-0.91H10.71v0.91H7.994v0.977h4.275c-0.137,0.541-0.446,1.41-1.123,2.234
+ c-0.655-0.764-1.005-1.631-1.005-1.631L9.228,4.095c0,0,0.366,1.061,1.22,1.986c0,0-0.206,0.162-0.448,0.333V6H6.101
+ C6.035,5.677,6,5.343,6,5c0-2.761,2.239-5,5-5S16,2.239,16,5z M9,7v9H0V7H9z M7.158,14.581L5.055,8.419h-1.11l-2.103,6.162h1.086
+ l0.61-1.848h1.88l0.629,1.848H7.158z M3.85,11.813h1.264c0,0-0.597-1.747-0.638-1.889C4.435,10.066,3.85,11.813,3.85,11.813z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-locked.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-locked.svg
new file mode 100644
index 0000000..6fe22eb
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-locked.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="Locked" fill="#2E3436" d="M2,15V7h2V5.306C4,2.928,5.622,1,8,1c2.378,0,4,1.927,4,4.306V7h2v8H2z M7.998,3
+ C6.918,3,6,4.046,6,5.307V7h4V5.48C10,4.046,9.08,3,7.998,3z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-macspoof.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-macspoof.svg
new file mode 100644
index 0000000..e2803a2
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-macspoof.svg
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="MAC_Spoofing" fill="#2E3436" d="M15,12H1V0h14V12z M3,10h10V2H3V10z M0,16h16v-3H0V16z M5.979,5h1.164
+ c0-0.222,0.065-0.507,0.194-0.713c0.13-0.208,0.35-0.311,0.661-0.311c0.315,0,0.534,0.085,0.653,0.253
+ c0.119,0.168,0.18,0.354,0.18,0.558c0,0.178-0.055,0.339-0.162,0.487C8.61,5.36,8.533,5.439,8.436,5.512l-0.293,0.23
+ C7.854,5.969,7.676,6.166,7.605,6.34C7.535,6.514,7.492,6.827,7.476,7.282h1.091C8.571,7.068,8.588,6.91,8.62,6.807
+ c0.05-0.16,0.153-0.301,0.309-0.422l0.285-0.222C9.503,5.938,9.697,5.752,9.8,5.607c0.174-0.241,0.261-0.534,0.261-0.883
+ c0-0.57-0.2-1-0.602-1.289C9.057,3.146,8.553,3,7.945,3C7.484,3,7.094,3.103,6.777,3.307C6.276,3.627,6.009,4.236,5.979,5z M7.448,9
+ h1.204V7.836H7.448V9z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-network.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-network.svg
new file mode 100644
index 0000000..a29e682
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-network.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path fill="#2E3436" d="M14,9v1h2v2h-5V7h3V3h-3H8H6V2h1V1h8v1h1v6h-1v1H14z M8,12v1h2v2H0v-2h2v-1H1v-1H0V5h1V4h8v1h1v6H9v1H8z
+ M2,10h6V6H2V10z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-timezone.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-timezone.svg
new file mode 100644
index 0000000..985c8d6
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-timezone.svg
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="Time_Zone" fill="#2E3436" d="M8,2c1.6,0,3.106,0.625,4.241,1.76C13.376,4.895,14.001,6.4,14,8c0,3.308-2.692,6-6,6
+ s-6-2.692-6-6S4.692,2,8,2 M8,0C3.59,0,0,3.588,0,8s3.588,8,8,8c4.412,0,8-3.588,8-8C16.001,3.588,12.412,0,8,0L8,0z M10.811,4.757
+ L7.982,7.586L5.861,5.464L5.154,6.172L7.982,9l3.536-3.536L10.811,4.757z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-unlocked.svg b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-unlocked.svg
new file mode 100644
index 0000000..0c008ac
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/icons/hicolor/scalable/actions/tails-unlocked.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="16px" height="16px" viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
+<path id="Unlocked" fill="#2E3436" d="M6,7V5.308C6,4.046,6.918,3,7.998,3C8.75,3,9.416,3.536,9.757,4.312l1.76-1.087
+ C10.872,1.904,9.619,1,8,1C5.622,1,4,2.928,4,5.306V7H2v8h12V7H6z"/>
+</svg>
diff --git a/config/chroot_local-includes/usr/share/tails-greeter/default_langcodes b/config/chroot_local-includes/usr/share/tails-greeter/default_langcodes
new file mode 100644
index 0000000..60d9703
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/tails-greeter/default_langcodes
@@ -0,0 +1,72 @@
+am_ET
+ar_EG
+ast_ES
+be_BY
+bg_BG
+bn_BD
+bo_IN
+br_FR
+bs_BA
+ca_ES
+cs_CZ
+cy_GB
+da_DK
+de_DE
+dz_BT
+el_GR
+en_US
+es_ES
+et_EE
+eu_ES
+fa_IR
+fi_FI
+fr_FR
+ga_IE
+gl_ES
+gu_IN
+he_IL
+hi_IN
+hr_HR
+hu_HU
+id_ID
+is_IS
+it_IT
+ja_JP
+ka_GE
+kk_KZ
+km_KH
+kn_IN
+ko_KR
+ku_TR
+lo_LA
+lt_LT
+lv_LV
+mk_MK
+ml_IN
+mr_IN
+my_MM
+nb_NO
+ne_NP
+nl_NL
+nn_NO
+pa_IN
+pl_PL
+pt_BR
+ro_RO
+ru_RU
+se_NO
+si_LK
+sk_SK
+sl_SI
+sq_AL
+sr_RS
+sv_SE
+ta_IN
+te_IN
+th_TH
+tl_PH
+tr_TR
+ug_CN
+uk_UA
+vi_VN
+zh_CN
diff --git a/config/chroot_local-includes/usr/share/tails-greeter/greeter.css b/config/chroot_local-includes/usr/share/tails-greeter/greeter.css
new file mode 100644
index 0000000..52bfcd3
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/tails-greeter/greeter.css
@@ -0,0 +1,3 @@
+:selected GtkLabel:disabled {
+ color: inherit;
+}
diff --git a/config/chroot_local-includes/usr/share/tails-greeter/greeter.ui b/config/chroot_local-includes/usr/share/tails-greeter/greeter.ui
new file mode 100644
index 0000000..08e00e1
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/tails-greeter/greeter.ui
@@ -0,0 +1,2021 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.20.0 -->
+<interface domain="tails">
+ <requires lib="gtk+" version="3.20"/>
+ <object class="GtkBox" id="box_admin_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">18</property>
+ <property name="margin_right">18</property>
+ <property name="margin_top">18</property>
+ <property name="margin_bottom">18</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">18</property>
+ <child>
+ <object class="GtkLabel" id="label_admin_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Administration Password</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.5"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_admin_description">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Set up an administration password if you need to perform administrative tasks. Otherwise, the administration password is disabled for better security.</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="width_chars">50</property>
+ <property name="max_width_chars">50</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_admin_password">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_admin_password">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Administration Password</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry_admin_password">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="visibility">False</property>
+ <property name="placeholder_text" translatable="yes">Enter an administration password</property>
+ <signal name="activate" handler="cb_entry_admin_password_activate" swapped="no"/>
+ <signal name="changed" handler="cb_entry_admin_changed" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_admin_verify">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_admin_verify">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Confirm</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="entry_admin_verify">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="visibility">False</property>
+ <property name="placeholder_text" translatable="yes">Confirm your administration password</property>
+ <signal name="activate" handler="cb_entry_admin_verify_activate" swapped="no"/>
+ <signal name="changed" handler="cb_entry_admin_changed" swapped="no"/>
+ <signal name="focus-out-event" handler="cb_entry_admin_focus_out_event" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button_admin_disable">
+ <property name="label" translatable="yes">Disable</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="cb_button_admin_disable_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkSizeGroup" id="sizegroup_admin">
+ <widgets>
+ <widget name="label_admin_password"/>
+ <widget name="label_admin_verify"/>
+ </widgets>
+ </object>
+ <object class="GtkBox" id="box_camouflage_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">18</property>
+ <property name="margin_right">18</property>
+ <property name="margin_top">18</property>
+ <property name="margin_bottom">18</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">18</property>
+ <child>
+ <object class="GtkLabel" id="label_camouflage_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes" comments="This string will never be displayed in the 1st version of the greeter.">Windows Camouflage</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.5"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_camouflage_description">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes" comments="This string will never be displayed in the 1st version of the greeter.">This option makes Tails look like Microsoft Windows 10. This can be useful to avoid attracting suspicion in public places.</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="width_chars">50</property>
+ <property name="max_width_chars">50</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_camouflage_controls">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_camouflage_controls">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes" comments="This string will never be displayed in the 1st version of the greeter.">Microsoft Windows 10 camouflage</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSwitch" id="switch_camouflage">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkBox" id="box_macspoof_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">18</property>
+ <property name="margin_right">18</property>
+ <property name="margin_top">18</property>
+ <property name="margin_bottom">18</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">18</property>
+ <child>
+ <object class="GtkLabel" id="label_macspoof_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">MAC Address Spoofing</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.5"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_macspoof_description">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">MAC address spoofing hides the serial number of your network interface (Wi-Fi or wired) to the local network. Spoofing MAC addresses is generally safer as it helps you hide your geographical location. But it might also create connectivity problems or look suspicious.</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="width_chars">50</property>
+ <property name="max_width_chars">50</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame_macspoof">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_bottom">18</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkListBox" id="listbox_macspoof_controls">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="selection_mode">browse</property>
+ <signal name="row-activated" handler="cb_listbox_macspoof_row_activated" swapped="no"/>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_macspoof_on">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_macspoof_on">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_macspoof_on">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Spoof all MAC addresses (default)</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">45</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkImage" id="image_macspoof_on">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">emblem-ok-symbolic</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_macspoof_off">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_macspoof_off">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_macspoof_off">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Don't spoof MAC addresses</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">45</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkImage" id="image_macspoof_off">
+ <property name="can_focus">False</property>
+ <property name="icon_name">emblem-ok-symbolic</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label_item">
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkBox" id="box_main">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkInfoBar" id="infobar_persistence">
+ <property name="can_focus">False</property>
+ <property name="message_type">warning</property>
+ <property name="show_close_button">True</property>
+ <signal name="close" handler="cb_infobar_close" swapped="no"/>
+ <signal name="response" handler="cb_infobar_response" swapped="no"/>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="infobar_persistence-action_area">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <property name="layout_style">end</property>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child internal-child="content_area">
+ <object class="GtkBox" id="infobar_persistence-content_area">
+ <property name="can_focus">False</property>
+ <property name="spacing">16</property>
+ <child>
+ <object class="GtkLabel" id="label_infobar_persistence">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Cannot unlock encrypted storage with this passphrase.</property>
+ <property name="wrap">True</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkInfoBar" id="infobar_network">
+ <property name="app_paintable">True</property>
+ <property name="can_focus">False</property>
+ <property name="show_close_button">True</property>
+ <signal name="close" handler="cb_infobar_close" swapped="no"/>
+ <signal name="response" handler="cb_infobar_response" swapped="no"/>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="infobar_network-action_area">
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <property name="layout_style">end</property>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child internal-child="content_area">
+ <object class="GtkBox" id="infobar_network-content_area">
+ <property name="can_focus">False</property>
+ <property name="spacing">16</property>
+ <child>
+ <object class="GtkLabel" id="label_infobar_network">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">You will configure the Tor bridge and local proxy later on after connecting to a network.</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_inner">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">18</property>
+ <property name="margin_right">18</property>
+ <property name="margin_top">18</property>
+ <property name="margin_bottom">18</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">18</property>
+ <child>
+ <object class="GtkBox" id="box_header">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkLabel" id="label_header_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Welcome to Tails!</property>
+ <attributes>
+ <attribute name="weight" value="semibold"/>
+ <attribute name="scale" value="1.5"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_header_explanation">
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes" context="&quot;Take a Tour&quot; would be an assistant to guide the user through the available settings." comments="This string will never be displayed in the 1st version of the greeter.">To get guided through Tails' settings, click on &lt;b&gt;Take a Tour&lt;/b&gt; above</property>
+ <property name="use_markup">True</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="lines">2</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_language">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkBox" id="box_language_header">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_language_header_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Language &amp; Region</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLinkButton" id="linkbutton_language_help">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="receives_default">True</property>
+ <property name="relief">none</property>
+ <property name="uri">doc/first_steps/startup_options.en.html#locale</property>
+ <signal name="activate-link" handler="cb_linkbutton_help_activate" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image_language_help">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-help</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_language_header_status">
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Default Settings</property>
+ <attributes>
+ <attribute name="style" value="italic"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="checkbutton_language_save">
+ <property name="label" translatable="yes">Save Language &amp; Region Settings</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame_language">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkListBox" id="listbox_language">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <signal name="row-activated" handler="cb_listbox_language_row_activated" swapped="no"/>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_text">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_text">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_text">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-language</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_text_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Language</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_text</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_text_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label">English</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_keyboard">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_keyboard">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_keyboard">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-keyboard-layout</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_keyboard_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Keyboard Layout</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_keyboard</property>
+ <property name="ellipsize">end</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_keyboard_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label">English (US)</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_formats">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_formats">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_formats">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-formats</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_formats_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Formats</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_formats</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_formats_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label">United States</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_tz">
+ <property name="sensitive">False</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkBox" id="box_tz">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_tz">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-timezone</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_tz_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Time Zone</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_tz</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_tz_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label">UTC</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label_item">
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_storage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkBox" id="box_storage_header">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_storage_header_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Encrypted _Persistent Storage</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">entry_storage_passphrase</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkImage" id="image_storage_state">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-locked</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinner" id="spinner_storage_unlock">
+ <property name="can_focus">False</property>
+ <property name="active">True</property>
+ <style>
+ <class name="suggested-action"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="checkbutton_storage_show_passphrase">
+ <property name="label" translatable="yes">Show Passphrase</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="cb_checkbutton_storage_show_passphrase_toggled" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLinkButton" id="linkbutton_storage_help">
+ <property name="visible">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="relief">none</property>
+ <property name="uri">doc/first_steps/persistence/use.en.html</property>
+ <signal name="activate-link" handler="cb_linkbutton_help_activate" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image_storage_help">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-help</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button_storage_configure">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="always_show_image">True</property>
+ <signal name="clicked" handler="cb_button_storage_configure_clicked" swapped="no"/>
+ <child>
+ <object class="GtkBox" id="box2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkImage" id="image_storage">
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-locked</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_storage_configure">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Configure Persistent Storage</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <style>
+ <class name="suggested-action"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_storage_unlock">
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkEntry" id="entry_storage_passphrase">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="visibility">False</property>
+ <property name="placeholder_text" translatable="yes" comments="The label for this placeholder text is not very big, so keep this string short.">Enter your passphrase to unlock the persistent storage</property>
+ <signal name="activate" handler="cb_entry_storage_passphrase_activated" swapped="no"/>
+ <signal name="changed" handler="cb_entry_storage_passphrase_changed" swapped="no"/>
+ <style>
+ <class name="linked_left"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="button_storage_unlock">
+ <property name="label" translatable="yes">Unlock</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="cb_button_storage_unlock_clicked" swapped="no"/>
+ <style>
+ <class name="suggested-action"/>
+ <class name="linked_right"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <style>
+ <class name="linked"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_storage_unlocked">
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkButton" id="button_storage_lock">
+ <property name="label" translatable="yes">Relock Persistent Storage</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="cb_button_storage_lock_clicked" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_storage_unlocked">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Your persistent storage is unlocked. Restart Tails to lock it again.</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_settings">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkBox" id="box_settings_header">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_settings_header_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Additional Settings</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">toolbutton_settings_add</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLinkButton" id="linkbutton_settings_help">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="receives_default">True</property>
+ <property name="relief">none</property>
+ <property name="uri">doc/first_steps/startup_options.en.html#additional</property>
+ <signal name="activate-link" handler="cb_linkbutton_help_activate" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="image_settings_help">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-help</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="checkbutton_settings_save">
+ <property name="label" translatable="yes">Save Additional Settings</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box_settings_values">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkFrame" id="frame_settings">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkListBox" id="listbox_settings">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <signal name="row-activated" handler="cb_listbox_settings_row_activated" after="yes" swapped="no"/>
+ </object>
+ </child>
+ <child type="label_item">
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" id="toolbar_settings">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="show_arrow">False</property>
+ <property name="icon_size">2</property>
+ <child>
+ <object class="GtkToolButton" id="toolbutton_settings_add">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Add an additional setting</property>
+ <property name="icon_name">list-add-symbolic</property>
+ <signal name="clicked" handler="cb_toolbutton_settings_add_clicked" swapped="no"/>
+ <signal name="mnemonic-activate" handler="cb_toolbutton_settings_mnemonic_activate" swapped="no"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <style>
+ <class name="inline-toolbar"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkBox" id="box_network_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">18</property>
+ <property name="margin_right">18</property>
+ <property name="margin_top">18</property>
+ <property name="margin_bottom">18</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">18</property>
+ <child>
+ <object class="GtkLabel" id="label_network_title">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Network Configuration</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="1.5"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_network_description">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">If your Internet connection is censored, filtered, or proxied you can configure a Tor bridge or a local proxy. To work completely offline, you can disable all networking.</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">50</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame_network">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkListBox" id="listbox_network_controls">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="selection_mode">browse</property>
+ <signal name="button-press-event" handler="cb_listbox_network_button_press" swapped="no"/>
+ <signal name="row-activated" handler="cb_listbox_network_row_activated" swapped="no"/>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_network_clear">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_network_clear">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_network_clear">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Connect directly to the Tor network (default)</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">45</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkImage" id="image_network_clear">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">emblem-ok-symbolic</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_network_specific">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_network_specific">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_network_specific">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Configure a Tor bridge or local proxy</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">45</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkImage" id="image_network_specific">
+ <property name="can_focus">False</property>
+ <property name="icon_name">emblem-ok-symbolic</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_network_off">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_network_off">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label_network_off">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Disable all networking</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">45</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkImage" id="image_network_off">
+ <property name="can_focus">False</property>
+ <property name="icon_name">emblem-ok-symbolic</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label_item">
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkLabel" id="label_settings_default">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="label" translatable="yes">The default settings are safe in most situations. To add a custom setting, press the "+" button below.</property>
+ <property name="justify">fill</property>
+ <property name="wrap">True</property>
+ <property name="lines">2</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ </object>
+ <object class="GtkListBox" id="listbox_add_setting">
+ <property name="width_request">400</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">18</property>
+ <property name="margin_right">18</property>
+ <property name="margin_top">18</property>
+ <property name="margin_bottom">18</property>
+ <signal name="focus" handler="cb_listbox_add_setting_focus" after="yes" swapped="no"/>
+ <signal name="row-activated" handler="cb_listbox_add_setting_row_activated" swapped="no"/>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_admin">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_settings_admin">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_admin">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-admin</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_admin_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Administration Password</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_admin</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_admin_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Off (default)</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_macspoof">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_macspoof">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_macspoof">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-macspoof</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_macspoof_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_MAC Address Spoofing</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_macspoof</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_macspoof_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">On (default)</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_network">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkBox" id="box_network">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_network">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-network</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_network_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Network Connection</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_network</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_network_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Direct (default)</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkListBoxRow" id="listboxrow_camouflage">
+ <property name="sensitive">False</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkBox" id="box_camouflage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_right">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="image_camouflage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">tails-camouflage</property>
+ <property name="icon_size">3</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_camouflage_caption">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Windows Camouflage</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">listboxrow_camouflage</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label_camouflage_value">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Off (default)</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ <object class="GtkListStore" id="liststore_formats">
+ <columns>
+ <!-- column-name id -->
+ <column type="gchararray"/>
+ <!-- column-name name -->
+ <column type="gchararray"/>
+ </columns>
+ </object>
+ <object class="GtkBox" id="box_formats_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">12</property>
+ <property name="margin_right">12</property>
+ <property name="margin_top">12</property>
+ <property name="margin_bottom">12</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkSearchEntry" id="searchentry_formats">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="primary_icon_name">edit-find-symbolic</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow_formats">
+ <property name="width_request">400</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">never</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="treeview_formats">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="model">liststore_formats</property>
+ <property name="headers_visible">False</property>
+ <property name="activate_on_single_click">True</property>
+ <child internal-child="selection">
+ <object class="GtkTreeSelection" id="treeview-selection_formats"/>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkListStore" id="liststore_keyboard">
+ <columns>
+ <!-- column-name id -->
+ <column type="gchararray"/>
+ <!-- column-name name -->
+ <column type="gchararray"/>
+ </columns>
+ </object>
+ <object class="GtkBox" id="box_keyboard_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">12</property>
+ <property name="margin_right">12</property>
+ <property name="margin_top">12</property>
+ <property name="margin_bottom">12</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkSearchEntry" id="searchentry_keyboard">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="primary_icon_name">edit-find-symbolic</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow_keyboard">
+ <property name="width_request">400</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">never</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="treeview_keyboard">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="model">liststore_keyboard</property>
+ <property name="headers_visible">False</property>
+ <property name="activate_on_single_click">True</property>
+ <child internal-child="selection">
+ <object class="GtkTreeSelection" id="treeview-selection_keyboard"/>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkListStore" id="liststore_settings_add">
+ <columns>
+ <!-- column-name setting-id -->
+ <column type="gchararray"/>
+ <!-- column-name setting-label -->
+ <column type="gchararray"/>
+ </columns>
+ <data>
+ <row>
+ <col id="0">admin-account</col>
+ <col id="1" translatable="yes">Administration Password</col>
+ </row>
+ <row>
+ <col id="0">mac-spoofing</col>
+ <col id="1" translatable="yes">MAC Address Spoofing</col>
+ </row>
+ <row>
+ <col id="0">network-configuration</col>
+ <col id="1" translatable="yes">Network Configuration</col>
+ </row>
+ <row>
+ <col id="0">camouflage</col>
+ <col id="1" translatable="yes">Windows Camouflage</col>
+ </row>
+ </data>
+ </object>
+ <object class="GtkListStore" id="liststore_text">
+ <columns>
+ <!-- column-name id -->
+ <column type="gchararray"/>
+ <!-- column-name name -->
+ <column type="gchararray"/>
+ </columns>
+ </object>
+ <object class="GtkBox" id="box_text_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">12</property>
+ <property name="margin_right">12</property>
+ <property name="margin_top">12</property>
+ <property name="margin_bottom">12</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkSearchEntry" id="searchentry_text">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="primary_icon_name">edit-find-symbolic</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow_text">
+ <property name="width_request">400</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">never</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="treeview_text">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="model">liststore_text</property>
+ <property name="headers_visible">False</property>
+ <property name="activate_on_single_click">True</property>
+ <child internal-child="selection">
+ <object class="GtkTreeSelection" id="treeview-selection_text"/>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkListStore" id="liststore_tz">
+ <columns>
+ <!-- column-name id -->
+ <column type="gchararray"/>
+ <!-- column-name name -->
+ <column type="gchararray"/>
+ </columns>
+ </object>
+ <object class="GtkBox" id="box_tz_popover">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">12</property>
+ <property name="margin_right">12</property>
+ <property name="margin_top">12</property>
+ <property name="margin_bottom">12</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkSearchEntry" id="searchentry_tz">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="primary_icon_name">edit-find-symbolic</property>
+ <property name="primary_icon_activatable">False</property>
+ <property name="primary_icon_sensitive">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow_tz">
+ <property name="width_request">400</property>
+ <property name="height_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">never</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="treeview_tz">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="model">liststore_tz</property>
+ <property name="headers_visible">False</property>
+ <property name="activate_on_single_click">True</property>
+ <child internal-child="selection">
+ <object class="GtkTreeSelection" id="treeview-selection6"/>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+</interface>
diff --git a/config/chroot_local-includes/usr/share/tails-greeter/no-password-lecture.txt b/config/chroot_local-includes/usr/share/tails-greeter/no-password-lecture.txt
new file mode 100644
index 0000000..11f49e2
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/tails-greeter/no-password-lecture.txt
@@ -0,0 +1,7 @@
+By default, the administration password is disabled for better security.
+
+In order to perform administration tasks, you need to setup an administration
+password when starting Tails.
+
+See the corresponding documentation:
+https://tails.boum.org/administration_password/
diff --git a/config/chroot_local-includes/usr/share/tails-greeter/set-cursor.py b/config/chroot_local-includes/usr/share/tails-greeter/set-cursor.py
new file mode 100755
index 0000000..3037f0e
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/tails-greeter/set-cursor.py
@@ -0,0 +1,26 @@
+#!/usr/bin/python3
+import sys
+
+import gi
+
+gi.require_version('Gdk', '3.0')
+from gi.repository import Gdk # NOQA: E402
+gi.require_version('GLib', '2.0')
+from gi.repository import GLib # NOQA: E402
+gi.require_version('Gtk', '3.0')
+from gi.repository import Gtk # NOQA: E402
+
+print(sys.argv)
+if len(sys.argv) > 1 and sys.argv[1] == "watch":
+ cursor = Gdk.CursorType.WATCH
+else:
+ cursor = Gdk.CursorType.LEFT_PTR
+
+
+def reset_cursor():
+ Gdk.get_default_root_window().set_cursor(Gdk.Cursor.new(cursor))
+ Gtk.main_quit()
+
+
+GLib.idle_add(reset_cursor)
+Gtk.main()
diff --git a/config/chroot_local-includes/usr/share/tails-greeter/tails-greeter.py b/config/chroot_local-includes/usr/share/tails-greeter/tails-greeter.py
new file mode 100755
index 0000000..a656924
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/tails-greeter/tails-greeter.py
@@ -0,0 +1,162 @@
+#!/usr/bin/python3
+#
+# Copyright 2012-2016 Tails developers <tails@boum.org>
+# Copyright 2011 Max <govnototalitarizm@gmail.com>
+# Copyright 2011 Martin Owens
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>
+#
+"""
+GDM greeter for Tails project using gtk
+"""
+
+import gettext
+import locale
+import logging
+import logging.config
+import sys
+import traceback # NOQA: F401
+
+
+logging.config.fileConfig('tails-logging.conf')
+# Set loglevel if debug is found in kernel command line
+with open('/proc/cmdline') as cmdline_fd:
+ cmdline = cmdline_fd.read()
+if "debug" in cmdline.split():
+ logging.getLogger().setLevel(logging.DEBUG)
+
+
+def log_exc(etype, value, tb):
+ for line in traceback.format_exception(etype, value, tb):
+ print(line, file=sys.stderr)
+
+
+sys.excepthook = log_exc
+
+
+import gi # NOQA: F401
+gi.require_version('GLib', '2.0')
+from gi.repository import GLib # NOQA: F401
+from gi.repository import Gio # NOQA: F401
+gi.require_version("Gtk", "3.0")
+from gi.repository import Gtk # NOQA: F401
+
+import tailsgreeter # NOQA: F401
+import tailsgreeter.config # NOQA: F401
+import tailsgreeter.gdmclient # NOQA: F401
+import tailsgreeter.persistence # NOQA: F401
+import tailsgreeter.physicalsecurity # NOQA: F401
+import tailsgreeter.rootaccess # NOQA: F401
+
+from tailsgreeter.language import TranslatableWindow # NOQA: F401
+from tailsgreeter.gui import GreeterMainWindow # NOQA: F401
+
+gettext.install(tailsgreeter.__appname__, tailsgreeter.config.locales_path)
+locale.bindtextdomain(tailsgreeter.__appname__,
+ tailsgreeter.config.locales_path)
+
+
+class GreeterApplication():
+ """Tails greeter main controller
+
+ This class is the greeter dbus service"""
+
+ def __init__(self):
+ self.language = 'en_US.UTF-8'
+ self.session = None
+ self.forced = False
+ self.postponed = False
+ self.postponed_text = None
+ self.ready = False
+ self.translated = False
+
+ self._sessionmanager = Gio.DBusProxy.new_for_bus_sync(
+ Gio.BusType.SESSION,
+ Gio.DBusProxyFlags.NONE,
+ None,
+ "org.gnome.SessionManager",
+ "/org/gnome/SessionManager",
+ "org.gnome.SessionManager")
+
+ # Load models
+ self.gdmclient = tailsgreeter.gdmclient.GdmClient(
+ session_opened_cb=self.close_app
+ )
+ self.persistence = tailsgreeter.persistence.PersistenceSettings()
+ self.localisationsettings = tailsgreeter.language.LocalisationSettings(
+ usermanager_loaded_cb=self.usermanager_loaded,
+ locale_selected_cb=self.locale_selected
+ )
+ self.rootaccess = \
+ tailsgreeter.rootaccess.RootAccessSettings()
+ self.physical_security = \
+ tailsgreeter.physicalsecurity.PhysicalSecuritySettings()
+
+ # Load views
+ self.mainwindow = GreeterMainWindow(self)
+
+ # Inhibit the session being marked as idle
+ self.inhibit_idle()
+
+ def translate_to(self, lang):
+ """Translate all windows to target language"""
+ TranslatableWindow.translate_all(lang)
+
+ def login(self):
+ """Login GDM to the server"""
+ logging.debug("login called")
+ self.mainwindow.hide()
+ self.gdmclient.do_login()
+
+ def usermanager_loaded(self):
+ """UserManager is ready"""
+ logging.debug("Entering usermanager_loaded")
+ self.ready = True
+ self.localisationsettings.text.set_value('en_US')
+ logging.info("tails-greeter is ready.")
+ self.mainwindow.show()
+
+ def locale_selected(self, locale_code):
+ """Translate to the given locale"""
+ self.translate_to(locale_code)
+
+ def close_app(self):
+ """We're done, quit gtk app"""
+ logging.info("Finished.")
+ Gtk.main_quit()
+
+ def shutdown(self):
+ """Shuts down the computer using GNOME Session Manager"""
+ logging.info("Shutdown")
+ self._sessionmanager.Shutdown()
+
+ def inhibit_idle(self):
+ cookie = self._sessionmanager.Inhibit(
+ "(susu)",
+ "org.boum.tails.Greeter",
+ 0,
+ "Greeter session shouldn't idle",
+ 8) # Inhibit the session being marked as idle
+ logging.debug("inhibitor cookie=%i", cookie)
+
+
+if __name__ == "__main__":
+ GLib.set_prgname(tailsgreeter.APPLICATION_TITLE)
+ GLib.set_application_name(
+ _(tailsgreeter.APPLICATION_TITLE)) # NOQA: F821
+ Gtk.init(sys.argv)
+ Gtk.Window.set_default_icon_name(tailsgreeter.APPLICATION_ICON_NAME)
+
+ application = GreeterApplication()
+ Gtk.main()
diff --git a/config/chroot_local-includes/usr/share/tails-greeter/tails-logging.conf b/config/chroot_local-includes/usr/share/tails-greeter/tails-logging.conf
new file mode 100644
index 0000000..f61b064
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/tails-greeter/tails-logging.conf
@@ -0,0 +1,27 @@
+[loggers]
+keys=root,pycountry.db
+
+[handlers]
+keys=consoleHandler
+
+[formatters]
+keys=xFormatter
+
+[handler_consoleHandler]
+class=StreamHandler
+level=DEBUG
+formatter=xFormatter
+args=(sys.stdout,)
+
+[logger_root]
+handlers=consoleHandler
+level=INFO
+qualname=tails-greeter
+
+[logger_pycountry.db]
+handlers=consoleHandler
+level=WARNING
+qualname=pycountry
+
+[formatter_xFormatter]
+format=[%(levelname)s] %(filename)s:%(lineno)d %(funcName)s: %(message)s
diff --git a/config/chroot_local-packageslists/tails-common.list b/config/chroot_local-packageslists/tails-common.list
index 635e049..e93671e 100644
--- a/config/chroot_local-packageslists/tails-common.list
+++ b/config/chroot_local-packageslists/tails-common.list
@@ -1,5 +1,4 @@
### Self-bla
-tails-greeter
tails-installer
tails-iuk
tails-persistence-setup
@@ -51,6 +50,18 @@ eject
# Needed by Additional Software
python3-apt
python3-atomicwrites
+# Needed by the Greeter
+console-setup
+gir1.2-accountsservice-1.0
+gir1.2-gdm-1.0
+gir1.2-glib-2.0
+gir1.2-gnomedesktop-3.0
+gir1.2-gtk-3.0
+gir1.2-webkit2-4.0
+python3-gi
+python3-pycountry
+python3-tz
+ttf-unifont
### Software
diff --git a/config/chroot_local-patches/greeter-buster-blocking-tails-unblock-network.diff b/config/chroot_local-patches/greeter-buster-blocking-tails-unblock-network.diff
deleted file mode 100644
index 6428f7f..0000000
--- a/config/chroot_local-patches/greeter-buster-blocking-tails-unblock-network.diff
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/gdm/PostLogin.default b/gdm/PostLogin.default
-index 0d35c21..ada42a8 100755
---- a/etc/gdm3/PostLogin/Default
-+++ b/etc/gdm3/PostLogin/Default
-@@ -71,7 +71,8 @@ fi
-
- ### Physical security
- log "Running /usr/local/lib/tails-unblock-network..."
--/usr/local/lib/tails-unblock-network &
-+/usr/local/lib/tails-unblock-network
-+log "tails-unblock-network has exited (status=$?)."
-
- ### Localization
-
diff --git a/config/chroot_local-patches/greeter-buster.diff b/config/chroot_local-patches/greeter-buster.diff
deleted file mode 100644
index 9aa232d..0000000
--- a/config/chroot_local-patches/greeter-buster.diff
+++ /dev/null
@@ -1,35 +0,0 @@
-diff --git a/config/gdm-tails.json b/config/gdm-tails.json
-index 801617c..dcaac5e 100644
---- a/usr/share/gnome-shell/modes/gdm-tails.json
-+++ b/usr/share/gnome-shell/modes/gdm-tails.json
-@@ -9,7 +9,7 @@
- "panel": {
- "left": [],
- "center": ["dateMenu"],
-- "right": ["a11yGreeter", "keyboard", "aggregateMenu"]
-+ "right": ["a11y", "keyboard", "aggregateMenu"]
- },
- "panelStyle": "loginScreen",
- "stylesheetName": "gnome-classic.css"
-diff --git a/config/gdm-tails.session b/config/gdm-tails.session
-index 11ad3ee..f5f4f7e 100644
---- a/usr/share/gnome-session/sessions/gdm-tails.session
-+++ b/usr/share/gnome-session/sessions/gdm-tails.session
-@@ -1,3 +1,3 @@
- [GNOME Session]
- Name=Display Manager
--RequiredComponents=gdm-shell-tails;tails-greeter;gnome-settings-daemon;
-+RequiredComponents=gdm-shell-tails;tails-greeter;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Clipboard;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Mouse;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.ScreensaverProxy;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;
-diff --git a/tailsgreeter/gui.py b/tailsgreeter/gui.py
-index 745429a..2cacc33 100644
---- a/usr/lib/python3/dist-packages/tailsgreeter/gui.py
-+++ b/usr/lib/python3/dist-packages/tailsgreeter/gui.py
-@@ -883,9 +883,6 @@ class GreeterMainWindow(Gtk.Window, TranslatableWindow):
-
- def finish_login(self):
- logging.info("Starting the session")
-- # /usr/lib/systemd/user/tails-greeter-session-helper.service will
-- # restore the cursor to the left pointer state.
-- self.get_root_window().set_cursor(Gdk.Cursor.new(Gdk.CursorType.WATCH))
- self.greeter.login()
- return False
diff --git a/config/chroot_local-patches/tweak-gnome-applications-menu.diff b/config/chroot_local-patches/tweak-gnome-applications-menu.diff
new file mode 100644
index 0000000..267822a
--- /dev/null
+++ b/config/chroot_local-patches/tweak-gnome-applications-menu.diff
@@ -0,0 +1,34 @@
+--- /etc/xdg/menus/gnome-applications.menu 2019-08-26 23:17:27.532000000 +0000
++++ /etc/xdg/menus/gnome-applications.menu 2019-08-26 23:18:41.156000000 +0000
+@@ -35,7 +35,6 @@
+ Please keep the list alphabetically sorted! -->
+ <Filename>eog.desktop</Filename>
+ <Filename>gucharmap.desktop</Filename>
+- <Filename>org.gnome.Calculator.desktop</Filename>
+ <Filename>org.gnome.DejaDup.desktop</Filename>
+ <Filename>org.gnome.Dictionary.desktop</Filename>
+ <Filename>org.gnome.DiskUtility.desktop</Filename>
+@@ -295,7 +294,6 @@
+ <Filename>gnome-system-log.desktop</Filename>
+ <Filename>gnome-system-monitor.desktop</Filename>
+ <Filename>org.gnome.baobab.desktop</Filename>
+- <Filename>org.gnome.Terminal.desktop</Filename>
+ </Exclude>
+
+ <Menu>
+@@ -414,7 +412,6 @@
+ <Filename>gnome-system-monitor.desktop</Filename>
+ <Filename>gucharmap.desktop</Filename>
+ <Filename>org.gnome.baobab.desktop</Filename>
+- <Filename>org.gnome.Calculator.desktop</Filename>
+ <Filename>org.gnome.DejaDup.desktop</Filename>
+ <Filename>org.gnome.Dictionary.desktop</Filename>
+ <Filename>org.gnome.DiskUtility.desktop</Filename>
+@@ -422,7 +419,6 @@
+ <Filename>org.gnome.FileRoller.desktop</Filename>
+ <Filename>org.gnome.fonts.desktop</Filename>
+ <Filename>org.gnome.Screenshot.desktop</Filename>
+- <Filename>org.gnome.Terminal.desktop</Filename>
+ <Filename>org.gnome.tweaks.desktop</Filename>
+ <Filename>seahorse.desktop</Filename>
+ <Filename>vinagre.desktop</Filename>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 0312323..650589f 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -3,6 +3,11 @@ tmp/pot/60-tor-ready.sh.pot
tmp/pot/config.py.pot
tmp/pot/configuration-window.ui.pot
tmp/pot/electrum.pot
+tmp/pot/greeter-gui.py.pot
+tmp/pot/greeter-language.py.pot
+tmp/pot/greeter-persistence.py.pot
+tmp/pot/greeter.ui.pot
+tmp/pot/greeter-utils.py.pot
tmp/pot/keepassxc.pot
tmp/pot/replace-su-with-sudo.pot
tmp/pot/status-menu-helper-extension.js.pot
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
index dfc371c..0a9fd5d 100644
--- a/po/POTFILES.skip
+++ b/po/POTFILES.skip
@@ -1,8 +1,11 @@
wiki/src/
config/chroot_local-includes/usr/share/doc/tails/website/
+config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py
+config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_list.py
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py
+config/chroot_local-includes/usr/share/tails-greeter/greeter.ui
config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui
config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/main.ui
config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/volume.ui
diff --git a/po/ar.po b/po/ar.po
deleted file mode 100644
index 0bc19cb..0000000
--- a/po/ar.po
+++ /dev/null
@@ -1,950 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-#
-# Translators:
-# AbdAlnour Sami <me@abdalnour.me>, 2015
-# skygazer <abudayeh.saleh@gmail.com>, 2014
-# Ahmed A. <6622227a@gmail.com>, 2016,2019
-# Ahmed IB <mee.tbhole@gmail.com>, 2019
-# Tech Comet <al3arbe1@gmail.com>, 2013
-# Arwa, 2014
-# Ash <ali.shatrieh@gmail.com>, 2014
-# ASSYASS Mahmoud <mahmoud.assyass@gmail.com>, 2017
-# ButterflyOfFire, 2018
-# ButterflyOfFire, 2018
-# Emma Peel, 2018-2019
-# 0xidz <ghoucine@gmail.com>, 2014
-# Isho Antar <isho.antar1@gmail.com>, 2018
-# lamine Kacimi <k_lamine27@yahoo.fr>, 2015
-# Khaled Hosny, 2018
-# Matt Santy <matt_santy@hotmail.com>, 2013
-# stayanonymous, 2015
-# Mohammed ALDOUB <voulnet@gmail.com>, 2013
-# Osama H. Qasho <osamah_owis@windowslive.com>, 2014
-# Osama M. Mneina <o.mneina@gmail.com>, 2014
-# Sherief Alaa <sheriefalaa.w@gmail.com>, 2013
-# Singapore Goldindor, 2016
-# محيي الدين <tx99h4@hotmail.com>, 2014
-# محيي الدين <tx99h4@hotmail.com>, 2014
-msgid ""
-msgstr ""
-"Project-Id-Version: Tor Project\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
-"PO-Revision-Date: 2019-07-17 18:19+0000\n"
-"Last-Translator: Ahmed IB <mee.tbhole@gmail.com>\n"
-"Language-Team: Arabic (http://www.transifex.com/otf/torproject/language/"
-"ar/)\n"
-"Language: ar\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
-"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
-
-#: config/chroot_local-includes/etc/NetworkManager/dispatcher.d/60-tor-ready.sh:39
-msgid "Tor is ready"
-msgstr "تور جاهز للإقلاع"
-
-#: config/chroot_local-includes/etc/NetworkManager/dispatcher.d/60-tor-ready.sh:40
-msgid "You can now access the Internet."
-msgstr "يمكنك الآن تصفح الإنترنت."
-
-#: config/chroot_local-includes/etc/whisperback/config.py:69
-#, python-format
-msgid ""
-"<h1>Help us fix your bug!</h1>\n"
-"<p>Read <a href=\"%s\">our bug reporting instructions</a>.</p>\n"
-"<p><strong>Do not include more personal information than\n"
-"needed!</strong></p>\n"
-"<h2>About giving us an email address</h2>\n"
-"<p>\n"
-"Giving us an email address allows us to contact you to clarify the problem. "
-"This\n"
-"is needed for the vast majority of the reports we receive as most reports\n"
-"without any contact information are useless. On the other hand it also "
-"provides\n"
-"an opportunity for eavesdroppers, like your email or Internet provider, to\n"
-"confirm that you are using Tails.\n"
-"</p>\n"
-msgstr ""
-"<h1>ساعدنا لإصلاح المشكلة!</h1>\n"
-"<p>اقرأ <a href=\"%s\">الإرشادات الخاصة بالتبليغ عن الأخطاء</a>.</p>\n"
-"<p><strong>لحماية خصوصيتك، املأ البيانات المطلوبة فقط لا غير!</strong></p>\n"
-"<h2>توضيح حول إعطائنا عنوان بريدك الإلكتروني</h2>\n"
-"<p>\n"
-"سنستخدم بريدك الإلكتروني للتواصل معك لاستيضاح المشكلة بشكل أفضل، وهو مطلوب "
-"لأغلب تقارير الأخطاء حيث أنه من غير الممكن متابعة تقارير الأخطاء التي ترسل "
-"من دون أية معلومات اتصال.\n"
-"من ناحية أخرى، يجب التنويه بأن تضمين البريد الإلكتروني يسمح للمتنصتين، كمزود "
-"خدمة البريد الإلكتروني أو مزود خدمة الإنترنت، التأكد من استخدامك لـتيلز . \n"
-"</p>\n"
-
-#: config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:8
-#: ../config/chroot_local-includes/usr/share/applications/org.boum.tails.additional-software-config.desktop.in.h:1
-msgid "Additional Software"
-msgstr "برامج إضافية"
-
-#: config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:51
-msgid ""
-"You can install additional software automatically from your persistent "
-"storage when starting Tails."
-msgstr ""
-"يمكنك تنصيب برمجيات إضافية تلقائيا من مساحة التخزين الدائم عند استخدامك تيلز."
-
-#: config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:77
-msgid ""
-"The following software is installed automatically from your persistent "
-"storage when starting Tails."
-msgstr ""
-"نصبت البرمجيات التالية تلقائيا من مساحة التخزين الدائم عند بدأ تشغيل تيلز."
-
-#: config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:135
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:171
-msgid ""
-"To add more, install some software using <a href=\"synaptic.desktop"
-"\">Synaptic Package Manager</a> or <a href=\"org.gnome.Terminal.desktop"
-"\">APT on the command line</a>."
-msgstr ""
-"لإضافة المزيد، نصّب بعض البرمجيات باستخدام <a href=\"synaptic.desktop\">مدير "
-"الحزم سينابتك</a> أو <a href=\"org.gnome.Terminal.desktop\">APT من سطر "
-"الأوامر</a>."
-
-#: config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:154
-msgid "_Create persistent storage"
-msgstr "أ_نشئ مساحة تخزين دائمة"
-
-#: config/chroot_local-includes/usr/local/bin/electrum:57
-msgid "Persistence is disabled for Electrum"
-msgstr "ميزة التخزين الدائم معطلة في إلكترم"
-
-#: config/chroot_local-includes/usr/local/bin/electrum:59
-msgid ""
-"When you reboot Tails, all of Electrum's data will be lost, including your "
-"Bitcoin wallet. It is strongly recommended to only run Electrum when its "
-"persistence feature is activated."
-msgstr ""
-"عندما تعيد تشغيل تيلز، سيتم فقدان جميع بيانات إلكتروم، بما في ذلك محفظة "
-"بيتكوين الخاصة بك. وينصح بشدة تشغيل إلكتروم فقط عندما يتم تنشيط ميزة "
-"المثابرة الخاصة بها."
-
-#: config/chroot_local-includes/usr/local/bin/electrum:60
-msgid "Do you want to start Electrum anyway?"
-msgstr "هل تريد تشغيل ELECTRUM على أية حال؟"
-
-#: config/chroot_local-includes/usr/local/bin/electrum:63
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:41
-msgid "_Launch"
-msgstr "_Launch"
-
-#: config/chroot_local-includes/usr/local/bin/electrum:64
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:42
-msgid "_Exit"
-msgstr "_Exit"
-
-#: config/chroot_local-includes/usr/local/bin/keepassxc:15
-#, fuzzy, sh-format
-msgid ""
-"<b><big>Do you want to rename your <i>KeePassXC</i> database?</big></b>\n"
-"\n"
-"You have a <i>KeePassXC</i> database in your <i>Persistent</i> folder:\n"
-"\n"
-"<i>${filename}</i>\n"
-"\n"
-"Renaming it to <i>keepassx.kdbx</i> would allow <i>KeePassXC</i> to open it "
-"automatically in the future."
-msgstr ""
-"<b><big>هل تريد إعادة تسمية<i>قاعدة بيانات KeePassX</i> الخاصة بك؟</big></"
-"b>\n"
-"\n"
-"لديك<i>قاعدة بيانات KeePassX</i> في <i>مجلد Persistent</i> الخاص بك:\n"
-"\n"
-"<i>${filename}</i>\n"
-"\n"
-"إعادة تسميته إلى <i>keepassx.kdbx</i> سيسمح ل <i>KeePassX</i> بفتحه "
-"أتوماتيكيا في المستقبل."
-
-#: config/chroot_local-includes/usr/local/bin/keepassxc:23
-msgid "Rename"
-msgstr "إعادة التسمية"
-
-#: config/chroot_local-includes/usr/local/bin/keepassxc:24
-msgid "Keep current name"
-msgstr "ثبت الإسم الحالي"
-
-#: config/chroot_local-includes/usr/local/bin/replace-su-with-sudo:21
-msgid "su is disabled. Please use sudo instead."
-msgstr "su مُعطل. الرجاء استخدام sudo بدلا عنه"
-
-#: config/chroot_local-includes/usr/share/gnome-shell/extensions/status-menu-helper@tails.boum.org/extension.js:75
-msgid "Lock screen"
-msgstr "أوصد الشاشة"
-
-#: config/chroot_local-includes/usr/share/gnome-shell/extensions/status-menu-helper@tails.boum.org/extension.js:79
-msgid "Suspend"
-msgstr "تعليق"
-
-#: config/chroot_local-includes/usr/share/gnome-shell/extensions/status-menu-helper@tails.boum.org/extension.js:83
-msgid "Restart"
-msgstr "أعد التشغيل"
-
-#: config/chroot_local-includes/usr/share/gnome-shell/extensions/status-menu-helper@tails.boum.org/extension.js:87
-msgid "Power Off"
-msgstr "إيقاف التشغيل"
-
-#: config/chroot_local-includes/usr/local/bin/tails-about:22
-#: ../config/chroot_local-includes/usr/share/desktop-directories/Tails.directory.in.h:1
-msgid "Tails"
-msgstr "تيلز"
-
-#: config/chroot_local-includes/usr/local/bin/tails-about:25
-#: ../config/chroot_local-includes/usr/share/applications/tails-about.desktop.in.h:1
-msgid "About Tails"
-msgstr "عن تيلز"
-
-#: config/chroot_local-includes/usr/local/bin/tails-about:35
-msgid "The Amnesic Incognito Live System"
-msgstr "نظام التشغيل الحي ذو الذاكرة المعدومة والهوية المجهولة (TAILS)"
-
-#: config/chroot_local-includes/usr/local/bin/tails-about:36
-#, python-format
-msgid ""
-"Build information:\n"
-"%s"
-msgstr ""
-"معلومات النسخة:\n"
-"%s"
-
-#: config/chroot_local-includes/usr/local/bin/tails-about:54
-msgid "not available"
-msgstr "غير متاح"
-
-#. Translators: Don't translate {details}, it's a placeholder and will
-#. be replaced.
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:148
-#, python-brace-format
-msgid ""
-"{details} Please check your list of additional software or read the system "
-"log to understand the problem."
-msgstr ""
-"{details} الرجاء التأكد من قائمة البرامج الاضافية لديك او قراءة سجل النظام "
-"لفهم المشكلة."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:153
-msgid ""
-"Please check your list of additional software or read the system log to "
-"understand the problem."
-msgstr ""
-"فشل التنصيب. رجاء راجع ضبط البرمجيات الإضافية، أو طالع سجل النظام لمعرفة "
-"المشكلة أفضل."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:157
-msgid "Show Log"
-msgstr "استعرض السِّجِل"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:157
-msgid "Configure"
-msgstr "اضبط"
-
-#. Translators: Don't translate {beginning} or {last}, they are
-#. placeholders and will be replaced.
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:223
-#, python-brace-format
-msgid "{beginning} and {last}"
-msgstr "{beginning} و {last}"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:224
-msgid ", "
-msgstr ", "
-
-#. Translators: Don't translate {packages}, it's a placeholder and will
-#. be replaced.
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:290
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:320
-#, python-brace-format
-msgid "Add {packages} to your additional software?"
-msgstr "اضافة {packages} الى برامجك الاضافية؟"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:292
-msgid ""
-"To install it automatically from your persistent storage when starting Tails."
-msgstr "لتثبيته تلقائيا من تخزينك الدائم عند بدء تيلز."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:294
-msgid "Install Every Time"
-msgstr "تثبيت كل مرة"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:295
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:326
-msgid "Install Only Once"
-msgstr "تثبيت مرة واحدة فقط"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:301
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:331
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:372
-msgid "The configuration of your additional software failed."
-msgstr "لقد فشل ضبط برامجك الاضافية."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:322
-msgid ""
-"To install it automatically when starting Tails, you can create a persistent "
-"storage and activate the <b>Additional Software</b> feature."
-msgstr ""
-"لتثبيتها تلقائيا عند بدء تيلز, يمكنك انشاء تخزين دائم و تفعيل ميزة "
-"<b>البرامج الاضافية</b>."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:325
-msgid "Create Persistent Storage"
-msgstr "انشاء تخزين دائم"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:333
-msgid "Creating your persistent storage failed."
-msgstr "لقد فشل انشاء التخزين الدائم الخاص بك."
-
-#. Translators: Don't translate {packages}, it's a placeholder and
-#. will be replaced.
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:342
-#, python-brace-format
-msgid "You could install {packages} automatically when starting Tails"
-msgstr "يمكنك تثبيت {packages} تلقائيا عند بدء تيلز"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:345
-msgid ""
-"To do so, you need to run Tails from a USB stick installed using <i>Tails "
-"Installer</i>."
-msgstr ""
-"للقيام بذلك, انت بحاجة لتشغيل تيلز من عصا USB مثبتة باستخدام <i>Tails "
-"Installer</i>"
-
-#. Translators: Don't translate {packages}, it's a placeholder and will be
-#. replaced.
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:360
-#, python-brace-format
-msgid "Remove {packages} from your additional software?"
-msgstr "ازالة {packages} من برامجك الاضافية؟"
-
-#. Translators: Don't translate {packages}, it's a placeholder
-#. and will be replaced.
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:364
-#, python-brace-format
-msgid "This will stop installing {packages} automatically."
-msgstr "هذا سيوقف تثبيت {packages} تلقائيا."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:366
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:154
-msgid "Remove"
-msgstr "‮أزِل"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "إلغاء"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
-msgid "Installing your additional software from persistent storage..."
-msgstr "جار تثبيت برامجك الاضافية من التخزين الدائم..."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:547
-msgid "This can take several minutes."
-msgstr "يمكن أن يستغرق هذا بعض الوقت..."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:560
-msgid "The installation of your additional software failed"
-msgstr "لقد فشل تثبيت برامجك الاضافية"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:575
-msgid "Additional software installed successfully"
-msgstr "تم تثبيت البرامج الاضافية بنجاح"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:595
-msgid "The check for upgrades of your additional software failed"
-msgstr "فشل التحقق من توفر ترقيات للبرنامج الإضافية الخاصة بك"
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:597
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:605
-msgid ""
-"Please check your network connection, restart Tails, or read the system log "
-"to understand the problem."
-msgstr ""
-"الرجاء التحقق من اتصالك بالشبكة, اعد تشغيل تيلز, او اقرأ سجل النظام لفهم "
-"المشكلة."
-
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:604
-msgid "The upgrade of your additional software failed"
-msgstr "فشل ترقية البرامج الاضافية الخاصة بك"
-
-#: config/chroot_local-includes/usr/local/lib/tails-additional-software-notify:37
-msgid "Documentation"
-msgstr "التوثيق"
-
-#. Translators: Don't translate {package}, it's a placeholder and will be replaced.
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:94
-#, python-brace-format
-msgid ""
-"Remove {package} from your additional software? This will stop installing "
-"the package automatically."
-msgstr ""
-"ازالة {package} من البرامج الاضافية الخاصة بك؟ هذا سيؤدي لايقاف تثبيت الحزمة "
-"تلقائيا."
-
-#. Translators: Don't translate {pkg}, it's a placeholder and will be replaced.
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:105
-#, python-brace-format
-msgid "Failed to remove {pkg}"
-msgstr "فشل ازالة {pkg}"
-
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:122
-msgid "Failed to read additional software configuration"
-msgstr "فشل قراءة اعدادات البرامج الاضافية"
-
-#. Translators: Don't translate {package}, it's a placeholder and will be replaced.
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:152
-#, python-brace-format
-msgid "Stop installing {package} automatically"
-msgstr "ايقاف تثبيت {package} تلقائيا"
-
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:178
-msgid ""
-"To do so, install some software using <a href=\"synaptic.desktop\">Synaptic "
-"Package Manager</a> or <a href=\"org.gnome.Terminal.desktop\">APT on the "
-"command line</a>."
-msgstr ""
-"للقيام بذلك, قم بتثبيت البرنامج باستخدام <a href=\"synaptic.desktop"
-"\">Synaptic Package Manager</a> ال <a href=\"org.gnome.Terminal.desktop"
-"\">APT على سطر الأوامر</a>."
-
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:187
-msgid ""
-"To do so, unlock your persistent storage when starting Tails and install "
-"some software using <a href=\"synaptic.desktop\">Synaptic Package Manager</"
-"a> or <a href=\"org.gnome.Terminal.desktop\">APT on the command line</a>."
-msgstr ""
-"للقيام بذلك, قم بفك قفل التخزين الدائم الخاص بك عند بدء تيلز و قم بتثبيت بعض "
-"البرامج باستخدام <a href=\"synaptic.desktop\">Synaptic Package Manager</a> "
-"او <a href=\"org.gnome.Terminal.desktop\">APT على سطر الأوامر</a>."
-
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:197
-msgid ""
-"To do so, create a persistent storage and install some software using <a "
-"href=\"synaptic.desktop\">Synaptic Package Manager</a> or <a href=\"org."
-"gnome.Terminal.desktop\">APT on the command line</a>."
-msgstr ""
-"للقيام بذلك, قم بانشاء تخزين دائم و قم بتثبيت بعض البرامج باستخدام Synaptic "
-"Package Manager او APT على سطر الأوامر."
-
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:205
-msgid ""
-"To do so, install Tails on a USB stick using <a href=\"tails-installer."
-"desktop\">Tails Installer</a> and create a persistent storage."
-msgstr ""
-"للقيام بذلك, قم بتثبيت تيلز على عصا USB باستخدام <a href=\"tails-installer."
-"desktop\">Tails Installer</a> و قك بانشاء تخزين دائم."
-
-#: config/chroot_local-includes/usr/local/bin/tails-additional-software-config:252
-msgid "[package not available]"
-msgstr "[الحزمة غير متوفرة]"
-
-#: config/chroot_local-includes/usr/local/lib/tails-htp-notify-user:52
-msgid "Synchronizing the system's clock"
-msgstr "جاري مزامنة ساعة النظام."
-
-#: config/chroot_local-includes/usr/local/lib/tails-htp-notify-user:53
-msgid ""
-"Tor needs an accurate clock to work properly, especially for Hidden "
-"Services. Please wait..."
-msgstr "تور يحتاج ساعة دقيقة للعمل، خصوصاً للخدمات المخفية. يرجى الانتظار..."
-
-#: config/chroot_local-includes/usr/local/lib/tails-htp-notify-user:87
-msgid "Failed to synchronize the clock!"
-msgstr "فشل في تزامن ساعة النظام!"
-
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:110
-msgid "Lock Screen"
-msgstr "أغلق الشاشة"
-
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:125
-msgid "Screen Locker"
-msgstr "مِقفَل الشاشة"
-
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:131
-msgid "Set up a password to unlock the screen."
-msgstr "قم باعداد كلمة مرور لالغاء قفل الشاشة"
-
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:149
-msgid "Password"
-msgstr "كلمة السر"
-
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "تأكيد "
-
-#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
-msgid "This version of Tails has known security issues:"
-msgstr "هذه النسخة من تيلز تحتوي مشاكل أمنية:"
-
-#: config/chroot_local-includes/usr/local/bin/tails-security-check:135
-msgid "Known security issues"
-msgstr "أعطال أمنية معروفة"
-
-#: config/chroot_local-includes/usr/local/lib/tails-spoof-mac:52
-#, sh-format
-msgid "Network card ${nic} disabled"
-msgstr "كرت الشبكة ${nic} معطّل"
-
-#: config/chroot_local-includes/usr/local/lib/tails-spoof-mac:53
-#, sh-format
-msgid ""
-"MAC spoofing failed for network card ${nic_name} (${nic}) so it is "
-"temporarily disabled.\n"
-"You might prefer to restart Tails and disable MAC spoofing."
-msgstr ""
-"فشلت عملية انتحال وحدة تحكم وصول الوسائط لبطاقة الشبكة ${nic_name} (${nic}) "
-"لذا فقد تم تعطيلها مؤقتا.\n"
-"ربما تفضل إعادة تشغيل Tails وتعطيل انتحال وحدة تحكم وصول الوسائط."
-
-#: config/chroot_local-includes/usr/local/lib/tails-spoof-mac:62
-msgid "All networking disabled"
-msgstr "جميع الشبكات معطّلة"
-
-#: config/chroot_local-includes/usr/local/lib/tails-spoof-mac:63
-#, sh-format
-msgid ""
-"MAC spoofing failed for network card ${nic_name} (${nic}). The error "
-"recovery also failed so all networking is disabled.\n"
-"You might prefer to restart Tails and disable MAC spoofing."
-msgstr ""
-"فشلت عملية انتحال وحدة تحكم وصول الوسائط لبطاقة الشبكة ${nic_name} (${nic}) "
-"لذا فقد تم تعطيلها مؤقتا.\n"
-"ربما تفضل إعادة تشغيل Tails وتعطيل انتحال وحدة تحكم وصول الوسائط."
-
-#: config/chroot_local-includes/usr/local/bin/tails-upgrade-frontend-wrapper:35
-msgid ""
-"\"<b>Not enough memory available to check for upgrades.</b>\n"
-"\n"
-"Make sure this system satisfies the requirements for running Tails.\n"
-"See file:///usr/share/doc/tails/website/doc/about/requirements.en.html\n"
-"\n"
-"Try to restart Tails to check for upgrades again.\n"
-"\n"
-"Or do a manual upgrade.\n"
-"See https://tails.boum.org/doc/first_steps/upgrade#manual\""
-msgstr ""
-"</b>لا تتوفر ذاكرة كافية للتحقق من وجود ترقيات.</b>\n"
-"\n"
-"تأكد من أن هذا النظام يلبي متطلبات تشغيل تيلز.\n"
-"انظر file:///usr/share/doc/tails/website/doc/about/requirements.en.html\n"
-"\n"
-"حاول اعادة تشغيل تيلز للتحقق من وجود ترقيات مرة اخرى.\n"
-"\n"
-"او قم بالتحديث يدويا.\n"
-"انظر https://tails.boum.org/doc/first_steps/upgrade#manual"
-
-#: config/chroot_local-includes/usr/local/bin/tails-upgrade-frontend-wrapper:72
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:27
-msgid "error:"
-msgstr "خطأ:"
-
-#: config/chroot_local-includes/usr/local/bin/tails-upgrade-frontend-wrapper:73
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:28
-msgid "Error"
-msgstr "خطأ"
-
-#: config/chroot_local-includes/usr/local/lib/tails-virt-notify-user:71
-msgid "Warning: virtual machine detected!"
-msgstr "تحذير: تم اكتشاف بيئة عمل افتراضية!"
-
-#: config/chroot_local-includes/usr/local/lib/tails-virt-notify-user:74
-msgid "Warning: non-free virtual machine detected!"
-msgstr "تحذير: تم الكشف على آلة افتراضيه غير حره"
-
-#: config/chroot_local-includes/usr/local/lib/tails-virt-notify-user:77
-msgid ""
-"Both the host operating system and the virtualization software are able to "
-"monitor what you are doing in Tails. Only free software can be considered "
-"trustworthy, for both the host operating system and the virtualization "
-"software."
-msgstr ""
-"كل من نظام التشغيل المضيف والبرنامج الافتراضي هي قادرة على رصد ما تقومون به "
-"في تيلز. البرامج الحرة فقط هي التي يمكن اعتبارها جديرة بالثقة، على كل من "
-"نظام التشغيل المضيف والبرنامج الافتراضي."
-
-#: config/chroot_local-includes/usr/local/lib/tails-virt-notify-user:81
-msgid "Learn more"
-msgstr "تعرف على المزيد"
-
-#: config/chroot_local-includes/usr/local/bin/tor-browser:43
-msgid "Tor is not ready"
-msgstr "تور غير جاهز"
-
-#: config/chroot_local-includes/usr/local/bin/tor-browser:44
-msgid "Tor is not ready. Start Tor Browser anyway?"
-msgstr "تور غير جاهز. بدء متصفح تور على أي حال؟"
-
-#: config/chroot_local-includes/usr/local/bin/tor-browser:45
-msgid "Start Tor Browser"
-msgstr "أبدأ متصفح تور"
-
-#: config/chroot_local-includes/usr/share/gnome-shell/extensions/torstatus@tails.boum.org/extension.js:35
-msgid "Tor Status"
-msgstr ""
-
-#: config/chroot_local-includes/usr/share/gnome-shell/extensions/torstatus@tails.boum.org/extension.js:50
-msgid "Open Onion Circuits"
-msgstr "افتح دوائر البصلة"
-
-#. Translators: Don't translate {volume_label} or {volume_size},
-#. they are placeholders and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:58
-#, python-brace-format
-msgid "{volume_label} ({volume_size})"
-msgstr "{volume_label} ({volume_size})"
-
-#. Translators: Don't translate {partition_name} or {partition_size},
-#. they are placeholders and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:63
-#, python-brace-format
-msgid "{partition_name} ({partition_size})"
-msgstr "{partition_name} ({partition_size})"
-
-#. Translators: Don't translate {volume_size}, it's a placeholder
-#. and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:68
-#, python-brace-format
-msgid "{volume_size} Volume"
-msgstr "{volume_size} حجم"
-
-#. Translators: Don't translate {volume_name}, it's a placeholder and
-#. will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:107
-#, python-brace-format
-msgid "{volume_name} (Read-Only)"
-msgstr "{volume_name}(للقراءة-فقط)"
-
-#. Translators: Don't translate {partition_name} and {container_path}, they
-#. are placeholders and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:115
-#, python-brace-format
-msgid "{partition_name} in {container_path}"
-msgstr "{partition_name} في {container_path}"
-
-#. Translators: Don't translate {volume_name} and {path_to_file_container},
-#. they are placeholders and will be replaced. You should only have to translate
-#. this string if it makes sense to reverse the order of the placeholders.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:122
-#, python-brace-format
-msgid "{volume_name} – {path_to_file_container}"
-msgstr "{volume_name} – {path_to_file_container}"
-
-#. Translators: Don't translate {partition_name} and {drive_name}, they
-#. are placeholders and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:128
-#, python-brace-format
-msgid "{partition_name} on {drive_name}"
-msgstr "{partition_name} على {drive_name}"
-
-#. Translators: Don't translate {volume_name} and {drive_name},
-#. they are placeholders and will be replaced. You should only have to translate
-#. this string if it makes sense to reverse the order of the placeholders.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:135
-#, python-brace-format
-msgid "{volume_name} – {drive_name}"
-msgstr "{volume_name} – {drive_name}"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:222
-msgid "Wrong passphrase or parameters"
-msgstr "خطأ في كلمة المرور او العوامل"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:224
-msgid "Error unlocking volume"
-msgstr "خطأ في فك قفل الحجم"
-
-#. Translators: Don't translate {volume_name} or {error_message},
-#. they are placeholder and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:228
-#, python-brace-format
-msgid ""
-"Couldn't unlock volume {volume_name}:\n"
-"{error_message}"
-msgstr ""
-"فشل فك قفل الحجم {volume_name}:\n"
-"{error_message}"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:330
-msgid "One or more applications are keeping the volume busy."
-msgstr ""
-
-#. Translators: Don't translate {volume_name} or {error_message},
-#. they are placeholder and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:336
-#, python-brace-format
-msgid ""
-"Couldn't lock volume {volume_name}:\n"
-"{error_message}"
-msgstr ""
-"لم يستطع قفل وحدة التخزين {volume_name}:\n"
-"{error_message}"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:338
-#, fuzzy
-msgid "Locking the volume failed"
-msgstr "قفل هذا الحجم"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_list.py:83
-msgid "No file containers added"
-msgstr "لم يتم اضافة اي مستوعب ملفات"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_list.py:98
-msgid "No VeraCrypt devices detected"
-msgstr "لم يتم اكتشاف اي اجهزة VeraCrypt"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:40
-#: ../config/chroot_local-includes/usr/share/applications/unlock-veracrypt-volumes.desktop.in.h:1
-msgid "Unlock VeraCrypt Volumes"
-msgstr "فك قفل أحجام VeraCrypt"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:114
-msgid "Container already added"
-msgstr "المستوعب مضاف بالفعل"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:115
-#, python-format
-msgid "The file container %s should already be listed."
-msgstr "يجب ان يكون مستوعب الملفات %s مدرج بالفعل."
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:131
-msgid "Container opened read-only"
-msgstr "تم فتح المستوعب للقراءة-فقط"
-
-#. Translators: Don't translate {path}, it's a placeholder and will be replaced.
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:133
-#, python-brace-format
-msgid ""
-"The file container {path} could not be opened with write access. It was "
-"opened read-only instead. You will not be able to modify the content of the "
-"container.\n"
-"{error_message}"
-msgstr ""
-"فشل فتح مستوعب الملفات {path} مع امكانية الكتابة. لقد تم فتحه للقراءة-فقط "
-"بدلا من ذلك.\n"
-"لن يكون بامكانك تعديل محتويات المستوعب.\n"
-"{error_message}"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:138
-msgid "Error opening file"
-msgstr "خطأ في فتح الملف"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:160
-msgid "Not a VeraCrypt container"
-msgstr "ليس مستوعب VeraCrypt"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:161
-#, python-format
-msgid "The file %s does not seem to be a VeraCrypt container."
-msgstr "يبدو ان الملف %s ليس مستوعب VeraCrypt"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:163
-msgid "Failed to add container"
-msgstr "فشل إضافة مستوعب"
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:164
-#, python-format
-msgid ""
-"Could not add file container %s: Timeout while waiting for loop setup.\n"
-"Please try using the <i>Disks</i> application instead."
-msgstr ""
-"غير قادر على إضافة حافظة ملف %s: انتهت المهلة أثناء انتظار إعداد الحلقة.\n"
-"الرجاء محاولة استخدام تطبيق ال<i>Disks</i> بدلا من ذلك."
-
-#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_manager.py:209
-msgid "Choose File Container"
-msgstr "اختر مستوعب ملفات"
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:38
-msgid "Do you really want to launch the Unsafe Browser?"
-msgstr "هل حقاً تريد تشغيل المتصفح غير الآمن؟"
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:40
-msgid ""
-"Network activity within the Unsafe Browser is <b>not anonymous</b>.\\nOnly "
-"use the Unsafe Browser if necessary, for example\\nif you have to login or "
-"register to activate your Internet connection."
-msgstr ""
-"نشاط الشبكة داخل المتصفح غير الآمن هي <b>غير مجهول</b>.\\nإستخدم المتصفح غير "
-"الآمن فقط إذا كانت هناك ضرورة،مثلا\\nإذا كنت تحتاج لتسجيل الدخول أو التسجيل "
-"لتفعيل اتصالك بالإنترنت."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:51
-msgid "Starting the Unsafe Browser..."
-msgstr "جاري تشغيل المتصفح الغير آمن..."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:52
-msgid "This may take a while, so please be patient."
-msgstr "قد يستغرق هذا بعض الوقت، يرجى التحلي بالصبر."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:57
-msgid "Shutting down the Unsafe Browser..."
-msgstr "جاري إيقاف تشغيل المتصفح الغير الآمن..."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:58
-msgid ""
-"This may take a while, and you may not restart the Unsafe Browser until it "
-"is properly shut down."
-msgstr ""
-"هذه العملية قد تأخذ وقتاً طويلاً، وقد لا تتمكن من إعادة تشغيل المتصفح غير "
-"الآمن حتى يتم اغلاقه بشكل كامل."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:70
-msgid "Failed to restart Tor."
-msgstr "فشلت محاولة إعادة تشغيل تور."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:84
-#: ../config/chroot_local-includes/usr/share/applications/unsafe-browser.desktop.in.h:1
-msgid "Unsafe Browser"
-msgstr "المتصفح الغير الآمن"
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:91
-msgid ""
-"Another Unsafe Browser is currently running, or being cleaned up. Please "
-"retry in a while."
-msgstr ""
-"توجد نسخة أخرى تعمل أو يتم تنظيفها من المتصفح غير الآمن. رجاءً حاول بعد قليل."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:99
-msgid "Failed to setup chroot."
-msgstr "فشلت محاولة تشغيل chroot."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:104
-msgid "Failed to configure browser."
-msgstr "خلل في تهيئة المتصفح."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:110
-msgid ""
-"No DNS server was obtained through DHCP or manually configured in "
-"NetworkManager."
-msgstr ""
-"لم يتم الحصول على سيرفر DNS من خلال بروتوكول DHCP أو عن طريق الادخال اليدوي "
-"في NetworkManager."
-
-#: config/chroot_local-includes/usr/local/sbin/unsafe-browser:121
-msgid "Failed to run browser."
-msgstr "خلل في تشغيل المتصفح."
-
-#: ../config/chroot_local-includes/etc/skel/Desktop/Report_an_error.desktop.in.h:1
-msgid "Report an error"
-msgstr "ابلغ عن خطأ"
-
-#: ../config/chroot_local-includes/etc/skel/Desktop/tails-documentation.desktop.in.h:1
-#: ../config/chroot_local-includes/usr/share/applications/tails-documentation.desktop.in.h:1
-msgid "Tails documentation"
-msgstr "وثائق تيلز"
-
-#: ../config/chroot_local-includes/usr/share/applications/root-terminal.desktop.in.h:1
-msgid "Root Terminal"
-msgstr ""
-
-#: ../config/chroot_local-includes/usr/share/applications/root-terminal.desktop.in.h:2
-msgid "Opens a terminal as the root user, using gksu to ask for the password"
-msgstr ""
-
-#: ../config/chroot_local-includes/usr/share/applications/tails-documentation.desktop.in.h:2
-msgid "Learn how to use Tails"
-msgstr "تعلم كيف تستخدم Tails"
-
-#: ../config/chroot_local-includes/usr/share/applications/tails-about.desktop.in.h:2
-msgid "Learn more about Tails"
-msgstr "إطلع أكثر حول Tails"
-
-#: ../config/chroot_local-includes/usr/share/applications/tor-browser.desktop.in.h:1
-msgid "Tor Browser"
-msgstr "متصفح تور"
-
-#: ../config/chroot_local-includes/usr/share/applications/tor-browser.desktop.in.h:2
-msgid "Anonymous Web Browser"
-msgstr "متصفح إنترنت مخفي"
-
-#: ../config/chroot_local-includes/usr/share/applications/unsafe-browser.desktop.in.h:2
-msgid "Browse the World Wide Web without anonymity"
-msgstr "تصفح الانترنت دون اخفاء هويتك"
-
-#: ../config/chroot_local-includes/usr/share/applications/unsafe-browser.desktop.in.h:3
-msgid "Unsafe Web Browser"
-msgstr "متصفح غير آمن"
-
-#: ../config/chroot_local-includes/usr/share/applications/unlock-veracrypt-volumes.desktop.in.h:2
-msgid "Mount VeraCrypt encrypted file containers and devices"
-msgstr "ركب مستوعبات الملفات و الأجهزة المشفرة الخاصة ب VeraCrypt"
-
-#: ../config/chroot_local-includes/usr/share/applications/org.boum.tails.additional-software-config.desktop.in.h:2
-msgid ""
-"Configure the additional software installed from your persistent storage "
-"when starting Tails"
-msgstr ""
-"قم بضبط البرامج الاضافية المثبتة من التخزين الدائم الخاص بك عند بدء تيلز"
-
-#: ../config/chroot_local-includes/usr/share/desktop-directories/Tails.directory.in.h:2
-msgid "Tails specific tools"
-msgstr "ادوات خاصة بتيلز"
-
-#: ../config/chroot_local-includes/usr/share/polkit-1/actions/org.boum.tails.root-terminal.policy.in.h:1
-msgid "To start a Root Terminal, you need to authenticate."
-msgstr "يجب عليك المصادقة أولا قبل تشغيل الواجهة الطرفية كمدير."
-
-#: ../config/chroot_local-includes/usr/share/polkit-1/actions/org.boum.tails.additional-software.policy.in.h:1
-msgid "Remove an additional software package"
-msgstr "ازالة حزمة برامج اضافية"
-
-#: ../config/chroot_local-includes/usr/share/polkit-1/actions/org.boum.tails.additional-software.policy.in.h:2
-msgid ""
-"Authentication is required to remove a package from your additional software "
-"($(command_line))"
-msgstr "التوثيق مطلوب لازالة حزمة من برامجك الاضافية ($(سطر_الأوامر))"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/main.ui.in:61
-msgid "File Containers"
-msgstr "مستوعبات الملفات"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/main.ui.in:80
-msgid "_Add"
-msgstr "إضافة"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/main.ui.in:86
-msgid "Add a file container"
-msgstr "اضافة مستوعب ملفات"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/main.ui.in:103
-msgid "Partitions and Drives"
-msgstr "أقسام و محركات"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/main.ui.in:121
-msgid ""
-"This application is not affiliated with or endorsed by the VeraCrypt project "
-"or IDRIX."
-msgstr "هذا البرنامج لا ينتمي و ليس مؤيدا من قبل مشروع VeraCrypt أو IDRIX"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/volume.ui.in:29
-msgid "_Open"
-msgstr "_فتح"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/volume.ui.in:38
-msgid "Lock this volume"
-msgstr "قفل هذا الحجم"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/volume.ui.in:52
-msgid "_Unlock"
-msgstr "_إلغاء القفل"
-
-#: ../config/chroot_local-includes/usr/share/tails/unlock-veracrypt-volumes/volume.ui.in:61
-msgid "Detach this volume"
-msgstr "فصل هذا الحجم"
-
-#: ../config/chroot_local-includes/usr/local/share/mime/packages/unlock-veracrypt-volumes.xml.in.h:1
-msgid "TrueCrypt/VeraCrypt container"
-msgstr "مستوعب TrueCrypt/VeraCrypt"
-
-#~ msgid "Error locking volume"
-#~ msgstr "خطأ في قفل وحدة التخزين"
-
-#~ msgid "Tor"
-#~ msgstr "تور"
diff --git a/po/az.po b/po/az.po
index 29b5a58..ed68a91 100644
--- a/po/az.po
+++ b/po/az.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2014-12-30 17:30+0000\n"
"Last-Translator: E <ehuseynzade@gmail.com>\n"
"Language-Team: Azerbaijani (http://www.transifex.com/projects/p/torproject/"
@@ -115,6 +115,327 @@ msgstr "_Başlat"
msgid "_Exit"
msgstr "_Çıxış"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Tor-un yenidən başladılması alınmadı."
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Sənin əlaqə proqramın"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Ləğv et"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Tails Haqqında"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Sənin əlaqə proqramın"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Sənin əlaqə proqramın"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+#, fuzzy
+msgid "_Network Connection"
+msgstr "Şəbəkə əlaqəsi kilidlidir?"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -294,12 +615,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Ləğv et"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -431,10 +746,6 @@ msgstr ""
msgid "Password"
msgstr ""
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr ""
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Tails-in bu versiyasının bilinən təhlükəsizlik problemləri var:"
@@ -1032,9 +1343,6 @@ msgstr ""
#~ msgid "The upgrade was successful."
#~ msgstr "Təkmilləşmə uğurla bitdi."
-#~ msgid "Network connection blocked?"
-#~ msgstr "Şəbəkə əlaqəsi kilidlidir?"
-
#~ msgid ""
#~ "It looks like you are blocked from the network. This may be related to "
#~ "the MAC spoofing feature. For more information, see the <a href=\\"
diff --git a/po/bg.po b/po/bg.po
index 4bdf3c6..ba63ab1 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -19,7 +19,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2018-03-08 03:22+0000\n"
"Last-Translator: Ivo\n"
"Language-Team: Bulgarian (http://www.transifex.com/otf/torproject/language/"
@@ -128,6 +128,324 @@ msgstr "_Стартиране"
msgid "_Exit"
msgstr "_Изход"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Не можа да се рестартира Tor."
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+msgid "Additional Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Отказ"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Относно Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Потвърждение"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "Допълнителният софтуер е инсталиран"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+msgid "_Additional Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+msgid "Save Additional Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -313,12 +631,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Отказ"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
#, fuzzy
msgid "Installing your additional software from persistent storage..."
@@ -455,10 +767,6 @@ msgstr "Задаване на парола за заключване на екр
msgid "Password"
msgstr "Парола"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Потвърждение"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Тази версия на Tails е известна с проблемите със сигурността:"
diff --git a/po/bn.po b/po/bn.po
index 54b834e..6eb9696 100644
--- a/po/bn.po
+++ b/po/bn.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-01-29 06:41+0000\n"
"Last-Translator: Al Shahrior Hasan Sagor <shahrior3814@gmail.com>\n"
"Language-Team: Bengali (http://www.transifex.com/otf/torproject/language/"
@@ -125,6 +125,331 @@ msgstr "_Launch"
msgid "_Exit"
msgstr "_Exit"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Create অবিরাম স্টোরেজ"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "অতিরিক্ত সফটওয়্যার"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "বাতিল"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Add"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Tails সম্পর্কে"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "নিশ্চিত করা"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "অবিরাম স্টোরেজ তৈরি করুন"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "অবিরাম স্টোরেজ তৈরি করুন"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "আপনার অতিরিক্ত সফটওয়্যারকে একরোখা স্টোরেজ থেকে সংস্থাপন করা হচ্ছে..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "অবিরাম স্টোরেজ তৈরি করুন"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "অতিরিক্ত সফটওয়্যার"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "অতিরিক্ত সফটওয়্যার"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -319,12 +644,6 @@ msgstr "এটি স্বয়ংক্রিয়ভাবে {packages}
msgid "Remove"
msgstr "অপসারণ"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "বাতিল"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "আপনার অতিরিক্ত সফটওয়্যারকে একরোখা স্টোরেজ থেকে সংস্থাপন করা হচ্ছে..."
@@ -462,10 +781,6 @@ msgstr "স্ক্রিন আনলক করতে একটি পাস
msgid "Password"
msgstr "পাসওয়ার্ড"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "নিশ্চিত করা"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Tails এর এই সংস্করণ নিরাপত্তা বিষয় পরিচিত হয়েছে:"
diff --git a/po/bn_BD.po b/po/bn_BD.po
index d0f2d00..1d28a94 100644
--- a/po/bn_BD.po
+++ b/po/bn_BD.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2018-10-06 22:54+0000\n"
"Last-Translator: Emma Peel\n"
"Language-Team: Bengali (Bangladesh) (http://www.transifex.com/otf/torproject/"
@@ -125,6 +125,331 @@ msgstr "_Launch"
msgid "_Exit"
msgstr "_Exit"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Create অবিরাম স্টোরেজ"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "অতিরিক্ত সফটওয়্যার"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "বাতিল"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Add"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Tails সম্পর্কে"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "নিশ্চিত করা"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "অবিরাম স্টোরেজ তৈরি করুন"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "অবিরাম স্টোরেজ তৈরি করুন"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "আপনার অতিরিক্ত সফটওয়্যারকে একরোখা স্টোরেজ থেকে সংস্থাপন করা হচ্ছে..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "অবিরাম স্টোরেজ তৈরি করুন"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "অতিরিক্ত সফটওয়্যার"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "অতিরিক্ত সফটওয়্যার"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -310,12 +635,6 @@ msgstr "এটি স্বয়ংক্রিয়ভাবে {packages}
msgid "Remove"
msgstr "অপসারণ"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "বাতিল"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "আপনার অতিরিক্ত সফটওয়্যারকে একরোখা স্টোরেজ থেকে সংস্থাপন করা হচ্ছে..."
@@ -453,10 +772,6 @@ msgstr "স্ক্রিন আনলক করতে একটি পাস
msgid "Password"
msgstr "পাসওয়ার্ড"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "নিশ্চিত করা"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Tails এর এই সংস্করণ নিরাপত্তা বিষয় পরিচিত হয়েছে:"
diff --git a/po/ca.po b/po/ca.po
index c94082e..4de1b27 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -23,7 +23,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-05 06:35+0000\n"
"Last-Translator: jmontane\n"
"Language-Team: Catalan (http://www.transifex.com/otf/torproject/language/"
@@ -141,6 +141,334 @@ msgstr "_Executa"
msgid "_Exit"
msgstr "_Surt"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Desbloqueja"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Crea emmagatzematge persistent"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Desbloqueja"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Programari addicional"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Cancel·la"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Afegeix"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Quant a Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Confirma"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Crea un emmagatzematge persistent"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Crea un emmagatzematge persistent"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+"Instal·lant el programari addicional des d'un emmagatzematge persistent ..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Crea un emmagatzematge persistent"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Programari addicional"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Programari addicional"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -337,12 +665,6 @@ msgstr "Això evitarà la instal·lació de {packages} automàticament."
msgid "Remove"
msgstr "Suprimeix la subscripció"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Cancel·la"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -484,10 +806,6 @@ msgstr "Establiu una contrasenya per a desblocar la pantalla."
msgid "Password"
msgstr "Contrasenya"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Confirma"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Aquesta versió de Tails té problemes de seguretat coneguts:"
diff --git a/po/cs.po b/po/cs.po
index 341e1cb..7bdd61e 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -17,7 +17,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2017-12-07 22:10+0000\n"
"Last-Translator: Michal Vašíček <michalvasicek@icloud.com>\n"
"Language-Team: Czech (http://www.transifex.com/otf/torproject/language/cs/)\n"
@@ -125,6 +125,326 @@ msgstr "_Spustit"
msgid "_Exit"
msgstr "_Odejít"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Znovuspuštění TORu nebylo úspěšné"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Vaše další programy"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Zrušit"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "O Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Vaše další programy"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Vaše další programy"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -304,12 +624,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Zrušit"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -441,10 +755,6 @@ msgstr ""
msgid "Password"
msgstr ""
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr ""
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Tato verze Tails obsahuje následující bezpečnostní problémy:"
diff --git a/po/cy.po b/po/cy.po
index 861226c..9d42130 100644
--- a/po/cy.po
+++ b/po/cy.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2014-04-30 09:10+0000\n"
"Last-Translator: runasand <runa.sandvik@gmail.com>\n"
"Language-Team: Welsh (http://www.transifex.com/projects/p/torproject/"
@@ -116,6 +116,328 @@ msgstr "_Llwythwch"
msgid "_Exit"
msgstr "_Gadael"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Methu ailgychwyn Tor."
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Eich meddalwedd ychwanegol"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Canslo"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+#, fuzzy
+msgid "Shutdown"
+msgstr "Cynorthwydd cau lawr"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Amdan Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Eich meddalwedd ychwanegol"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Eich meddalwedd ychwanegol"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+#, fuzzy
+msgid "_Network Connection"
+msgstr "Cysylltiad rhwydwaith wedi'i wahardd?"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -295,12 +617,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Canslo"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -432,10 +748,6 @@ msgstr ""
msgid "Password"
msgstr ""
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr ""
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Mae gan y fersiwn yma o Tails problemau diogelwich hysbys:"
@@ -1039,15 +1351,9 @@ msgstr ""
#~ msgid "Reboot Immediately"
#~ msgstr "Ailgychwynwch ar unwaith"
-#~ msgid "Shutdown Helper"
-#~ msgstr "Cynorthwydd cau lawr"
-
#~ msgid "The upgrade was successful."
#~ msgstr "Roedd yr uwchraddiad yn llwyddianus."
-#~ msgid "Network connection blocked?"
-#~ msgstr "Cysylltiad rhwydwaith wedi'i wahardd?"
-
#~ msgid ""
#~ "It looks like you are blocked from the network. This may be related to "
#~ "the MAC spoofing feature. For more information, see the <a href=\\"
diff --git a/po/da.po b/po/da.po
index cacc40f..5067a31 100644
--- a/po/da.po
+++ b/po/da.po
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-07 09:40+0000\n"
"Last-Translator: scootergrisen\n"
"Language-Team: Danish (http://www.transifex.com/otf/torproject/language/"
@@ -137,6 +137,333 @@ msgstr "_Start"
msgid "_Exit"
msgstr "_Afslut"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Lås op"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Opret vedvarende lager"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Lås op"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Yderligere software"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Annuller"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Tilføj"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Om Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Bekræft"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Opret vedvarende lager"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Opret vedvarende lager"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "Installerer dine yderligere software from vedvarende lager..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Opret vedvarende lager"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Yderligere software"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Yderligere software"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -331,12 +658,6 @@ msgstr "Det vil stoppe automatisk installation af {packages}."
msgid "Remove"
msgstr "Fjern"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Annuller"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "Installerer dine yderligere software from vedvarende lager..."
@@ -476,10 +797,6 @@ msgstr "Opsæt en adgangskode til at låse skærmen op."
msgid "Password"
msgstr "Adgangskode"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Bekræft"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Denne version af Tails har følgende kendte sikkerhedsproblemer:"
diff --git a/po/de.po b/po/de.po
index 9299a27..5652f7f 100644
--- a/po/de.po
+++ b/po/de.po
@@ -36,7 +36,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-02 16:00+0000\n"
"Last-Translator: Curtis Baltimore <curtisbaltimore@protonmail.com>\n"
"Language-Team: German (http://www.transifex.com/otf/torproject/language/"
@@ -153,6 +153,335 @@ msgstr "_Start"
msgid "_Exit"
msgstr "_Beenden"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Entsperren"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Beständige Datenpartition erzeugen"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Entsperren"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Zusätzliche Software"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Abbrechen"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Hinzufügen"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Über Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Bestätigen"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr "Sprache & Region"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr "S_prache"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Beständige Datenpartition erzeugen"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Beständige Datenpartition erzeugen"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+"Installieren Sie Ihre zusätzliche Software von der beständigen "
+"Datenpartition..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Beständige Datenpartition erzeugen"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Zusätzliche Software"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Zusätzliche Software"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -348,12 +677,6 @@ msgstr "Dies stoppt das automatische Installieren von {packages}."
msgid "Remove"
msgstr "Aufheben"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Abbrechen"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -498,10 +821,6 @@ msgstr "Stellen Sie ein Passwort zum Sperren des Bildschirms ein."
msgid "Password"
msgstr "Passwort"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Bestätigen"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Diese Tails-Version weist Sicherheitslücken auf:"
diff --git a/po/el.po b/po/el.po
index 66a1059..c389ec5 100644
--- a/po/el.po
+++ b/po/el.po
@@ -28,7 +28,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-01-11 14:12+0000\n"
"Last-Translator: Panos <alwayslivid@protonmail.com>\n"
"Language-Team: Greek (http://www.transifex.com/otf/torproject/language/el/)\n"
@@ -146,6 +146,332 @@ msgstr "_Εκκίνηση"
msgid "_Exit"
msgstr "_Έξοδος"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Δημιουργία μόνιμου αποθηκευτικού χώρου"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Πρόσθετο Λογισμικό"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Άκυρο"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Πρόσθεσε"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Σχετικά με τα Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Επιβεβαίωση"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Δημιουργία Μόνιμου Αποθηκευτικού Χώρου"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Δημιουργία Μόνιμου Αποθηκευτικού Χώρου"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+"Εγκαθιστάται το πρόσθετό σας λογισμικό από το μόνιμο αποθηκευτικό χώρο..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Δημιουργία Μόνιμου Αποθηκευτικού Χώρου"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Πρόσθετο Λογισμικό"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Πρόσθετο Λογισμικό"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -334,12 +660,6 @@ msgstr "Αυτό θα σταματήσει την εγκατάσταση των
msgid "Remove"
msgstr "Απομάκρυνση"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Άκυρο"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -481,10 +801,6 @@ msgstr "Όρισε κωδικό για το κλείδωμα της οθόνης
msgid "Password"
msgstr "Κωδικός ασφαλείας"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Επιβεβαίωση"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Αυτή η έκδοση των Tails έχει γνωστά προβλήματα ασφαλείας:"
diff --git a/po/en_GB.po b/po/en_GB.po
index ab79359..0c1e634 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-06-02 00:43+0000\n"
"Last-Translator: Andi Chandler <andi@gowling.com>\n"
"Language-Team: English (United Kingdom) (http://www.transifex.com/otf/"
@@ -127,6 +127,333 @@ msgstr "_Launch"
msgid "_Exit"
msgstr "_Exit"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Unlock"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Create persistent storage"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Unlock"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Additional Software"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Cancel"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Add"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "About Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Confirm"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Create Persistent Storage"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Create Persistent Storage"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "Installing your additional software from persistent storage..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Create Persistent Storage"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Additional Software"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Additional Software"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -320,12 +647,6 @@ msgstr "This will stop installing {packages} automatically."
msgid "Remove"
msgstr "Remove"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Cancel"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "Installing your additional software from persistent storage..."
@@ -463,10 +784,6 @@ msgstr "Set up a password to unlock the screen."
msgid "Password"
msgstr "Password"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Confirm"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "This version of Tails has known security issues:"
diff --git a/po/es.po b/po/es.po
index 7872820..a62f7c3 100644
--- a/po/es.po
+++ b/po/es.po
@@ -17,7 +17,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-01 10:08+0000\n"
"Last-Translator: eulalio barbero espinosa <eulaliob@gmail.com>\n"
"Language-Team: Spanish (http://www.transifex.com/otf/torproject/language/"
@@ -135,6 +135,334 @@ msgstr "_Iniciar"
msgid "_Exit"
msgstr "_Salir"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Desbloquear"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Crear el almacenamiento persistente"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Desbloquear"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Software Adicional"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Cancelar"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Añadir"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Acerca de Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Confirmar"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Crear Almacenamiento Persistente"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Crear Almacenamiento Persistente"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+"Instalando tu software adicional desde el almacenamiento persistente..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Crear Almacenamiento Persistente"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Software Adicional"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Software Adicional"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -331,12 +659,6 @@ msgstr "Esto parará la instalación de {packages} de forma automática."
msgid "Remove"
msgstr "Eliminar"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Cancelar"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -476,10 +798,6 @@ msgstr "Establece una contraseña para desbloquear la pantalla"
msgid "Password"
msgstr "Contraseña"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Confirmar"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Esta versión de Tails tiene problemas de seguridad conocidos:"
diff --git a/po/es_AR.po b/po/es_AR.po
index 40b5b15..992d9ac 100644
--- a/po/es_AR.po
+++ b/po/es_AR.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-04-06 18:29+0000\n"
"Last-Translator: Zuhualime Akoochimoya\n"
"Language-Team: Spanish (Argentina) (http://www.transifex.com/otf/torproject/"
@@ -131,6 +131,332 @@ msgstr "_Iniciar"
msgid "_Exit"
msgstr "_Salir"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Crear almacenamiento persistente"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Programas adicionales"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Cancelar"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Añadir"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Acerca de Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Confirmar"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Crear almacenamiento persistente"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Crear almacenamiento persistente"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+"Instalando tus programas adicionales desde almacenamiento persistente..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Crear almacenamiento persistente"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Programas adicionales"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Programas adicionales"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -327,12 +653,6 @@ msgstr "Esto detendrá la instalación de {packages} automáticamente."
msgid "Remove"
msgstr "Remover"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Cancelar"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -474,10 +794,6 @@ msgstr "Definí una contraseña para desbloquear la pantalla."
msgid "Password"
msgstr "Contraseña"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Confirmar"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Esta versión de Tails tiene problemas de seguridad conocidos:"
diff --git a/po/fa.po b/po/fa.po
index 0db96e1..dcbfd23 100644
--- a/po/fa.po
+++ b/po/fa.po
@@ -32,7 +32,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-04 14:14+0000\n"
"Last-Translator: Reza Ghasemi\n"
"Language-Team: Persian (http://www.transifex.com/otf/torproject/language/"
@@ -158,6 +158,333 @@ msgstr "اجرا"
msgid "_Exit"
msgstr "خروج"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_باز کردن"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_ ایجاد ذخیره سازی مداوم"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_باز کردن"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "نرم افزار اضافی"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "لغو"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_افزودن"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "درباره Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "تایید "
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "ایجاد ذخیره سازی مداوم"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "ایجاد ذخیره سازی مداوم"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "نصب نرم افزار اضافی شما از ذخیره سازی مداوم..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "ایجاد ذخیره سازی مداوم"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "نرم افزار اضافی"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "نرم افزار اضافی"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -351,12 +678,6 @@ msgstr "این به طور خودکار نصب {packages} را متوقف خوا
msgid "Remove"
msgstr "حذف"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "لغو"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "نصب نرم افزار اضافی شما از ذخیره سازی مداوم..."
@@ -496,10 +817,6 @@ msgstr "برای باز کردن صفحه یک گذرواژه تعیین کنی
msgid "Password"
msgstr "رمز عبور"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "تایید "
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "این نسخه از Tails این مشکلات امنیت شناخته شده را دارد:"
diff --git a/po/fi.po b/po/fi.po
index e51e20e..cf7f11a 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -16,7 +16,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2017-11-23 03:53+0000\n"
"Last-Translator: Streets of Oulu <banchie443@gmail.com>\n"
"Language-Team: Finnish (http://www.transifex.com/otf/torproject/language/"
@@ -125,6 +125,326 @@ msgstr "_Käynnistä"
msgid "_Exit"
msgstr "_Lopeta"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Torin uudelleenkäynnistys epäonnistui."
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Lisäohjelmistosi"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Peruuta"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Tails-ohjelmasta"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Lisäohjelmistosi"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Lisäohjelmistosi"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -304,12 +624,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Peruuta"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -441,10 +755,6 @@ msgstr ""
msgid "Password"
msgstr ""
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr ""
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Tässä Tails-versiossa on tunnettuja turvallisuusriskejä:"
diff --git a/po/fr.po b/po/fr.po
index 0474833..a3cfeaf 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -39,7 +39,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-03 17:19+0000\n"
"Last-Translator: AO <ao@localizationlab.org>\n"
"Language-Team: French (http://www.transifex.com/otf/torproject/language/"
@@ -157,6 +157,334 @@ msgstr "_Lancer"
msgid "_Exit"
msgstr "_Quitter"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Déverrouiller"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Créer stockage persistant"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Déverrouiller"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Logiciels additionnels"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Annuler"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Ajouter"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "À propos de Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Confirmer"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Créer un stockage persistant"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Créer un stockage persistant"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+"Installation de vos logiciels additionnels depuis le stockage persistant..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Créer un stockage persistant"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Logiciels additionnels"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Logiciels additionnels"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -355,12 +683,6 @@ msgstr "Cela devrait stopper l’installation automatique de {packages}."
msgid "Remove"
msgstr "Enlever"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Annuler"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -501,10 +823,6 @@ msgstr "Définir un mot de passe pour déverrouiller l’écran"
msgid "Password"
msgstr "Mot de passe"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Confirmer"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Cette version de Tails a des problèmes de sécurité connus :"
diff --git a/po/fr_CA.po b/po/fr_CA.po
index 8f1681a..b21dbae 100644
--- a/po/fr_CA.po
+++ b/po/fr_CA.po
@@ -16,7 +16,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2017-12-18 19:19+0000\n"
"Last-Translator: French language coordinator <french.coordinator@rbox.me>\n"
"Language-Team: French (Canada) (http://www.transifex.com/otf/torproject/"
@@ -125,6 +125,326 @@ msgstr "_Lancer"
msgid "_Exit"
msgstr "_Quitter"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Échec lors du redémarrage de Tor."
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Vos logiciels additionnels"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Annuler"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "À propos de Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Vos logiciels additionnels"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Vos logiciels additionnels"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -304,12 +624,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Annuler"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -441,10 +755,6 @@ msgstr ""
msgid "Password"
msgstr ""
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr ""
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Cette version de Tails a des problèmes de sécurité connus :"
diff --git a/po/ga.po b/po/ga.po
index 477f8f6..4218f42 100644
--- a/po/ga.po
+++ b/po/ga.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-04-14 11:50+0000\n"
"Last-Translator: Kevin Scannell <kscanne@gmail.com>\n"
"Language-Team: Irish (http://www.transifex.com/otf/torproject/language/ga/)\n"
@@ -124,6 +124,331 @@ msgstr "_Tosaigh"
msgid "_Exit"
msgstr "_Scoir"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Cruthaigh stóras seasmhach"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Bogearraí Breise"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Cealaigh"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Cuir Leis"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Maidir le Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Deimhnigh"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Cruthaigh Stóras Seasmhach"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Cruthaigh Stóras Seasmhach"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "Bogearraí breise á suiteáil ón stóras seasmhach..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Cruthaigh Stóras Seasmhach"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Bogearraí Breise"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Bogearraí Breise"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -320,12 +645,6 @@ msgstr "Ní shuiteálfar {packages} go huathoibríoch a thuilleadh."
msgid "Remove"
msgstr "Bain"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Cealaigh"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "Bogearraí breise á suiteáil ón stóras seasmhach..."
@@ -464,10 +783,6 @@ msgstr "Socraigh focal faire chun an scáileán a dhíghlasáil."
msgid "Password"
msgstr "Focal faire"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Deimhnigh"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Tá fadhbanna slándála sa leagan seo de Tails:"
diff --git a/po/he.po b/po/he.po
index 38f16ba..b87f621 100644
--- a/po/he.po
+++ b/po/he.po
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-02 16:13+0000\n"
"Last-Translator: ION\n"
"Language-Team: Hebrew (http://www.transifex.com/otf/torproject/language/"
@@ -123,6 +123,333 @@ msgstr "_הפעל"
msgid "_Exit"
msgstr "_צא"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_בטל נעילה"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_צור אחסון מתמיד"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_בטל נעילה"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "תוכנה נוספת"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "בטל"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_הוסף"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "אודות Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "אשר"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "צור אחסון מתמיד"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "צור אחסון מתמיד"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "מתקין את התוכנה הנוספת שלך מאחסון מתמיד..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "צור אחסון מתמיד"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "תוכנה נוספת"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "תוכנה נוספת"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -315,12 +642,6 @@ msgstr "זה יפסיק להתקין את {packages} באופן אוטומטי."
msgid "Remove"
msgstr "הסר"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "בטל"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "מתקין את התוכנה הנוספת שלך מאחסון מתמיד..."
@@ -457,10 +778,6 @@ msgstr "קבע סיסמה לביטול נעילת המסך."
msgid "Password"
msgstr "סיסמה"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "אשר"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "לגרסה זו של Tails יש סוגיות אבטחה ידועות:"
diff --git a/po/hr_HR.po b/po/hr_HR.po
index ed6fbb3..78ee525 100644
--- a/po/hr_HR.po
+++ b/po/hr_HR.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2017-05-26 14:47+0000\n"
"Last-Translator: carolyn <carolyn@anhalt.org>\n"
"Language-Team: Croatian (Croatia) (http://www.transifex.com/otf/torproject/"
@@ -123,6 +123,326 @@ msgstr "_Pokreni"
msgid "_Exit"
msgstr "_Izlaz"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Neuspješno ponovno pokretanje Tora."
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Vaš dodatni softver"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Otkaži"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "O Tailsu"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Vaš dodatni softver"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Vaš dodatni softver"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -302,12 +622,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Otkaži"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr ""
@@ -439,10 +753,6 @@ msgstr ""
msgid "Password"
msgstr ""
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr ""
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Ova verzija Tailsa ima poznate sigurnosne probleme:"
diff --git a/po/id.po b/po/id.po
index 152f38d..00a5e4d 100644
--- a/po/id.po
+++ b/po/id.po
@@ -17,7 +17,7 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2018-07-31 05:48+0000\n"
"Last-Translator: ical\n"
"Language-Team: Indonesian (http://www.transifex.com/otf/torproject/language/"
@@ -128,6 +128,324 @@ msgstr "_Luncurkan"
msgid "_Exit"
msgstr "_Keluar"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+msgid "Unlock"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Gagal memulai ulang Tor."
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+msgid "Unlocking…"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+msgid "Additional Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Batal"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+msgid "Add"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Tentang Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Konfirmasi"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+msgid "Encrypted _Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+msgid "Configure Persistent Storage"
+msgstr ""
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "Perangkat lunak tambahan Anda telah dipasang"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+msgid "Relock Persistent Storage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+msgid "_Additional Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+msgid "Save Additional Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, sh-format
msgid ""
@@ -311,12 +629,6 @@ msgstr ""
msgid "Remove"
msgstr ""
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Batal"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
#, fuzzy
msgid "Installing your additional software from persistent storage..."
@@ -451,10 +763,6 @@ msgstr "Buat kata sandi untuk membuka kunci layar."
msgid "Password"
msgstr "Password "
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Konfirmasi"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Versi Tails ini telah mengetahui isu-isu keamanan:"
diff --git a/po/is.po b/po/is.po
index b6c611e..71a425b 100644
--- a/po/is.po
+++ b/po/is.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-05-23 08:01+0000\n"
"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>\n"
"Language-Team: Icelandic (http://www.transifex.com/otf/torproject/language/"
@@ -126,6 +126,333 @@ msgstr "_Ræsa"
msgid "_Exit"
msgstr "_Hætta"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Aflæsa"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "Út_búa varanlega gagnageymslu"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Aflæsa"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Viðbótarhugbúnaður"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Hætta við"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Bæta við"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Um Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Staðfesta"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:255
+msgid ""
+"MAC address spoofing hides the serial number of your network interface (Wi-"
+"Fi or wired) to the local network. Spoofing MAC addresses is generally safer "
+"as it helps you hide your geographical location. But it might also create "
+"connectivity problems or look suspicious."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:298
+msgid "Spoof all MAC addresses (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:344
+msgid "Don't spoof MAC addresses"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:479
+msgid ""
+"You will configure the Tor bridge and local proxy later on after connecting "
+"to a network."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:531
+msgid "Welcome to Tails!"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:546
+msgctxt ""
+"\"Take a Tour\" would be an assistant to guide the user through the "
+"available settings."
+msgid ""
+"To get guided through Tails' settings, click on <b>Take a Tour</b> above"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:581
+msgid "Language & Region"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:617
+msgid "Default Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:630
+msgid "Save Language & Region Settings"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:691
+msgid "_Language"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:748
+msgid "_Keyboard Layout"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:806
+msgid "_Formats"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:863
+msgid "_Time Zone"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:924
+#, fuzzy
+msgid "Encrypted _Persistent Storage"
+msgstr "Útbúa varanlega gagnageymslu"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:965
+msgid "Show Passphrase"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1037
+#, fuzzy
+msgid "Configure Persistent Storage"
+msgstr "Útbúa varanlega gagnageymslu"
+
+#. The label for this placeholder text is not very big, so keep this string short.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1065
+#, fuzzy
+msgid "Enter your passphrase to unlock the persistent storage"
+msgstr "Set sjálfvirkt upp viðbótarhugbúnað úr varanlegri gagnageymslu..."
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1111
+#, fuzzy
+msgid "Relock Persistent Storage"
+msgstr "Útbúa varanlega gagnageymslu"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1126
+msgid "Your persistent storage is unlocked. Restart Tails to lock it again."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1164
+#, fuzzy
+msgid "_Additional Settings"
+msgstr "Viðbótarhugbúnaður"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1204
+#, fuzzy
+msgid "Save Additional Settings"
+msgstr "Viðbótarhugbúnaður"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1262
+msgid "Add an additional setting"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1317
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1895
+msgid "Network Configuration"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1333
+msgid ""
+"If your Internet connection is censored, filtered, or proxied you can "
+"configure a Tor bridge or a local proxy. To work completely offline, you can "
+"disable all networking."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1375
+msgid "Connect directly to the Tor network (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1421
+msgid "Configure a Tor bridge or local proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1465
+msgid "Disable all networking"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1512
+msgid ""
+"The default settings are safe in most situations. To add a custom setting, "
+"press the \"+\" button below."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1559
+msgid "_Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1573
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1745
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:45
+msgid "Off (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1616
+msgid "_MAC Address Spoofing"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1630
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:43
+msgid "On (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1673
+msgid "_Network Connection"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1731
+msgid "_Windows Camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:48
+msgid "On"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/utils.py:50
+msgid "Off"
+msgstr ""
+
#: config/chroot_local-includes/usr/local/bin/keepassxc:15
#, fuzzy, sh-format
msgid ""
@@ -320,12 +647,6 @@ msgstr "Þetta mun hætta að setja upp {packages} sjálfvirkt."
msgid "Remove"
msgstr "Fjarlægja"
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
-#: config/chroot_local-includes/usr/local/bin/tor-browser:46
-msgid "Cancel"
-msgstr "Hætta við"
-
#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
msgid "Installing your additional software from persistent storage..."
msgstr "Set sjálfvirkt upp viðbótarhugbúnað úr varanlegri gagnageymslu..."
@@ -465,10 +786,6 @@ msgstr "Settu upp lykilorð til að aflæsa skjánum."
msgid "Password"
msgstr "Lykilorð"
-#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
-msgid "Confirm"
-msgstr "Staðfesta"
-
#: config/chroot_local-includes/usr/local/bin/tails-security-check:124
msgid "This version of Tails has known security issues:"
msgstr "Þessi útgáfa Tails er með þekkt öryggisvandamál:"
diff --git a/po/it.po b/po/it.po
index 9f8fc1c..f7b46e4 100644
--- a/po/it.po
+++ b/po/it.po
@@ -31,7 +31,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-08-12 11:57+0200\n"
+"POT-Creation-Date: 2019-08-14 14:11+0200\n"
"PO-Revision-Date: 2019-07-03 10:26+0000\n"
"Last-Translator: Random_R\n"
"Language-Team: Italian (http://www.transifex.com/otf/torproject/language/"
@@ -147,6 +147,333 @@ msgstr "_Avvia"
msgid "_Exit"
msgstr "_Esci"
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:386
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1687
+msgid "Direct (default)"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:392
+msgid "Bridge & Proxy"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:398
+msgid "Offline"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:479
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:529
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1080
+#, fuzzy
+msgid "Unlock"
+msgstr "_Sblocca"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:482
+#, fuzzy
+msgid "Failed to relock persistent storage."
+msgstr "_Crea archiviazione persistente"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:500
+#, fuzzy
+msgid "Unlocking…"
+msgstr "_Sblocca"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:533
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:419
+msgid "Cannot unlock encrypted storage with this passphrase."
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:595
+#, fuzzy
+msgid "Additional Settings"
+msgstr "Software aggiuntivo"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:603
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:367
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:119
+#: config/chroot_local-includes/usr/local/bin/tor-browser:46
+msgid "Cancel"
+msgstr "Annulla"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:609
+#, fuzzy
+msgid "Add"
+msgstr "_Aggiungi"
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:617
+msgid "Back"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:731
+msgid "Shutdown"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/gui.py:736
+#, fuzzy
+msgid "_Start Tails"
+msgstr "Informazioni su Tails"
+
+#. Translators: please do not translate this string (it is read from
+#. Gtk translation)
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/language.py:139
+msgid "default:LTR"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:91
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:124
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:141
+#, python-brace-format
+msgid ""
+"cryptsetup failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:158
+#, python-brace-format
+msgid ""
+"live-persist failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/local/lib/python3/dist-packages/tailsgreeter/persistence.py:172
+#, python-brace-format
+msgid ""
+"umount failed with return code {returncode}:\n"
+"{stdout}\n"
+"{stderr}"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:18
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:56
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1887
+msgid "Administration Password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:34
+msgid ""
+"Set up an administration password if you need to perform administrative "
+"tasks. Otherwise, the administration password is disabled for better "
+"security."
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:69
+msgid "Enter an administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:95
+#: config/chroot_local-includes/usr/local/bin/tails-screen-locker:150
+msgid "Confirm"
+msgstr "Conferma"
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:109
+msgid "Confirm your administration password"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:129
+msgid "Disable"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:160
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1899
+msgid "Windows Camouflage"
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:176
+msgid ""
+"This option makes Tails look like Microsoft Windows 10. This can be useful "
+"to avoid attracting suspicion in public places."
+msgstr ""
+
+#. This string will never be displayed in the 1st version of the greeter.
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:198
+msgid "Microsoft Windows 10 camouflage"
+msgstr ""
+
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:239
+#: config/chroot_local-includes/usr/share/tails-greeter/greeter.ui:1891
+msgid "MAC Address Spoofing"
+msgstr ""
+