feat: take over faces and settings from plasma-face-unlock
This commit is contained in:
1 parent
eaec9325af
commit
def308425c
22 files changed
+440
-100
No files matched your search
@@ -81,6 +81,16 @@ On Hyprland and Niri, admin prompts and setting up a face need a polkit agent
|
|||||||
(for example hyprpolkitagent). Hyprland without uwsm does not start the lock
|
(for example hyprpolkitagent). Hyprland without uwsm does not start the lock
|
||||||
screen part by itself: the menu shows the line to add to `hyprland.conf`.
|
screen part by itself: the menu shows the line to add to `hyprland.conf`.
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Coming from plasma-face-unlock?</summary>
|
||||||
|
|
||||||
|
This is the same program with a new name. Your faces and settings move over
|
||||||
|
on their own. On Debian, Ubuntu and Fedora the repository moved too: remove the
|
||||||
|
old `plasma-face-unlock` repository file and add the new one above. On Arch,
|
||||||
|
`yay -S face-unlock` replaces the old package.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
## How to use
|
## How to use
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -68,6 +68,16 @@ fi
|
|||||||
SH
|
SH
|
||||||
chmod 755 "$root/DEBIAN/prerm"
|
chmod 755 "$root/DEBIAN/prerm"
|
||||||
|
|
||||||
|
# Faces, settings and PAM lines of plasma-face-unlock, the old name.
|
||||||
|
cat > "$root/DEBIAN/postinst" <<'SH'
|
||||||
|
#!/bin/sh
|
||||||
|
set -e
|
||||||
|
if [ "$1" = configure ]; then
|
||||||
|
face-unlock --root migrate || true
|
||||||
|
fi
|
||||||
|
SH
|
||||||
|
chmod 755 "$root/DEBIAN/postinst"
|
||||||
|
|
||||||
( cd "$root" && find . -type f ! -path './DEBIAN/*' -printf '%P\0' \
|
( cd "$root" && find . -type f ! -path './DEBIAN/*' -printf '%P\0' \
|
||||||
| LC_ALL=C sort -z | xargs -0 md5sum > DEBIAN/md5sums )
|
| LC_ALL=C sort -z | xargs -0 md5sum > DEBIAN/md5sums )
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ Architecture: @ARCH@
|
|||||||
Maintainer: Felitendo <felitendoyt@gmail.com>
|
Maintainer: Felitendo <felitendoyt@gmail.com>
|
||||||
Depends: @DEPENDS@, bash (>= 4.2), coreutils, grep, sed, mawk | gawk, systemd, polkitd | policykit-1, qml6-module-qtquick, qml6-module-qtquick-shapes, qml6-module-qtquick-effects, qml6-module-qtquick-window, qml6-module-qtqml-workerscript
|
Depends: @DEPENDS@, bash (>= 4.2), coreutils, grep, sed, mawk | gawk, systemd, polkitd | policykit-1, qml6-module-qtquick, qml6-module-qtquick-shapes, qml6-module-qtquick-effects, qml6-module-qtquick-window, qml6-module-qtqml-workerscript
|
||||||
Recommends: gettext-base
|
Recommends: gettext-base
|
||||||
|
Replaces: plasma-face-unlock
|
||||||
|
Conflicts: plasma-face-unlock
|
||||||
Homepage: https://github.com/LoonixTools/face-unlock
|
Homepage: https://github.com/LoonixTools/face-unlock
|
||||||
Description: face unlock for Plasma, GNOME, Hyprland and Niri
|
Description: face unlock for Plasma, GNOME, Hyprland and Niri
|
||||||
Look at the screen and it unlocks, the way a phone does. The lock screen,
|
Look at the screen and it unlocks, the way a phone does. The lock screen,
|
||||||
@@ -13,6 +15,9 @@ Description: face unlock for Plasma, GNOME, Hyprland and Niri
|
|||||||
of a password, on KDE Plasma, GNOME, Hyprland and Niri. A bubble at the top
|
of a password, on KDE Plasma, GNOME, Hyprland and Niri. A bubble at the top
|
||||||
of the screen shows the face being looked for, recognised or refused.
|
of the screen shows the face being looked for, recognised or refused.
|
||||||
.
|
.
|
||||||
|
This package was called plasma-face-unlock before. It takes over its faces
|
||||||
|
and settings.
|
||||||
|
.
|
||||||
A photo on a phone, a tablet or a glossy print is refused by its
|
A photo on a phone, a tablet or a glossy print is refused by its
|
||||||
reflection and its straight edges. The strict photo check also wants a sign
|
reflection and its straight edges. The strict photo check also wants a sign
|
||||||
of life (a blink, or the nose moving the way a real nose does when the head
|
of life (a blink, or the nose moving the way a real nose does when the head
|
||||||
|
|||||||
@@ -45,6 +45,9 @@ Requires: polkit
|
|||||||
Requires: systemd
|
Requires: systemd
|
||||||
Requires: qt6-qtdeclarative
|
Requires: qt6-qtdeclarative
|
||||||
Recommends: /usr/bin/gettext
|
Recommends: /usr/bin/gettext
|
||||||
|
# The old name.
|
||||||
|
Obsoletes: plasma-face-unlock < 2
|
||||||
|
Provides: plasma-face-unlock = %{version}-%{release}
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Look at the screen and it unlocks, the way a phone does. The lock screen, sudo
|
Look at the screen and it unlocks, the way a phone does. The lock screen, sudo
|
||||||
@@ -52,6 +55,9 @@ in a terminal and the admin password prompts can take a face instead of a
|
|||||||
password, on KDE Plasma, GNOME, Hyprland and Niri. A bubble at the top of the
|
password, on KDE Plasma, GNOME, Hyprland and Niri. A bubble at the top of the
|
||||||
screen shows the face being looked for, recognised or refused.
|
screen shows the face being looked for, recognised or refused.
|
||||||
|
|
||||||
|
This package was called plasma-face-unlock before. It takes over its faces and
|
||||||
|
settings.
|
||||||
|
|
||||||
A photo on a phone, a tablet or a glossy print is refused by its reflection and
|
A photo on a phone, a tablet or a glossy print is refused by its reflection and
|
||||||
its straight edges. The strict photo check also wants a sign of life (a blink,
|
its straight edges. The strict photo check also wants a sign of life (a blink,
|
||||||
or the nose moving the way a real nose does when the head turns), which stops a
|
or the nose moving the way a real nose does when the head turns), which stops a
|
||||||
@@ -82,6 +88,10 @@ make install DESTDIR=%{buildroot} PREFIX=%{_prefix} VERSION=%{upstream_version}
|
|||||||
%postun
|
%postun
|
||||||
%systemd_postun face-unlockd.socket face-unlockd.service
|
%systemd_postun face-unlockd.socket face-unlockd.service
|
||||||
|
|
||||||
|
# After the old package is gone: its faces, settings and PAM lines.
|
||||||
|
%posttrans
|
||||||
|
%{_bindir}/face-unlock --root migrate || :
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%license LICENSE
|
%license LICENSE
|
||||||
%doc %{_datadir}/doc/%{name}/README.md
|
%doc %{_datadir}/doc/%{name}/README.md
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.0\n"
|
"Project-Id-Version: face-unlock 1.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-23 22:32+0200\n"
|
"PO-Revision-Date: 2026-09-23 22:32+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: German\n"
|
"Language-Team: German\n"
|
||||||
@@ -173,7 +173,7 @@ msgstr ""
|
|||||||
"Starte das als dein eigener Benutzer, nicht als root. Wenn nötig, wird nach "
|
"Starte das als dein eigener Benutzer, nicht als root. Wenn nötig, wird nach "
|
||||||
"deinem Passwort gefragt."
|
"deinem Passwort gefragt."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Unbekannter Befehl: %s"
|
msgstr "Unbekannter Befehl: %s"
|
||||||
@@ -669,6 +669,14 @@ msgstr "Ausprobieren"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Beenden"
|
msgstr "Beenden"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Deine Gesichter und Einstellungen werden von plasma-face-unlock übernommen. "
|
||||||
|
"Dafür ist dein Passwort nötig."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -679,26 +687,26 @@ msgstr "Das PAM-Modul ist nicht unter %s installiert."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "Auf diesem System gibt es keine PAM-Konfiguration für %s."
|
msgstr "Auf diesem System gibt es keine PAM-Konfiguration für %s."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Dafür braucht es root, aber weder sudo noch run0 noch doas ist installiert."
|
"Dafür braucht es root, aber weder sudo noch run0 noch doas ist installiert."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Dieser Befehl muss als root laufen."
|
msgstr "Dieser Befehl muss als root laufen."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Keine gültige Einstellung: %s=%s"
|
msgstr "Keine gültige Einstellung: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Dafür kann es nicht verwendet werden: %s"
|
msgstr "Dafür kann es nicht verwendet werden: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Spanish\n"
|
"Language-Team: Spanish\n"
|
||||||
@@ -174,7 +174,7 @@ msgstr ""
|
|||||||
"Ejecuta esto con tu propio usuario, no como root. Pide tu contraseña cuando "
|
"Ejecuta esto con tu propio usuario, no como root. Pide tu contraseña cuando "
|
||||||
"la necesita."
|
"la necesita."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Comando desconocido: %s"
|
msgstr "Comando desconocido: %s"
|
||||||
@@ -675,6 +675,14 @@ msgstr "Probarlo"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Salir"
|
msgstr "Salir"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Pasando tus caras y ajustes desde plasma-face-unlock. Para eso hace falta tu "
|
||||||
|
"contraseña."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -685,25 +693,25 @@ msgstr "El módulo PAM no está instalado en %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "No hay configuración PAM para %s en este sistema."
|
msgstr "No hay configuración PAM para %s en este sistema."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr "Esto necesita root, y no está instalado ni sudo, ni run0, ni doas."
|
msgstr "Esto necesita root, y no está instalado ni sudo, ni run0, ni doas."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Este comando tiene que ejecutarse como root."
|
msgstr "Este comando tiene que ejecutarse como root."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Ajuste no válido: %s=%s"
|
msgstr "Ajuste no válido: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "No se puede usar para este servicio: %s"
|
msgstr "No se puede usar para este servicio: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
+13
-7
@@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 09:30+0200\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@@ -160,7 +160,7 @@ msgid ""
|
|||||||
"needs to."
|
"needs to."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -621,6 +621,12 @@ msgstr ""
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -631,25 +637,25 @@ msgstr ""
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: French\n"
|
"Language-Team: French\n"
|
||||||
@@ -176,7 +176,7 @@ msgstr ""
|
|||||||
"Lancez ceci avec votre propre utilisateur, pas en root. Le mot de passe est "
|
"Lancez ceci avec votre propre utilisateur, pas en root. Le mot de passe est "
|
||||||
"demandé quand il le faut."
|
"demandé quand il le faut."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Commande inconnue : %s"
|
msgstr "Commande inconnue : %s"
|
||||||
@@ -679,6 +679,14 @@ msgstr "Essayer"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Quitter"
|
msgstr "Quitter"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Reprise de vos visages et réglages depuis plasma-face-unlock. Cela demande "
|
||||||
|
"votre mot de passe."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -689,26 +697,26 @@ msgstr "Le module PAM n'est pas installé dans %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "Il n'y a pas de configuration PAM pour %s sur ce système."
|
msgstr "Il n'y a pas de configuration PAM pour %s sur ce système."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Il faut les droits root, mais ni sudo, ni run0, ni doas n'est installé."
|
"Il faut les droits root, mais ni sudo, ni run0, ni doas n'est installé."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Cette commande doit être lancée en root."
|
msgstr "Cette commande doit être lancée en root."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Réglage non valide : %s=%s"
|
msgstr "Réglage non valide : %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Ne peut pas servir pour ce service : %s"
|
msgstr "Ne peut pas servir pour ce service : %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Italian\n"
|
"Language-Team: Italian\n"
|
||||||
@@ -172,7 +172,7 @@ msgstr ""
|
|||||||
"Esegui questo con il tuo utente, non come root. Chiede la password quando "
|
"Esegui questo con il tuo utente, non come root. Chiede la password quando "
|
||||||
"serve."
|
"serve."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Comando sconosciuto: %s"
|
msgstr "Comando sconosciuto: %s"
|
||||||
@@ -670,6 +670,14 @@ msgstr "Provalo"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Esci"
|
msgstr "Esci"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Trasferimento dei tuoi volti e delle impostazioni da plasma-face-unlock. "
|
||||||
|
"Serve la tua password."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -680,26 +688,26 @@ msgstr "Il modulo PAM non è installato in %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "Su questo sistema non c'è una configurazione PAM per %s."
|
msgstr "Su questo sistema non c'è una configurazione PAM per %s."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Servono i permessi di root, ma non è installato né sudo, né run0, né doas."
|
"Servono i permessi di root, ma non è installato né sudo, né run0, né doas."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Questo comando deve essere eseguito come root."
|
msgstr "Questo comando deve essere eseguito come root."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Impostazione non valida: %s=%s"
|
msgstr "Impostazione non valida: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Non si può usare per questo servizio: %s"
|
msgstr "Non si può usare per questo servizio: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Japanese\n"
|
"Language-Team: Japanese\n"
|
||||||
@@ -167,7 +167,7 @@ msgstr ""
|
|||||||
"root ではなく、自分のユーザーで実行してください。必要なときはパスワードを尋ね"
|
"root ではなく、自分のユーザーで実行してください。必要なときはパスワードを尋ね"
|
||||||
"ます。"
|
"ます。"
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "不明なコマンド: %s"
|
msgstr "不明なコマンド: %s"
|
||||||
@@ -657,6 +657,12 @@ msgstr "試す"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "終了"
|
msgstr "終了"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr "plasma-face-unlock から顔と設定を引き継ぎます。パスワードが必要です。"
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -667,26 +673,26 @@ msgstr "PAM モジュールが %s にインストールされていません。"
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "このシステムには %s の PAM 設定がありません。"
|
msgstr "このシステムには %s の PAM 設定がありません。"
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"root 権限が必要ですが、sudo も run0 も doas もインストールされていません。"
|
"root 権限が必要ですが、sudo も run0 も doas もインストールされていません。"
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "このコマンドは root で実行する必要があります。"
|
msgstr "このコマンドは root で実行する必要があります。"
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "無効な設定です: %s=%s"
|
msgstr "無効な設定です: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "このサービスには使えません: %s"
|
msgstr "このサービスには使えません: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Korean\n"
|
"Language-Team: Korean\n"
|
||||||
@@ -166,7 +166,7 @@ msgid ""
|
|||||||
"needs to."
|
"needs to."
|
||||||
msgstr "root가 아닌 본인 사용자로 실행하세요. 필요하면 비밀번호를 묻습니다."
|
msgstr "root가 아닌 본인 사용자로 실행하세요. 필요하면 비밀번호를 묻습니다."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "알 수 없는 명령: %s"
|
msgstr "알 수 없는 명령: %s"
|
||||||
@@ -655,6 +655,13 @@ msgstr "사용해 보기"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "끝내기"
|
msgstr "끝내기"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"plasma-face-unlock에서 얼굴과 설정을 옮겨 옵니다. 비밀번호가 필요합니다."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -665,26 +672,26 @@ msgstr "PAM 모듈이 다음 위치에 설치되어 있지 않습니다: %s"
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "이 시스템에는 %s용 PAM 설정이 없습니다."
|
msgstr "이 시스템에는 %s용 PAM 설정이 없습니다."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"root 권한이 필요하지만 sudo, run0, doas 중 아무것도 설치되어 있지 않습니다."
|
"root 권한이 필요하지만 sudo, run0, doas 중 아무것도 설치되어 있지 않습니다."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "이 명령은 root로 실행해야 합니다."
|
msgstr "이 명령은 root로 실행해야 합니다."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "올바르지 않은 설정: %s=%s"
|
msgstr "올바르지 않은 설정: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "이 서비스에는 사용할 수 없습니다: %s"
|
msgstr "이 서비스에는 사용할 수 없습니다: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Dutch\n"
|
"Language-Team: Dutch\n"
|
||||||
@@ -172,7 +172,7 @@ msgstr ""
|
|||||||
"Voer dit uit als je eigen gebruiker, niet als root. Het vraagt om je "
|
"Voer dit uit als je eigen gebruiker, niet als root. Het vraagt om je "
|
||||||
"wachtwoord als dat nodig is."
|
"wachtwoord als dat nodig is."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Onbekende opdracht: %s"
|
msgstr "Onbekende opdracht: %s"
|
||||||
@@ -666,6 +666,14 @@ msgstr "Uitproberen"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Afsluiten"
|
msgstr "Afsluiten"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Je gezichten en instellingen worden overgenomen van plasma-face-unlock. "
|
||||||
|
"Daarvoor is je wachtwoord nodig."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -676,27 +684,27 @@ msgstr "De PAM-module is niet geïnstalleerd in %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "Er is op dit systeem geen PAM-configuratie voor %s."
|
msgstr "Er is op dit systeem geen PAM-configuratie voor %s."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Dit heeft root nodig, maar sudo, run0 en doas zijn geen van alle "
|
"Dit heeft root nodig, maar sudo, run0 en doas zijn geen van alle "
|
||||||
"geïnstalleerd."
|
"geïnstalleerd."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Deze opdracht moet als root draaien."
|
msgstr "Deze opdracht moet als root draaien."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Geen geldige instelling: %s=%s"
|
msgstr "Geen geldige instelling: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Hier kan het niet voor worden gebruikt: %s"
|
msgstr "Hier kan het niet voor worden gebruikt: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Polish\n"
|
"Language-Team: Polish\n"
|
||||||
@@ -173,7 +173,7 @@ msgstr ""
|
|||||||
"Uruchom to jako swój użytkownik, nie jako root. Hasło zostanie zapytane, gdy "
|
"Uruchom to jako swój użytkownik, nie jako root. Hasło zostanie zapytane, gdy "
|
||||||
"będzie potrzebne."
|
"będzie potrzebne."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Nieznane polecenie: %s"
|
msgstr "Nieznane polecenie: %s"
|
||||||
@@ -668,6 +668,12 @@ msgstr "Wypróbuj"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Zakończ"
|
msgstr "Zakończ"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr "Przenoszenie twarzy i ustawień z plasma-face-unlock. To wymaga hasła."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -678,26 +684,26 @@ msgstr "Moduł PAM nie jest zainstalowany w %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "Na tym systemie nie ma konfiguracji PAM dla %s."
|
msgstr "Na tym systemie nie ma konfiguracji PAM dla %s."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"To wymaga roota, a nie jest zainstalowane ani sudo, ani run0, ani doas."
|
"To wymaga roota, a nie jest zainstalowane ani sudo, ani run0, ani doas."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "To polecenie musi działać jako root."
|
msgstr "To polecenie musi działać jako root."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Nieprawidłowe ustawienie: %s=%s"
|
msgstr "Nieprawidłowe ustawienie: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Nie można tego użyć dla tej usługi: %s"
|
msgstr "Nie można tego użyć dla tej usługi: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
+15
-7
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Brazilian Portuguese\n"
|
"Language-Team: Brazilian Portuguese\n"
|
||||||
@@ -173,7 +173,7 @@ msgstr ""
|
|||||||
"Execute isto com o seu próprio usuário, não como root. Ele pede a sua senha "
|
"Execute isto com o seu próprio usuário, não como root. Ele pede a sua senha "
|
||||||
"quando precisa."
|
"quando precisa."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Comando desconhecido: %s"
|
msgstr "Comando desconhecido: %s"
|
||||||
@@ -670,6 +670,14 @@ msgstr "Testar"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Sair"
|
msgstr "Sair"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Trazendo seus rostos e configurações do plasma-face-unlock. Isso precisa da "
|
||||||
|
"sua senha."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -680,25 +688,25 @@ msgstr "O módulo PAM não está instalado em %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "Não há configuração PAM para %s neste sistema."
|
msgstr "Não há configuração PAM para %s neste sistema."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr "Isto precisa de root, e nem sudo, nem run0, nem doas está instalado."
|
msgstr "Isto precisa de root, e nem sudo, nem run0, nem doas está instalado."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Este comando precisa ser executado como root."
|
msgstr "Este comando precisa ser executado como root."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Configuração inválida: %s=%s"
|
msgstr "Configuração inválida: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Não pode ser usado para este serviço: %s"
|
msgstr "Não pode ser usado para este serviço: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Russian\n"
|
"Language-Team: Russian\n"
|
||||||
@@ -173,7 +173,7 @@ msgstr ""
|
|||||||
"Запускайте это от своего пользователя, не от root. Пароль будет запрошен, "
|
"Запускайте это от своего пользователя, не от root. Пароль будет запрошен, "
|
||||||
"когда он понадобится."
|
"когда он понадобится."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Неизвестная команда: %s"
|
msgstr "Неизвестная команда: %s"
|
||||||
@@ -669,6 +669,14 @@ msgstr "Попробовать"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Выход"
|
msgstr "Выход"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Переносим ваши лица и настройки из plasma-face-unlock. Для этого нужен ваш "
|
||||||
|
"пароль."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -679,25 +687,25 @@ msgstr "Модуль PAM не установлен в %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "В этой системе нет настройки PAM для %s."
|
msgstr "В этой системе нет настройки PAM для %s."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr "Для этого нужен root, но не установлен ни sudo, ни run0, ни doas."
|
msgstr "Для этого нужен root, но не установлен ни sudo, ни run0, ни doas."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Эту команду нужно запускать от root."
|
msgstr "Эту команду нужно запускать от root."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Недопустимая настройка: %s=%s"
|
msgstr "Недопустимая настройка: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Для этой службы использовать нельзя: %s"
|
msgstr "Для этой службы использовать нельзя: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Turkish\n"
|
"Language-Team: Turkish\n"
|
||||||
@@ -168,7 +168,7 @@ msgstr ""
|
|||||||
"Bunu root olarak değil, kendi kullanıcınızla çalıştırın. Gerektiğinde "
|
"Bunu root olarak değil, kendi kullanıcınızla çalıştırın. Gerektiğinde "
|
||||||
"parolanızı sorar."
|
"parolanızı sorar."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Bilinmeyen komut: %s"
|
msgstr "Bilinmeyen komut: %s"
|
||||||
@@ -661,6 +661,14 @@ msgstr "Dene"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Çık"
|
msgstr "Çık"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Yüzleriniz ve ayarlarınız plasma-face-unlock'tan aktarılıyor. Bunun için "
|
||||||
|
"parolanız gerekiyor."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -671,25 +679,25 @@ msgstr "PAM modülü şu konumda kurulu değil: %s"
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "Bu sistemde %s için PAM yapılandırması yok."
|
msgstr "Bu sistemde %s için PAM yapılandırması yok."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr "Bunun için root gerekli, ama ne sudo ne run0 ne de doas kurulu."
|
msgstr "Bunun için root gerekli, ama ne sudo ne run0 ne de doas kurulu."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Bu komut root olarak çalışmalı."
|
msgstr "Bu komut root olarak çalışmalı."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Geçerli bir ayar değil: %s=%s"
|
msgstr "Geçerli bir ayar değil: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Bunun için kullanılamaz: %s"
|
msgstr "Bunun için kullanılamaz: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Ukrainian\n"
|
"Language-Team: Ukrainian\n"
|
||||||
@@ -174,7 +174,7 @@ msgstr ""
|
|||||||
"Запускайте це від свого користувача, не від root. Пароль буде запитано, коли "
|
"Запускайте це від свого користувача, не від root. Пароль буде запитано, коли "
|
||||||
"він знадобиться."
|
"він знадобиться."
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "Невідома команда: %s"
|
msgstr "Невідома команда: %s"
|
||||||
@@ -669,6 +669,14 @@ msgstr "Спробувати"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "Вийти"
|
msgstr "Вийти"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr ""
|
||||||
|
"Переносимо ваші обличчя й налаштування з plasma-face-unlock. Для цього "
|
||||||
|
"потрібен ваш пароль."
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -679,25 +687,25 @@ msgstr "Модуль PAM не встановлено в %s."
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "У цій системі немає налаштування PAM для %s."
|
msgstr "У цій системі немає налаштування PAM для %s."
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr "Для цього потрібен root, але не встановлено ні sudo, ні run0, ні doas."
|
msgstr "Для цього потрібен root, але не встановлено ні sudo, ні run0, ні doas."
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "Цю команду треба запускати від root."
|
msgstr "Цю команду треба запускати від root."
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "Неприпустиме налаштування: %s=%s"
|
msgstr "Неприпустиме налаштування: %s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "Для цієї служби використати не можна: %s"
|
msgstr "Для цієї служби використати не можна: %s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
+13
-7
@@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: face-unlock 1.0.1\n"
|
"Project-Id-Version: face-unlock 1.0.1\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/face-unlock/issues\n"
|
||||||
"POT-Creation-Date: 2026-09-25 09:29+0200\n"
|
"POT-Creation-Date: 2026-09-25 08:20+0200\n"
|
||||||
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
"PO-Revision-Date: 2026-09-24 12:00+0200\n"
|
||||||
"Last-Translator: Felitendo\n"
|
"Last-Translator: Felitendo\n"
|
||||||
"Language-Team: Chinese (simplified)\n"
|
"Language-Team: Chinese (simplified)\n"
|
||||||
@@ -159,7 +159,7 @@ msgid ""
|
|||||||
"needs to."
|
"needs to."
|
||||||
msgstr "请以你自己的用户运行,不要用 root。需要时会询问你的密码。"
|
msgstr "请以你自己的用户运行,不要用 root。需要时会询问你的密码。"
|
||||||
|
|
||||||
#: src/face-unlock:222 src/lib/system.sh:89
|
#: src/face-unlock:226 src/lib/system.sh:93
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Unknown command: %s"
|
msgid "Unknown command: %s"
|
||||||
msgstr "未知命令:%s"
|
msgstr "未知命令:%s"
|
||||||
@@ -622,6 +622,12 @@ msgstr "试一试"
|
|||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr "退出"
|
msgstr "退出"
|
||||||
|
|
||||||
|
#: src/lib/migrate.sh:119
|
||||||
|
msgid ""
|
||||||
|
"Moving your faces and settings over from plasma-face-unlock. That needs your "
|
||||||
|
"password."
|
||||||
|
msgstr "正在从 plasma-face-unlock 迁移你的人脸和设置。这需要你的密码。"
|
||||||
|
|
||||||
#: src/lib/pam.sh:132
|
#: src/lib/pam.sh:132
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "The PAM module is not installed at %s."
|
msgid "The PAM module is not installed at %s."
|
||||||
@@ -632,25 +638,25 @@ msgstr "PAM 模块未安装在 %s。"
|
|||||||
msgid "There is no PAM configuration for %s on this system."
|
msgid "There is no PAM configuration for %s on this system."
|
||||||
msgstr "此系统上没有 %s 的 PAM 配置。"
|
msgstr "此系统上没有 %s 的 PAM 配置。"
|
||||||
|
|
||||||
#: src/lib/system.sh:47
|
#: src/lib/system.sh:48
|
||||||
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
msgid "This needs root, and neither sudo, run0 nor doas is installed."
|
||||||
msgstr "这需要 root 权限,但 sudo、run0 和 doas 都没有安装。"
|
msgstr "这需要 root 权限,但 sudo、run0 和 doas 都没有安装。"
|
||||||
|
|
||||||
#: src/lib/system.sh:56
|
#: src/lib/system.sh:57
|
||||||
msgid "This command has to run as root."
|
msgid "This command has to run as root."
|
||||||
msgstr "此命令必须以 root 运行。"
|
msgstr "此命令必须以 root 运行。"
|
||||||
|
|
||||||
#: src/lib/system.sh:64
|
#: src/lib/system.sh:65
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a valid setting: %s=%s"
|
msgid "Not a valid setting: %s=%s"
|
||||||
msgstr "无效的设置:%s=%s"
|
msgstr "无效的设置:%s=%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:75
|
#: src/lib/system.sh:76
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Not a service this can be used for: %s"
|
msgid "Not a service this can be used for: %s"
|
||||||
msgstr "不能用于此服务:%s"
|
msgstr "不能用于此服务:%s"
|
||||||
|
|
||||||
#: src/lib/system.sh:131
|
#: src/lib/system.sh:135
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
"Hyprland does not start the lock screen agent by itself. Add this line to %s:"
|
||||||
|
|||||||
+6
-2
@@ -23,12 +23,12 @@ FU_SELF="$(readlink -f "${BASH_SOURCE[0]}")"
|
|||||||
# An environment that points the libraries somewhere else is ignored then.
|
# An environment that points the libraries somewhere else is ignored then.
|
||||||
if [[ $EUID -eq 0 ]]; then
|
if [[ $EUID -eq 0 ]]; then
|
||||||
unset FU_LIBDIR FU_LIBEXECDIR FU_LOCALEDIR FU_PAMDIR FU_CTL FU_AGENT FU_PAM_MODULE FU_SYSCONFIG \
|
unset FU_LIBDIR FU_LIBEXECDIR FU_LOCALEDIR FU_PAMDIR FU_CTL FU_AGENT FU_PAM_MODULE FU_SYSCONFIG \
|
||||||
FU_PAM_ETC_DIR FU_PAM_VENDOR_DIRS
|
FU_PAM_ETC_DIR FU_PAM_VENDOR_DIRS FU_OLD_SYSDIR FU_OLD_STATEDIR FU_STATEDIR FU_SYSTEMD_ETC
|
||||||
fi
|
fi
|
||||||
|
|
||||||
FU_LIBDIR="${FU_LIBDIR:-@LIBDIR@}"
|
FU_LIBDIR="${FU_LIBDIR:-@LIBDIR@}"
|
||||||
|
|
||||||
for _mod in common config daemon pam system menu; do
|
for _mod in common config daemon pam system migrate menu; do
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
if ! source "$FU_LIBDIR/$_mod.sh"; then
|
if ! source "$FU_LIBDIR/$_mod.sh"; then
|
||||||
printf 'face-unlock: cannot load %s/%s.sh\n' "$FU_LIBDIR" "$_mod" >&2
|
printf 'face-unlock: cannot load %s/%s.sh\n' "$FU_LIBDIR" "$_mod" >&2
|
||||||
@@ -205,6 +205,10 @@ main() {
|
|||||||
exit 2
|
exit 2
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
case "$cmd" in
|
||||||
|
''|enable|disable|setup|add|enroll|faces|list|remove|delete|test|try) fu_migrate ;;
|
||||||
|
esac
|
||||||
|
|
||||||
case "$cmd" in
|
case "$cmd" in
|
||||||
enable) fu_do_enable ;;
|
enable) fu_do_enable ;;
|
||||||
disable) fu_do_disable ;;
|
disable) fu_do_disable ;;
|
||||||
|
|||||||
@@ -0,0 +1,121 @@
|
|||||||
|
# shellcheck shell=bash
|
||||||
|
#
|
||||||
|
# Moving over from plasma-face-unlock, the old name.
|
||||||
|
#
|
||||||
|
# The packages run `face-unlock --root migrate` when they are installed. The
|
||||||
|
# command runs it too (through sudo) when it finds something left over, for
|
||||||
|
# anybody who built it from source. This user's own settings need no root and
|
||||||
|
# are moved every time the command starts.
|
||||||
|
|
||||||
|
FU_OLD_NAME="plasma-face-unlock"
|
||||||
|
FU_OLD_PAM_MARK="# plasma-face-unlock: the face first, the password if that does not work"
|
||||||
|
FU_OLD_PAM_WRAPPER_MARK="# Written by plasma-face-unlock."
|
||||||
|
|
||||||
|
# Overridable for the tests only, like the PAM directories.
|
||||||
|
FU_OLD_SYSDIR="${FU_OLD_SYSDIR:-/etc/$FU_OLD_NAME}"
|
||||||
|
FU_OLD_STATEDIR="${FU_OLD_STATEDIR:-/var/lib/$FU_OLD_NAME}"
|
||||||
|
FU_STATEDIR="${FU_STATEDIR:-/var/lib/$FU_NAME}"
|
||||||
|
FU_SYSTEMD_ETC="${FU_SYSTEMD_ETC:-/etc/systemd/system}"
|
||||||
|
|
||||||
|
_fu_old_socket_link() {
|
||||||
|
printf '%s/sockets.target.wants/%sd.socket\n' "$FU_SYSTEMD_ETC" "$FU_OLD_NAME"
|
||||||
|
}
|
||||||
|
|
||||||
|
# _fu_pam_has_old <service>
|
||||||
|
_fu_pam_has_old() {
|
||||||
|
local file
|
||||||
|
file="$(fu_pam_etc "$1")"
|
||||||
|
[[ -r $file ]] && grep -q 'pam_plasma_face_unlock\.so' "$file"
|
||||||
|
}
|
||||||
|
|
||||||
|
# _fu_pam_drop_old <service> (root)
|
||||||
|
_fu_pam_drop_old() {
|
||||||
|
local file content
|
||||||
|
file="$(fu_pam_etc "$1")"
|
||||||
|
if head -n 3 "$file" | grep -qF "$FU_OLD_PAM_WRAPPER_MARK"; then
|
||||||
|
rm -f -- "$file"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
content="$(awk -v mark="$FU_OLD_PAM_MARK" '
|
||||||
|
$0 == mark { next }
|
||||||
|
/pam_plasma_face_unlock\.so/ { next }
|
||||||
|
{ print }
|
||||||
|
' "$file")" || return 1
|
||||||
|
_fu_pam_replace "$file" "$content"
|
||||||
|
}
|
||||||
|
|
||||||
|
# fu_migrate_system (root)
|
||||||
|
# The system settings, the faces, sudo and admin prompts and the daemon's
|
||||||
|
# socket, as plasma-face-unlock left them.
|
||||||
|
fu_migrate_system() {
|
||||||
|
local service link
|
||||||
|
|
||||||
|
if [[ -d $FU_OLD_SYSDIR ]]; then
|
||||||
|
if [[ -f $FU_OLD_SYSDIR/config && ! -e $FU_SYSCONFIG ]]; then
|
||||||
|
install -D -m 0644 "$FU_OLD_SYSDIR/config" "$FU_SYSCONFIG" || return 1
|
||||||
|
fi
|
||||||
|
rm -rf -- "$FU_OLD_SYSDIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -d $FU_OLD_STATEDIR ]]; then
|
||||||
|
# Faces already set up under the new name win.
|
||||||
|
if [[ -d $FU_OLD_STATEDIR/users ]] && ! compgen -G "$FU_STATEDIR/users/*" > /dev/null; then
|
||||||
|
install -d -m 0700 "$FU_STATEDIR" || return 1
|
||||||
|
rm -rf -- "$FU_STATEDIR/users"
|
||||||
|
mv -- "$FU_OLD_STATEDIR/users" "$FU_STATEDIR/users" || return 1
|
||||||
|
fi
|
||||||
|
rm -rf -- "$FU_OLD_STATEDIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
for service in "${FU_PAM_SERVICES[@]}"; do
|
||||||
|
_fu_pam_has_old "$service" || continue
|
||||||
|
_fu_pam_drop_old "$service" && fu_pam_enable "$service"
|
||||||
|
done
|
||||||
|
|
||||||
|
link="$(_fu_old_socket_link)"
|
||||||
|
if [[ -L $link ]]; then
|
||||||
|
systemctl disable --now "${FU_OLD_NAME}d.socket" > /dev/null 2>&1 || true
|
||||||
|
rm -f -- "$link"
|
||||||
|
systemctl enable --now "$FU_UNIT_SOCKET" > /dev/null 2>&1 || true
|
||||||
|
fi
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# fu_migrate_pending
|
||||||
|
# Whether something needs fu_migrate_system.
|
||||||
|
fu_migrate_pending() {
|
||||||
|
local service
|
||||||
|
[[ -d $FU_OLD_SYSDIR || -d $FU_OLD_STATEDIR || -L $(_fu_old_socket_link) ]] && return 0
|
||||||
|
for service in "${FU_PAM_SERVICES[@]}"; do
|
||||||
|
_fu_pam_has_old "$service" && return 0
|
||||||
|
done
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# fu_migrate_user
|
||||||
|
# This user's settings and the agent's service.
|
||||||
|
fu_migrate_user() {
|
||||||
|
local old="$FU_XDG_CONFIG/$FU_OLD_NAME" link
|
||||||
|
if [[ -d $old ]]; then
|
||||||
|
if [[ -e $FU_CONFDIR ]]; then
|
||||||
|
rm -rf -- "$old"
|
||||||
|
else
|
||||||
|
mv -- "$old" "$FU_CONFDIR"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
link="$FU_XDG_CONFIG/systemd/user/graphical-session.target.wants/$FU_OLD_NAME-agent.service"
|
||||||
|
if [[ -L $link ]]; then
|
||||||
|
systemctl --user disable --now "$FU_OLD_NAME-agent.service" > /dev/null 2>&1 || true
|
||||||
|
rm -f -- "$link"
|
||||||
|
fu_agent_available && fu_agent_enable
|
||||||
|
fi
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# fu_migrate
|
||||||
|
fu_migrate() {
|
||||||
|
fu_migrate_user
|
||||||
|
fu_migrate_pending || return 0
|
||||||
|
fu_say " $(fu_msg "Moving your faces and settings over from plasma-face-unlock. That needs your password.")"
|
||||||
|
fu_root migrate
|
||||||
|
}
|
||||||
@@ -13,6 +13,7 @@
|
|||||||
# --root pam-disable <service>
|
# --root pam-disable <service>
|
||||||
# --root socket-enable start the daemon's socket, and at boot
|
# --root socket-enable start the daemon's socket, and at boot
|
||||||
# --root socket-disable
|
# --root socket-disable
|
||||||
|
# --root migrate move over from plasma-face-unlock, see migrate.sh
|
||||||
|
|
||||||
FU_SELF="${FU_SELF:-$(readlink -f "${BASH_SOURCE[1]:-$0}")}"
|
FU_SELF="${FU_SELF:-$(readlink -f "${BASH_SOURCE[1]:-$0}")}"
|
||||||
|
|
||||||
@@ -85,6 +86,9 @@ fu_root_verb() {
|
|||||||
socket-disable)
|
socket-disable)
|
||||||
systemctl disable --now "$FU_UNIT_SOCKET" > /dev/null 2>&1
|
systemctl disable --now "$FU_UNIT_SOCKET" > /dev/null 2>&1
|
||||||
;;
|
;;
|
||||||
|
migrate)
|
||||||
|
fu_migrate_system
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
fu_bad "$(fu_msg "Unknown command: %s" "$verb")"
|
fu_bad "$(fu_msg "Unknown command: %s" "$verb")"
|
||||||
return 1
|
return 1
|
||||||
|
|||||||
@@ -10,6 +10,8 @@
|
|||||||
# When the pam_harness from the build is there, the files that come out are
|
# When the pam_harness from the build is there, the files that come out are
|
||||||
# also run through real PAM, with the module missing on purpose: the dash in
|
# also run through real PAM, with the module missing on purpose: the dash in
|
||||||
# front of the line has to make PAM skip it without a word.
|
# front of the line has to make PAM skip it without a word.
|
||||||
|
#
|
||||||
|
# Last, moving over from plasma-face-unlock: its PAM lines, settings and faces.
|
||||||
|
|
||||||
# check() runs its second argument with eval, so that is quoted on purpose.
|
# check() runs its second argument with eval, so that is quoted on purpose.
|
||||||
# shellcheck disable=SC2016
|
# shellcheck disable=SC2016
|
||||||
@@ -29,6 +31,10 @@ source "$FU_LIBDIR/common.sh"
|
|||||||
source "$FU_LIBDIR/config.sh"
|
source "$FU_LIBDIR/config.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "$FU_LIBDIR/pam.sh"
|
source "$FU_LIBDIR/pam.sh"
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
source "$FU_LIBDIR/system.sh"
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
source "$FU_LIBDIR/migrate.sh"
|
||||||
|
|
||||||
FU_PAM_MODULE="$tmp/lib/pam_face_unlock.so"
|
FU_PAM_MODULE="$tmp/lib/pam_face_unlock.so"
|
||||||
mkdir -p "$tmp/lib" "$tmp/etc" "$tmp/vendor"
|
mkdir -p "$tmp/lib" "$tmp/etc" "$tmp/vendor"
|
||||||
@@ -117,6 +123,73 @@ check "vendor polkit-1: turning it off removes our file" '[[ ! -e $tmp/etc/polki
|
|||||||
# No configuration at all.
|
# No configuration at all.
|
||||||
check "an unknown service is refused" '! fu_pam_enable nosuchservice 2>/dev/null'
|
check "an unknown service is refused" '! fu_pam_enable nosuchservice 2>/dev/null'
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------------------
|
||||||
|
# Moving over from plasma-face-unlock
|
||||||
|
# ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
FU_OLD_SYSDIR="$tmp/old-etc"
|
||||||
|
FU_OLD_STATEDIR="$tmp/old-state"
|
||||||
|
FU_STATEDIR="$tmp/state"
|
||||||
|
FU_SYSCONFIG="$tmp/new-etc/config"
|
||||||
|
FU_SYSTEMD_ETC="$tmp/systemd"
|
||||||
|
old_module=/usr/lib/security/pam_plasma_face_unlock.so
|
||||||
|
|
||||||
|
# What plasma-face-unlock wrote is what this writes, under the old name.
|
||||||
|
make_old() {
|
||||||
|
sed -i -e "s|^$FU_PAM_MARK\$|$FU_OLD_PAM_MARK|" -e "s|$FU_PAM_WRAPPER_MARK|$FU_OLD_PAM_WRAPPER_MARK|" \
|
||||||
|
-e "s|$FU_PAM_MODULE|$old_module|" "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
for layout in arch_sudo debian_sudo fedora_sudo; do
|
||||||
|
printf '%s\n' "${!layout}" > "$tmp/etc/sudo"
|
||||||
|
cp "$tmp/etc/sudo" "$tmp/original"
|
||||||
|
fu_pam_enable sudo
|
||||||
|
make_old "$tmp/etc/sudo"
|
||||||
|
check "$layout: the old line is found" '_fu_pam_has_old sudo && ! fu_pam_enabled sudo && fu_migrate_pending'
|
||||||
|
|
||||||
|
fu_migrate_system
|
||||||
|
check "$layout: moved over to the new line" 'fu_pam_enabled sudo && ! _fu_pam_has_old sudo'
|
||||||
|
check "$layout: the old comment is gone" '! grep -qF "$FU_OLD_PAM_MARK" "$tmp/etc/sudo"'
|
||||||
|
check "$layout: nothing is left over" '! fu_migrate_pending'
|
||||||
|
|
||||||
|
fu_pam_disable sudo
|
||||||
|
check "$layout: off again gives back the file from before" 'cmp -s "$tmp/etc/sudo" "$tmp/original"'
|
||||||
|
rm -f "$tmp/etc/sudo"
|
||||||
|
done
|
||||||
|
|
||||||
|
fu_pam_enable polkit-1
|
||||||
|
make_old "$tmp/etc/polkit-1"
|
||||||
|
fu_migrate_system
|
||||||
|
check "vendor polkit-1: moved over to a file of the new name" 'grep -qF "$FU_PAM_WRAPPER_MARK" "$tmp/etc/polkit-1" && ! grep -q plasma "$tmp/etc/polkit-1"'
|
||||||
|
fu_pam_disable polkit-1
|
||||||
|
|
||||||
|
mkdir -p "$FU_OLD_SYSDIR" "$FU_OLD_STATEDIR/users"
|
||||||
|
echo 'Liveness=heavy' > "$FU_OLD_SYSDIR/config"
|
||||||
|
echo '{}' > "$FU_OLD_STATEDIR/users/1000.json"
|
||||||
|
check "old settings and faces are found" 'fu_migrate_pending'
|
||||||
|
fu_migrate_system
|
||||||
|
check "the system settings moved" '[[ $(cat "$FU_SYSCONFIG") == Liveness=heavy && ! -e $FU_OLD_SYSDIR ]]'
|
||||||
|
check "the faces moved" '[[ $(cat "$FU_STATEDIR/users/1000.json") == "{}" && ! -e $FU_OLD_STATEDIR ]]'
|
||||||
|
|
||||||
|
mkdir -p "$FU_OLD_STATEDIR/users"
|
||||||
|
echo old > "$FU_OLD_STATEDIR/users/1000.json"
|
||||||
|
fu_migrate_system
|
||||||
|
check "faces set up under the new name win" '[[ $(cat "$FU_STATEDIR/users/1000.json") == "{}" && ! -e $FU_OLD_STATEDIR ]]'
|
||||||
|
check "nothing is left over at the end" '! fu_migrate_pending'
|
||||||
|
|
||||||
|
# This user's side, with systemctl only written down.
|
||||||
|
# shellcheck disable=SC2329 # called by fu_migrate_user
|
||||||
|
systemctl() { printf '%s\n' "$*" >> "$tmp/systemctl"; }
|
||||||
|
FU_XDG_CONFIG="$tmp/home-config"
|
||||||
|
FU_CONFDIR="$FU_XDG_CONFIG/face-unlock"
|
||||||
|
mkdir -p "$FU_XDG_CONFIG/plasma-face-unlock" "$FU_XDG_CONFIG/systemd/user/graphical-session.target.wants"
|
||||||
|
echo 'Enabled=yes' > "$FU_XDG_CONFIG/plasma-face-unlock/config"
|
||||||
|
ln -s /nowhere "$FU_XDG_CONFIG/systemd/user/graphical-session.target.wants/plasma-face-unlock-agent.service"
|
||||||
|
XDG_RUNTIME_DIR="${XDG_RUNTIME_DIR:-$tmp}" fu_migrate_user
|
||||||
|
check "user settings moved" '[[ $(cat "$FU_CONFDIR/config") == Enabled=yes && ! -e $FU_XDG_CONFIG/plasma-face-unlock ]]'
|
||||||
|
check "the old agent is off and the new one on" 'grep -q "disable --now plasma-face-unlock-agent" "$tmp/systemctl" && grep -q "enable --now face-unlock-agent" "$tmp/systemctl"'
|
||||||
|
unset -f systemctl
|
||||||
|
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
# Through real PAM
|
# Through real PAM
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
|
|||||||
Reference in new issue
Block a user