mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-08-06 21:48:30 -04:00
i18n: cut down new pam terms
This commit is contained in:
@@ -31,7 +31,7 @@ func TestLockScreenAuthenticationCardOwnsFactorControls(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
content := string(data)
|
content := string(data)
|
||||||
authCard := strings.Index(content, `title: I18n.tr("Lock Screen Authentication")`)
|
authCard := strings.Index(content, `title: I18n.tr("Authentication")`)
|
||||||
behaviorCard := strings.Index(content, `title: I18n.tr("Lock Screen behaviour")`)
|
behaviorCard := strings.Index(content, `title: I18n.tr("Lock Screen behaviour")`)
|
||||||
fingerprintToggle := strings.Index(content, `settingKey: "enableFprint"`)
|
fingerprintToggle := strings.Index(content, `settingKey: "enableFprint"`)
|
||||||
u2fToggle := strings.Index(content, `settingKey: "enableU2f"`)
|
u2fToggle := strings.Index(content, `settingKey: "enableU2f"`)
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ Item {
|
|||||||
|
|
||||||
function greeterFingerprintDescription() {
|
function greeterFingerprintDescription() {
|
||||||
if (SettingsData.greeterPamExternallyManaged)
|
if (SettingsData.greeterPamExternallyManaged)
|
||||||
return "greetd PAM is externally managed";
|
return I18n.tr("Managed by the primary PAM source.", "factor managed by PAM source status");
|
||||||
if (SettingsData.greeterFingerprintSource === "pam")
|
if (SettingsData.greeterFingerprintSource === "pam")
|
||||||
return I18n.tr("PAM already provides fingerprint auth. Enable this to show it at login.", "greeter fingerprint login setting");
|
return I18n.tr("PAM already provides fingerprint auth. Enable this to show it at login.", "greeter fingerprint login setting");
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ Item {
|
|||||||
|
|
||||||
function greeterU2fDescription() {
|
function greeterU2fDescription() {
|
||||||
if (SettingsData.greeterPamExternallyManaged)
|
if (SettingsData.greeterPamExternallyManaged)
|
||||||
return "greetd PAM is externally managed";
|
return I18n.tr("Managed by the primary PAM source.", "factor managed by PAM source status");
|
||||||
if (SettingsData.greeterU2fSource === "pam")
|
if (SettingsData.greeterU2fSource === "pam")
|
||||||
return I18n.tr("PAM already provides security-key auth. Enable this to show it at login.", "greeter security key login setting");
|
return I18n.tr("PAM already provides security-key auth. Enable this to show it at login.", "greeter security key login setting");
|
||||||
|
|
||||||
@@ -485,8 +485,8 @@ Item {
|
|||||||
SettingsToggleRow {
|
SettingsToggleRow {
|
||||||
settingKey: "greeterPamExternallyManaged"
|
settingKey: "greeterPamExternallyManaged"
|
||||||
tags: ["greeter", "pam", "managed", "external", "greetd", "auth"]
|
tags: ["greeter", "pam", "managed", "external", "greetd", "auth"]
|
||||||
text: "greetd PAM is externally managed"
|
text: I18n.tr("Use system PAM authentication", "system PAM policy toggle")
|
||||||
description: "DMS removes its managed block from /etc/pam.d/greetd and stops writing to it"
|
description: I18n.tr("DMS removes its managed block from /etc/pam.d/greetd and stops writing to it", "greeter system PAM toggle description")
|
||||||
checked: SettingsData.greeterPamExternallyManaged
|
checked: SettingsData.greeterPamExternallyManaged
|
||||||
onToggled: checked => SettingsData.set("greeterPamExternallyManaged", checked)
|
onToggled: checked => SettingsData.set("greeterPamExternallyManaged", checked)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -192,12 +192,12 @@ Item {
|
|||||||
} catch (e) {}
|
} catch (e) {}
|
||||||
|
|
||||||
if (!data) {
|
if (!data) {
|
||||||
root.authValidateMessage = "Validation failed — is DMS in PATH?";
|
root.authValidateMessage = I18n.tr("Config validation failed");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!data.valid) {
|
if (!data.valid) {
|
||||||
const errs = Array.isArray(data.errors) ? data.errors : [];
|
const errs = Array.isArray(data.errors) ? data.errors : [];
|
||||||
root.authValidateMessage = ["Not applied.", ...errs].join("\n");
|
root.authValidateMessage = [I18n.tr("Config validation failed"), ...errs].join("\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -207,7 +207,7 @@ Item {
|
|||||||
const warns = Array.isArray(data.warnings) ? data.warnings : [];
|
const warns = Array.isArray(data.warnings) ? data.warnings : [];
|
||||||
root.authValidateOk = true;
|
root.authValidateOk = true;
|
||||||
root.authValidateWarn = warns.length > 0;
|
root.authValidateWarn = warns.length > 0;
|
||||||
root.authValidateMessage = warns.length > 0 ? ["Applied with warnings.", ...warns].join("\n") : "Applied.";
|
root.authValidateMessage = [I18n.tr("Authentication changes applied."), ...warns].join("\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -232,12 +232,12 @@ Item {
|
|||||||
} catch (e) {}
|
} catch (e) {}
|
||||||
|
|
||||||
if (!data) {
|
if (!data) {
|
||||||
root.u2fValidateMessage = "Validation failed — is DMS in PATH?";
|
root.u2fValidateMessage = I18n.tr("Config validation failed");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!data.valid) {
|
if (!data.valid) {
|
||||||
const errs = Array.isArray(data.errors) ? data.errors : [];
|
const errs = Array.isArray(data.errors) ? data.errors : [];
|
||||||
root.u2fValidateMessage = ["Not applied.", ...errs].join("\n");
|
root.u2fValidateMessage = [I18n.tr("Config validation failed"), ...errs].join("\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -245,7 +245,7 @@ Item {
|
|||||||
const warns = Array.isArray(data.warnings) ? data.warnings : [];
|
const warns = Array.isArray(data.warnings) ? data.warnings : [];
|
||||||
root.u2fValidateOk = true;
|
root.u2fValidateOk = true;
|
||||||
root.u2fValidateWarn = warns.length > 0;
|
root.u2fValidateWarn = warns.length > 0;
|
||||||
root.u2fValidateMessage = warns.length > 0 ? ["Applied with warnings.", ...warns].join("\n") : "Applied.";
|
root.u2fValidateMessage = [I18n.tr("Authentication changes applied."), ...warns].join("\n");
|
||||||
root.refreshAuthDetection();
|
root.refreshAuthDetection();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -396,11 +396,11 @@ Item {
|
|||||||
SettingsCard {
|
SettingsCard {
|
||||||
width: parent.width
|
width: parent.width
|
||||||
iconName: "key"
|
iconName: "key"
|
||||||
title: I18n.tr("Lock Screen Authentication")
|
title: I18n.tr("Authentication")
|
||||||
settingKey: "lockAuthSource"
|
settingKey: "lockAuthSource"
|
||||||
|
|
||||||
StyledText {
|
StyledText {
|
||||||
text: I18n.tr("Changes apply automatically")
|
text: I18n.tr("Authentication changes apply automatically.")
|
||||||
font.pixelSize: Theme.fontSizeSmall
|
font.pixelSize: Theme.fontSizeSmall
|
||||||
color: Theme.surfaceVariantText
|
color: Theme.surfaceVariantText
|
||||||
width: parent.width
|
width: parent.width
|
||||||
@@ -410,8 +410,8 @@ Item {
|
|||||||
SettingsDropdownRow {
|
SettingsDropdownRow {
|
||||||
settingKey: "lockPamPath"
|
settingKey: "lockPamPath"
|
||||||
tags: ["lock", "screen", "pam", "authentication", "source", "service"]
|
tags: ["lock", "screen", "pam", "authentication", "source", "service"]
|
||||||
text: "Authentication Source"
|
text: I18n.tr("Authentication Source", "lock screen PAM source setting")
|
||||||
description: SettingsData.lockPamPath !== "" ? SettingsData.lockPamPath : "Which PAM service the lock screen uses to authenticate"
|
description: SettingsData.lockPamPath !== "" ? SettingsData.lockPamPath : I18n.tr("Which PAM service the lock screen uses to authenticate", "lock screen PAM source setting")
|
||||||
options: root.authOptions
|
options: root.authOptions
|
||||||
currentValue: root.authCurrentValue
|
currentValue: root.authCurrentValue
|
||||||
onValueChanged: value => {
|
onValueChanged: value => {
|
||||||
@@ -472,21 +472,11 @@ Item {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
StyledText {
|
|
||||||
visible: !SettingsData.lockPamExternallyManaged && (root.primaryPamHasFprint || root.primaryPamHasU2f)
|
|
||||||
text: I18n.tr("Selected PAM source already manages the detected factors.")
|
|
||||||
font.pixelSize: Theme.fontSizeSmall
|
|
||||||
color: Theme.warning
|
|
||||||
width: parent.width
|
|
||||||
wrapMode: Text.Wrap
|
|
||||||
topPadding: Theme.spacingS
|
|
||||||
}
|
|
||||||
|
|
||||||
SettingsToggleRow {
|
SettingsToggleRow {
|
||||||
settingKey: "lockPamExternallyManaged"
|
settingKey: "lockPamExternallyManaged"
|
||||||
tags: ["lock", "screen", "pam", "managed", "external", "authentication", "policy"]
|
tags: ["lock", "screen", "pam", "managed", "external", "authentication", "policy"]
|
||||||
text: I18n.tr("Use system PAM authentication")
|
text: I18n.tr("Use system PAM authentication", "system PAM policy toggle")
|
||||||
description: SettingsData.lockPamExternallyManaged ? I18n.tr("System PAM sets the authentication policy.") : I18n.tr("DMS manages the factors below.")
|
description: I18n.tr("System PAM sets the authentication policy.", "system PAM policy toggle")
|
||||||
checked: SettingsData.lockPamExternallyManaged
|
checked: SettingsData.lockPamExternallyManaged
|
||||||
onToggled: checked => SettingsData.set("lockPamExternallyManaged", checked)
|
onToggled: checked => SettingsData.set("lockPamExternallyManaged", checked)
|
||||||
}
|
}
|
||||||
@@ -495,7 +485,7 @@ Item {
|
|||||||
settingKey: "enableFprint"
|
settingKey: "enableFprint"
|
||||||
tags: ["lock", "screen", "fingerprint", "authentication", "biometric", "fprint"]
|
tags: ["lock", "screen", "fingerprint", "authentication", "biometric", "fprint"]
|
||||||
text: I18n.tr("Enable fingerprint authentication")
|
text: I18n.tr("Enable fingerprint authentication")
|
||||||
description: root.lockFprintControlledByPrimary ? I18n.tr("Managed by the primary PAM source.") : root.lockFingerprintDescription()
|
description: root.lockFprintControlledByPrimary ? I18n.tr("Managed by the primary PAM source.", "factor managed by PAM source status") : root.lockFingerprintDescription()
|
||||||
descriptionColor: root.lockFprintControlledByPrimary || SettingsData.lockFingerprintReason === "ready" ? Theme.surfaceVariantText : Theme.warning
|
descriptionColor: root.lockFprintControlledByPrimary || SettingsData.lockFingerprintReason === "ready" ? Theme.surfaceVariantText : Theme.warning
|
||||||
checked: SettingsData.enableFprint || root.primaryPamHasFprint
|
checked: SettingsData.enableFprint || root.primaryPamHasFprint
|
||||||
enabled: root.lockFprintToggleAvailable && !root.lockFprintControlledByPrimary
|
enabled: root.lockFprintToggleAvailable && !root.lockFprintControlledByPrimary
|
||||||
@@ -506,7 +496,7 @@ Item {
|
|||||||
settingKey: "enableU2f"
|
settingKey: "enableU2f"
|
||||||
tags: ["lock", "screen", "u2f", "yubikey", "security", "key", "fido", "authentication", "hardware"]
|
tags: ["lock", "screen", "u2f", "yubikey", "security", "key", "fido", "authentication", "hardware"]
|
||||||
text: I18n.tr("Enable security key authentication", "Enable FIDO2/U2F hardware security key for lock screen")
|
text: I18n.tr("Enable security key authentication", "Enable FIDO2/U2F hardware security key for lock screen")
|
||||||
description: root.lockU2fControlledByPrimary ? I18n.tr("Managed by the primary PAM source.") : root.lockU2fDescription()
|
description: root.lockU2fControlledByPrimary ? I18n.tr("Managed by the primary PAM source.", "factor managed by PAM source status") : root.lockU2fDescription()
|
||||||
descriptionColor: root.lockU2fControlledByPrimary || SettingsData.lockU2fReason === "ready" ? Theme.surfaceVariantText : Theme.warning
|
descriptionColor: root.lockU2fControlledByPrimary || SettingsData.lockU2fReason === "ready" ? Theme.surfaceVariantText : Theme.warning
|
||||||
checked: SettingsData.enableU2f || root.primaryPamHasU2f
|
checked: SettingsData.enableU2f || root.primaryPamHasU2f
|
||||||
enabled: root.lockU2fToggleAvailable && !root.lockU2fControlledByPrimary
|
enabled: root.lockU2fToggleAvailable && !root.lockU2fControlledByPrimary
|
||||||
@@ -517,7 +507,7 @@ Item {
|
|||||||
settingKey: "u2fMode"
|
settingKey: "u2fMode"
|
||||||
tags: ["lock", "screen", "u2f", "yubikey", "security", "key", "mode", "factor", "second"]
|
tags: ["lock", "screen", "u2f", "yubikey", "security", "key", "mode", "factor", "second"]
|
||||||
text: I18n.tr("Security key mode", "lock screen U2F security key mode setting")
|
text: I18n.tr("Security key mode", "lock screen U2F security key mode setting")
|
||||||
description: I18n.tr("Alternative uses the passkey button. Second factor follows password or fingerprint.", "lock screen U2F security key mode setting")
|
description: I18n.tr("'Alternative' lets the key unlock on its own. 'Second factor' requires password or fingerprint first, then the key.", "lock screen U2F security key mode setting")
|
||||||
visible: SettingsData.enableU2f && !root.lockU2fControlledByPrimary
|
visible: SettingsData.enableU2f && !root.lockU2fControlledByPrimary
|
||||||
options: [I18n.tr("Alternative (OR)", "U2F mode option: key works as standalone unlock method"), I18n.tr("Second Factor (AND)", "U2F mode option: key required after password or fingerprint")]
|
options: [I18n.tr("Alternative (OR)", "U2F mode option: key works as standalone unlock method"), I18n.tr("Second Factor (AND)", "U2F mode option: key required after password or fingerprint")]
|
||||||
currentValue: SettingsData.u2fMode === "and" ? I18n.tr("Second Factor (AND)", "U2F mode option: key required after password or fingerprint") : I18n.tr("Alternative (OR)", "U2F mode option: key works as standalone unlock method")
|
currentValue: SettingsData.u2fMode === "and" ? I18n.tr("Second Factor (AND)", "U2F mode option: key required after password or fingerprint") : I18n.tr("Alternative (OR)", "U2F mode option: key works as standalone unlock method")
|
||||||
@@ -532,8 +522,8 @@ Item {
|
|||||||
SettingsDropdownRow {
|
SettingsDropdownRow {
|
||||||
settingKey: "lockU2fPamPath"
|
settingKey: "lockU2fPamPath"
|
||||||
tags: ["lock", "screen", "pam", "u2f", "security", "key", "source", "service"]
|
tags: ["lock", "screen", "pam", "u2f", "security", "key", "source", "service"]
|
||||||
text: I18n.tr("Security Key PAM Source")
|
text: I18n.tr("Security Key PAM Source", "lock screen dedicated U2F PAM source setting")
|
||||||
description: SettingsData.lockU2fPamPath !== "" ? SettingsData.lockU2fPamPath : I18n.tr("Auto uses an installed or bundled key-only service.")
|
description: SettingsData.lockU2fPamPath !== "" ? SettingsData.lockU2fPamPath : I18n.tr("Auto uses an installed or bundled key-only service.", "lock screen dedicated U2F PAM source setting")
|
||||||
visible: !root.lockU2fControlledByPrimary
|
visible: !root.lockU2fControlledByPrimary
|
||||||
options: [root.authAutoLabel, root.authCustomLabel]
|
options: [root.authAutoLabel, root.authCustomLabel]
|
||||||
currentValue: root.u2fAuthCurrentValue
|
currentValue: root.u2fAuthCurrentValue
|
||||||
|
|||||||
@@ -4635,21 +4635,47 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"section": "lockPamPath",
|
"section": "lockAuthSource",
|
||||||
"label": "Authentication Source",
|
"label": "Authentication",
|
||||||
"tabIndex": 11,
|
"tabIndex": 11,
|
||||||
"category": "Lock Screen",
|
"category": "Lock Screen",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
|
"authenticate",
|
||||||
"authentication",
|
"authentication",
|
||||||
"lock",
|
"lock",
|
||||||
|
"lockscreen",
|
||||||
"login",
|
"login",
|
||||||
"pam",
|
"pam",
|
||||||
"password",
|
"password",
|
||||||
"screen",
|
"screen",
|
||||||
"security",
|
"security",
|
||||||
"service",
|
"service",
|
||||||
"source"
|
"source",
|
||||||
]
|
"uses"
|
||||||
|
],
|
||||||
|
"icon": "key",
|
||||||
|
"description": "Which PAM service the lock screen uses to authenticate"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"section": "lockPamPath",
|
||||||
|
"label": "Authentication Source",
|
||||||
|
"tabIndex": 11,
|
||||||
|
"category": "Lock Screen",
|
||||||
|
"keywords": [
|
||||||
|
"authenticate",
|
||||||
|
"authentication",
|
||||||
|
"lock",
|
||||||
|
"lockscreen",
|
||||||
|
"login",
|
||||||
|
"pam",
|
||||||
|
"password",
|
||||||
|
"screen",
|
||||||
|
"security",
|
||||||
|
"service",
|
||||||
|
"source",
|
||||||
|
"uses"
|
||||||
|
],
|
||||||
|
"description": "Which PAM service the lock screen uses to authenticate"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"section": "lockScreenVideoCycling",
|
"section": "lockScreenVideoCycling",
|
||||||
@@ -4804,25 +4830,6 @@
|
|||||||
"icon": "palette",
|
"icon": "palette",
|
||||||
"description": "Font used for the clock and date on the lock screen"
|
"description": "Font used for the clock and date on the lock screen"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"section": "lockAuthSource",
|
|
||||||
"label": "Lock Screen Authentication",
|
|
||||||
"tabIndex": 11,
|
|
||||||
"category": "Lock Screen",
|
|
||||||
"keywords": [
|
|
||||||
"authentication",
|
|
||||||
"lock",
|
|
||||||
"lockscreen",
|
|
||||||
"login",
|
|
||||||
"pam",
|
|
||||||
"password",
|
|
||||||
"screen",
|
|
||||||
"security",
|
|
||||||
"service",
|
|
||||||
"source"
|
|
||||||
],
|
|
||||||
"icon": "key"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"section": "lockDisplay",
|
"section": "lockDisplay",
|
||||||
"label": "Lock Screen Display",
|
"label": "Lock Screen Display",
|
||||||
@@ -5043,25 +5050,18 @@
|
|||||||
"tabIndex": 11,
|
"tabIndex": 11,
|
||||||
"category": "Lock Screen",
|
"category": "Lock Screen",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"alternative",
|
|
||||||
"button",
|
|
||||||
"factor",
|
"factor",
|
||||||
"fingerprint",
|
|
||||||
"follows",
|
|
||||||
"key",
|
"key",
|
||||||
"lock",
|
"lock",
|
||||||
"login",
|
"login",
|
||||||
"mode",
|
"mode",
|
||||||
"passkey",
|
|
||||||
"password",
|
"password",
|
||||||
"screen",
|
"screen",
|
||||||
"second",
|
"second",
|
||||||
"security",
|
"security",
|
||||||
"u2f",
|
"u2f",
|
||||||
"uses",
|
|
||||||
"yubikey"
|
"yubikey"
|
||||||
],
|
]
|
||||||
"description": "Alternative uses the passkey button. Second factor follows password or fingerprint."
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"section": "lockScreenShowMediaPlayer",
|
"section": "lockScreenShowMediaPlayer",
|
||||||
@@ -8102,15 +8102,15 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"section": "greeterPamExternallyManaged",
|
"section": "greeterPamExternallyManaged",
|
||||||
"label": "greetd PAM is externally managed",
|
"label": "Use system PAM authentication",
|
||||||
"tabIndex": 31,
|
"tabIndex": 31,
|
||||||
"category": "Greeter",
|
"category": "Greeter",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"auth",
|
"auth",
|
||||||
|
"authentication",
|
||||||
"block",
|
"block",
|
||||||
"display manager",
|
"display manager",
|
||||||
"external",
|
"external",
|
||||||
"externally",
|
|
||||||
"greetd",
|
"greetd",
|
||||||
"greeter",
|
"greeter",
|
||||||
"login",
|
"login",
|
||||||
@@ -8118,6 +8118,7 @@
|
|||||||
"pam",
|
"pam",
|
||||||
"removes",
|
"removes",
|
||||||
"stops",
|
"stops",
|
||||||
|
"system",
|
||||||
"writing"
|
"writing"
|
||||||
],
|
],
|
||||||
"description": "DMS removes its managed block from /etc/pam.d/greetd and stops writing to it"
|
"description": "DMS removes its managed block from /etc/pam.d/greetd and stops writing to it"
|
||||||
|
|||||||
Reference in New Issue
Block a user