Commit 437b7529 authored by anonym's avatar anonym
Browse files

Merge remote-tracking branch 'origin/master' into feature/buster

parents 4e542f6c d95f20bb
......@@ -5,7 +5,6 @@ debootstrap/*
root/.gnupg/S.gpg-agent*
tmp/*
usr/share/doc/tails/website/blueprint/*
usr/share/doc/tails/website/contribute/how/translate/translation_progress.html
usr/share/doc/tails/website/promote/slides/*
usr/share/doc/tails/website/torrents/rss.html
usr/share/icons/*/.icon-theme.cache
......
......@@ -135,9 +135,9 @@ allow_symlinks_before_srcdir: 1
# unix users whose commits should be checked by the pre-receive hook
#untrusted_committers: []
# gitweb url to show file history ([[file]] substituted)
historyurl: 'https://git-tails.immerda.ch/tails/log/wiki/src/[[file]]'
historyurl: 'https://salsa.debian.org/tails-team/tails/commits/master/wiki/src/[[file]]'
# gitweb url to show a diff ([[file]], [[sha1_to]], [[sha1_from]], [[sha1_commit]], and [[sha1_parent]] substituted)
diffurl: 'https://git-tails.immerda.ch/tails/commit/wiki/src/[[file]]?id=[[sha1_commit]]'
diffurl: 'https://salsa.debian.org/tails-team/tails/commit/[[sha1_commit]]'
# where to pull and push changes (set to empty string to disable)
gitorigin_branch: ''
# branch that the wiki is stored in
......@@ -145,7 +145,7 @@ gitmaster_branch: master
# htmlscrubber plugin
# PageSpec specifying pages not to scrub
htmlscrubber_skip: 'about/contact or about/contact.* or contribute/how/translate or donate or donate.* or donate/* or download or download.* or home or home.* or home/testing or home/testing.* or index or index.* or install or install.* or install/* or upgrade or upgrade.* or upgrade/* or contribute/personas or contribute/personas/*'
htmlscrubber_skip: '!blueprint/*'
# inline plugin
# enable rss feeds by default?
......@@ -238,7 +238,7 @@ po_slave_languages:
#
# When updating this list, refer to the checklist in
# https://tails.boum.org/contribute/how/website/po_translatable_pages/
po_translatable_pages: '!security/audits and !security/audits/* and !news/report_2* and !news/version_0* and !news/version_1* and !news/version_2* and !news/test_* and !security/Numerous_security_holes_in_* and (about or about/* or bugs or chat or contribute or doc or doc/* or donate or donate/* or download or download.inline or getting_started or home or home/* or index or news or news/* or partners or press or security or security/* or sidebar or support or support/* or torrents or install or install/* or upgrade or upgrade/* or misc/*)'
po_translatable_pages: '!security/audits and !security/audits/* and !news/report_2* and !news/version_0* and !news/version_1* and !news/version_2* and !news/test_* and !security/Numerous_security_holes_in_* and (about or about/* or bugs or chat or contribute or doc or doc/* or donate or donate/* or download or download.inline or getting_started or home or home/* or index or news or news/* or partners or press or sandbox or security or security/* or sidebar or support or support/* or torrents or install or install/* or upgrade or upgrade/* or misc/*)'
# internal linking behavior (default/current/negotiated)
po_link_to: current
......
......@@ -122,7 +122,7 @@ allow_symlinks_before_srcdir: 1
# htmlscrubber plugin
# PageSpec specifying pages not to scrub
htmlscrubber_skip: 'about/contact or about/contact.* or contribute/how/translate or donate or donate.* or donate/* or download or download.* or home or home.* or home/testing or home/testing.* or index or index.* or install or install.* or install/* or upgrade or upgrade.* or upgrade/* or contribute/personas or contribute/personas/*'
htmlscrubber_skip: '!blueprint/*'
# inline plugin
# enable rss feeds by default?
......@@ -215,7 +215,7 @@ po_slave_languages:
#
# When updating this list, refer to the checklist in
# https://tails.boum.org/contribute/how/website/po_translatable_pages/
po_translatable_pages: '!security/audits and !security/audits/* and !news/report_2* and !news/version_0* and !news/version_1* and !news/version_2* and !news/test_* and !security/Numerous_security_holes_in_* and (about or about/* or bugs or chat or contribute or doc or doc/* or donate or donate/* or download or download.inline or getting_started or home or home/* or index or news or news/* or partners or press or security or security/* or sidebar or support or support/* or torrents or install or install/* or upgrade or upgrade/* or misc/*)'
po_translatable_pages: '!security/audits and !security/audits/* and !news/report_2* and !news/version_0* and !news/version_1* and !news/version_2* and !news/test_* and !security/Numerous_security_holes_in_* and (about or about/* or bugs or chat or contribute or doc or doc/* or donate or donate/* or download or download.inline or getting_started or home or home/* or index or news or news/* or partners or press or sandbox or security or security/* or sidebar or support or support/* or torrents or install or install/* or upgrade or upgrade/* or misc/*)'
# internal linking behavior (default/current/negotiated)
po_link_to: current
......
......@@ -5,9 +5,10 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: tails-l10n@boum.org\n"
"POT-Creation-Date: 2019-06-21 12:40+0000\n"
"PO-Revision-Date: 2018-12-23 20:09+0100\n"
"Last-Translator: victorhck <victorhck@opensuse.org>\n"
"PO-Revision-Date: 2019-07-29 01:04+0000\n"
"Last-Translator: emmapeel <emma.peel@riseup.net>\n"
"Language-Team: Spanish <http://translate.tails.boum.org/projects/tails/"
"contact/es/>\n"
"Language: es\n"
......@@ -15,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 2.10.1\n"
"X-Generator: Weblate 2.20\n"
#. type: Plain text
#, no-wrap
......@@ -39,8 +40,7 @@ msgid "[[!toc levels=2]]\n"
msgstr "[[!toc levels=2]]\n"
#. type: Title =
#, fuzzy, no-wrap
#| msgid "Public mailing lists\n"
#, no-wrap
msgid "Public mailing lists\n"
msgstr "Listas de correo públicas\n"
......@@ -71,8 +71,7 @@ msgid "<a id=\"amnesia-news\"></a>\n"
msgstr "<a id=\"amnesia-news\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "amnesia-news\n"
#, no-wrap
msgid "amnesia-news\n"
msgstr "amnesia-news\n"
......@@ -87,12 +86,7 @@ msgstr ""
"mantenerse al día con los lanzamientos y anuncios de seguridad."
#. type: Plain text
#, fuzzy, no-wrap
#| msgid ""
#| "<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/amnesia-news\">\n"
#| "\t<input class=\"text\" name=\"email\" value=\"\"/>\n"
#| "\t<input class=\"button\" type=\"submit\" value=\"Subscribe\"/>\n"
#| "</form>\n"
#, no-wrap
msgid ""
"<p>\n"
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/amnesia-news\">\n"
......@@ -101,10 +95,13 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/amnesia-news\">\n"
"<p>\n"
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/"
"amnesia-news\">\n"
"\t<input class=\"text\" name=\"email\" value=\"\"/>\n"
"\t<input class=\"button\" type=\"submit\" value=\"Suscribirse\"/>\n"
"</form>\n"
"</p>\n"
#. type: Plain text
msgid ""
......@@ -126,6 +123,18 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<p>\n"
"<form action=\"https://lists.autistici.org/cgi-lurker/keyword.cgi\" accept-"
"charset=\"UTF-8\">\n"
" <input type=\"hidden\" name=\"doc-url\" value=\"https://lists.autistici."
"org\">\n"
"\t<input type=\"hidden\" name=\"format\" value=\"en.html\">\n"
"\t<input type=\"text\" name=\"query\" value=\"\" class=\"longtext\" "
"placeholder=\"ml:amnesia-news search terms\" onclick=\"value='ml:amnesia-"
"news '\">\n"
"\t<input type=\"submit\" name=\"submit\" value=\"Busca en el archivo\">\n"
"</form>\n"
"</p>\n"
#. type: Plain text
#, no-wrap
......@@ -133,8 +142,7 @@ msgid "<a id=\"tails-project\"></a>\n"
msgstr "<a id=\"tails-project\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-project\n"
#, no-wrap
msgid "tails-project\n"
msgstr "tails-project\n"
......@@ -147,12 +155,7 @@ msgstr ""
"eventos, reportes mensuales, y otras cuestiones no-técnicas."
#. type: Plain text
#, fuzzy, no-wrap
#| msgid ""
#| "<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/tails-project\">\n"
#| "\t<input class=\"text\" name=\"email\" value=\"\"/>\n"
#| "\t<input class=\"button\" type=\"submit\" value=\"Subscribe\"/>\n"
#| "</form>\n"
#, no-wrap
msgid ""
"<p>\n"
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/tails-project\">\n"
......@@ -161,10 +164,13 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/tails-project\">\n"
"<p>\n"
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/"
"tails-project\">\n"
"\t<input class=\"text\" name=\"email\" value=\"\"/>\n"
"\t<input class=\"button\" type=\"submit\" value=\"Suscribirse\"/>\n"
"</form>\n"
"</p>\n"
#. type: Plain text
msgid ""
......@@ -186,6 +192,18 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<p>\n"
"<form action=\"https://lists.autistici.org/cgi-lurker/keyword.cgi\" accept-"
"charset=\"UTF-8\">\n"
" <input type=\"hidden\" name=\"doc-url\" value=\"https://lists.autistici."
"org\">\n"
"\t<input type=\"hidden\" name=\"format\" value=\"en.html\">\n"
"\t<input type=\"text\" name=\"query\" value=\"\" class=\"longtext\" "
"placeholder=\"ml:tails-project search terms\" onclick=\"value='ml:tails-"
"project '\">\n"
"\t<input type=\"submit\" name=\"submit\" value=\"Busca en el archivo\">\n"
"</form>\n"
"</p>\n"
#. type: Plain text
#, no-wrap
......@@ -193,8 +211,7 @@ msgid "<a id=\"tails-dev\"></a>\n"
msgstr "<a id=\"tails-dev\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-dev\n"
#, no-wrap
msgid "tails-dev\n"
msgstr "tails-dev\n"
......@@ -223,10 +240,13 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/tails-dev\">\n"
"<p>\n"
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/"
"tails-dev\">\n"
"\t<input class=\"text\" name=\"email\" value=\"\"/>\n"
"\t<input class=\"button\" type=\"submit\" value=\"Suscribirse\"/>\n"
"</form>\n"
"</p>\n"
#. type: Plain text
msgid ""
......@@ -248,6 +268,18 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<p>\n"
"<form action=\"https://lists.autistici.org/cgi-lurker/keyword.cgi\" accept-"
"charset=\"UTF-8\">\n"
" <input type=\"hidden\" name=\"doc-url\" value=\"https://lists.autistici."
"org\">\n"
"\t<input type=\"hidden\" name=\"format\" value=\"en.html\">\n"
"\t<input type=\"text\" name=\"query\" value=\"\" class=\"longtext\" "
"placeholder=\"ml:tails-dev search terms\" onclick=\"value='ml:tails-dev '\">"
"\n"
"\t<input type=\"submit\" name=\"submit\" value=\"Busca en el archivo\">\n"
"</form>\n"
"</p>\n"
#. type: Plain text
#, no-wrap
......@@ -255,8 +287,7 @@ msgid "<a id=\"tails-testers\"></a>\n"
msgstr "<a id=\"tails-testers\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-testers\n"
#, no-wrap
msgid "tails-testers\n"
msgstr "tails-testers\n"
......@@ -283,10 +314,13 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/tails-testers\">\n"
"<p>\n"
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/"
"tails-testers\">\n"
"\t<input class=\"text\" name=\"email\" value=\"\"/>\n"
"\t<input class=\"button\" type=\"submit\" value=\"Suscribirse\"/>\n"
"</form>\n"
"</p>\n"
#. type: Plain text
msgid ""
......@@ -308,6 +342,18 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<p>\n"
"<form action=\"https://lists.autistici.org/cgi-lurker/keyword.cgi\" accept-"
"charset=\"UTF-8\">\n"
" <input type=\"hidden\" name=\"doc-url\" value=\"https://lists.autistici."
"org\">\n"
"\t<input type=\"hidden\" name=\"format\" value=\"en.html\">\n"
"\t<input type=\"text\" name=\"query\" value=\"\" class=\"longtext\" "
"placeholder=\"ml:tails-testers search terms\" onclick=\"value='ml:tails-"
"testers '\">\n"
"\t<input type=\"submit\" name=\"submit\" value=\"Busca en el archivo\">\n"
"</form>\n"
"</p>\n"
#. type: Plain text
#, no-wrap
......@@ -315,8 +361,7 @@ msgid "<a id=\"tails-ux\"></a>\n"
msgstr "<a id=\"tails-ux\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-ux\n"
#, no-wrap
msgid "tails-ux\n"
msgstr "tails-ux\n"
......@@ -344,10 +389,13 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/tails-ux\">\n"
"<p>\n"
"<form method=\"POST\" action=\"https://www.autistici.org/mailman/subscribe/"
"tails-ux\">\n"
"\t<input class=\"text\" name=\"email\" value=\"\"/>\n"
"\t<input class=\"button\" type=\"submit\" value=\"Suscribirse\"/>\n"
"</form>\n"
"</p>\n"
#. type: Plain text
msgid ""
......@@ -368,6 +416,17 @@ msgid ""
"</form>\n"
"</p>\n"
msgstr ""
"<p>\n"
"<form action=\"https://lists.autistici.org/cgi-lurker/keyword.cgi\" accept-"
"charset=\"UTF-8\">\n"
" <input type=\"hidden\" name=\"doc-url\" value=\"https://lists.autistici."
"org\">\n"
"\t<input type=\"hidden\" name=\"format\" value=\"en.html\">\n"
"\t<input type=\"text\" name=\"query\" value=\"\" class=\"longtext\" "
"placeholder=\"ml:tails-ux search terms\" onclick=\"value='ml:tails-ux '\">\n"
"\t<input type=\"submit\" name=\"submit\" value=\"Busca en el archivo\">\n"
"</form>\n"
"</p>\n"
#. type: Plain text
#, no-wrap
......@@ -375,8 +434,7 @@ msgid "<a id=\"tails-l10n\"></a>\n"
msgstr "<a id=\"tails-l10n\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-l10n\n"
#, no-wrap
msgid "tails-l10n\n"
msgstr "tails-l10n\n"
......@@ -386,8 +444,7 @@ msgid "[[!inline pages=\"contribute/how/translate/tails-l10n.inline\" raw=\"yes\
msgstr "[[!inline pages=\"contribute/how/translate/tails-l10n.inline.es\" raw=\"yes\" sort=\"age\"]]\n"
#. type: Title =
#, fuzzy, no-wrap
#| msgid "Private email addresses\n"
#, no-wrap
msgid "Private email addresses\n"
msgstr "Direcciones de correo privadas\n"
......@@ -397,8 +454,7 @@ msgid "<a id=\"tails-support-private\"></a>\n"
msgstr "<a id=\"tails-support-private\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-support-private\n"
#, no-wrap
msgid "tails-support-private\n"
msgstr "tails-support-private\n"
......@@ -429,8 +485,7 @@ msgid "<a id=\"tails-press\"></a>\n"
msgstr "<a id=\"tails-press\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-press\n"
#, no-wrap
msgid "tails-press\n"
msgstr "tails-press\n"
......@@ -480,16 +535,15 @@ msgstr ""
"openpgp_keys#accounting]])."
#. type: Plain text
#, fuzzy, no-wrap
#| msgid "<a id=\"tails-accounting\"></a>\n"
#, no-wrap
msgid "<a id=\"tails-foundations\"></a>\n"
msgstr "<a id=\"tails-accounting\"></a>\n"
msgstr "<a id=\"tails-foundations\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-sysadmins\n"
msgid "tails-foundations\n"
msgstr "tails-sysadmins\n"
msgstr "tails-foundations\n"
#. type: Plain text
#, no-wrap
......@@ -500,16 +554,12 @@ msgid ""
msgstr ""
#. type: Plain text
#, fuzzy
#| msgid ""
#| "[[OpenPGP key|tails-accounting.key]] ([[details|doc/about/"
#| "openpgp_keys#accounting]])."
msgid ""
"[[OpenPGP key|tails-foundations.key]] ([[details|doc/about/"
"openpgp_keys#foundations]])."
msgstr ""
"[[OpenPGP key|tails-accounting.key]] ([[details|doc/about/"
"openpgp_keys#accounting]])."
"[[Llave OpenPGP|tails-foundations.key]] ([[details|doc/about/"
"openpgp_keys#foundations]])."
#. type: Plain text
#, no-wrap
......@@ -544,8 +594,7 @@ msgid "<a id=\"tails-sysadmins\"></a>\n"
msgstr "<a id=\"tails-sysadmins\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails-sysadmins\n"
#, no-wrap
msgid "tails-sysadmins\n"
msgstr "tails-sysadmins\n"
......@@ -572,8 +621,7 @@ msgid "<a id=\"tails\"></a>\n"
msgstr "<a id=\"tails\"></a>\n"
#. type: Title -
#, fuzzy, no-wrap
#| msgid "tails\n"
#, no-wrap
msgid "tails\n"
msgstr "tails\n"
......@@ -598,8 +646,7 @@ msgid "<a id=\"chat\"></a>\n"
msgstr "<a id=\"chat\"></a>\n"
#. type: Title =
#, fuzzy, no-wrap
#| msgid "Chat rooms\n"
#, no-wrap
msgid "Chat rooms\n"
msgstr "Chat rooms\n"
......@@ -616,10 +663,9 @@ msgstr ""
"comunidad."
#. type: Plain text
#, fuzzy, no-wrap
#| msgid "<a id=\"tails\"></a>\n"
#, no-wrap
msgid "<a id=\"legal\"></a>\n"
msgstr "<a id=\"tails\"></a>\n"
msgstr "<a id=\"legal\"></a>\n"
#. type: Title =
#, fuzzy, no-wrap
......@@ -627,9 +673,7 @@ msgstr "<a id=\"tails\"></a>\n"
#| "tails-accounting\n"
#| "-----------------\n"
msgid "Legal representative\n"
msgstr ""
"tails-accounting\n"
"-----------------\n"
msgstr "Representante legal\n"
#. type: Plain text
#, no-wrap
......
......@@ -3,18 +3,20 @@
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: tails-l10n@boum.org\n"
"POT-Creation-Date: 2019-06-21 12:40+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"PO-Revision-Date: 2019-07-29 18:40+0000\n"
"Last-Translator: emmapeel <emma.peel@riseup.net>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"Language: fa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 2.20\n"
#. type: Plain text
#, no-wrap
......@@ -56,7 +58,7 @@ msgstr ""
#. type: Plain text
#, no-wrap
msgid "</div>\n"
msgstr ""
msgstr "</div>\n"
#. type: Plain text
#, no-wrap
......
......@@ -240,6 +240,11 @@ want to migrate our blueprints to GitLab's
[wiki](https://docs.gitlab.com/ce/user/project/wiki/):
[[!tails_ticket 9174]]).
# Other specification
* guest accounts?
# Importing data from Redmine
## Specification
......
# Introduction
This is an on-going feasibility on how to port the Tails Installer to the macOS operating system.
## Considerations
This feasibility study was done on a OS X El Capitan system on an early 2011 Macbook. Stock Python2.7 was used.
## Porting
liveusb-creator from Fedora(upstream) only works out of the box for Windows and Linux but no efforts were brought in to support OS X. This is an action point.
## Packaging
This section dives into packaging it all together.
### GTK bundling
* [GTK Mac Bundler ](https://github.com/twstrike/gtk-mac-bundler)
* [Micah Lee's attempt at GTK and Onionshare (he switched to QT)](https://github.com/micahflee/onionshare/issues/43)
* https://github.com/micahflee/onionshare/issues/452#issuecomment-329333075
### Codesigning
We could either:
- Get our software signed and be in the Mac App Store.
- Ask people to download from our website and install doing Ctrl+Click as [instructed for *Tor Browser*|https://www.torproject.org/projects/torbrowser.html.en].
* [Apple's Security Overview](https://developer.apple.com/library/mac/documentation/Security/Conceptual/Security_Overview/Introduction/Introduction.html#//apple_ref/doc/uid/TP30000976)
* [Apple's Code Signing introduction](https://developer.apple.com/library/mac/documentation/Security/Conceptual/CodeSigningGuide/Introduction/Introduction.html)
* [Example of code signing in Onionshare](https://github.com/micahflee/onionshare/search?utf8=%E2%9C%93&q=codesign&type=Code)
# Conclusion
-
[[!toc levels=1]]
# Linux dependencies
The current Tails Installer version (<https://git-tails.immerda.ch/liveusb-creator/>)
has considerable changes when compared with the upstream Fedora liveusb-creator
(<https://git.fedorahosted.org/cgit/liveusb-creator.git>).
The current package dependencies for the Tails Installer in Linux are:
* dosfstools
* gdisk
* genisoimage
* gir1.2-glib-2.0
* gir1.2-gtk-3.0
* gir1.2-udisks-2.0
* mtools
* p7zip-full
* policykit-1
* python-configobj
* python-gi
* python-urlgrabber
* syslinux
If we list the set of requirements for each important source file then we have:
### \_\_init\_\_.py
import gettext
if sys.platform == 'win32':
import gettext_windows
gettext_windows.setup_env()
### creator.py
if 'linux' in sys.platform:
import gi
gi.require_version('UDisks', '2.0')
from gi.repository import UDisks, GLib
Commands:
* syslinux
* sgdisk
* dd
* dosfslabel
* e2label
* extlinux
* pkexec
* mkdiskimage
* sync
### gui.py
from gi.repository import Gdk, GLib, Gtk
urlgrabber
In general GTK3
### launcher.py
from gi.repository import Gtk
### utils.py
if 'linux' in sys.platform:
from gi.repository import GLib
# Alternatives for Windows:
The Windows specific code for the Tails Installer uses mostly
the Python win32 interfaces:
import win32file, win32api, pywintypes
and a set of third parties tools listed here:
<https://git-tails.immerda.ch/liveusb-creator/tree/tools>
There are other tools that would be possible to explore like
[[!tails_ticket 10984]].
# Analysis regarding operations on storage devices
According to <https://tails.boum.org/contribute/design/installation/>,
the steps to create a Tails bootable device are:
1. Partition the device as a GPT partition.
2. Create a FAT32 (VFAT) partition with the Tails files and Tails label.
3. (Optionally, not supported yet) Create a persistence partition with LUKS.
Next we analyze the code related to above steps. First we list
the current Linux specific operations carried out in the
target installation device and then we list the current and
proposed Windows alternatives.