From f1c681c832b85178ad6242fd8b16f762510bdddd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Helleu?= Date: Sat, 6 Feb 2021 16:07:14 +0100 Subject: core: replace option sec.crypt.passphrase_file by sec.crypt.passphrase_command (closes #141) The command is used to read the passphrase on startup, for example using your favorite password manager. Note: only the passphrase is read from the program, the secured data is still stored encrypted in sec.conf and handled by WeeChat itself. --- ChangeLog.adoc | 1 + ReleaseNotes.adoc | 23 ++++++ doc/de/includes/autogen_user_commands.de.adoc | 62 +++++++------- doc/de/includes/autogen_user_options.de.adoc | 4 +- doc/de/weechat_user.de.adoc | 23 +++++- doc/en/includes/autogen_user_commands.en.adoc | 4 +- doc/en/includes/autogen_user_options.en.adoc | 4 +- doc/en/weechat_user.en.adoc | 22 ++++- doc/fr/includes/autogen_user_commands.fr.adoc | 4 +- doc/fr/includes/autogen_user_options.fr.adoc | 4 +- doc/fr/weechat_user.fr.adoc | 21 ++++- doc/it/includes/autogen_user_commands.it.adoc | 4 +- doc/it/includes/autogen_user_options.it.adoc | 4 +- doc/it/weechat_user.it.adoc | 23 +++++- doc/ja/includes/autogen_user_commands.ja.adoc | 44 +++++----- doc/ja/includes/autogen_user_options.ja.adoc | 4 +- doc/ja/weechat_user.ja.adoc | 23 +++++- doc/pl/includes/autogen_user_commands.pl.adoc | 62 +++++++------- doc/pl/includes/autogen_user_options.pl.adoc | 4 +- doc/pl/weechat_user.pl.adoc | 23 +++++- po/cs.po | 62 ++++---------- po/de.po | 71 ++++------------ po/es.po | 62 ++++---------- po/fr.po | 63 +++++++------- po/hu.po | 71 ++++------------ po/it.po | 62 ++++---------- po/ja.po | 69 ++++------------ po/pl.po | 70 ++++------------ po/pt.po | 69 ++++------------ po/pt_BR.po | 61 ++++---------- po/ru.po | 71 ++++------------ po/tr.po | 37 ++++----- po/weechat.pot | 29 ++++--- src/core/wee-command.c | 17 +++- src/core/wee-secure-config.c | 113 +++++++++----------------- src/core/wee-secure-config.h | 2 +- 36 files changed, 538 insertions(+), 754 deletions(-) diff --git a/ChangeLog.adoc b/ChangeLog.adoc index fb194f720..767895d00 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -20,6 +20,7 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes] New features:: + * core: add option sec.crypt.passphrase_command to read passphrase from an external program on startup (issue #141) * core: improve debug in command /eval: display more verbose debug with two "-d", add indentation and colors * core: add options "setvar" and "delvar" in command /buffer, rename option "localvar" to "listvar" * core: add buffer local variable "completion_default_template" (evaluated) to override the value of option "weechat.completion.default_template" (issue #1600) diff --git a/ReleaseNotes.adoc b/ReleaseNotes.adoc index 9017b296b..c26fa9775 100644 --- a/ReleaseNotes.adoc +++ b/ReleaseNotes.adoc @@ -20,6 +20,29 @@ https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog] [[v3.1]] == Version 3.1 (under dev) +[[v3.1_secure_data_passphrase_command]] +=== External program to read secured data passphrase + +A new option `sec.crypt.passphrase_command` has been added to read the passphrase +from the output of an external program (like a password manager). + +The option `sec.crypt.passphrase_file` has been removed, because the command +can now read a file as well. If you used a file to read the passphrase, you +must now setup the command like this: + +---- +/set sec.crypt.passphrase_command "cat ~/.weechat-passphrase" +---- + +For security reasons, it is of course highly recommended to use a password manager +or a program to decrypt a file with your passphrase rather than using a file with +the clear password. + +For example with password-store (command `pass`): + +---- +/set sec.crypt.passphrase_command "pass show weechat/passphrase" +---- + [[v3.1_command_buffer_listvar]] === List of buffer local variables diff --git a/doc/de/includes/autogen_user_commands.de.adoc b/doc/de/includes/autogen_user_commands.de.adoc index 64320b43e..c3b45fe01 100644 --- a/doc/de/includes/autogen_user_commands.de.adoc +++ b/doc/de/includes/autogen_user_commands.de.adoc @@ -1860,38 +1860,40 @@ Standardmäßig werden alle Konfigurationsdateien beim Ausführen des /quit Befe set del -passphrase: ändern der Passphrase (ohne Passphrase, werden die Daten in der Datei sec.conf in Klartext gesichert) - -delete: löscht Passphrase - decrypt: entschlüsselt Daten nachträglich (dies passiert nur falls die Passphrase beim Start nicht angegeben wurde) - -discard: verwirft alle verschlüsselten Daten - set: fügt eine schutzwürdige Information hinzu oder ändert eine bestehende - del: entfernt eine schutzwürdige Information - -Ohne Angabe von Argumenten wird ein neuer Buffer geöffnet und die schutzwürdigen Informationen können dort eingesehen werden. - -Tastenbefehle für den secure-Buffer: - alt+v Werte werden in Klartext angezeigt bzw. verborgen - -Wird eine Passphrase verwendet (Daten liegen verschlüsselt vor), fragt WeeChat beim Start die Passphrase ab. -Setzt man die Umgebungsvariable "WEECHAT_PASSPHRASE", kann die Eingabeaufforderung der Passphrase beim Programmstart vermieden werden (diese Variable wird von WeeChat auch beim /upgrade verwendet). Es ist auch möglich in der Option sec.crypt.passphrase_file eine Datei anzugeben die die Passphrase beinhaltet (siehe /help sec.crypt.passphrase_file) - -schutzwürdige Daten mit dem Format ${sec.data.xxx} können wie folgt genutzt werden: - - Befehl /eval. - - Argument in der Befehlszeile für "--run-command" - - Einstellung weechat.startup.command_{before|after}_plugins - - weitere Optionen die Passwörter oder sensible Daten beinhalten (zum Beispiel: proxy, irc server und relay); nutze /help mit der entsprechenden Option um zu überprüfen ob die Daten evaluiert werden. - -Beispiele: - festlegen eine Passphrase: - /secure passphrase Dies ist meine Passphrase - verschlüsselt freenode SASL Passwort: - /secure set freenode meinPasswort +passphrase: change the passphrase (without passphrase, data is stored as plain text in file sec.conf) + -delete: delete passphrase + decrypt: decrypt data still encrypted (it happens only if passphrase was not given on startup) + -discard: discard all data still encrypted + set: add or change secured data + del: delete secured data + +Without argument, this command displays secured data in a new buffer. + +Keys on secure buffer: + alt+v toggle values + +When a passphrase is used (data encrypted), it is asked by WeeChat on startup. +It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_command to read the passphrase from the output of an external command like a password manager (see /help sec.crypt.passphrase_command). + +Secured data with format ${sec.data.xxx} can be used in: + - command /eval + - command line argument "--run-command" + - options weechat.startup.command_{before|after}_plugins + - other options that may contain a password or sensitive data (for example proxy, irc server and relay); see /help on the options to check if they are evaluated. + +Examples: + set a passphrase: + /secure passphrase this is my passphrase + use program "pass" to read the passphrase on startup: + /set sec.crypt.passphrase_command "pass show weechat/passphrase" + encrypt freenode SASL password: + /secure set freenode mypassword /set irc.server.freenode.sasl_password "${sec.data.freenode}" - verschlüsselt oftc Passwort für nickserv: - /secure set oftc meinPasswort + encrypt oftc password for nickserv: + /secure set oftc mypassword /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}" - Alternativbefehl um den eigenen Nick zu ghosten: - /alias add ghost /eval /msg -server freenode nickserv ghost meinNick ${sec.data.freenode} + alias to ghost the nick "mynick": + /alias add ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode} ---- [[command_weechat_set]] diff --git a/doc/de/includes/autogen_user_options.de.adoc b/doc/de/includes/autogen_user_options.de.adoc index 0321f5d9b..7b167fe93 100644 --- a/doc/de/includes/autogen_user_options.de.adoc +++ b/doc/de/includes/autogen_user_options.de.adoc @@ -16,8 +16,8 @@ ** Werte: sha224, sha256, sha384, sha512 ** Standardwert: `+sha256+` -* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file* -** Beschreibung: pass:none[Pfad zu einer Datei die die Passphrase enthält um damit schutzwürdige Daten zu ver- und entschlüsseln. Diese Einstellung findet nur Anwendung, wenn die Datei sec.conf gelesen wird. Es wird auch nur die erste Zeile eingelesen. Diese Datei wird nur verwendet, falls die Umgebungsvariable "WEECHAT_PASSPHRASE" nicht genutzt wird (die Umgebungsvariable besitzt eine höhere Priorität). Sicherheitshinweis: Es ist anzuraten dieser Datei nur für die eigene Person Leserechte zu gewähren und die Datei nicht im Heimatverzeichnis von WeeChat zu sichern (zum Beispiel im /home/ Order); Beispiel: "~/.weechat-passphrase"] +* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command* +** Beschreibung: pass:none[read the passphrase from the output of this command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "pass show weechat/passphrase"] ** Typ: Zeichenkette ** Werte: beliebige Zeichenkette ** Standardwert: `+""+` diff --git a/doc/de/weechat_user.de.adoc b/doc/de/weechat_user.de.adoc index 312ed50bf..9aaf87ddc 100644 --- a/doc/de/weechat_user.de.adoc +++ b/doc/de/weechat_user.de.adoc @@ -2237,11 +2237,26 @@ da ansonsten die Daten in Klartext gesichert werden. /secure passphrase Dies ist meine Passphrase ---- -Wenn eine Passphrase genutzt wird fragt WeeChat diese beim Programmstart -ab (bei einem `/upgrade` ist dies nicht der Fall). +// TRANSLATION MISSING +===== Passphrase on startup -Die Passphrase kann auch in einer Datei gesichert werden (siehe Option -<>). +When a passphrase is set, WeeChat will ask you to enter it on startup +(but not on `/upgrade`). + +If you are using a password manager, you can run an external program to read +the passphrase instead of having to type it manually on WeeChat startup. + +For example with password-store (command `pass`): + +---- +/set sec.crypt.passphrase_command "pass show weechat/passphrase" +---- + +The program may ask you unlock your GPG key or enter another passphrase to +read the secret. WeeChat will wait for the end of the command to read the +passphrase on the standard output (it must be on the first line without any +extra character). + +If the output contains no passphrase or if it is wrong, WeeChat will then ask +you to enter it. [[secured_data_encryption]] ===== Verschlüsselung diff --git a/doc/en/includes/autogen_user_commands.en.adoc b/doc/en/includes/autogen_user_commands.en.adoc index ffcb3199d..5ceba339c 100644 --- a/doc/en/includes/autogen_user_commands.en.adoc +++ b/doc/en/includes/autogen_user_commands.en.adoc @@ -1873,7 +1873,7 @@ Keys on secure buffer: alt+v toggle values When a passphrase is used (data encrypted), it is asked by WeeChat on startup. -It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_file to read the passphrase from a file (see /help sec.crypt.passphrase_file). +It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_command to read the passphrase from the output of an external command like a password manager (see /help sec.crypt.passphrase_command). Secured data with format ${sec.data.xxx} can be used in: - command /eval @@ -1884,6 +1884,8 @@ Secured data with format ${sec.data.xxx} can be used in: Examples: set a passphrase: /secure passphrase this is my passphrase + use program "pass" to read the passphrase on startup: + /set sec.crypt.passphrase_command "pass show weechat/passphrase" encrypt freenode SASL password: /secure set freenode mypassword /set irc.server.freenode.sasl_password "${sec.data.freenode}" diff --git a/doc/en/includes/autogen_user_options.en.adoc b/doc/en/includes/autogen_user_options.en.adoc index 05d07fea8..1a71926d2 100644 --- a/doc/en/includes/autogen_user_options.en.adoc +++ b/doc/en/includes/autogen_user_options.en.adoc @@ -16,8 +16,8 @@ ** values: sha224, sha256, sha384, sha512 ** default value: `+sha256+` -* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file* -** description: pass:none[path to a file containing the passphrase to encrypt/decrypt secured data; this option is used only when reading file sec.conf; only first line of file is used; this file is used only if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); security note: it is recommended to keep this file readable only by you and store it outside WeeChat home (for example in your home); example: "~/.weechat-passphrase"] +* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command* +** description: pass:none[read the passphrase from the output of this command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "pass show weechat/passphrase"] ** type: string ** values: any string ** default value: `+""+` diff --git a/doc/en/weechat_user.en.adoc b/doc/en/weechat_user.en.adoc index d39f6190e..3c52531d0 100644 --- a/doc/en/weechat_user.en.adoc +++ b/doc/en/weechat_user.en.adoc @@ -2199,11 +2199,25 @@ but highly recommended, otherwise data is stored as plain text in file. /secure passphrase this is my passphrase ---- -When a passphrase is set, WeeChat will ask you to enter it on startup (but not -on `/upgrade`). +===== Passphrase on startup -You can change this behavior and use a file with the passphrase (see option -<>). +When a passphrase is set, WeeChat will ask you to enter it on startup +(but not on `/upgrade`). + +If you are using a password manager, you can run an external program to read +the passphrase instead of having to type it manually on WeeChat startup. + +For example with password-store (command `pass`): + +---- +/set sec.crypt.passphrase_command "pass show weechat/passphrase" +---- + +The program may ask you unlock your GPG key or enter another passphrase to +read the secret. WeeChat will wait for the end of the command to read the +passphrase on the standard output (it must be on the first line without any +extra character). + +If the output contains no passphrase or if it is wrong, WeeChat will then ask +you to enter it. [[secured_data_encryption]] ===== Encryption diff --git a/doc/fr/includes/autogen_user_commands.fr.adoc b/doc/fr/includes/autogen_user_commands.fr.adoc index 08876550b..1807f7d26 100644 --- a/doc/fr/includes/autogen_user_commands.fr.adoc +++ b/doc/fr/includes/autogen_user_commands.fr.adoc @@ -1873,7 +1873,7 @@ Les touches sur le tampon des données sécurisées : alt+v afficher/cacher les valeurs Lorsqu'une phrase de chiffrement est utilisée (données chiffrées), elle est demandée au démarrage de WeeChat. -Il est possible de définir la variable d'environnement WEECHAT_PASSPHRASE pour éviter la demande (cette même variable est utilisée par WeeChat sur le /upgrade) ou de définir l'option sec.crypt.passphrase_file pour lire la phrase de chiffrement depuis un fichier (voir /help sec.crypt.passphrase_file). +Il est possible de définir la variable d'environnement WEECHAT_PASSPHRASE pour éviter la demande (cette même variable est utilisée par WeeChat sur le /upgrade) ou de définir l'option sec.crypt.passphrase_command pour lire la phrase de chiffrement depuis la sortie d'une commande externe comme un gestionnaire de mots de passe (voir /help sec.crypt.passphrase_command). Les données sécurisées avec le format ${sec.data.xxx} peuvent être utilisées dans : - la commande /eval @@ -1884,6 +1884,8 @@ Les données sécurisées avec le format ${sec.data.xxx} peuvent être utilisée Exemples : définir une phrase de chiffrement : /secure passphrase ceci est ma phrase de chiffrement + utiliser le programme "pass" pour lire la phrase de chiffrement au démarrage : + /set sec.crypt.passphrase_command "pass show weechat/passphrase" chiffrer le mot de passe freenode SASL : /secure set freenode motdepasse /set irc.server.freenode.sasl_password "${sec.data.freenode}" diff --git a/doc/fr/includes/autogen_user_options.fr.adoc b/doc/fr/includes/autogen_user_options.fr.adoc index e6ae57c62..95e72f792 100644 --- a/doc/fr/includes/autogen_user_options.fr.adoc +++ b/doc/fr/includes/autogen_user_options.fr.adoc @@ -16,8 +16,8 @@ ** valeurs: sha224, sha256, sha384, sha512 ** valeur par défaut: `+sha256+` -* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file* -** description: pass:none[chemin vers un fichier contenant la phrase de chiffrement pour (dé)chiffrer les données sécurisées ; cette option est utilisée seulement lors de la lecture du fichier sec.conf ; seulement la première ligne du fichier est utilisée ; ce fichier est utilisé seulement si la variable d'environnement "WEECHAT_PASSPHRASE" n'est pas définie (la variable d'environnement a une priorité plus haute) ; note de sécurité : il est recommandé de garder ce fichier en lecture seulement par vous et de le stocker en dehors du "home" WeeChat (par exemple dans votre "home") ; exemple : "~/.weechat-passphrase"] +* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command* +** description: pass:none[lire la phrase de chiffrement depuis la sortie de cette commande (seule la première ligne est utilisée et elle ne doit contenir aucun autre caractère) ; cette option est utilisée seulement pour lire le fichier sec.conf et si la variable d'environnement "WEECHAT_PASSPHRASE" n'est pas définie (la variable d'environnement a une priorité plus haute) ; exemple avec password-store : "pass show weechat/passphrase"] ** type: chaîne ** valeurs: toute chaîne ** valeur par défaut: `+""+` diff --git a/doc/fr/weechat_user.fr.adoc b/doc/fr/weechat_user.fr.adoc index 3a1fef984..f25289ec8 100644 --- a/doc/fr/weechat_user.fr.adoc +++ b/doc/fr/weechat_user.fr.adoc @@ -2275,12 +2275,27 @@ données sont stockées sous forme de texte en clair dans le fichier. /secure passphrase ceci est ma phrase secrète ---- +// TRANSLATION MISSING +===== Passphrase on startup + Lorsqu'une phrase secrète est définie, WeeChat vous demandera de la saisir lors du démarrage (mais pas sur `/upgrade`). -Vous pouvez modifier ce comportement et utiliser un fichier avec la phrase -secrète (voir l'option -<>). +Si vous utilisez un gestionnaire de mots de passe, vous pouvez lancer +un programme externe pour lire la phrase de chiffrement au lieu d'avoir +à l'entrer manuellement au démarrage de WeeChat. + +Par exemple avec password-store (command `pass`) : + +---- +/set sec.crypt.passphrase_command "pass show weechat/passphrase" +---- + +Le programme peut vous demander de déverrouiller votre clé GPG ou d'entrer une +autre phrase de chiffrement. WeeChat attendra la fin de la commande pour lire +la phrase de chiffrement sur la sortie standard (elle doit être sur la première +ligne et sans caractère supplémentaire). + +Si la sortie ne contient pas de phrase de chiffrement ou si celle-ci est +erronée, WeeChat vous demandera alors de la saisir. [[secured_data_encryption]] ===== Chiffrement diff --git a/doc/it/includes/autogen_user_commands.it.adoc b/doc/it/includes/autogen_user_commands.it.adoc index 96a42df00..d417e0653 100644 --- a/doc/it/includes/autogen_user_commands.it.adoc +++ b/doc/it/includes/autogen_user_commands.it.adoc @@ -1873,7 +1873,7 @@ Keys on secure buffer: alt+v toggle values When a passphrase is used (data encrypted), it is asked by WeeChat on startup. -It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_file to read the passphrase from a file (see /help sec.crypt.passphrase_file). +It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_command to read the passphrase from the output of an external command like a password manager (see /help sec.crypt.passphrase_command). Secured data with format ${sec.data.xxx} can be used in: - command /eval @@ -1884,6 +1884,8 @@ Secured data with format ${sec.data.xxx} can be used in: Examples: set a passphrase: /secure passphrase this is my passphrase + use program "pass" to read the passphrase on startup: + /set sec.crypt.passphrase_command "pass show weechat/passphrase" encrypt freenode SASL password: /secure set freenode mypassword /set irc.server.freenode.sasl_password "${sec.data.freenode}" diff --git a/doc/it/includes/autogen_user_options.it.adoc b/doc/it/includes/autogen_user_options.it.adoc index 9a8d27a16..a7c74624c 100644 --- a/doc/it/includes/autogen_user_options.it.adoc +++ b/doc/it/includes/autogen_user_options.it.adoc @@ -16,8 +16,8 @@ ** valori: sha224, sha256, sha384, sha512 ** valore predefinito: `+sha256+` -* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file* -** descrizione: pass:none[path to a file containing the passphrase to encrypt/decrypt secured data; this option is used only when reading file sec.conf; only first line of file is used; this file is used only if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); security note: it is recommended to keep this file readable only by you and store it outside WeeChat home (for example in your home); example: "~/.weechat-passphrase"] +* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command* +** descrizione: pass:none[read the passphrase from the output of this command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "pass show weechat/passphrase"] ** tipo: stringa ** valori: qualsiasi stringa ** valore predefinito: `+""+` diff --git a/doc/it/weechat_user.it.adoc b/doc/it/weechat_user.it.adoc index c685072e9..c4df291f2 100644 --- a/doc/it/weechat_user.it.adoc +++ b/doc/it/weechat_user.it.adoc @@ -2362,11 +2362,26 @@ but highly recommended, otherwise data is stored as plain text in file. /secure passphrase this is my passphrase ---- -When a passphrase is set, WeeChat will ask you to enter it on startup (but not -on `/upgrade`). +// TRANSLATION MISSING +===== Passphrase on startup + +When a passphrase is set, WeeChat will ask you to enter it on startup +(but not on `/upgrade`). + +If you are using a password manager, you can run an external program to read +the passphrase instead of having to type it manually on WeeChat startup. + +For example with password-store (command `pass`): + +---- +/set sec.crypt.passphrase_command "pass show weechat/passphrase" +---- -You can change this behavior and use a file with the passphrase (see option -<>). +The program may ask you unlock your GPG key or enter another passphrase to +read the secret. WeeChat will wait for the end of the command to read the +passphrase on the standard output (it must be on the first line without any +extra character). + +If the output contains no passphrase or if it is wrong, WeeChat will then ask +you to enter it. [[secured_data_encryption]] ===== Encryption diff --git a/doc/ja/includes/autogen_user_commands.ja.adoc b/doc/ja/includes/autogen_user_commands.ja.adoc index 7ed6214bf..36e67f1de 100644 --- a/doc/ja/includes/autogen_user_commands.ja.adoc +++ b/doc/ja/includes/autogen_user_commands.ja.adoc @@ -1860,37 +1860,39 @@ file: 保存する設定ファイル (拡張子 ".conf" は不要) set del -passphrase: パスフレーズを変更 (パスフレーズがない場合、sec.conf ファイルに平文でデータを保存します) - -delete: パスフレーズを削除 - decrypt: 暗号化されているデータを復号化 (起動時にパスフレーズが設定されていない場合に起きます) - -discard: 全ての暗号化データを破棄 - set: 保護データを追加または変更 - del: 保護データを削除 +passphrase: change the passphrase (without passphrase, data is stored as plain text in file sec.conf) + -delete: delete passphrase + decrypt: decrypt data still encrypted (it happens only if passphrase was not given on startup) + -discard: discard all data still encrypted + set: add or change secured data + del: delete secured data -引数がない場合、新しいバッファに保護データを表示します。 +Without argument, this command displays secured data in a new buffer. -保護バッファ内で利用可能なキー: - alt+v 値を切り替えます +Keys on secure buffer: + alt+v toggle values -パスフレーズを利用する場合 (データが暗号化されている場合)、WeeChat は起動時にパスフレーズを尋ねます。 -入力を回避するには、環境変数 "WEECHAT_PASSPHRASE" を利用するか (WeeChat は /upgrade の時に同じ変数を利用します)、sec.crypt.passphrase_file オプションを設定してファイルからパスフレーズを読み込みます (/help sec.crypt.passphrase_file を参照してください)。 +When a passphrase is used (data encrypted), it is asked by WeeChat on startup. +It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_command to read the passphrase from the output of an external command like a password manager (see /help sec.crypt.passphrase_command). -${sec.data.xxx} の形で書かれた保護データは以下の様に利用できます: - - /eval コマンド - - コマンドライン引数 "--run-command" - - weechat.startup.command_{before|after}_plugins オプション - - パスワードや機密データを含むと思われるその他のオプション (例えば、プロキシ、irc サーバ、リレー); 保護データが評価されるかを確認するには各オプションの /help を参照してください。 +Secured data with format ${sec.data.xxx} can be used in: + - command /eval + - command line argument "--run-command" + - options weechat.startup.command_{before|after}_plugins + - other options that may contain a password or sensitive data (for example proxy, irc server and relay); see /help on the options to check if they are evaluated. -例: - パスフレーズを設定: +Examples: + set a passphrase: /secure passphrase this is my passphrase - freenode の SASL パスワードを暗号化: + use program "pass" to read the passphrase on startup: + /set sec.crypt.passphrase_command "pass show weechat/passphrase" + encrypt freenode SASL password: /secure set freenode mypassword /set irc.server.freenode.sasl_password "${sec.data.freenode}" - oftc の nickserv 用パスワードを暗号化: + encrypt oftc password for nickserv: /secure set oftc mypassword /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}" - ニックネーム "mynick" を取り戻すためのエイリアス ghost を設定 + alias to ghost the nick "mynick": /alias add ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode} ---- diff --git a/doc/ja/includes/autogen_user_options.ja.adoc b/doc/ja/includes/autogen_user_options.ja.adoc index 68df967e2..d66608719 100644 --- a/doc/ja/includes/autogen_user_options.ja.adoc +++ b/doc/ja/includes/autogen_user_options.ja.adoc @@ -16,8 +16,8 @@ ** 値: sha224, sha256, sha384, sha512 ** デフォルト値: `+sha256+` -* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file* -** 説明: pass:none[保護データを暗号化/複合化するためのパスフレーズを保存したファイルパス; このオプションは sec.conf ファイルを読むときだけに利用されます; ファイルの 1 行目だけが利用されます; このファイルは環境変数 "WEECHAT_PASSPHRASE" が設定されていないときだけに利用されます (環境変数のほうが優先順位が高いです); セキュリティ上の注意: このファイルを自分だけが読み込める状態にし、WeeChat ホームの外 (例えば自分のホームディレクトリ) に保存しておくことを推奨します; 例: "~/.weechat-passphrase"] +* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command* +** 説明: pass:none[read the passphrase from the output of this command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "pass show weechat/passphrase"] ** タイプ: 文字列 ** 値: 未制約文字列 ** デフォルト値: `+""+` diff --git a/doc/ja/weechat_user.ja.adoc b/doc/ja/weechat_user.ja.adoc index ed13f719d..fa8a5961e 100644 --- a/doc/ja/weechat_user.ja.adoc +++ b/doc/ja/weechat_user.ja.adoc @@ -2244,11 +2244,26 @@ _sec.conf_ /secure passphrase this is my passphrase ---- -パスフレーズを設定した場合、WeeChat -の起動時にパスフレーズの入力が求められるようになります (`/upgrade` 時には求められません)。 +// TRANSLATION MISSING +===== Passphrase on startup + +When a passphrase is set, WeeChat will ask you to enter it on startup +(but not on `/upgrade`). + +If you are using a password manager, you can run an external program to read +the passphrase instead of having to type it manually on WeeChat startup. + +For example with password-store (command `pass`): + +---- +/set sec.crypt.passphrase_command "pass show weechat/passphrase" +---- -この挙動を変更し、パスフレーズを保存したファイルを使うことも可能です -(<> オプションを参照してください)。 +The program may ask you unlock your GPG key or enter another passphrase to +read the secret. WeeChat will wait for the end of the command to read the +passphrase on the standard output (it must be on the first line without any +extra character). + +If the output contains no passphrase or if it is wrong, WeeChat will then ask +you to enter it. [[secured_data_encryption]] ===== 暗号化 diff --git a/doc/pl/includes/autogen_user_commands.pl.adoc b/doc/pl/includes/autogen_user_commands.pl.adoc index 02f3dd315..f335ad3c0 100644 --- a/doc/pl/includes/autogen_user_commands.pl.adoc +++ b/doc/pl/includes/autogen_user_commands.pl.adoc @@ -1859,38 +1859,40 @@ Domyślnie zapisywane na dysku są wszystkie pliki konfiguracyjne podczas wykony set del -passphrase: zmienia hasło (bez hasła dane są przechowywane w postaci tekstu w pliku sec.conf) - -delete: kasuje hasło - decrypt: rozszyfrowuje dane będące ciągle zaszyfrowane (zdarza się to tylko jeśli hasło nie zostało podane przy uruchomieniu) - -discard: odrzuca wszystkie nadal zaszyfrowane dane - set: dodaje lub zmienia zaszyfrowane dane - del: kasuje zaszyfrowane dane - -Bez argumentu, komenda wyświetli zabezpieczone dane w nowym buforze. - -Kombinacje klawiszy w bezpiecznym buforze: - alt+v przełącza wartości - -Jeśli używane jest hasło (dane zaszyfrowane), należy je podać podczas startu WeeChat. -Jest możliwe ustawienie zmiennej środowiskowej "WEECHAT_PASSPHRASE", aby nie podawać hasła przy uruchomieniu (ta sama zmienna jest używana przez WeeChat podczas wykonywania /upgrade). - -Zabezpieczone dane w formacie ${sec.data.xxx} można użyć w: - - komendzie /eval - - argumencie w linii poleceń "--run-command" - - opcjach weechat.startup.command_{before|after}_plugins - - innych opcjach, które mogą zawierać hasło lub wrażliwe dane (na przykład proxy, serwer irc i relay); zobacz /help na opcjach żeby sprawdzić czy są przetwarzane. - -Przykłady: - ustawienie hasła: - /secure passphrase to jest moje hasło - zaszyfrowanie hasła dla freenode SASL: - /secure set freenode mojehasło +passphrase: change the passphrase (without passphrase, data is stored as plain text in file sec.conf) + -delete: delete passphrase + decrypt: decrypt data still encrypted (it happens only if passphrase was not given on startup) + -discard: discard all data still encrypted + set: add or change secured data + del: delete secured data + +Without argument, this command displays secured data in a new buffer. + +Keys on secure buffer: + alt+v toggle values + +When a passphrase is used (data encrypted), it is asked by WeeChat on startup. +It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_command to read the passphrase from the output of an external command like a password manager (see /help sec.crypt.passphrase_command). + +Secured data with format ${sec.data.xxx} can be used in: + - command /eval + - command line argument "--run-command" + - options weechat.startup.command_{before|after}_plugins + - other options that may contain a password or sensitive data (for example proxy, irc server and relay); see /help on the options to check if they are evaluated. + +Examples: + set a passphrase: + /secure passphrase this is my passphrase + use program "pass" to read the passphrase on startup: + /set sec.crypt.passphrase_command "pass show weechat/passphrase" + encrypt freenode SASL password: + /secure set freenode mypassword /set irc.server.freenode.sasl_password "${sec.data.freenode}" - zaszyfrowanie hasła dla nickserva na serwerze oftc: - /secure set oftc mojehasło + encrypt oftc password for nickserv: + /secure set oftc mypassword /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}" - alias dla polecenia ghost dla nicka "mójnick": - /alias ghost /eval /msg -server freenode nickserv ghost mójnick ${sec.data.freenode} + alias to ghost the nick "mynick": + /alias add ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode} ---- [[command_weechat_set]] diff --git a/doc/pl/includes/autogen_user_options.pl.adoc b/doc/pl/includes/autogen_user_options.pl.adoc index 154756209..dc4ebfbb3 100644 --- a/doc/pl/includes/autogen_user_options.pl.adoc +++ b/doc/pl/includes/autogen_user_options.pl.adoc @@ -16,8 +16,8 @@ ** wartości: sha224, sha256, sha384, sha512 ** domyślna wartość: `+sha256+` -* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file* -** opis: pass:none[ścieżka do pliku zawierającego hasło do szyfrowania/rozszyfrowywania zabezpieczonych danych; opcja ta jest używana tylko podczas odczytu pliku sec.conf; używana jest tylko pierwsza linia z tego pliku; plik jest używany tylko jeśli zmienna środowiskowa "WEECHAT_PASSPHRASE" nie została ustawiona (zmienna środowiskowa ma najwyższy priorytet); uwaga bezpieczeństwa: zaleca się trzymanie tego pliku poza katalogiem domowym WeeChat (np. w katalogu domowym) i nadanie mu praw do odczytu tylko przez siebie; przykład: "~/.weechat-passphrase"] +* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command* +** opis: pass:none[read the passphrase from the output of this command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "pass show weechat/passphrase"] ** typ: ciąg ** wartości: dowolny ciąg ** domyślna wartość: `+""+` diff --git a/doc/pl/weechat_user.pl.adoc b/doc/pl/weechat_user.pl.adoc index bb878d30e..f3043c789 100644 --- a/doc/pl/weechat_user.pl.adoc +++ b/doc/pl/weechat_user.pl.adoc @@ -2213,11 +2213,26 @@ zwykły tekst. /secure passphrase to jest moje hasło ---- -Kiedy hasło jest ustawione, WeeChat poprosi o jego podanie przy uruchomieniu -(ale nie podczas `upgrade`). +// TRANSLATION MISSING +===== Passphrase on startup + +When a passphrase is set, WeeChat will ask you to enter it on startup +(but not on `/upgrade`). + +If you are using a password manager, you can run an external program to read +the passphrase instead of having to type it manually on WeeChat startup. + +For example with password-store (command `pass`): + +---- +/set sec.crypt.passphrase_command "pass show weechat/passphrase" +---- -Możesz zmienić to zachowanie i użyć pliku z zapisanym hasłem (zobacz opcję -<>). +The program may ask you unlock your GPG key or enter another passphrase to +read the secret. WeeChat will wait for the end of the command to read the +passphrase on the standard output (it must be on the first line without any +extra character). + +If the output contains no passphrase or if it is wrong, WeeChat will then ask +you to enter it. [[secured_data_encryption]] ===== Szyfrowanie diff --git a/po/cs.po b/po/cs.po index 49aa517ae..12df525ca 100644 --- a/po/cs.po +++ b/po/cs.po @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-28 16:40+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Ondřej Súkup \n" "Language-Team: weechat-dev \n" "Language: cs\n" @@ -915,6 +915,12 @@ msgstr "Heslo změněno" msgid "Passphrase added" msgstr "Heslo přidáno" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "Chráněná data \"%s\" nastavena" @@ -2434,8 +2440,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2448,6 +2455,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -4360,10 +4369,6 @@ msgid "" "To recover your secured data, you can use /secure decrypt (see /help secure)" msgstr "" -#, fuzzy, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "%s%s: nemůžu parsovat soubor \"%s\"" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -4397,13 +4402,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "hash algoritmus použitý ke kontrole dešifrovaných dat" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" @@ -13210,34 +13213,3 @@ msgstr "%s%s: vypršel časový limit \"%s\" pro %s" #, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s%s: nemohu se připojit\" neočekávaná chyba (%d)" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sChyba: neznámé pole \"%s\"" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sChyba: nekorektní číslo bufferu" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sChyba: bufer nenalezen" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sChyba: filtr \"%s\" nenalezen" - -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sChyba: neznámé rozložení \"%s\"" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sChyba: neznámá proxy \"%s\"" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sChyba: nekorektní číslo" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sChyba: selhalo nastavení volby \"%s\"" - -#, fuzzy -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sChyba: nekorektní číslo bufferu" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sChyba: plugin \"%s\" nenalezen" diff --git a/po/de.po b/po/de.po index 43a0f08bd..7f5b94ce8 100644 --- a/po/de.po +++ b/po/de.po @@ -24,8 +24,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2021-02-05 10:56+0100\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Nils Görs \n" "Language-Team: German \n" "Language: de\n" @@ -960,6 +960,12 @@ msgstr "Passphrase geändert" msgid "Passphrase added" msgstr "Passphrase hinzugefügt" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "Schutzwürdige Information \"%s\" gesetzt" @@ -2910,6 +2916,7 @@ msgstr "" "passphrase |-delete || decrypt |-discard || set " " || del " +#, fuzzy msgid "" "passphrase: change the passphrase (without passphrase, data is stored as " "plain text in file sec.conf)\n" @@ -2929,8 +2936,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2943,6 +2951,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -5284,10 +5294,6 @@ msgstr "" "Um die schützenswerten Daten wiederherzustellen kann der Befehl /secure " "decrypt genutzt werden (siehe /help secure)" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "%sWarnung: Passphrase kann nicht aus Datei \"%s\" gelesen werden" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -5326,23 +5332,12 @@ msgid "hash algorithm used to check the decrypted data" msgstr "Hash-Algorithmus zur Überprüfung der verschlüsselten Daten" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" -"Pfad zu einer Datei die die Passphrase enthält um damit schutzwürdige Daten " -"zu ver- und entschlüsseln. Diese Einstellung findet nur Anwendung, wenn die " -"Datei sec.conf gelesen wird. Es wird auch nur die erste Zeile eingelesen. " -"Diese Datei wird nur verwendet, falls die Umgebungsvariable " -"\"WEECHAT_PASSPHRASE\" nicht genutzt wird (die Umgebungsvariable besitzt " -"eine höhere Priorität). Sicherheitshinweis: Es ist anzuraten dieser Datei " -"nur für die eigene Person Leserechte zu gewähren und die Datei nicht im " -"Heimatverzeichnis von WeeChat zu sichern (zum Beispiel im /home/ Order); " -"Beispiel: \"~/.weechat-passphrase\"" msgid "" "use salt when generating key used in encryption (recommended for maximum " @@ -15513,33 +15508,3 @@ msgstr "%s%s: Zeitüberschreitung für \"%s\" mit %s" msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "" "%s%s: Verbindung konnte nicht hergestellt werden: unerwarteter Fehler (%d)" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sFehler: Infobar \"%s\" ist unbekannt" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sFehler: unzulässige Nummer für Buffer" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sFehler: Buffer nicht gefunden" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sFehler: Filter \"%s\" nicht gefunden" - -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sFehler: Layout\"%s\" nicht bekannt" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sFehler: unbekannter Proxy \"%s\"" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sFehler: fehlerhafte Nummer" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sFehler: Einstellung \"%s\" konnte nicht gesetzt werden" - -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sFehler: falsche Nummer für Fenster" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sFehler: die Erweiterung \"%s\" wurde nicht gefunden" diff --git a/po/es.po b/po/es.po index 45ebe2c64..8e0c715dd 100644 --- a/po/es.po +++ b/po/es.po @@ -22,8 +22,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-28 16:40+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Elián Hanisch \n" "Language-Team: weechat-dev \n" "Language: es\n" @@ -909,6 +909,12 @@ msgstr "" msgid "Passphrase added" msgstr "Fecha agregada" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "" @@ -2543,8 +2549,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2557,6 +2564,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -4551,10 +4560,6 @@ msgid "" "To recover your secured data, you can use /secure decrypt (see /help secure)" msgstr "" -#, fuzzy, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "%s%s: no es posible analizar el archivo \"%s\"" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -4586,13 +4591,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" @@ -13491,34 +13494,3 @@ msgstr "%s%s: tiempo de espera máximo para \"%s\" con %s" #, fuzzy, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s%s: no es posible conectarse al transmisor" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sError: barra \"%s\" desconocida" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sError: número del buffer incorrecto" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sError: buffer no encontrado" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sError: filtro \"%s\" no encontrado" - -#, fuzzy -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sError: barra \"%s\" desconocida" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sError: proxy \"%s\" desconocido" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sError: número incorrecto" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sError: no se pudo configurar la opción \"%s\"" - -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sError: número de ventana incorrecto" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sError: plugin \"%s\" no encontrado" diff --git a/po/fr.po b/po/fr.po index fae690e18..cd74abdaf 100644 --- a/po/fr.po +++ b/po/fr.po @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-03 18:45+0100\n" -"PO-Revision-Date: 2021-02-05 19:58+0100\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Sébastien Helleu \n" "Language-Team: weechat-dev \n" "Language: fr\n" @@ -945,6 +945,16 @@ msgstr "Phrase de chiffrement modifiée" msgid "Passphrase added" msgstr "Phrase de chiffrement ajoutée" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" +"Important : un programme externe est configuré pour lire la phrase de " +"chiffrement au démarrage (option sec.crypt.passphrase_command) ; vous devez " +"vous assurer que ce programme retourne la phrase de chiffrement que vous " +"venez de définir" + #, c-format msgid "Secured data \"%s\" set" msgstr "Donnée sécurisée \"%s\" définie" @@ -2859,8 +2869,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2873,6 +2884,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -2902,9 +2915,9 @@ msgstr "" "demandée au démarrage de WeeChat.\n" "Il est possible de définir la variable d'environnement WEECHAT_PASSPHRASE " "pour éviter la demande (cette même variable est utilisée par WeeChat sur le /" -"upgrade) ou de définir l'option sec.crypt.passphrase_file pour lire la " -"phrase de chiffrement depuis un fichier (voir /help sec.crypt." -"passphrase_file).\n" +"upgrade) ou de définir l'option sec.crypt.passphrase_command pour lire la " +"phrase de chiffrement depuis la sortie d'une commande externe comme un " +"gestionnaire de mots de passe (voir /help sec.crypt.passphrase_command).\n" "\n" "Les données sécurisées avec le format ${sec.data.xxx} peuvent être utilisées " "dans :\n" @@ -2918,6 +2931,9 @@ msgstr "" "Exemples :\n" " définir une phrase de chiffrement :\n" " /secure passphrase ceci est ma phrase de chiffrement\n" +" utiliser le programme \"pass\" pour lire la phrase de chiffrement au " +"démarrage :\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " chiffrer le mot de passe freenode SASL :\n" " /secure set freenode motdepasse\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -5156,12 +5172,6 @@ msgstr "" "Pour récupérer vos données sécurisées, vous pouvez utiliser la commande /" "secure decrypt (voir /help secure)" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "" -"%sAttention : impossible de lire la phrase de chiffrement dans le fichier " -"\"%s\"" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -5200,23 +5210,18 @@ msgid "hash algorithm used to check the decrypted data" msgstr "algorithme de hash pour vérifier les données déchiffrées" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" -msgstr "" -"chemin vers un fichier contenant la phrase de chiffrement pour (dé)chiffrer " -"les données sécurisées ; cette option est utilisée seulement lors de la " -"lecture du fichier sec.conf ; seulement la première ligne du fichier est " -"utilisée ; ce fichier est utilisé seulement si la variable d'environnement " -"\"WEECHAT_PASSPHRASE\" n'est pas définie (la variable d'environnement a une " -"priorité plus haute) ; note de sécurité : il est recommandé de garder ce " -"fichier en lecture seulement par vous et de le stocker en dehors du \"home\" " -"WeeChat (par exemple dans votre \"home\") ; exemple : \"~/.weechat-passphrase" -"\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" +msgstr "" +"lire la phrase de chiffrement depuis la sortie de cette commande (seule la " +"première ligne est utilisée et elle ne doit contenir aucun autre " +"caractère) ; cette option est utilisée seulement pour lire le fichier sec." +"conf et si la variable d'environnement \"WEECHAT_PASSPHRASE\" n'est pas " +"définie (la variable d'environnement a une priorité plus haute) ; exemple " +"avec password-store : \"pass show weechat/passphrase\"" msgid "" "use salt when generating key used in encryption (recommended for maximum " diff --git a/po/hu.po b/po/hu.po index 7c0cc6436..eaefc59d9 100644 --- a/po/hu.po +++ b/po/hu.po @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-28 16:40+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Andras Voroskoi \n" "Language-Team: weechat-dev \n" "Language: hu\n" @@ -936,6 +936,12 @@ msgstr "" msgid "Passphrase added" msgstr "" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "" @@ -2167,8 +2173,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2181,6 +2188,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -3914,10 +3923,6 @@ msgid "" "To recover your secured data, you can use /secure decrypt (see /help secure)" msgstr "" -#, fuzzy, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -3949,13 +3954,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" @@ -12449,43 +12452,3 @@ msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n" #, fuzzy, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s DCC: nem sikerült kapcsolódni a küldőhöz\n" - -#, fuzzy -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%s ismeretlen billentyűparancs \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%s helytelen pufferszám\n" - -#, fuzzy -#~ msgid "%sError: buffer not found" -#~ msgstr "%s a \"%s\" modul nem található\n" - -#, fuzzy -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%s a \"%s\" modul nem található\n" - -#, fuzzy -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%s ismeretlen billentyűparancs \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%s ismeretlen billentyűparancs \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: incorrect number" -#~ msgstr "%s helytelen pufferszám\n" - -#, fuzzy -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%s nem sikerült a modul opciókat elmenteni\n" - -#, fuzzy -#~ msgid "%sError: incorrect window number" -#~ msgstr "%s helytelen pufferszám\n" - -#, fuzzy -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%s a \"%s\" modul nem található\n" diff --git a/po/it.po b/po/it.po index 8bd5af587..fbe8ae3cc 100644 --- a/po/it.po +++ b/po/it.po @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-28 16:40+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Esteban I. Ruiz Moreno \n" "Language-Team: weechat-dev \n" "Language: it\n" @@ -896,6 +896,12 @@ msgstr "Chiave di cifratura modificata" msgid "Passphrase added" msgstr "Chiave di cifratura aggiunta" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "Dati sicuri \"%s\" impostati" @@ -2589,8 +2595,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2603,6 +2610,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -4677,11 +4686,6 @@ msgstr "" "Per ripristinare i dati messi al sicuro, è possibile usare /secure decrypt " "consultare /help secure)" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "" -"%sAttenzione: impossibile leggere la chiave di cifratura dal file \"%s\"" - #, fuzzy, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -4716,13 +4720,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" @@ -13714,33 +13716,3 @@ msgstr "%s%s: timeout per \"%s\" con %s" #, fuzzy, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s%s: impossibile connettersi al mittente" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sErrore: barra \"%s\" sconosciuta" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sErrore: nome buffer non corretto" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sErrore: buffer non trovato" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sErrore: filtro \"%s\" non trovato" - -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sErrore: layout \"%s\" sconosciuto" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sErrore: proxy \"%s\" sconosciuto" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sErrore: numero non corretto" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sErrore: impossibile impostare l'opzione \"%s\"" - -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sErrore: numero finestra non corretto" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sErrore: plugin \"%s\" non trovato" diff --git a/po/ja.po b/po/ja.po index cc09e7c69..5a8860e39 100644 --- a/po/ja.po +++ b/po/ja.po @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-28 16:40+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: AYANOKOUZI, Ryuunosuke \n" "Language-Team: Japanese \n" @@ -933,6 +933,12 @@ msgstr "パスフレーズを変更" msgid "Passphrase added" msgstr "パスフレーズを追加しました" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "保護データ \"%s\" を設定" @@ -2730,6 +2736,7 @@ msgstr "" "passphrase |-delete || decrypt |-discard || set " " || del " +#, fuzzy msgid "" "passphrase: change the passphrase (without passphrase, data is stored as " "plain text in file sec.conf)\n" @@ -2749,8 +2756,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2763,6 +2771,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -4901,10 +4911,6 @@ msgstr "" "安全なデータを復号化するには、/secure decrypt を利用してください (/help " "secure を参照してください)" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "%s警告: ファイル \"%s\" からパスフレーズを読み込めません" - #, fuzzy, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -4939,21 +4945,12 @@ msgid "hash algorithm used to check the decrypted data" msgstr "復号化データをチェックするハッシュアルゴリズム" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" -"保護データを暗号化/複合化するためのパスフレーズを保存したファイルパス; このオ" -"プションは sec.conf ファイルを読むときだけに利用されます; ファイルの 1 行目だ" -"けが利用されます; このファイルは環境変数 \"WEECHAT_PASSPHRASE\" が設定されて" -"いないときだけに利用されます (環境変数のほうが優先順位が高いです); セキュリ" -"ティ上の注意: このファイルを自分だけが読み込める状態にし、WeeChat ホームの外 " -"(例えば自分のホームディレクトリ) に保存しておくことを推奨します; 例: \"~/." -"weechat-passphrase\"" msgid "" "use salt when generating key used in encryption (recommended for maximum " @@ -14516,33 +14513,3 @@ msgstr "%s%s: \"%s\" のタイムアウト %s" #, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s%s: 接続できません: 未定義のエラー (%d)" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sエラー: バー \"%s\" は未定義です" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sエラー: 不正なバッファ番号" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sエラー: バッファが見つかりません" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sエラー: フィルタ \"%s\" が見つかりません" - -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sエラー: レイアウト \"%s\" は未定義です" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sエラー: プロキシ \"%s\" が見つかりません" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sエラー: 不正な番号" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sエラー: オプション \"%s\" の設定に失敗しました" - -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sエラー: ウィンドウ番号に間違いがあります" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sエラー: プラグイン \"%s\" が見つかりません" diff --git a/po/pl.po b/po/pl.po index 81193228e..4caa4a324 100644 --- a/po/pl.po +++ b/po/pl.po @@ -22,8 +22,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2021-01-15 21:34+0100\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Krzysztof Korościk \n" "Language-Team: Polish \n" "Language: pl\n" @@ -941,6 +941,12 @@ msgstr "Hasło zmienione" msgid "Passphrase added" msgstr "Dodano hasło" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "Zabezpieczono dane \"%s\"" @@ -2814,6 +2820,7 @@ msgstr "" "passphrase |-delete || decrypt |-discard || set " " || del " +#, fuzzy msgid "" "passphrase: change the passphrase (without passphrase, data is stored as " "plain text in file sec.conf)\n" @@ -2833,8 +2840,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2847,6 +2855,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -5039,10 +5049,6 @@ msgstr "" "W celu odzyskania zabezpieczonych danych, możesz użyć /secure decrypt " "(zobacz /help secure)" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "%sUwaga: niemożna odczytać hasła z pliku \"%s\"" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -5078,22 +5084,12 @@ msgid "hash algorithm used to check the decrypted data" msgstr "algorytm haszujący użyty do sprawdzenia rozszyfrowanych danych" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" -"ścieżka do pliku zawierającego hasło do szyfrowania/rozszyfrowywania " -"zabezpieczonych danych; opcja ta jest używana tylko podczas odczytu pliku " -"sec.conf; używana jest tylko pierwsza linia z tego pliku; plik jest używany " -"tylko jeśli zmienna środowiskowa \"WEECHAT_PASSPHRASE\" nie została " -"ustawiona (zmienna środowiskowa ma najwyższy priorytet); uwaga " -"bezpieczeństwa: zaleca się trzymanie tego pliku poza katalogiem domowym " -"WeeChat (np. w katalogu domowym) i nadanie mu praw do odczytu tylko przez " -"siebie; przykład: \"~/.weechat-passphrase\"" msgid "" "use salt when generating key used in encryption (recommended for maximum " @@ -14853,33 +14849,3 @@ msgstr "%s%s: przekroczono czas na \"%s\" z %s" #, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s%s: nie można połączyć: niespodziewany błąd (%d)" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sBłąd: nieznany pasek \"%s\"" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sBłąd: nieprawidłowy numer buforu" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sBłąd: nie odnaleziono buforu" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sBłąd: nie odnaleziono filtru \"%s\"" - -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sBłąd: nieznany układ \"%s\"" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sBłąd: niezdefiniowane proxy \"%s\"" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sBłąd: nieprawidłowy numer" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sBłąd: nie udało się ustawić opcji \"%s\"" - -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sBłąd: nieprawidłowy numer okna" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sBłąd: nie znaleziono wtyczki \"%s\"" diff --git a/po/pt.po b/po/pt.po index 1d4980fbd..7b2a42b01 100644 --- a/po/pt.po +++ b/po/pt.po @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-28 16:40+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Vasco Almeida \n" "Language-Team: Portuguese <>\n" "Language: pt\n" @@ -920,6 +920,12 @@ msgstr "Frase de acesso alterada" msgid "Passphrase added" msgstr "Frase de acesso adicionada" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "Dados protegidos \"%s\" definidos" @@ -2744,8 +2750,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2758,6 +2765,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -4938,10 +4947,6 @@ msgstr "" "Para recuperar os dados protegidos, pode usar /secure decrypt (ver /help " "secure)" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "%sAviso: não foi possível ler a frase de acesso do ficheiro \"%s\"" - #, fuzzy, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -4980,22 +4985,12 @@ msgid "hash algorithm used to check the decrypted data" msgstr "algoritmo de hash utilizado para verificar os dados desencriptados" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" -"caminho para o ficheiro que contém a frase de acesso para encriptar/" -"desencriptar os dados protegidos; esta opção só é utilizada ao ler o " -"ficheiro sec.conf; só a primeira linha do ficheiro é utilizada; este " -"ficheiro só é utilizado se a variável de ambiente \"WEECHAT_PASSPHRASE\" não " -"estiver definida (a variável de ambiente tem mais prioridade); nota sobre " -"segurança: recomenda-se que guarde este ficheiro de modo que só possa ser " -"lido por si e guarde-o fora do diretório do WeeChat (por exemplo no seu " -"diretório pessoal); exemplo: \"~/.weechat-passphrase\"" msgid "" "use salt when generating key used in encryption (recommended for maximum " @@ -14375,33 +14370,3 @@ msgstr "%s%s: tempo limite de \"%s\" com %s" #, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s%s: não foi possível conectar: erro inesperado (%d)" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sErro: barra desconhecida \"%s\"" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sErro: número de buffer incorreto" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sErro: buffer não encontrado" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sErro: filtro \"%s\" não encontrado" - -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sErro: disposição \"%s\" desconhecida" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sErro: proxy desconhecido \"%s\"" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sErro: número incorreto" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sErro: falha ao definir a opção \"%s\"" - -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sErro: número de janela incorreto" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sErro: plugin \"%s\" não encontrado" diff --git a/po/pt_BR.po b/po/pt_BR.po index 949632e15..9edcb4dac 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-18 11:34+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Eduardo Elias \n" "Language-Team: weechat-dev \n" "Language: pt_BR\n" @@ -930,6 +930,12 @@ msgstr "Password alterado" msgid "Passphrase added" msgstr "Password adicionado" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "" @@ -2568,8 +2574,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2582,6 +2589,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -4539,10 +4548,6 @@ msgid "" "To recover your secured data, you can use /secure decrypt (see /help secure)" msgstr "" -#, fuzzy, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "%s%s: não foi possível interpretar arquivo \"%s\"" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -4574,13 +4579,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" @@ -12936,33 +12939,3 @@ msgstr "%s%s: tempo esgotado para \"%s\" com %s" #, fuzzy, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s%s: não foi possível conectar ao remetente" - -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%sErro: barra desconhecida \"%s\"" - -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%sErro: número do buffer incorreto" - -#~ msgid "%sError: buffer not found" -#~ msgstr "%sErro: buffer não encontrado" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sErro: filtro \"%s\" não encontrado" - -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%sErro: disposição desconhecida \"%s\"" - -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%sErro: proxy desconhecido \"%s\"" - -#~ msgid "%sError: incorrect number" -#~ msgstr "%sErro: número incorreto" - -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%sErro: falhou ao configurar a opção \"%s\"" - -#~ msgid "%sError: incorrect window number" -#~ msgstr "%sErro: número da janela incorreto" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sErro: plugin \"%s\" não encontrado" diff --git a/po/ru.po b/po/ru.po index 109d5aba7..450a70b7e 100644 --- a/po/ru.po +++ b/po/ru.po @@ -21,8 +21,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2020-04-28 16:40+0200\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Aleksey V Zapparov AKA ixti \n" "Language-Team: weechat-dev \n" "Language: ru\n" @@ -951,6 +951,12 @@ msgstr "" msgid "Passphrase added" msgstr "" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "" @@ -2190,8 +2196,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -2204,6 +2211,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -3946,10 +3955,6 @@ msgid "" "To recover your secured data, you can use /secure decrypt (see /help secure)" msgstr "" -#, fuzzy, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "Не могу записать лог-файл \"%s\"\n" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -3981,13 +3986,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" @@ -12480,43 +12483,3 @@ msgstr "%s нет аргумента для параметра \"%s\"\n" #, fuzzy, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "%s DCC: не могу соединиться с отправителем\n" - -#, fuzzy -#~ msgid "%sError: unknown bar \"%s\"" -#~ msgstr "%s неизвестная функция клавиши \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: incorrect buffer number" -#~ msgstr "%s неправильный номер буфера\n" - -#, fuzzy -#~ msgid "%sError: buffer not found" -#~ msgstr "%s plugin \"%s\" не найден\n" - -#, fuzzy -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%s plugin \"%s\" не найден\n" - -#, fuzzy -#~ msgid "%sError: unknown layout \"%s\"" -#~ msgstr "%s неизвестная функция клавиши \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: unknown proxy \"%s\"" -#~ msgstr "%s неизвестная функция клавиши \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: incorrect number" -#~ msgstr "%s неправильный номер буфера\n" - -#, fuzzy -#~ msgid "%sError: failed to set option \"%s\"" -#~ msgstr "%s не могу сохранить конфигурационный файл pluginов\n" - -#, fuzzy -#~ msgid "%sError: incorrect window number" -#~ msgstr "%s неправильный номер буфера\n" - -#, fuzzy -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%s plugin \"%s\" не найден\n" diff --git a/po/tr.po b/po/tr.po index cf19c241b..78128fb64 100644 --- a/po/tr.po +++ b/po/tr.po @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" -"PO-Revision-Date: 2019-11-03 08:38+0100\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" +"PO-Revision-Date: 2021-02-06 15:55+0100\n" "Last-Translator: Hasan Kiran \n" "Language-Team: weechat-dev \n" "Language: tr\n" @@ -852,6 +852,12 @@ msgstr "" msgid "Passphrase added" msgstr "Tarih eklendi" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "" @@ -1982,8 +1988,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -1996,6 +2003,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -3556,10 +3565,6 @@ msgid "" "To recover your secured data, you can use /secure decrypt (see /help secure)" msgstr "" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -3591,13 +3596,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" @@ -11409,9 +11412,3 @@ msgstr "" #, c-format msgid "%s%s: unable to connect: unexpected error (%d)" msgstr "" - -#~ msgid "%sError: filter \"%s\" not found" -#~ msgstr "%sHata: filtre \"%s\" bulunamadı" - -#~ msgid "%sError: plugin \"%s\" not found" -#~ msgstr "%sHata: \"%s\" eklentisi bulunamadı" diff --git a/po/weechat.pot b/po/weechat.pot index 579502745..018bc220d 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2021-02-05 19:50+0100\n" +"POT-Creation-Date: 2021-02-06 15:52+0100\n" "PO-Revision-Date: 2014-08-16 10:27+0200\n" "Last-Translator: Sébastien Helleu \n" "Language-Team: weechat-dev \n" @@ -851,6 +851,12 @@ msgstr "" msgid "Passphrase added" msgstr "" +msgid "" +"Important: an external program is configured to read the passphrase on " +"startup (option sec.crypt.passphrase_command); you must ensure this program " +"returns the new passphrase you just defined" +msgstr "" + #, c-format msgid "Secured data \"%s\" set" msgstr "" @@ -1980,8 +1986,9 @@ msgid "" "startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" to prevent " "the prompt (this same variable is used by WeeChat on /upgrade), or to set " -"option sec.crypt.passphrase_file to read the passphrase from a file (see /" -"help sec.crypt.passphrase_file).\n" +"option sec.crypt.passphrase_command to read the passphrase from the output " +"of an external command like a password manager (see /help sec.crypt." +"passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -1994,6 +2001,8 @@ msgid "" "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" +" use program \"pass\" to read the passphrase on startup:\n" +" /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" @@ -3545,10 +3554,6 @@ msgid "" "To recover your secured data, you can use /secure decrypt (see /help secure)" msgstr "" -#, c-format -msgid "%sWarning: unable to read passphrase from file \"%s\"" -msgstr "" - #, c-format msgid "" "%sUnable to reload file sec.conf because there is still encrypted data (use /" @@ -3580,13 +3585,11 @@ msgid "hash algorithm used to check the decrypted data" msgstr "" msgid "" -"path to a file containing the passphrase to encrypt/decrypt secured data; " -"this option is used only when reading file sec.conf; only first line of file " -"is used; this file is used only if the environment variable " +"read the passphrase from the output of this command (only the first line is " +"used and it must not contain any extra character); this option is used only " +"when reading file sec.conf and if the environment variable " "\"WEECHAT_PASSPHRASE\" is not set (the environment variable has higher " -"priority); security note: it is recommended to keep this file readable only " -"by you and store it outside WeeChat home (for example in your home); " -"example: \"~/.weechat-passphrase\"" +"priority); example with password-store: \"pass show weechat/passphrase\"" msgstr "" msgid "" diff --git a/src/core/wee-command.c b/src/core/wee-command.c index cdb532796..65567719e 100644 --- a/src/core/wee-command.c +++ b/src/core/wee-command.c @@ -5674,6 +5674,16 @@ COMMAND_CALLBACK(secure) if (secure_hashtable_data->items_count > 0) command_save_file (secure_config_file); secure_buffer_display (); + if (CONFIG_STRING(secure_config_crypt_passphrase_command)[0]) + { + gui_chat_printf ( + NULL, + _("Important: an external program is configured to read " + "the passphrase on startup " + "(option sec.crypt.passphrase_command); " + "you must ensure this program returns the new " + "passphrase you just defined")); + } } return WEECHAT_RC_OK; } @@ -8200,8 +8210,9 @@ command_init () "on startup.\n" "It is possible to set environment variable \"WEECHAT_PASSPHRASE\" " "to prevent the prompt (this same variable is used by WeeChat on " - "/upgrade), or to set option sec.crypt.passphrase_file to read " - "the passphrase from a file (see /help sec.crypt.passphrase_file).\n" + "/upgrade), or to set option sec.crypt.passphrase_command to read " + "the passphrase from the output of an external command like a " + "password manager (see /help sec.crypt.passphrase_command).\n" "\n" "Secured data with format ${sec.data.xxx} can be used in:\n" " - command /eval\n" @@ -8214,6 +8225,8 @@ command_init () "Examples:\n" " set a passphrase:\n" " /secure passphrase this is my passphrase\n" + " use program \"pass\" to read the passphrase on startup:\n" + " /set sec.crypt.passphrase_command \"pass show weechat/passphrase\"\n" " encrypt freenode SASL password:\n" " /secure set freenode mypassword\n" " /set irc.server.freenode.sasl_password \"${sec.data.freenode}\"\n" diff --git a/src/core/wee-secure-config.c b/src/core/wee-secure-config.c index a81daf844..2d9b5b878 100644 --- a/src/core/wee-secure-config.c +++ b/src/core/wee-secure-config.c @@ -42,7 +42,7 @@ struct t_config_file *secure_config_file = NULL; struct t_config_option *secure_config_crypt_cipher = NULL; struct t_config_option *secure_config_crypt_hash_algo = NULL; -struct t_config_option *secure_config_crypt_passphrase_file = NULL; +struct t_config_option *secure_config_crypt_passphrase_command = NULL; struct t_config_option *secure_config_crypt_salt = NULL; @@ -94,86 +94,46 @@ secure_config_get_passphrase_from_user (const char *error) } /* - * Gets passphrase from a file. + * Gets passphrase from a command. * - * Returns passphrase read in file (only the first line with max length of - * 1024 chars), or NULL if error. + * Returns passphrase from command output (only the first line with max length + * of SECURE_PASSPHRASE_MAX_LENGTH chars), or NULL if error. * * Note: result must be freed after use. */ char * -secure_config_get_passphrase_from_file (const char *filename) +secure_config_get_passphrase_from_command (const char *command) { FILE *file; - char *passphrase, *filename2, buffer[1024+1], *pos; + char *passphrase, *pos, buffer[SECURE_PASSPHRASE_MAX_LENGTH + 1]; size_t num_read; passphrase = NULL; - filename2 = string_expand_home (filename); - if (!filename2) + file = popen (command, "r"); + if (!file) return NULL; - file = fopen (filename2, "r"); - if (file) + num_read = fread (buffer, 1, sizeof (buffer) - 1, file); + if (num_read > 0) { - num_read = fread (buffer, 1, sizeof (buffer) - 1, file); - if (num_read > 0) - { - buffer[num_read] = '\0'; - pos = strchr (buffer, '\r'); - if (pos) - pos[0] = '\0'; - pos = strchr (buffer, '\n'); - if (pos) - pos[0] = '\0'; - if (buffer[0]) - passphrase = strdup (buffer); - } - fclose (file); + buffer[num_read] = '\0'; + pos = strchr (buffer, '\r'); + if (pos) + pos[0] = '\0'; + pos = strchr (buffer, '\n'); + if (pos) + pos[0] = '\0'; + if (buffer[0]) + passphrase = strdup (buffer); } - free (filename2); + pclose (file); return passphrase; } -/* - * Checks option "sec.crypt.passphrase_file". - */ - -int -secure_config_check_crypt_passphrase_file (const void *pointer, void *data, - struct t_config_option *option, - const char *value) -{ - char *passphrase; - - /* make C compiler happy */ - (void) pointer; - (void) data; - (void) option; - - /* empty value is OK in option (no file used for passphrase) */ - if (!value || !value[0]) - return 1; - - passphrase = secure_config_get_passphrase_from_file (value); - if (passphrase) - free (passphrase); - else - { - gui_chat_printf (NULL, - _("%sWarning: unable to read passphrase from file " - "\"%s\""), - gui_chat_prefix[GUI_CHAT_PREFIX_ERROR], - value); - } - - return 1; -} - /* * Reloads secured data configuration file. * @@ -239,10 +199,15 @@ secure_config_data_read_cb (const void *pointer, void *data, secure_data_encrypted = config_file_string_to_boolean (value); if (secure_data_encrypted && !secure_passphrase && !gui_init_ok) { - /* if a passphrase file is set, use it */ - if (CONFIG_STRING(secure_config_crypt_passphrase_file)[0]) - secure_passphrase = secure_config_get_passphrase_from_file ( - CONFIG_STRING(secure_config_crypt_passphrase_file)); + /* + * if a passphrase command is set, read passphrase from the output + * of the command + */ + if (CONFIG_STRING(secure_config_crypt_passphrase_command)[0]) + { + secure_passphrase = secure_config_get_passphrase_from_command ( + CONFIG_STRING(secure_config_crypt_passphrase_command)); + } /* ask passphrase to the user (if no file, or file not found) */ if (!secure_passphrase) @@ -514,19 +479,17 @@ secure_config_init_options () N_("hash algorithm used to check the decrypted data"), "sha224|sha256|sha384|sha512", 0, 0, "sha256", NULL, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); - secure_config_crypt_passphrase_file = config_file_new_option ( + secure_config_crypt_passphrase_command = config_file_new_option ( secure_config_file, ptr_section, - "passphrase_file", "string", - N_("path to a file containing the passphrase to encrypt/decrypt secured " - "data; this option is used only when reading file sec.conf; only " - "first line of file is used; this file is used only if the " - "environment variable \"WEECHAT_PASSPHRASE\" is not set (the " - "environment variable has higher priority); security note: it is " - "recommended to keep this file readable only by you and store it " - "outside WeeChat home (for example in your home); example: " - "\"~/.weechat-passphrase\""), + "passphrase_command", "string", + N_("read the passphrase from the output of this command (only the " + "first line is used and it must not contain any extra character); " + "this option is used only when reading file sec.conf and if " + "the environment variable \"WEECHAT_PASSPHRASE\" is not set " + "(the environment variable has higher priority); " + "example with password-store: \"pass show weechat/passphrase\""), NULL, 0, 0, "", NULL, 0, - &secure_config_check_crypt_passphrase_file, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); secure_config_crypt_salt = config_file_new_option ( diff --git a/src/core/wee-secure-config.h b/src/core/wee-secure-config.h index b8ac8f330..3d66df4ba 100644 --- a/src/core/wee-secure-config.h +++ b/src/core/wee-secure-config.h @@ -27,7 +27,7 @@ extern struct t_config_section *secure_config_section_pwd; extern struct t_config_option *secure_config_crypt_cipher; extern struct t_config_option *secure_config_crypt_hash_algo; -extern struct t_config_option *secure_config_crypt_passphrase_file; +extern struct t_config_option *secure_config_crypt_passphrase_command; extern struct t_config_option *secure_config_crypt_salt; extern int secure_config_read (); -- cgit v1.2.3