summaryrefslogtreecommitdiffstats
path: root/debian
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--debian/changelog48
-rw-r--r--debian/control26
-rw-r--r--debian/copyright30
-rwxr-xr-xdebian/cryptsetup-nuke-password.config47
-rw-r--r--debian/cryptsetup-nuke-password.dirs1
-rw-r--r--debian/cryptsetup-nuke-password.docs1
-rw-r--r--debian/cryptsetup-nuke-password.postinst87
-rw-r--r--debian/cryptsetup-nuke-password.postrm13
-rw-r--r--debian/cryptsetup-nuke-password.preinst11
-rw-r--r--debian/cryptsetup-nuke-password.templates41
-rw-r--r--debian/gbp.conf10
-rw-r--r--debian/po/POTFILES.in2
-rw-r--r--debian/po/de.po140
-rw-r--r--debian/po/es.po135
-rw-r--r--debian/po/fr.po133
-rw-r--r--debian/po/it.po134
-rw-r--r--debian/po/nl.po139
-rw-r--r--debian/po/pt.po137
-rw-r--r--debian/po/pt_BR.po138
-rw-r--r--debian/po/templates.pot115
-rwxr-xr-xdebian/rules6
-rw-r--r--debian/salsa-ci.yml4
-rw-r--r--debian/source/format1
-rwxr-xr-xdebian/tests/askpass.sh72
-rw-r--r--debian/tests/control7
-rwxr-xr-xdebian/tests/testsuite.sh9
26 files changed, 1487 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..2b1d993
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,48 @@
+cryptsetup-nuke-password (4+nmu1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Update po file into Brazilian Portuguese translation. (Closes: #1026408)
+ * Update po file into Italian translation. (Closes: #1017486)
+ * Update po file into Portuguese translation. (Closes: #1028253)
+ * debian/control
+ + Bump Standards-Version 4.6.2
+
+ -- Paulo Henrique de Lima Santana (phls) <phls@debian.org> Mon, 19 Jun 2023 23:00:28 -0300
+
+cryptsetup-nuke-password (4) unstable; urgency=medium
+
+ * d/tests/control: Change restriction for askpass autopkgtest from
+ `isolation-container` to `isolation-machine`. The test needs to load
+ kernel modules (dm_crypt). (Closes: #1007237)
+ * d/control: Bump standards-version to 4.6.1, no changes required.
+ * d/po/de.po: Add german translation, thanks to Hermann-Josef Beckers.
+ (Closes: #1007933)
+ * d/po/es.po: Add spanish translation, thanks to Camaleón.
+ (Closes: #1008527)
+ * d/po/nl.po: Add dutch translation, thanks Frans Spiesschaert.
+ (Closes: #1010035)
+
+ -- Jonas Meurer <jonas@freesources.org> Sat, 16 Jul 2022 22:00:36 +0100
+
+cryptsetup-nuke-password (3) unstable; urgency=medium
+
+ * Initial upload to Debian. (Closes: #1004555)
+ * Makefile: Change `LDFLAGS` to `LDLIBS`. Ffixes compilation of crypt.c.
+ * crypt.c: Fix detection of invalid hashs.
+ * d/control:
+ * Bump debhelper compat version to 13.
+ * Bump standards-version to 4.6.0, no changes required.
+
+ -- Jonas Meurer <jonas@freesources.org> Sun, 30 Jan 2022 17:16:45 +0100
+
+cryptsetup-nuke-password (2) kali-dev; urgency=medium
+
+ * Allow preseeding and non-interactive configuration of the nuke password.
+
+ -- Raphaël Hertzog <raphael@offensive-security.com> Fri, 05 Jul 2019 15:22:51 +0200
+
+cryptsetup-nuke-password (1) kali-experimental; urgency=medium
+
+ * Initial Release.
+
+ -- Raphaël Hertzog <raphael@offensive-security.com> Fri, 07 Jun 2019 16:14:37 +0200
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..389a454
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,26 @@
+Source: cryptsetup-nuke-password
+Section: admin
+Priority: optional
+Maintainer: Debian Security Tools <team+pkg-security@tracker.debian.org>
+Uploaders: Raphaël Hertzog <raphael@offensive-security.com>, Jonas Meurer <jonas@freesources.org>
+Build-Depends: debhelper-compat (= 13), shunit2, po-debconf
+Standards-Version: 4.6.2
+Homepage: https://salsa.debian.org/pkg-security-team/cryptsetup-nuke-password
+Vcs-Browser: https://salsa.debian.org/pkg-security-team/cryptsetup-nuke-password
+Vcs-Git: https://salsa.debian.org/pkg-security-team/cryptsetup-nuke-password.git
+
+Package: cryptsetup-nuke-password
+Architecture: any
+Depends: cryptsetup-bin, ${shlibs:Depends}, ${misc:Depends}
+Enhances: cryptsetup-initramfs
+Description: Erase the LUKS keys with a special password on the unlock prompt
+ Installing this package lets you configure a special "nuke password" that
+ can be used to destroy the encryption keys required to unlock the encrypted
+ partitions. This password can be entered in the usual early-boot prompt
+ asking the passphrase to unlock the encrypted partition(s).
+ .
+ This provides a relatively stealth way to make your data unreadable in
+ case you fear that your computer is going to be seized.
+ .
+ After installation, use “dpkg-reconfigure cryptsetup-nuke-password” to
+ configure your nuke password.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..c16a3f7
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,30 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: cryptsetup-nuke-password
+Source: https://salsa.debian.org/pkg-security-team/cryptsetup-nuke-password
+
+Files: *
+Copyright: 2019 Offensive Security
+License: GPL-3.0+
+
+Files: debian/*
+Copyright: 2019 Offensive Security
+ 2022 Jonas Meurer <jonas@freesources.org>
+ 2023 Paulo Henrique de Lina Santana <phls@debian.org>
+License: GPL-3.0+
+
+License: GPL-3.0+
+ 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 package 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 <https://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the complete text of the GNU General
+ Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
diff --git a/debian/cryptsetup-nuke-password.config b/debian/cryptsetup-nuke-password.config
new file mode 100755
index 0000000..b082e77
--- /dev/null
+++ b/debian/cryptsetup-nuke-password.config
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+set -e
+
+. /usr/share/debconf/confmodule || exit 0
+
+if [ -s /etc/cryptsetup-nuke-password/password_hash ]; then
+ # What should we do if it's already
+ db_input low cryptsetup-nuke-password/already-configured || true
+ db_go
+fi
+
+# Default value is to overwrite so it's fine to use it even
+# if the question has not been asked.
+db_get cryptsetup-nuke-password/already-configured
+what="$RET"
+
+case "$what" in
+ keep|remove)
+ # No further questions need to be asked
+ exit 0
+ ;;
+esac
+
+while true; do
+ db_input low cryptsetup-nuke-password/password || true
+ db_input low cryptsetup-nuke-password/password-again || true
+ db_go
+
+ db_get cryptsetup-nuke-password/password || true
+ NUKE_PASS="$RET"
+ db_get cryptsetup-nuke-password/password-again || true
+ NUKE_PASS_CONFIRMATION="$RET"
+
+ if [ "$NUKE_PASS" = "$NUKE_PASS_CONFIRMATION" ]; then
+ break
+ fi
+
+ db_fset cryptsetup-nuke-password/password-mismatch seen false
+ db_fset cryptsetup-nuke-password/password seen false
+ db_fset cryptsetup-nuke-password/password-again seen false
+ db_set cryptsetup-nuke-password/password ''
+ db_set cryptsetup-nuke-password/password-again ''
+
+ db_input critical cryptsetup-nuke-password/password-mismatch || true
+ db_go
+done
diff --git a/debian/cryptsetup-nuke-password.dirs b/debian/cryptsetup-nuke-password.dirs
new file mode 100644
index 0000000..0db871b
--- /dev/null
+++ b/debian/cryptsetup-nuke-password.dirs
@@ -0,0 +1 @@
+etc/cryptsetup-nuke-password
diff --git a/debian/cryptsetup-nuke-password.docs b/debian/cryptsetup-nuke-password.docs
new file mode 100644
index 0000000..b43bf86
--- /dev/null
+++ b/debian/cryptsetup-nuke-password.docs
@@ -0,0 +1 @@
+README.md
diff --git a/debian/cryptsetup-nuke-password.postinst b/debian/cryptsetup-nuke-password.postinst
new file mode 100644
index 0000000..cc083bc
--- /dev/null
+++ b/debian/cryptsetup-nuke-password.postinst
@@ -0,0 +1,87 @@
+#!/bin/sh
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+password_hash_path="/etc/cryptsetup-nuke-password/password_hash"
+
+get_nuke_password() {
+ db_get cryptsetup-nuke-password/password || true
+ local NUKE_PASS="$RET"
+ db_get cryptsetup-nuke-password/password-again || true
+ local NUKE_PASS_CONFIRMATION="$RET"
+
+ if [ "$NUKE_PASS" != "$NUKE_PASS_CONFIRMATION" ]; then
+ return
+ fi
+
+ echo -n "$NUKE_PASS"
+}
+
+log() {
+ if [ -n "$DEBCONF_RECONFIGURE" ]; then
+ echo "$1"
+ fi
+}
+
+store_password_hash() {
+ local password=$(get_nuke_password)
+
+ if [ -z "$password" ]; then
+ if [ -e "$password_hash_path" ]; then
+ log "INFO: Keeping current nuke password."
+ else
+ log "INFO: No nuke password found in debconf's database, nothing to configure."
+ log "INFO: Try 'dpkg-reconfigure cryptsetup-nuke-password' to set a nuke password."
+ fi
+ return
+ fi
+
+ echo "INFO: Storing the nuke password's crypted hash in $password_hash_path"
+ mkdir -p $(dirname $password_hash_path)
+ :> $password_hash_path
+ chmod 600 $password_hash_path
+ echo "$password" | /usr/lib/cryptsetup-nuke-password/crypt --generate >$password_hash_path
+
+ # Drop the password from the debconf database for extra safety
+ db_reset cryptsetup-nuke-password/password || true
+ db_reset cryptsetup-nuke-password/password-again || true
+}
+
+configure_nuke_password() {
+ db_get cryptsetup-nuke-password/already-configured || true
+ what="$RET"
+
+ case "$what" in
+ keep)
+ # Nothing to do, move on
+ if [ -e "$password_hash_path" ]; then
+ log "INFO: Keeping current nuke password."
+ fi
+ ;;
+ remove)
+ if [ -e "$password_hash_path" ]; then
+ echo "INFO: Removing current nuke password."
+ rm -f "$password_hash_path"
+ fi
+ ;;
+ overwrite)
+ store_password_hash
+ ;;
+ *)
+ echo "WARNING: unexpected value in debconf's cryptsetup-nuke-password/already-configured: '$what'" >&2
+ ;;
+ esac
+
+ # Reset to default value for next time we reconfigure
+ db_reset cryptsetup-nuke-password/already-configured || true
+}
+
+case "$1" in
+ configure)
+ configure_nuke_password
+ ;;
+esac
+
+#DEBHELPER#
diff --git a/debian/cryptsetup-nuke-password.postrm b/debian/cryptsetup-nuke-password.postrm
new file mode 100644
index 0000000..f6d4956
--- /dev/null
+++ b/debian/cryptsetup-nuke-password.postrm
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "remove" ]; then
+ dpkg-divert --rename --package cryptsetup-nuke-password \
+ --divert /lib/cryptsetup/askpass.cryptsetup \
+ --remove /lib/cryptsetup/askpass
+elif [ "$1" = "purge" ]; then
+ rm -rf /etc/cryptsetup-nuke-password
+fi
+
+#DEBHELPER#
diff --git a/debian/cryptsetup-nuke-password.preinst b/debian/cryptsetup-nuke-password.preinst
new file mode 100644
index 0000000..7836282
--- /dev/null
+++ b/debian/cryptsetup-nuke-password.preinst
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "install" ]; then
+ dpkg-divert --rename --package cryptsetup-nuke-password \
+ --divert /lib/cryptsetup/askpass.cryptsetup \
+ --add /lib/cryptsetup/askpass
+fi
+
+#DEBHELPER#
diff --git a/debian/cryptsetup-nuke-password.templates b/debian/cryptsetup-nuke-password.templates
new file mode 100644
index 0000000..39d2cd2
--- /dev/null
+++ b/debian/cryptsetup-nuke-password.templates
@@ -0,0 +1,41 @@
+Template: cryptsetup-nuke-password/password
+Type: password
+_Description: Nuke password:
+ If you setup a “nuke password”, you will be able to type this password
+ at the early-boot prompt asking your passphrase to unlock your
+ luks-encrypted partitions. Instead of decrypting the partitions, typing
+ this password will instead wipe the encryption keys from the luks
+ container so that it is no longer possible to unlock the encrypted
+ partitions.
+ .
+ This provides a relatively stealth way to make your data unreadable in
+ case you fear that your computer is going to be seized.
+ .
+ If you want to cancel this operation or disable any nuke password already
+ configured, simply enter an empty password. If needed, you will be given
+ the option to pick between both choices.
+
+Template: cryptsetup-nuke-password/password-again
+Type: password
+_Description: Re-enter password to verify:
+ Please enter the same nuke password again to verify that you have typed it
+ correctly.
+
+Template: cryptsetup-nuke-password/password-mismatch
+Type: error
+_Description: Password input error
+ The two passwords you entered were not the same. Please try again.
+
+Template: cryptsetup-nuke-password/already-configured
+Type: select
+Default: overwrite
+Choices-C: keep, overwrite, remove
+__Choices: Keep the current password, Overwrite the current password, Remove the current password
+_Description: A nuke password is already configured, what should be done?
+ The existence of /etc/cryptsetup-nuke-password/password_hash suggests
+ that a nuke password is already configured. If you decide to keep the
+ current nuke password, nothing will be done. If you decide to overwrite the
+ current nuke password, you will be asked for a new password and it will
+ replace the currently configured one. If you decide to remove the
+ nuke password, you will not be asked for a new password and the currently
+ configured password will be disabled.
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 0000000..640ecc7
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,10 @@
+[DEFAULT]
+debian-branch = debian/sid
+debian-tag = debian/%(version)s
+pristine-tar = True
+
+[pq]
+patch-numbers = False
+
+[dch]
+multimaint-merge = True
diff --git a/debian/po/POTFILES.in b/debian/po/POTFILES.in
new file mode 100644
index 0000000..4e2324b
--- /dev/null
+++ b/debian/po/POTFILES.in
@@ -0,0 +1,2 @@
+[encoding: UTF-8]
+[type: gettext/rfc822deb] cryptsetup-nuke-password.templates
diff --git a/debian/po/de.po b/debian/po/de.po
new file mode 100644
index 0000000..3877d61
--- /dev/null
+++ b/debian/po/de.po
@@ -0,0 +1,140 @@
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+#
+# Hermann J. Beckers <hj.beckers@onlinehome.de>, 2022.
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: 2022-03-18 18:27+0100\n"
+"Last-Translator: Hermann J. Beckers <hjb-news@onlinehome.de>\n"
+"Language-Team: German <kde-i18n-de@kde.org>\n"
+"Language: de_DE\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Lokalize 20.04.2\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr "Zerstör-Passwort:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+"Wenn Sie ein »Zerstör-Passwort« einrichten, können Sie dieses Passwort"
+" eingeben, wenn Sie an der Eingabeaufforderung der frühen Systemstartphase"
+" nach Ihrem Passwort zum"
+" Entsperren Ihrer LUKS-verschlüsselten Partitionen gefragt werden. Anstatt die"
+" Partitionen zu entschlüsseln, löscht die Eingabe dieses Passwortes die"
+" Verschlüsselungs-Schlüssel aus dem LUKS-Container, so dass es nicht mehr"
+" möglich ist, die verschlüsselten Partitionen zu entsperren."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+"Dies bietet eine relativ verdeckte Methode, um Ihre Daten unlesbar zu machen,"
+" falls Sie befürchten, das Ihr Computer beschlagnahmt wird. "
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+"Wenn Sie die Operation abbrechen oder ein bereits konfiguriertes"
+" Zerstör-Passwort deaktivieren möchten, geben Sie ein leeres Password ein."
+" Wenn"
+" nötig, bekommen Sie die Gelegenheit, eine Auswahl zu treffen."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr "Zur Verifizierung Passwort bitte erneut eingeben:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+"Bitte geben Sie das gleiche Zerstör-Passwort erneut ein, um sicherzustellen,"
+" das Sie es korrekt eingegeben haben."
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr "Passwort-Eingabefehler"
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr ""
+"Die beiden von Ihnen eingegebenen Passwörter sind nicht gleich. Bitte"
+" versuchen Sie es erneut."
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr "Aktuelles Passwort behalten"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr "Aktuelles Passwort überschreiben"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr "Aktuelles Passwort entfernen"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr "Ein Lösch-Passwort ist bereits konfiguriert. Was soll getan werden?"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
+"Das Vorhandensein von /etc/cryptsetup-nuke-password/password_hash zeigt an,"
+" dass bereits ein Lösch-Passwort konfiguriert wurde. Wenn Sie entscheiden,"
+" dass aktuelle Lösch-Passwort beizubehalten, wird nichts getan. Wenn Sie"
+" entscheiden, das aktuelle Lösch-Passwort zu überschreiben, werden Sie nach"
+" einem neuen Passwort gefragt und es wird das aktuelle Passwort ersetzen."
+" Wenn Sie sich für die Entfernung des Lösch-Passwortes entscheiden, werden"
+" Sie nicht nach einem neuen Passwort gefragt und das aktuell konfigurierte"
+" Password wird deaktiviert. "
diff --git a/debian/po/es.po b/debian/po/es.po
new file mode 100644
index 0000000..8eaa0ac
--- /dev/null
+++ b/debian/po/es.po
@@ -0,0 +1,135 @@
+# cryptsetup-nuke-password po-debconf translation to Spanish.
+# Copyright (C) 2022
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+# Camaleón <noelamac@gmail.com>, 2022.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: 2022-03-20 12:13+0100\n"
+"Last-Translator: Camaleón <noelamac@gmail.com>\n"
+"Language-Team: Debian Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr "Contraseña de destrucción:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+"Si configura una «contraseña de destrucción» podrá introducir esta contraseña "
+"en el indicador cuando el equipo se inicie y le pida la frase de acceso para "
+"desbloquear las particiones cifradas con LUKS. Sin embargo, si introduce esta "
+"contraseña, en lugar de descifrar las particiones, se borrarán las claves de "
+"cifrado del contenedor luks, por lo que ya no podrá desbloquear las "
+"particiones cifradas."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+"Esto proporciona una forma discreta de hacer que los datos sean inaccesibles "
+"cuando piense que su equipo vaya a ser confiscado."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+"Si quiere cancelar esta operación o desactivar una contraseña de destrucción "
+"configurada previamente, introduzca una contraseña en blanco. Si es "
+"necesario, se le dará la opción de elegir entre estas dos opciones."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr "Vuelva a introducir la contraseña para verificarla:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+"Por favor, vuelva a introducir la misma contraseña de destrucción para "
+"comprobar que la ha introducido correctamente."
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr "Error al introducir la contraseña"
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr "Las dos contraseñas introducidas no coinciden. Por favor, inténtelo de "
+"nuevo."
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr "Mantener la contraseña actual"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr "Sobrescribir la contraseña actual"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr "Eliminar la contraseña actual"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr "Ya se ha configurado una contraseña de destrucción ¿qué se debe hacer?"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
+"La existencia del archivo «/etc/cryptsetup-nuke-password/password_hash» "
+"sugiere que ya se ha configurado previamente una contraseña de destrucción. "
+"Si decide mantener la contraseña de destrucción actual, no se llevará a cabo "
+"ninguna acción. Si desea sobrescribir la contraseña de destrucción actual, "
+"se le pedirá una nueva contraseña que sustituirá a la establecida "
+"actualmente. Si decide eliminar la contraseña de destrucción, no se le pedirá "
+"una nueva contraseña y se desactivará la contraseña actualmente configurada."
diff --git a/debian/po/fr.po b/debian/po/fr.po
new file mode 100644
index 0000000..b787e9b
--- /dev/null
+++ b/debian/po/fr.po
@@ -0,0 +1,133 @@
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: 2019-07-05 15:30+0200\n"
+"Last-Translator: Raphael Hertzog <raphael@offensive-security.com>\n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr "Mot de passe de destruction :"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+"Si vous configurez un mot de passe de destruction (« nuke password »), vous "
+"pourrez le saisir au démarrage de l'ordinateur à l'invite de saisie du mot "
+"de passe débloquant les partitions chiffrées avec luks. Au lieu de "
+"déchiffrer ces partitions, la saisie de ce mot de passe va effacer les clés "
+"de chiffrement du conteneur luks de telle sorte qu'il ne sera plus possible "
+"de les débloquer."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+"Cela fournit un moyen discret to rendre vos données inaccessibles lorsque "
+"vous craignez que votre ordinateur va vous être confisqué."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+"Si vous voulez annuler cette opération ou désactiver un mot de passe de "
+"destruction préalablement configuré, saisissez simplement un mot de passe "
+"vide. Si nécessaire, vous aurez la possibilité de choisir entre ces deux "
+"options."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr "Re-saisissez le mot de passe pour vérifier :"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+"Merci de saisir le même mot de passe de destruction pour vérifier que vous "
+"l'avez saisi correctement."
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr "Erreur de saisie du mot de passe"
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr ""
+"Les deux mots de passe saisis sont différents. Essayez encore, s'il vous "
+"plaît."
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr "Conserver le mot de passe actuel"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr "Écraser le mot de passe actuel"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr "Supprimer le mot de passe actuel"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr "Ue mot de passe de destruction est déjà configuré, que faut-il faire?"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
+"L'existence de /etc/cryptsetup-nuke-password/password_hash suggère qu'un "
+"mot de passe de destruction est déjà configuré. Si vous décidez de conserver "
+"le mot de passe actuel, rien ne sera fait. Si vous décider d'écraser le mot "
+"de passe actuel, on va vous demander un nouveau mot de passe qui remplacera "
+"le mot de passe actuellement configuré. Si vous décidez de supprimer le "
+"mot de passe de destruction, on ne vous demandera pas de nouveau mot de passe "
+"et le mot de passe actuellement configuré va être désactivé."
diff --git a/debian/po/it.po b/debian/po/it.po
new file mode 100644
index 0000000..9e1c871
--- /dev/null
+++ b/debian/po/it.po
@@ -0,0 +1,134 @@
+# cryptsetup-nuke-password italian translation
+# Copyright (C) 2022 cryptsetup-nuke-password's copyright holder
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+# Ceppo <ceppo@oziosi.org>, 2022.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: 2022-08-02 23:00+0000\n"
+"Last-Translator: Ceppo <ceppo@oziosi.org>\n"
+"Language-Team: Italian <debian-l10n-italian@lists.debian.org>\n"
+"Language: it\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr "Password di distruzione:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+"In caso di impostazione di una “password di distruzione”, sarà possibile "
+"inserire questa password nel prompt di avvio che chiede la passphrase per "
+"sbloccare le partizioni criptate con luks. Invece di decriptare le "
+"partizioni, l'inserimento di questa password eliminerà le chiavi di "
+"criptazione dal contenitore luks in modo che non sia più possibile sbloccare "
+"le partizioni criptate."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+"Questo fornisce un mezzo relativamente discreto per rendere illeggibili i "
+"dati qualora si tema che il computer stia per essere confiscato."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+"Se si vuole annullare questa operazione o disabilitare una password di "
+"distruzione già configurata, inserire semplicemente una password vuota. Se "
+"necessario, sarà data la possibilità di scegliere tra entrambe le opzioni."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr "Inserire nuovamente la password per verificare:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+"Inserire di nuovo la stessa password di distruzione per verificare che sia "
+"stata digitata correttamente."
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr "Errore nell'inserimento della password"
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr "Le due password inserite sono diverse. Riprovare."
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr "Mantenere la password attuale"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr "Sovrascrivere la password attuale"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr "Rimuovere la password attuale"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr "Una password di distruzione è già configurata, cosa fare?"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
+"L'esistenza di /etc/cryptsetup-nuke-password/password_hash suggerisce che "
+"una password di distruzione sia già configurata. Se si deciderà di mantenere "
+"la password di distruzione attuale, non verrà fatto nulla. Se si deciderà di "
+"sovrascrivere la password di distruzione attuale, sarà richiesto di inserire "
+"una nuova password che sostituirà quella attualmente configurata. Se si "
+"deciderà di rimuovere la password di distruzione, non sarà richiesta una "
+"nuova password e la password attualmente configurata sarà disabilitata."
diff --git a/debian/po/nl.po b/debian/po/nl.po
new file mode 100644
index 0000000..3011f1c
--- /dev/null
+++ b/debian/po/nl.po
@@ -0,0 +1,139 @@
+# Translation of cryptsetup-nuke-password debconf messages to Dutch.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+# Frans Spiesschaert <Frans.Spiesschaert@yucom.be>, 2022
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: 2022-04-09 22:35+0200\n"
+"Language: nl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Last-Translator: Frans Spiesschaert <Frans.Spiesschaert@yucom.be>\n"
+"Language-Team: \n"
+"X-Generator: Poedit 2.2.1\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr "Nuke-wachtwoord:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+"Als u een \"nuke-wachtwoord\" instelt, kunt u dit wachtwoord intypen aan de "
+"vroege opstartprompt en zodoende vragen dat uw wachtwoordzin uw in luks "
+"versleutelde partities ontgrendelt. In plaats van de partities te "
+"ontsleutelen, zal het intypen van dit wachtwoord de encryptiesleutels uit de "
+"luks-container wissen, zodat het niet langer mogelijk is om de versleutelde "
+"partities te ontgrendelen."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+"Dit biedt een relatief onopvallende manier om uw gegevens onleesbaar te "
+"maken voor het geval u bang bent dat uw computer in beslag zal worden "
+"genomen."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+"Als u deze operatie wilt annuleren of een reeds geconfigureerd nuke-"
+"wachtwoord wilt uitschakelen, voert u gewoon een leeg wachtwoord in. Indien "
+"nodig, krijgt u de mogelijkheid om tussen beide keuzes te kiezen."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr "Voer ter verificatie het wachtwoord opnieuw in:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+"Voer hetzelfde nuke-wachtwoord opnieuw in om te controleren of u het juist "
+"hebt getypt."
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr "Fout bij het invoeren van het wachtwoord"
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr ""
+"De twee door u ingevoerde wachtwoorden waren niet gelijk. Probeer het "
+"nogmaals."
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr "Het huidige wachtwoord behouden"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr "Het huidige wachtwoord overschrijven"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr "Het huidige wachtwoord verwijderen"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr "Er werd al een nuke-wachtwoord geconfigureerd; wat moet er gebeuren?"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
+"Het bestaan van /etc/cryptsetup-nuke-password/password_hash suggereert dat "
+"er al een nuke-wachtwoord is geconfigureerd. Als u beslist om het huidige "
+"nuke-wachtwoord te behouden, zal er niets gebeuren. Als u besluit om het "
+"huidige nuke-wachtwoord te overschrijven, wordt u om een nieuw wachtwoord "
+"gevraagd en vervangt dit het huidige geconfigureerde wachtwoord. Als u "
+"beslist om het nuke-wachtwoord te verwijderen, wordt u niet om een nieuw "
+"wachtwoord gevraagd en wordt het huidige geconfigureerde wachtwoord "
+"uitgeschakeld."
diff --git a/debian/po/pt.po b/debian/po/pt.po
new file mode 100644
index 0000000..cf2cc7e
--- /dev/null
+++ b/debian/po/pt.po
@@ -0,0 +1,137 @@
+# Translation of cryptsetup-nuke-password's debconf messages to European Portuguese
+# Copyright (C) 2023 THE cryptsetup-nuke-password'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+#
+# Américo Monteiro <a_monteiro@gmx.com>, 2023.
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password 4\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: 2023-01-08 22:23+0000\n"
+"Last-Translator: Américo Monteiro <a_monteiro@gmx.com>\n"
+"Language-Team: Portuguese <>\n"
+"Language: pt\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Lokalize 20.12.0\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr "Palavra passe do Nuke:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+"Se você configurar uma \"palavra-passe nuke\", irá ser capaz de escrever esta "
+"palavra passe no aviso do inicio de arranque que lhe pede a sua frase passe "
+"para desbloquear as suas partições encriptadas em luks. Em vez de "
+"desencriptar as partições, escrever esta palavra passe irá limpar as chaves "
+"de encriptação do contentor luks para que não seja mais possível desbloquear "
+"as partições encriptadas."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+"Isto fornece um modo relativamente silencioso de tornar os seus dados "
+"ilegíveis no caso de temer que o seu computador vai ser apreendido."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+"Se você desejar cancelar esta operação ou desactivar qualquer palavra passe "
+"nuke já configurada, simplesmente insira uma palavra passe vazia. Se "
+"necessário, irá lhe ser dada a opção de escolher entre ambas opções."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr "Re-inserir palavra passe para verificação:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+"Por favor insira a palavra passe nuke outra vez para verificar se a "
+"escreveu corretamente."
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr "Erro na entrada da palavra passe"
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr ""
+"As duas palavras passe que inseriu não são iguais. Por favor tente de novo."
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr "Manter a palavra passe actual"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr "Sobrepor a palavra passe actual"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr "Remover a palavra passe actual"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr "Uma palavra passe nuke já está configurada, o que deve ser feito?"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
+"A existência de /etc/cryptsetup-nuke-password/password_hash sugere que uma "
+"palavra passe nuke já está configurada. Se você decidir manter a palavra "
+"passe nuke actual, nada será feito. Se você decidir sobrepor a palavra "
+"passe nuke actual, será lhe pedida uma nova palavra passe e irá substituir "
+"a actualmente configurada. Se você decidir remover a palavra passe nuke, "
+"não lhe será pedida uma nova palavra passe e a palavra passe actualmente "
+"configurada será desactivada."
diff --git a/debian/po/pt_BR.po b/debian/po/pt_BR.po
new file mode 100644
index 0000000..6efa7a7
--- /dev/null
+++ b/debian/po/pt_BR.po
@@ -0,0 +1,138 @@
+# Debconf translations for cryptsetup-nuke-password.
+# Copyright (C) 2022 THE cryptsetup-nuke-password'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+# Paulo Henrique de Lima Santana (phls) <phls@debian.org>, 2022.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password_4\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: 2022-12-19 13:17-0300\n"
+"Last-Translator: Paulo Henrique de Lima Santana (phls) <phls@debian.org>\n"
+"Language-Team: Brazilian Portuguese <debian-l10n-portuguese@lists.debian."
+"org>\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1)\n"
+"X-Generator: Gtranslator 42.0\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr "Senha nuclear:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+"Se você configurar uma \"senha nuclear\", poderá digitar essa senha no "
+"prompt inicial que solicita a sua senha para desbloquear suas partições "
+"criptografadas com luks durante a inicialização. Em vez de descriptografar "
+"as partições, digitar essa senha apagará as chaves de criptografia do "
+"contêiner luks para que não seja mais possível desbloquear as partições "
+"criptografadas."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+"Isso fornece uma maneira relativamente discreta de tornar seus dados "
+"ilegíveis, caso você tema que seu computador seja apreendido."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+"Caso queira cancelar esta operação ou desabilitar alguma senha nuclear já "
+"configurada, basta digitar uma senha vazia. Se necessário, você terá a opção "
+"de escolher entre as duas opções."
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr "Digite novamente a senha para verificar:"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+"Por favor, digite a mesma senha nuclear novamente para verificar se você a "
+"digitou corretamente."
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr "Erro de entrada da senha"
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr ""
+"As duas senhas que você digitou não são as mesmas. Por favor, tente "
+"novamente."
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr "Manter a senha atual"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr "Substituir a senha atual"
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr "Remover a senha atual"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr "Uma senha nuclear já está configurada, o que deve ser feito?"
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
+"A existência de /etc/cryptsetup-nuke-password/password_hash sugere que uma "
+"senha nuclear já está configurada. Se você decidir manter a senha nuclear "
+"atual, nada será feito. Se você decidir sobrescrever a senha nuclear atual, "
+"uma nova senha será solicitada e ela substituirá a senha configurada "
+"atualmente. Se você decidir remover a senha nuclear, não será solicitada uma "
+"nova senha e a senha configurada atualmente será desativada."
diff --git a/debian/po/templates.pot b/debian/po/templates.pot
new file mode 100644
index 0000000..06512e1
--- /dev/null
+++ b/debian/po/templates.pot
@@ -0,0 +1,115 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the cryptsetup-nuke-password package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: cryptsetup-nuke-password\n"
+"Report-Msgid-Bugs-To: cryptsetup-nuke-password@packages.debian.org\n"
+"POT-Creation-Date: 2019-07-05 15:24+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid "Nuke password:"
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you setup a “nuke password”, you will be able to type this password at "
+"the early-boot prompt asking your passphrase to unlock your luks-encrypted "
+"partitions. Instead of decrypting the partitions, typing this password will "
+"instead wipe the encryption keys from the luks container so that it is no "
+"longer possible to unlock the encrypted partitions."
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"This provides a relatively stealth way to make your data unreadable in case "
+"you fear that your computer is going to be seized."
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:1001
+msgid ""
+"If you want to cancel this operation or disable any nuke password already "
+"configured, simply enter an empty password. If needed, you will be given the "
+"option to pick between both choices."
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid "Re-enter password to verify:"
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../cryptsetup-nuke-password.templates:2001
+msgid ""
+"Please enter the same nuke password again to verify that you have typed it "
+"correctly."
+msgstr ""
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "Password input error"
+msgstr ""
+
+#. Type: error
+#. Description
+#: ../cryptsetup-nuke-password.templates:3001
+msgid "The two passwords you entered were not the same. Please try again."
+msgstr ""
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Keep the current password"
+msgstr ""
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Overwrite the current password"
+msgstr ""
+
+#. Type: select
+#. Choices
+#: ../cryptsetup-nuke-password.templates:4001
+msgid "Remove the current password"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid "A nuke password is already configured, what should be done?"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../cryptsetup-nuke-password.templates:4002
+msgid ""
+"The existence of /etc/cryptsetup-nuke-password/password_hash suggests that a "
+"nuke password is already configured. If you decide to keep the current nuke "
+"password, nothing will be done. If you decide to overwrite the current nuke "
+"password, you will be asked for a new password and it will replace the "
+"currently configured one. If you decide to remove the nuke password, you "
+"will not be asked for a new password and the currently configured password "
+"will be disabled."
+msgstr ""
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..b8b1ea0
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,6 @@
+#!/usr/bin/make -f
+
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+
+%:
+ dh $@
diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml
new file mode 100644
index 0000000..33c3a64
--- /dev/null
+++ b/debian/salsa-ci.yml
@@ -0,0 +1,4 @@
+---
+include:
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..89ae9db
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (native)
diff --git a/debian/tests/askpass.sh b/debian/tests/askpass.sh
new file mode 100755
index 0000000..a04f272
--- /dev/null
+++ b/debian/tests/askpass.sh
@@ -0,0 +1,72 @@
+#!/bin/sh
+
+set -e
+
+cd ${AUTOPKGTEST_TMP:-/tmp}
+
+#verbose="--verbose --debug --debug-json"
+verbose="--verbose"
+
+echo ">> Setup the 'cryptedfs' file that will contain the luks container"
+dd if=/dev/zero of=cryptedfs count=1 bs=20M
+echo -n "this the passphrase" >keyfile-default
+echo -n "nuke-it" >keyfile-nuke
+
+echo ">> Format with cryptsetup"
+cryptsetup --batch-mode $verbose --use-urandom luksFormat cryptedfs keyfile-default
+
+echo ">> Add nuke passphrase"
+mkdir -p /etc/cryptsetup-nuke-password
+cat keyfile-nuke | /usr/lib/cryptsetup-nuke-password/crypt --generate \
+ >/etc/cryptsetup-nuke-password/password_hash
+
+echo ">> Open the luks container"
+cryptsetup $verbose open cryptedfs testnuke --key-file keyfile-default
+if [ ! -e /dev/mapper/testnuke ]; then
+ echo "ERROR: /dev/mapper/testnuke has not been created"
+ exit 1
+fi
+
+echo ">> Create the initial filesystem and put a flag file on it"
+mkfs.ext4 /dev/mapper/testnuke
+mount /dev/mapper/testnuke /mnt
+echo "Debian rules!" >/mnt/my-secret-file
+umount /mnt
+cryptsetup $verbose close testnuke
+
+echo ">> Backup the luks header"
+rm -f luks-header-backup
+cryptsetup $verbose luksHeaderBackup cryptedfs --header-backup-file luks-header-backup
+
+echo ">> Call askpass with the nuke password"
+export CRYPTTAB_SOURCE="$(pwd)/cryptedfs"
+export DIVERTED_ASKPASS="$(pwd)/askpass"
+cat >$DIVERTED_ASKPASS <<END
+#!/bin/sh
+cat keyfile-nuke
+END
+chmod 755 $DIVERTED_ASKPASS
+password=$(/lib/cryptsetup/askpass)
+if [ "$password" != "nuke-it" ]; then
+ echo "ERROR: askpass did not print the expected password on stdout (expected: 'nuke-it', was: '$password')"
+ exit 1
+fi
+
+echo ">> Ensuring that we can no longer open the luks container"
+cryptsetup $verbose open cryptedfs testnuke --key-file keyfile-default || RESULT=$?
+if [ $RESULT = 0 ]; then
+ echo "ERROR: open with nuke password worked!"
+ set +e
+ mount /dev/mapper/testnuke /mnt
+ if [ -e /mnt/my-secret-file ]; then
+ echo "ERROR: and the flag file can be seen"
+ fi
+ umount /mnt
+ cryptsetup $verbose close testnuke
+ exit 1
+fi
+if [ -e /dev/mapper/testnuke ]; then
+ echo "ERROR: /dev/mapper/testnuke should not exist"
+ cryptsetup $verbose close testnuke
+ exit 1
+fi
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 0000000..dbd7f33
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,7 @@
+Tests: testsuite.sh
+Depends: @, shunit2
+Restrictions: allow-stderr
+
+Tests: askpass.sh
+Depends: @, cryptsetup
+Restrictions: needs-root, allow-stderr, isolation-machine
diff --git a/debian/tests/testsuite.sh b/debian/tests/testsuite.sh
new file mode 100755
index 0000000..8ae11c6
--- /dev/null
+++ b/debian/tests/testsuite.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+# Configure the test suite to run against the files installed
+# in the package
+export CRYPT=/usr/lib/cryptsetup-nuke-password/crypt
+export ASKPASS=/lib/cryptsetup/askpass
+
+# Run the upstream test-suite
+make check