linkding_auth.sh persists ADMIN_USER and ADMIN_PASSWORD when the first admin is created, and keeps the password in step on later resets of that account, but linkding.config declared neither — so both writes were no-ops and the WebUI credentials card never had anything to show. Predates the slot work; it only became visible once authPersistCfg started warning instead of failing silently. Added empty rather than RANDOMIZED*, because unlike bookstack or nextcloud nothing seeds a linkding account at install — the first user is created from the WebUI. A generated password would name an account that does not exist, and the card would display a password that cannot log in. Unslotted for the same reason: the slot number marks a value the installer generates, and this one is written at runtime by the tool. No AUTH_PROFILE key: nothing reads it (it exists only in a comment in auth_adapter.sh), and adding an unread key is what was just cleaned up elsewhere. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
107 lines
2.7 KiB
JSON
107 lines
2.7 KiB
JSON
{
|
|
"tools": [
|
|
{
|
|
"id": "create_account",
|
|
"category": "users",
|
|
"label": "Create User Account",
|
|
"description": "Add a Matrix account. The username becomes permanent — @name:server can never be renamed.",
|
|
"icon": "👤",
|
|
"fields": [
|
|
{
|
|
"name": "username",
|
|
"label": "Username",
|
|
"type": "text",
|
|
"placeholder": "alice (not the full @alice:server)",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "displayname",
|
|
"label": "Display name",
|
|
"type": "text",
|
|
"placeholder": "Leave blank to use the username"
|
|
},
|
|
{
|
|
"name": "password",
|
|
"label": "Password",
|
|
"type": "password",
|
|
"placeholder": "Leave blank to generate"
|
|
},
|
|
{
|
|
"name": "admin",
|
|
"label": "Make server admin",
|
|
"type": "checkbox",
|
|
"default": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "list_users",
|
|
"category": "users",
|
|
"label": "List Users",
|
|
"description": "Every account on this homeserver, including deactivated ones.",
|
|
"icon": "📋",
|
|
"fields": []
|
|
},
|
|
{
|
|
"id": "reset_password",
|
|
"category": "users",
|
|
"label": "Reset User Password",
|
|
"description": "Set a new password and sign the user out of every device.",
|
|
"icon": "🔑",
|
|
"fields": [
|
|
{
|
|
"name": "username",
|
|
"label": "Username",
|
|
"type": "text",
|
|
"placeholder": "alice",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "password",
|
|
"label": "New password",
|
|
"type": "password",
|
|
"placeholder": "Leave blank to generate"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "set_admin",
|
|
"category": "users",
|
|
"label": "Set Admin Status",
|
|
"description": "Grant or revoke Synapse server-admin rights.",
|
|
"icon": "👑",
|
|
"fields": [
|
|
{
|
|
"name": "username",
|
|
"label": "Username",
|
|
"type": "text",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "admin",
|
|
"label": "Make server admin",
|
|
"type": "checkbox",
|
|
"default": false
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "deactivate_user",
|
|
"category": "users",
|
|
"label": "Deactivate User Account",
|
|
"description": "Matrix has no delete. This revokes access and erases the profile, and the user ID stays permanently taken.",
|
|
"icon": "🚫",
|
|
"destructive": true,
|
|
"confirm": "This cannot be undone, and the user ID can never be registered again.",
|
|
"fields": [
|
|
{
|
|
"name": "username",
|
|
"label": "Username",
|
|
"type": "text",
|
|
"required": true
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|