fix(fuse,core,cli,gui): say when the keyring refuses the refreshed sign-in

A rotation the keyring refused was retried and kept in the kernel
keyring, but only the log said so, and a reboot before the keyring took
it still signed the user out.

`Response::Status` carries `tokens_unsaved` while one waits. The tray
says "Sign-in not saved — unlock your keyring" and needs attention, the
app's status says the same, `pdfs status` prints a Keyring line and
`pdfs diagnose` warns. New strings are translated in every catalog
(B61).
This commit is contained in:
nvrl committed 2026-10-09 12:22:02 +02:00
1 parent 3458e2e72d
commit 2b6c37f543
17 files changed
+616 -438

No files matched your search

+60 -48
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-10-09 11:21+0200\n"
"POT-Creation-Date: 2026-10-09 12:17+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Spanish\n"
@@ -411,7 +411,7 @@ msgstr "Seleccione un único elemento para renombrarlo"
#: crates/pdfs-gui/src/app/main.rs:1662
#: crates/pdfs-gui/src/app/pages/albums.rs:85
#: crates/pdfs-gui/src/app/pages/places.rs:104
#: crates/pdfs-gui/src/app/pages/status.rs:1412
#: crates/pdfs-gui/src/app/pages/status.rs:1425
msgid "Not connected"
msgstr "Sin conexión"
@@ -422,7 +422,7 @@ msgstr "El servicio de Proton Drive no está en ejecución."
#: crates/pdfs-gui/src/app/main.rs:1671
#: crates/pdfs-gui/src/app/pages/status.rs:336
#: crates/pdfs-gui/src/hud/mod.rs:274 crates/pdfs-gui/src/hud/mod.rs:595
#: crates/pdfs-gui/src/main.rs:481
#: crates/pdfs-gui/src/main.rs:486
msgid "Connecting…"
msgstr "Conectando…"
@@ -1273,7 +1273,7 @@ msgstr "No se pudieron cargar los álbumes"
#: crates/pdfs-gui/src/app/pages/shared.rs:999
#: crates/pdfs-gui/src/app/pages/shared.rs:1115
#: crates/pdfs-gui/src/app/pages/status.rs:761
#: crates/pdfs-gui/src/app/pages/status.rs:1560
#: crates/pdfs-gui/src/app/pages/status.rs:1573
#: crates/pdfs-gui/src/app/pages/takeout.rs:424
#: crates/pdfs-gui/src/app/pages/takeout.rs:617
#: crates/pdfs-gui/src/app/widgets/share_dialog.rs:449
@@ -1541,7 +1541,7 @@ msgid "Make available offline"
msgstr "Hacer disponible sin conexión"
#: crates/pdfs-gui/src/app/pages/browser.rs:347
#: crates/pdfs-gui/src/app/pages/status.rs:1536
#: crates/pdfs-gui/src/app/pages/status.rs:1549
msgid "Make online only"
msgstr "Hacer solo en línea"
@@ -2738,7 +2738,7 @@ msgid "Sync paused until you resume"
msgstr "Sincronización en pausa hasta que la reanude"
#: crates/pdfs-gui/src/app/pages/locations.rs:552
#: crates/pdfs-gui/src/app/pages/status.rs:1365 crates/pdfs-gui/src/main.rs:263
#: crates/pdfs-gui/src/app/pages/status.rs:1378 crates/pdfs-gui/src/main.rs:268
msgid "Sync paused"
msgstr "Sincronización en pausa"
@@ -4812,127 +4812,135 @@ msgstr "{arrow} {name}: {done} ({speed}/s)"
msgid "{arrow} {name} — {done} of {total} ({speed}/s)"
msgstr "{arrow} {name}: {done} de {total} ({speed}/s)"
#: crates/pdfs-gui/src/app/pages/status.rs:1276
#: crates/pdfs-gui/src/app/pages/status.rs:1279
#, rust-format
msgid "{used} cached — no limit set"
msgstr "{used} en caché — sin límite"
#: crates/pdfs-gui/src/app/pages/status.rs:1282
#: crates/pdfs-gui/src/app/pages/status.rs:1285
#, rust-format
msgid "{used} of {limit} used"
msgstr "{used} de {limit} usados"
#: crates/pdfs-gui/src/app/pages/status.rs:1351
#: crates/pdfs-gui/src/app/pages/status.rs:1357
msgid "Session expired"
msgstr "Sesión caducada"
#: crates/pdfs-gui/src/app/pages/status.rs:1356
#: crates/pdfs-gui/src/app/pages/status.rs:1362
#, rust-format
msgid "{queued} · sign in again to sync"
msgstr "{queued} · vuelva a iniciar sesión para sincronizar"
#: crates/pdfs-gui/src/app/pages/status.rs:1359
#: crates/pdfs-gui/src/app/pages/status.rs:1364
msgid "Sign in again to sync"
msgstr "Vuelva a iniciar sesión para sincronizar"
#: crates/pdfs-gui/src/app/pages/status.rs:1370
msgid "Sign-in not saved"
msgstr "Inicio de sesión no guardado"
#: crates/pdfs-gui/src/app/pages/status.rs:1372
msgid "Unlock your keyring, or the next reboot signs you out"
msgstr "Desbloquee el depósito de claves o el próximo reinicio cerrará su sesión"
#: crates/pdfs-gui/src/app/pages/status.rs:1383
#, rust-format
msgid "{queued} · resumes {time}"
msgstr "{queued} · se reanuda {time}"
#. Translators: {time} is when syncing resumes, such as "at 14:30"
#. or "Tue 09:00".
#: crates/pdfs-gui/src/app/pages/status.rs:1375
#: crates/pdfs-gui/src/app/pages/status.rs:1388
#, rust-format
msgid "Resumes {time}"
msgstr "Se reanuda {time}"
#: crates/pdfs-gui/src/app/pages/status.rs:1377
#: crates/pdfs-gui/src/app/pages/status.rs:1390
msgid "Until you resume"
msgstr "Hasta que la reanude"
#: crates/pdfs-gui/src/app/pages/status.rs:1384 crates/pdfs-gui/src/main.rs:265
#: crates/pdfs-gui/src/app/pages/status.rs:1397 crates/pdfs-gui/src/main.rs:270
#, rust-format
msgid "{n} change needs attention"
msgid_plural "{n} changes need attention"
msgstr[0] "{n} cambio requiere atención"
msgstr[1] "{n} cambios requieren atención"
#: crates/pdfs-gui/src/app/pages/status.rs:1394
#: crates/pdfs-gui/src/app/pages/status.rs:1407
#: crates/pdfs-gui/src/app/widgets/details.rs:108
msgctxt "state"
msgid "Offline"
msgstr "Sin conexión"
#: crates/pdfs-gui/src/app/pages/status.rs:1395
#: crates/pdfs-gui/src/app/pages/status.rs:1408
msgid "Cached files only"
msgstr "Solo archivos en caché"
#: crates/pdfs-gui/src/app/pages/status.rs:1400
#: crates/pdfs-gui/src/app/pages/status.rs:1413
msgctxt "state"
msgid "Syncing"
msgstr "Sincronizando"
#: crates/pdfs-gui/src/app/pages/status.rs:1406
#: crates/pdfs-gui/src/app/pages/status.rs:1419
msgid "Up to date"
msgstr "Actualizado"
#: crates/pdfs-gui/src/app/pages/status.rs:1413
#: crates/pdfs-gui/src/app/pages/status.rs:1426
#: crates/pdfs-gui/src/hud/mod.rs:608 crates/pdfs-gui/src/hud/mod.rs:622
msgid "Proton Drive isn't running"
msgstr "Proton Drive no está en ejecución"
#: crates/pdfs-gui/src/app/pages/status.rs:1418
#: crates/pdfs-gui/src/app/pages/status.rs:1431
msgid "Not responding"
msgstr "No responde"
#: crates/pdfs-gui/src/app/pages/status.rs:1419
#: crates/pdfs-gui/src/app/pages/status.rs:1432
msgid "Proton Drive is taking too long to answer"
msgstr "Proton Drive está tardando demasiado en responder"
#. Translators: stands in for a time that could not be read, as in
#. "Resumes later".
#: crates/pdfs-gui/src/app/pages/status.rs:1458
#: crates/pdfs-gui/src/app/pages/status.rs:1473
#: crates/pdfs-gui/src/app/pages/status.rs:1471
#: crates/pdfs-gui/src/app/pages/status.rs:1486
msgid "later"
msgstr "más tarde"
#. Translators: strftime format for a time later today, such as "at 14:30".
#: crates/pdfs-gui/src/app/pages/status.rs:1462
#: crates/pdfs-gui/src/app/pages/status.rs:1475
msgid "at %H:%M"
msgstr "a las %H:%M"
#. Translators: strftime format for a time within the next week, such as
#. "Tue 09:00".
#: crates/pdfs-gui/src/app/pages/status.rs:1466
#: crates/pdfs-gui/src/app/pages/status.rs:1479
msgid "%a %H:%M"
msgstr "%a %H:%M"
#. Translators: strftime format for a date further ahead, such as "23 Sep".
#: crates/pdfs-gui/src/app/pages/status.rs:1469
#: crates/pdfs-gui/src/app/pages/status.rs:1482
msgid "%e %b"
msgstr "%-d %b"
#: crates/pdfs-gui/src/app/pages/status.rs:1499
#: crates/pdfs-gui/src/app/pages/status.rs:1512
msgid "No files kept offline"
msgstr "No hay archivos disponibles sin conexión"
#: crates/pdfs-gui/src/app/pages/status.rs:1501
#: crates/pdfs-gui/src/app/pages/status.rs:1514
msgid "Right-click a file and choose “Make available offline”."
msgstr ""
"Pulse con el botón derecho en un archivo y elija “Hacer disponible sin "
"conexión”."
#: crates/pdfs-gui/src/app/pages/status.rs:1552
#: crates/pdfs-gui/src/app/pages/status.rs:1559
#: crates/pdfs-gui/src/app/pages/status.rs:1565
#: crates/pdfs-gui/src/app/pages/status.rs:1572
msgid "Couldn't make it online only"
msgstr "No se pudo hacer solo en línea"
#: crates/pdfs-gui/src/app/pages/status.rs:1576
#: crates/pdfs-gui/src/app/pages/status.rs:1589
msgid "Show fewer"
msgstr "Mostrar menos"
#: crates/pdfs-gui/src/app/pages/status.rs:1579
#: crates/pdfs-gui/src/app/pages/status.rs:1592
#, rust-format
msgid "Show all {n} file"
msgid_plural "Show all {n} files"
@@ -6015,25 +6023,29 @@ msgstr "Error: {error}"
msgid "Proton Drive sent an unexpected reply"
msgstr "Proton Drive envió una respuesta inesperada"
#: crates/pdfs-gui/src/main.rs:262
#: crates/pdfs-gui/src/main.rs:265
msgid "Session expired — sign in again"
msgstr "Sesión caducada: vuelva a iniciar sesión"
#: crates/pdfs-gui/src/main.rs:272
#: crates/pdfs-gui/src/main.rs:267
msgid "Sign-in not saved — unlock your keyring"
msgstr "Inicio de sesión no guardado: desbloquee el depósito de claves"
#: crates/pdfs-gui/src/main.rs:277
#, rust-format
msgid "Up to date in {mountpoint} ({n} pinned)"
msgid_plural "Up to date in {mountpoint} ({n} pinned)"
msgstr[0] "Actualizado en {mountpoint} ({n} fijado)"
msgstr[1] "Actualizado en {mountpoint} ({n} fijados)"
#: crates/pdfs-gui/src/main.rs:279
#: crates/pdfs-gui/src/main.rs:284
#, rust-format
msgid "Syncing — {queued} ({n} pinned)"
msgid_plural "Syncing — {queued} ({n} pinned)"
msgstr[0] "Sincronizando: {queued} ({n} anclado)"
msgstr[1] "Sincronizando: {queued} ({n} anclados)"
#: crates/pdfs-gui/src/main.rs:286
#: crates/pdfs-gui/src/main.rs:291
#, rust-format
msgid "Offline — cached files only ({n} pinned)"
msgid_plural "Offline — cached files only ({n} pinned)"
@@ -6041,56 +6053,56 @@ msgstr[0] "Sin conexión: solo archivos en caché ({n} anclado)"
msgstr[1] "Sin conexión: solo archivos en caché ({n} anclados)"
#. Translators: {queued} is a queue summary such as "3 uploads queued".
#: crates/pdfs-gui/src/main.rs:292
#: crates/pdfs-gui/src/main.rs:297
#, rust-format
msgid "Offline — {queued}"
msgstr "Sin conexión: {queued}"
#. Translators: a menu item that opens the list of failing changes.
#: crates/pdfs-gui/src/main.rs:330
#: crates/pdfs-gui/src/main.rs:335
#, rust-format
msgid "{n} issue — View"
msgid_plural "{n} issues — View"
msgstr[0] "{n} problema: ver"
msgstr[1] "{n} problemas: ver"
#: crates/pdfs-gui/src/main.rs:436
#: crates/pdfs-gui/src/main.rs:441
msgid "Sign In…"
msgstr "Iniciar sesión…"
#: crates/pdfs-gui/src/main.rs:437
#: crates/pdfs-gui/src/main.rs:442
msgid "Sign In Again…"
msgstr "Volver a iniciar sesión…"
#: crates/pdfs-gui/src/main.rs:440
#: crates/pdfs-gui/src/main.rs:445
msgid "Open Proton Drive"
msgstr "Abrir Proton Drive"
#: crates/pdfs-gui/src/main.rs:446
#: crates/pdfs-gui/src/main.rs:451
msgid "Open Folder"
msgstr "Abrir carpeta"
#: crates/pdfs-gui/src/main.rs:458
#: crates/pdfs-gui/src/main.rs:463
msgid "Resume Sync"
msgstr "Reanudar la sincronización"
#: crates/pdfs-gui/src/main.rs:460
#: crates/pdfs-gui/src/main.rs:465
msgid "Pause Sync"
msgstr "Pausar la sincronización"
#: crates/pdfs-gui/src/main.rs:479
#: crates/pdfs-gui/src/main.rs:484
msgid "Connect"
msgstr "Conectar"
#: crates/pdfs-gui/src/main.rs:486
#: crates/pdfs-gui/src/main.rs:491
msgid "Hide Tray Icon"
msgstr "Ocultar el icono de la bandeja"
#: crates/pdfs-gui/src/main.rs:490
#: crates/pdfs-gui/src/main.rs:495
msgid "Stop Proton Drive…"
msgstr "Detener Proton Drive…"
#: crates/pdfs-gui/src/main.rs:494
#: crates/pdfs-gui/src/main.rs:499
msgid "Quit"
msgstr "Salir"