luci-app-radicale3: initial add of applications

radicale2 has been removed from packages as it can no longer be
built due to PyPi service changes. It has been replaced with
radicale3: https://github.com/openwrt/packages/pull/28211

Here we add a JavaScript-based LuCI app for radicale3, in place of
the old Lua-based LuCI app for radicale2.

Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
This commit is contained in:
Daniel F. Dickinson
2026-01-05 07:41:26 -05:00
committed by Paul Donald
parent 7e25a5c32a
commit 85d625918a
44 changed files with 19757 additions and 0 deletions
@@ -0,0 +1,481 @@
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: luci-app-radicale 3\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: ko\n"
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:288
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:298
msgid "'Plaintext Password' and 'Confirm Plaintext Password' do not match"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:397
msgid ""
"([ -d .git ] || git init) && git add -A && (git diff --cached --quiet || git "
"commit -m 'Changes by '%(user)s"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:177
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:227
msgid "ARGON2"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:90
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:183
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:377
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:465
msgid "Advanced"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:117
msgid "Allowed Ciphers"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:148
msgid "Authentication"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:185
msgid "Authentication Type"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:174
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:224
msgid "BCRYPT"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:411
msgid "Based on settings in 'Rights File'"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:433
msgid "CORS"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:99
msgid "Certificate"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:113
msgid "Client Certificate Authority"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:391
msgid "Command that is run after changes to storage"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:277
msgid "Confirm Plaintext Password"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:460
msgid "Critical"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:456
msgid "Debug"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:380
msgid "Default (Multiple files on filesystem)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:186
msgid "Default (htpasswd file from users below)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:455
msgid "Default (info)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:407
msgid "Default (owner only)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:386
msgid "Delete sync tokens that are older (seconds)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:467
msgid "Do not filter debug messages starting with 'TRACE'"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:437
msgid "Document Encoding"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:95
msgid "Enable SSL connections"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:440
msgid "Encoding for responding to requests/events"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:444
msgid "Encoding for storing local collections"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:306
msgid "Encrypted Password"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:166
msgid "Encryption"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:218
msgid "Encryption method when changing this password"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:459
msgid "Error"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:394
msgid "Example storage hook"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:194
msgid "Filename"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:373
msgid "Folder"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:373
msgid "Folder in which to store collections"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:113
msgid "For verifying client certificates"
msgstr ""
#: applications/luci-app-radicale3/root/usr/share/rpcd/acl.d/luci-app-radicale3.json:3
msgid "Grant UCI access for luci-app-radicale3"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:200
msgid "HTTP(S) Basic Authentication Realm"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:430
msgid "HTTP(S) Headers"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:433
msgid "Header: X-Access-Control-Allow-Origin"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:430
msgid "Headers"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:391
msgid "Hook"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:85
msgid "Host:port"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:306
msgid ""
"If 'Plaintext Password' is filled and matches 'Confirm Plaintext Password' "
"then this field becomes of hash of that password, otherwise this field "
"remains the existing hash (you can also put your own hash value for the type "
"of hash listed above)."
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:457
msgid "Info"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:453
msgid "Log Level"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:448
msgid "Logging"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:170
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:220
msgid "MD5-APR1"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:83
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:164
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:371
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:451
msgid "Main"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:472
msgid "Mask Passwords"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:133
msgid "Max Connections"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:138
msgid "Max Content Length"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:386
msgid "Max Sync Token Age"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:133
msgid "Maximum number of simultaneous connections"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:138
msgid "Maximum size of request body (bytes)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:381
msgid "Multiple files on filesystem"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:382
msgid ""
"Multiple files on filesystem wit no file-based locking. Must only be used "
"with a single process."
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:57
msgid "Need a listen address"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:126
msgid "No SSL"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:126
msgid "No SSL support available. Please install python3-openssl."
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:188
msgid "No authentication"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:68
msgid "Open Web Interface"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:166
msgid "Password encryption method"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:347
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:363
msgid "Password is required"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:169
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:219
msgid "Plaintext"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:271
msgid "Plaintext Password"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:104
msgid "Private Key"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:189
msgid "REMOTE_USER from web server"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:412
msgid "RO: All, RW: All"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:410
msgid "RO: Authenticated Users, RW: Owner"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:409
msgid "RO: None, RW: Authenticated Users"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:408
msgid "RO: None, RW: Owner"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:58
msgid ""
"Radicale needs a non-loopback IP address for your browser to access the web "
"interface"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:77
msgid "Radicale v3 CalDav/CardDAV Server Configuration"
msgstr ""
#: applications/luci-app-radicale3/root/usr/share/luci/menu.d/luci-app-radicale3.json:3
msgid "Radicale3"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:214
msgid "Radicale3 Users"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:200
msgid "Realm"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:472
msgid "Redact passwords in logs"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:440
msgid "Request"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:204
msgid "Required time between a failed authentication attempt and trying again"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:204
msgid "Retry Delay"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:403
msgid "Rights"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:416
msgid "Rights File"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:406
msgid "Rights Type"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:171
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:221
msgid "SHA-256"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:172
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:222
msgid "SHA-512"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:95
msgid "SSL"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:117
msgid "See python3-openssl documentation for available ciphers"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:121
msgid "See python3-openssl documentation for available protocols"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:79
msgid "Server Settings"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:143
msgid "Socket timeout (seconds)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:368
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:444
msgid "Storage"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:379
msgid "Storage Type"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:143
msgid "Timeout"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:467
msgid "Trace on debug"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:339
msgid "Unable to encrypt plaintext password"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:121
msgid "Use Protocol"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:403
msgid "User-based ACL Settings"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:239
msgid "Username"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:263
msgid "Username already exists"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:254
msgid ""
"Username can only contain letters, numbers, dots, underscores and hyphens"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:246
msgid "Username is required"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:250
msgid "Username must be at least 1 character long"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:458
msgid "Warning"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:420
msgid "Web UI"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:423
msgid "Web UI Type"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:290
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:300
msgid "When changing encryption method, you must change all passwords"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:190
msgid "X-Remote-User from web server"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:179
msgid "autodetect"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:187
msgid "htpasswd file (manually populated)"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:194
msgid "htpasswd-formatted file filename"
msgstr ""
#: applications/luci-app-radicale3/htdocs/luci-static/resources/view/radicale3.js:179
msgid "password file can have users with a mix of support encryption methods"
msgstr ""