Compare commits

...
8 Commits
Author SHA1 Message Date
nvrl 0b81b76cb7 feat(gui): branded app icon in the sidebar header and login
The sidebar header and the login page used the generic folder-remote-symbolic
icon. Ship the app icon from packaging/ in the GUI resources and use it in
both places, so the in-app brand matches the launcher even when the app runs
uninstalled.
2026-09-27 23:28:00 +02:00
nvrl 7470bd89f3 chore(release): 2.2.2 2026-09-27 23:28:00 +02:00
nvrl e6cb52339d fix(fuse,core): list and resolve conflict copies in synced folders, log each once (B99)
The conflict sweep flagged divergent copies anywhere in the tree but kept its
dedupe set in memory, so every daemon start logged them again. The conflict
listing only covered My Files, so copies in on-demand sync folders were never
listed, and the Activity page showed them as resolved while they were still on disk.

List copies in synced folders by their absolute local path, route resolves
to the mount that serves them, flag only what the listing can show, and
consult the activity log before flagging a copy again.
2026-09-27 23:28:00 +02:00
Nils Pukropp 912acc760a chore(aur): update packages to 2.2.1 2026-09-24 18:08:08 +00:00
nvrl 5109427c32 chore(release): 2.2.1 2026-09-24 19:49:42 +02:00
nvrl e2c4dac8df feat(gui): legal links and disclaimer in the About dialog
Add a copyright line with contact address, links to the source code and
to Proton's terms of service and privacy policy, a Legal section with the
full non-affiliation, trademark and no-warranty disclaimer, and a license
credit for proton-sdk-rs. Translated into every shipped language.
2026-09-24 19:49:42 +02:00
nvrl ebeb9cdbef chore(aur): refresh -git pkgver in update.sh and bump to 2.2.0.r1.g82e9654
makepkg --printsrcinfo does not run pkgver(), so the -git .SRCINFO kept
the version from when the package was created and push.sh never had a
change to publish. update.sh now runs makepkg -od --noprepare first so
pkgver() writes the current git describe version into the PKGBUILD.
2026-09-24 19:49:42 +02:00
Nils Pukropp 82e96543ac chore(aur): update packages to 2.2.0 2026-09-23 18:48:21 +00:00
33 changed files with 929 additions and 380 deletions

No files matched your search

Generated
+4 -4
View File
@@ -3449,7 +3449,7 @@ checksum = "2ee67f1008b1ba2321834326597b8e186293b049a023cdef258527550b9935b4"
[[package]]
name = "pdfs-cli"
version = "2.2.0"
version = "2.2.2"
dependencies = [
"anyhow",
"clap",
@@ -3464,7 +3464,7 @@ dependencies = [
[[package]]
name = "pdfs-core"
version = "2.2.0"
version = "2.2.2"
dependencies = [
"async-trait",
"dbus-secret-service-keyring-store",
@@ -3488,7 +3488,7 @@ dependencies = [
[[package]]
name = "pdfs-fuse"
version = "2.2.0"
version = "2.2.2"
dependencies = [
"base64 0.23.1",
"fuser",
@@ -3508,7 +3508,7 @@ dependencies = [
[[package]]
name = "pdfs-gui"
version = "2.2.0"
version = "2.2.2"
dependencies = [
"anyhow",
"async-channel",
+1 -1
View File
@@ -3,7 +3,7 @@ resolver = "2"
members = ["crates/pdfs-core", "crates/pdfs-fuse", "crates/pdfs-cli", "crates/pdfs-gui"]
[workspace.package]
version = "2.2.0"
version = "2.2.2"
edition = "2024"
license = "MIT"
authors = ["Nils Pukropp <contact@narl.io>"]
+7 -4
View File
@@ -429,10 +429,12 @@ pub enum Request {
/// Retry a backed-off queued op now instead of waiting out its backoff;
/// every failed op when `id` is `None`. Replies with [`Response::Ok`].
RetryPendingOp { id: Option<i64> },
/// List the `(sync-conflict …)` copies under My Files. Replies with
/// List the `(sync-conflict …)` copies under My Files and in synced
/// folders. Replies with
/// [`Response::Conflicts`].
ListConflicts,
/// Resolve one conflict copy (`path` mountpoint-relative or absolute).
/// Resolve one conflict copy (`path` mountpoint-relative, or absolute for a
/// copy in a synced folder).
/// Everything removed goes to the Proton trash. Replies with
/// [`Response::Ok`].
ResolveConflict { path: String, keep: ConflictKeep },
@@ -701,9 +703,10 @@ pub struct DeviceInfo {
/// [`Response::Conflicts`]).
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct ConflictInfo {
/// Mountpoint-relative path of the copy.
/// Mountpoint-relative path of the copy, or its absolute local path when it
/// sits in a synced folder.
pub path: String,
/// Mountpoint-relative path of the file it is a copy of.
/// Path of the file it is a copy of, in the same form as `path`.
pub original_path: String,
/// False when the original is gone and only the copy is left.
pub original_exists: bool,
+11
View File
@@ -29,6 +29,17 @@ impl Db {
Ok(())
}
/// Whether the kept log already holds an entry of `kind` for `target`. Lets
/// the daemon report something once across restarts rather than once per
/// run, without keeping a second table in step with the log.
pub fn activity_has(&self, kind: ActivityKind, target: &str) -> Result<bool> {
let kind = serde_json::to_string(&kind)?;
let conn = self.read();
let mut stmt =
conn.prepare("SELECT 1 FROM activity WHERE kind = ?1 AND target = ?2 LIMIT 1")?;
Ok(stmt.exists(params![kind, target])?)
}
/// The most recent activity, newest first, capped at `limit` entries. Rows
/// whose stored `kind` no longer parses (written by an older build) are
/// skipped rather than failing the whole read.
+23
View File
@@ -1414,6 +1414,29 @@ fn activity_reads_back_newest_first() {
assert_eq!(db.activity_list(1).unwrap().len(), 1);
}
#[test]
fn activity_has_finds_only_matching_kind_and_target() {
let db = Db::open_in_memory().unwrap();
db.activity_add(&activity(
"a (sync-conflict 1).txt",
ActivityKind::Conflict,
false,
))
.unwrap();
db.activity_add(&activity("b.txt", ActivityKind::Upload, true))
.unwrap();
assert!(
db.activity_has(ActivityKind::Conflict, "a (sync-conflict 1).txt")
.unwrap()
);
assert!(
!db.activity_has(ActivityKind::Upload, "a (sync-conflict 1).txt")
.unwrap()
);
assert!(!db.activity_has(ActivityKind::Conflict, "b.txt").unwrap());
}
#[test]
fn activity_prunes_to_the_keep_limit() {
let db = Db::open_in_memory().unwrap();
+28 -5
View File
@@ -14,15 +14,38 @@
//! that is open, being written, or still owed an upload, for the same reason the
//! sweep does: the node is about to change under the decision.
//!
//! Only copies under My Files are handled here. A copy inside a mirror folder is
//! a local file first; the sync engine owns it.
//! Copies under My Files are named by their mountpoint-relative path. Copies
//! inside a synced folder are named by their absolute local path, so a resolve
//! request routes to the on-demand mount that serves them. A copy inside a
//! mirror folder is listed too, but it is a local file first: the sync engine
//! owns it, so it is resolved by editing the folder, not through here.
use super::*;
use pdfs_core::control::{ConflictInfo, ConflictKeep};
use sweep::conflict_base_name;
impl Core {
/// Every conflict copy under My Files, with the file it is a copy of.
/// Where the user finds a conflict copy: its mountpoint-relative path under
/// My Files, or its absolute local path inside a synced folder. `None` for a
/// node no location of this machine shows, such as one in another
/// computer's device tree.
///
/// The sweep only flags what this can name, and the listing uses it too. A
/// flagged copy the listing cannot see reads as resolved in the activity
/// feed while it still sits in the folder (`docs/BUGS.md` B99).
pub(crate) fn conflict_path(&self, roots: &SearchRoots, uid: &NodeUid) -> Option<String> {
let uid = uid.to_string();
if let Ok(Some(path)) = self
.db
.path_relative_to(&self.primary_root_uid.to_string(), &uid)
{
return Some(path);
}
let drive_path = self.db.node_path(&uid).ok().flatten()?;
roots.resolve(&drive_path)
}
/// Every conflict copy this machine shows, with the file it is a copy of.
pub(crate) fn list_conflicts(&self) -> CoreResult<Vec<ConflictInfo>> {
let stored = self
.db
@@ -37,13 +60,13 @@ impl Core {
for node in &nodes {
by_parent_name.insert((node.parent_uid.as_ref(), node.name.as_str()), node);
}
let root = self.primary_root_uid.to_string();
let roots = self.search_roots();
let mut items = Vec::new();
for node in &nodes {
let Some(base) = conflict_base_name(&node.name) else {
continue;
};
let Ok(Some(path)) = self.db.path_relative_to(&root, &node.uid.to_string()) else {
let Some(path) = self.conflict_path(&roots, &node.uid) else {
continue;
};
let original = by_parent_name
+40 -6
View File
@@ -185,6 +185,38 @@ fn route_to_mount(core: &Core, mountpoint: &Path, path: &str) -> CoreResult<(Cor
rel_to_mount(mountpoint, path).map(|rel| (core.clone(), rel))
}
/// [`route_to_mount`] for a conflict copy. The listing names a copy inside a
/// synced folder by its absolute local path (`docs/BUGS.md` B99), so the
/// resolve has to run against the on-demand mount serving it. A mirror folder
/// has no mount to run against: its copy is an ordinary local file.
fn route_conflict(core: &Core, mountpoint: &Path, path: &str) -> CoreResult<(Core, PathBuf)> {
let routed = route_to_mount(core, mountpoint, path).map_err(|e| {
let p = Path::new(path);
let mirrored = core
.db
.sync_folder_list()
.unwrap_or_default()
.iter()
.any(|folder| folder.mode == "mirror" && p.starts_with(&folder.local_path));
if mirrored {
CoreError::invalid(format!(
"{path} is in a mirrored folder; rename or delete the local file there"
))
} else {
e
}
})?;
if routed
.1
.components()
.all(|component| matches!(component, Component::Normal(_) | Component::CurDir))
{
Ok(routed)
} else {
Err(CoreError::invalid(format!("{path} escapes the mountpoint")))
}
}
/// Turn a CLI-supplied path into a mountpoint-relative path. An absolute path
/// must live under `mountpoint`; a relative path is taken as already relative to
/// the mount root.
@@ -1123,13 +1155,15 @@ fn handle_control_conn(core: &Core, username: &str, mountpoint: &Path, stream: U
Ok(items) => CtlResponse::Conflicts { items },
Err(e) => CtlResponse::error(e),
},
Ok(CtlRequest::ResolveConflict { path, keep }) => match rel_to_mount(mountpoint, &path) {
Ok(rel) => match core.resolve_conflict(&rel, &keep) {
Ok(message) => CtlResponse::Ok { message },
Ok(CtlRequest::ResolveConflict { path, keep }) => {
match route_conflict(core, mountpoint, &path) {
Ok((core, rel)) => match core.resolve_conflict(&rel, &keep) {
Ok(message) => CtlResponse::Ok { message },
Err(e) => CtlResponse::error(e),
},
Err(e) => CtlResponse::error(e),
},
Err(e) => CtlResponse::error(e),
},
}
}
Ok(CtlRequest::ListPendingOps) => match core.pending_op_infos() {
Ok(items) => CtlResponse::PendingOps { items },
Err(e) => CtlResponse::error(e),
+4 -3
View File
@@ -558,9 +558,10 @@ struct Core {
/// instead of polling or blocking for the whole run. See
/// [`Core::await_trash_refresh`].
trash_progress: Arc<tokio::sync::Notify>,
/// Conflict copies the sweep has already flagged as needing attention this
/// run, so a divergent `(sync-conflict …)` file is logged once rather than
/// on every sweep pass. See [`Core::run_conflict_sweep_loop`].
/// Conflict copies the sweep has already checked against the activity log
/// this run, so each pass does not ask the database again. The log itself
/// is what keeps a copy from being flagged again after a restart. See
/// [`Core::run_conflict_sweep_loop`] and `docs/BUGS.md` B99.
conflict_notified: Arc<Mutex<HashSet<NodeUid>>>,
/// Whether the conflict sweep may actually trash the duplicates it finds, or
/// only report them. Resolved once at mount from config + environment
+22 -3
View File
@@ -109,6 +109,7 @@ impl Core {
by_parent_name.insert((parent, node.name.as_str()), node);
}
let roots = self.search_roots();
let online = self.online.load(std::sync::atomic::Ordering::Relaxed);
for node in &nodes {
if node.trashed || node.is_folder() {
@@ -132,7 +133,16 @@ impl Core {
self.remove_conflict_copy(node, &base);
}
}
SweepAction::Flag(detail) => self.flag_conflict(&node.uid, &node.name, detail),
// Only flag what the conflict listing can show. Anything else
// would sit in the feed as "resolved" with no way to act on
// it (`docs/BUGS.md` B99).
SweepAction::Flag(detail) => {
if self.conflict_path(&roots, &node.uid).is_some() {
self.flag_conflict(&node.uid, &node.name, detail);
} else {
debug!(uid = %node.uid, name = %node.name, "conflict sweep: copy is outside every location; not flagged");
}
}
}
}
}
@@ -273,12 +283,21 @@ impl Core {
busy
}
/// Surface a conflict copy that needs the user's attention, at most once per
/// daemon run so the activity feed is not spammed each pass.
/// Surface a conflict copy that needs the user's attention, once. The
/// in-memory set spares the database each pass; the activity log itself is
/// what keeps a restart from logging the same copy again (`docs/BUGS.md`
/// B99). A copy's name carries its own timestamp, so the name identifies it.
fn flag_conflict(&self, uid: &NodeUid, name: &str, detail: String) {
if !self.conflict_notified.lock().insert(uid.clone()) {
return;
}
match self.db.activity_has(ActivityKind::Conflict, name) {
Ok(false) => {}
Ok(true) => return,
// Cannot tell: a repeat entry is harmless, a missing one hides a
// conflict.
Err(e) => warn!(%uid, name, error = ?e, "conflict sweep: activity check failed"),
}
debug!(%uid, name, detail, "conflict sweep: flagged divergent conflict copy");
self.log_activity(ActivityKind::Conflict, name, detail, false);
}
+1
View File
@@ -26,4 +26,5 @@ fn main() {
println!("cargo:rerun-if-changed=resources/pdfs.gresource.xml");
println!("cargo:rerun-if-changed=resources/icons");
println!("cargo:rerun-if-changed=resources/style.css");
println!("cargo:rerun-if-changed=../../packaging/io.narl.proton-drive-linux.svg");
}
@@ -9,6 +9,9 @@
<file preprocess="xml-stripblanks">scalable/actions/pdfs-upload-symbolic.svg</file>
<file preprocess="xml-stripblanks">scalable/actions/pdfs-offline-symbolic.svg</file>
<file preprocess="xml-stripblanks">scalable/actions/pdfs-online-only-symbolic.svg</file>
<!-- The app icon, from the one file packaging installs, so the in-app brand
matches the launcher and resolves even when nothing is installed. -->
<file alias="scalable/apps/io.narl.proton-drive-linux.svg" preprocess="xml-stripblanks">../../../packaging/io.narl.proton-drive-linux.svg</file>
</gresource>
<!-- The app stylesheet, loaded once at startup. Colours come from the
libadwaita palette so the app follows the system accent, light/dark and
-1
View File
@@ -9,7 +9,6 @@
/* Brand */
.brand-title { font-size: 1.6rem; font-weight: 800; }
.brand-icon { color: #6d4aff; }
/* Sidebar footer */
.sidebar-footer { padding: 6px 12px 12px 12px; }
+30 -2
View File
@@ -884,8 +884,8 @@ fn build_sidebar(footer: &gtk4::Box) -> (adw::NavigationPage, gtk4::ListBox) {
});
let brand = gtk4::Box::new(gtk4::Orientation::Horizontal, 8);
let icon = gtk4::Image::from_icon_name("folder-remote-symbolic");
icon.add_css_class("brand-icon");
let icon = gtk4::Image::from_icon_name(APP_ID);
icon.set_pixel_size(24);
brand.append(&icon);
let name = gtk4::Label::new(Some("Proton Drive"));
name.add_css_class("heading");
@@ -1294,11 +1294,39 @@ fn install_window_actions(ui: &Rc<Ui>, window: &adw::ApplicationWindow) {
.developer_name("Nils Pukropp")
.website("https://github.com/narrrl/proton-drive-linux")
.issue_url("https://github.com/narrrl/proton-drive-linux/issues")
.copyright("© 2026 Nils Pukropp (contact@narl.io)")
.license_type(gtk4::License::MitX11)
.comments(gettext("Files-on-demand Proton Drive for the Linux desktop.\n\nUnofficial client — not affiliated with, endorsed by, or supported by Proton AG."))
.debug_info(debug_info(&ui_about))
.debug_info_filename("proton-drive-linux-debug.txt")
.build();
dialog.add_link(
&gettext("Source Code"),
"https://github.com/narrrl/proton-drive-linux",
);
dialog.add_link(
&gettext("Proton Terms of Service"),
"https://proton.me/legal/terms",
);
dialog.add_link(
&gettext("Proton Privacy Policy"),
"https://proton.me/legal/privacy",
);
// The text is Pango markup: an ampersand must be written as "&amp;".
dialog.add_legal_section(
&gettext("Disclaimer"),
None,
gtk4::License::Custom,
Some(&gettext(
"This is an unofficial, community-built client. It is not affiliated with, endorsed by, or supported by Proton AG.\n\n“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to describe the service this software connects to. Your use of Proton Drive is governed by Proton's own terms of service and privacy policy.\n\nThis software is provided “as is”, without warranty of any kind. Keep a copy of any data you cannot afford to lose.",
)),
);
dialog.add_legal_section(
"proton-sdk-rs",
Some("© 2026 Nils Pukropp (contact@narl.io)"),
gtk4::License::MitX11,
None,
);
// Translators: replace with your name(s) and email address(es), one
// per line, to be credited in the About dialog.
let credits = gettext("translator-credits");
+2 -3
View File
@@ -52,9 +52,8 @@ pub(crate) fn build_login_page() -> (gtk4::Widget, LoginState) {
login_status.add_css_class("dim-label");
let header = gtk4::Box::new(gtk4::Orientation::Vertical, 4);
let logo = gtk4::Image::from_icon_name("folder-remote-symbolic");
logo.set_pixel_size(64);
logo.add_css_class("brand-icon");
let logo = gtk4::Image::from_icon_name(APP_ID);
logo.set_pixel_size(96);
let title = gtk4::Label::new(Some("Proton Drive"));
title.add_css_class("brand-title");
header.append(&logo);
+36
View File
@@ -12,6 +12,42 @@ Conventions:
---
## B99 — Conflict copies in synced folders are logged again on every start and shown as "Resolved"
**Status:** Fixed (unverified). No daemon carrying the change has been restarted against the
affected copies yet.
**Found:** 2026-09-27. The Activity page listed the same six conflict copies every day, e.g.
`Conflict [EMBER] Oshi no Ko S2 - 12 (sync-conflict 1786815864).mkv` with `Differs from … · 24 times
since Sep 20, 13:13 · Resolved`. `find` showed all six copies still on disk, in `~/Videos` and
`~/Documents`. Both are on-demand sync folders. `pdfs conflicts` answered `No conflicts.`. The
journal showed the daemon mounting at 17:29:33, and the entries were stamped 17:30. That is the
sweep's 30-second warmup.
**Where:** `crates/pdfs-fuse/src/sweep.rs` (`flag_conflict`, `sweep_conflicts_once`),
`crates/pdfs-fuse/src/conflicts.rs` (`list_conflicts`), `crates/pdfs-fuse/src/control.rs`
(`ResolveConflict`).
**Cause.** There were two faults.
- The sweep kept its "already flagged" set only in memory. Every daemon start forgot it, so the
first pass logged every open conflict again.
- The sweep flags copies anywhere in the account's own tree. `list_conflicts` only reported copies
below My Files, and resolving only accepted paths under the primary mount. A copy in a synced
folder was logged but never listed, so the GUI read it as resolved. It also could not be
resolved from the GUI or the CLI.
**Fix.** `Core::conflict_path` names a copy by its mountpoint-relative path under My Files, or
by its absolute local path inside a synced folder. It reuses the roots that search already
resolves hits through. The listing uses it, and the sweep flags only copies it can name. So the
feed never holds a conflict the listing cannot answer for. `ResolveConflict` routes an absolute
path to the on-demand mount that serves it. For a copy in a mirror folder, it says to edit the
local file instead. Before logging, `flag_conflict` checks the activity log
(`Db::activity_has`), so a restart does not log the same copy again. The copy's name carries its
own timestamp, so the name identifies the copy. No schema change.
Regression test: `activity_has_finds_only_matching_kind_and_target`.
---
## B98 — A superseded upload spins its drain thread forever and shows as "Uploading" at 0 bytes
**Status:** Fixed (unverified) — the daemon carrying the change has not been driven against a
+20
View File
@@ -11,6 +11,24 @@ scratch (user data in `staging/` and `recovery/` is never touched by this).
## [Unreleased]
## [2.2.2] — 2026-09-27
Schema: **32** (unchanged).
### Fixed
- **Conflicts in synced folders.** A conflict copy inside a synced folder is now listed under
Needs attention and can be resolved there or with `pdfs conflicts`. It used to be logged again
after every restart and marked "Resolved" while it was still on disk (B99).
## [2.2.1] — 2026-09-24
Schema: **32** (unchanged).
### Added
- **Legal information in About.** The About dialog now links to the source code and to Proton's
terms of service and privacy policy, and its Legal page carries the full disclaimer: this client
is unofficial, not affiliated with or endorsed by Proton AG, and comes without warranty.
## [2.2.0] — 2026-09-23
Schema: **32**. Videos that earlier got no thumbnail are tried again.
@@ -1029,6 +1047,8 @@ First stable release: FUSE files-on-demand mount, sync daemon under `proton-driv
- The outstanding FUSE defects tracked in `docs/BUGS.md`, plus a truncate defect, validated
by a new POSIX compliance suite for the filesystem.
[2.2.2]: https://github.com/narrrl/proton-drive-linux/releases/tag/v2.2.2
[2.2.1]: https://github.com/narrrl/proton-drive-linux/releases/tag/v2.2.1
[2.1.0]: https://github.com/narrrl/proton-drive-linux/releases/tag/v2.1.0
[2.0.0]: https://github.com/narrrl/proton-drive-linux/releases/tag/v2.0.0
[1.11.1]: https://github.com/narrrl/proton-drive-linux/releases/tag/v1.11.1
+1 -1
View File
@@ -9,7 +9,7 @@
# Build + install: cd packaging && makepkg -fi
pkgname=proton-drive-linux
pkgver=2.2.0
pkgver=2.2.2
pkgrel=1
pkgdesc="Unofficial Proton Drive client for Linux: files-on-demand FUSE mount, CLI, GTK4 app + tray"
arch=('x86_64')
@@ -1,6 +1,6 @@
pkgbase = proton-drive-for-linux-bin
pkgdesc = Unofficial Proton Drive client: FUSE files-on-demand mount, CLI, GTK4 app, tray (binaries)
pkgver = 2.1.1
pkgver = 2.2.1
pkgrel = 1
url = https://github.com/narrrl/proton-drive-linux
arch = x86_64
@@ -20,21 +20,21 @@ pkgbase = proton-drive-for-linux-bin
optdepends = xdg-utils: "Open folder" action in the tray menu
optdepends = fzf: search-as-you-type launcher (pdfs-prompt --fzf)
optdepends = foot: terminal that hosts pdfs-prompt --fzf when started from a keybinding
provides = proton-drive-for-linux=2.1.1
provides = proton-drive-linux=2.1.1
provides = proton-drive-for-linux=2.2.1
provides = proton-drive-linux=2.2.1
provides = pdfs
conflicts = proton-drive-linux
conflicts = proton-drive-for-linux
conflicts = proton-drive-for-linux-git
options = !strip
options = !debug
source = proton-drive-linux-2.1.1-x86_64.tar.gz::https://github.com/narrrl/proton-drive-linux/releases/download/v2.1.1/proton-drive-linux-2.1.1-x86_64.tar.gz
source = io.narl.proton-drive-linux.desktop::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.1.1/packaging/io.narl.proton-drive-linux.desktop
source = io.narl.proton-drive-linux-tray.desktop::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.1.1/packaging/io.narl.proton-drive-linux-tray.desktop
source = io.narl.proton-drive-linux.svg::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.1.1/packaging/io.narl.proton-drive-linux.svg
source = proton-drive.service::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.1.1/packaging/proton-drive.service
source = LICENSE-2.1.1::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.1.1/LICENSE
sha256sums = 3eb9d6787a0dfa66e2f942e9b2dd4a362cc93b50d1f37d176fe931ea1d22d53c
source = proton-drive-linux-2.2.1-x86_64.tar.gz::https://github.com/narrrl/proton-drive-linux/releases/download/v2.2.1/proton-drive-linux-2.2.1-x86_64.tar.gz
source = io.narl.proton-drive-linux.desktop::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.2.1/packaging/io.narl.proton-drive-linux.desktop
source = io.narl.proton-drive-linux-tray.desktop::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.2.1/packaging/io.narl.proton-drive-linux-tray.desktop
source = io.narl.proton-drive-linux.svg::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.2.1/packaging/io.narl.proton-drive-linux.svg
source = proton-drive.service::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.2.1/packaging/proton-drive.service
source = LICENSE-2.2.1::https://raw.githubusercontent.com/narrrl/proton-drive-linux/v2.2.1/LICENSE
sha256sums = 69f0d6996feb95b18d81bb96e9373c61fddb64ab17b50c94cd83ef8d5e0a1425
sha256sums = d190d6771fff0b975271fb62fd3fb0fa8bbf17d7278c10853c18557855b0c123
sha256sums = 1d95e250370220e3bb6aead6ce34d1d6cc759f42c4803b75f1667e78ff47c6c0
sha256sums = e598a93c2715c3a9fdc7fb937902083d4a1135e8fbdfe6fe7e37f0383ebbd828
@@ -1,7 +1,7 @@
# Maintainer: Nils Pukropp <contact@narl.io>
pkgname=proton-drive-for-linux-bin
pkgver=2.1.1
pkgver=2.2.1
pkgrel=1
pkgdesc="Unofficial Proton Drive client: FUSE files-on-demand mount, CLI, GTK4 app, tray (binaries)"
arch=('x86_64')
@@ -30,7 +30,7 @@ source=("proton-drive-linux-$pkgver-x86_64.tar.gz::$url/releases/download/$_tag/
"io.narl.proton-drive-linux.svg::$_raw/packaging/io.narl.proton-drive-linux.svg"
"proton-drive.service::$_raw/packaging/proton-drive.service"
"LICENSE-$pkgver::$_raw/LICENSE")
sha256sums=('3eb9d6787a0dfa66e2f942e9b2dd4a362cc93b50d1f37d176fe931ea1d22d53c'
sha256sums=('69f0d6996feb95b18d81bb96e9373c61fddb64ab17b50c94cd83ef8d5e0a1425'
'd190d6771fff0b975271fb62fd3fb0fa8bbf17d7278c10853c18557855b0c123'
'1d95e250370220e3bb6aead6ce34d1d6cc759f42c4803b75f1667e78ff47c6c0'
'e598a93c2715c3a9fdc7fb937902083d4a1135e8fbdfe6fe7e37f0383ebbd828'
@@ -1,6 +1,6 @@
pkgbase = proton-drive-for-linux-git
pkgdesc = Unofficial Proton Drive client: FUSE files-on-demand mount, CLI, GTK4 app, tray (git)
pkgver = 2.0.0.r1.g56161f6
pkgver = 2.2.1.r0.g5109427
pkgrel = 1
url = https://github.com/narrrl/proton-drive-linux
arch = x86_64
@@ -23,8 +23,8 @@ pkgbase = proton-drive-for-linux-git
optdepends = xdg-utils: "Open folder" action in the tray menu
optdepends = fzf: search-as-you-type launcher (pdfs-prompt --fzf)
optdepends = foot: terminal that hosts pdfs-prompt --fzf when started from a keybinding
provides = proton-drive-for-linux=2.0.0.r1.g56161f6
provides = proton-drive-linux=2.0.0.r1.g56161f6
provides = proton-drive-for-linux=2.2.1.r0.g5109427
provides = proton-drive-linux=2.2.1.r0.g5109427
provides = pdfs
conflicts = proton-drive-linux
conflicts = proton-drive-for-linux
@@ -1,7 +1,7 @@
# Maintainer: Nils Pukropp <contact@narl.io>
pkgname=proton-drive-for-linux-git
pkgver=2.0.0.r1.g56161f6
pkgver=2.2.1.r0.g5109427
pkgrel=1
pkgdesc="Unofficial Proton Drive client: FUSE files-on-demand mount, CLI, GTK4 app, tray (git)"
arch=('x86_64')
@@ -1,6 +1,6 @@
pkgbase = proton-drive-for-linux
pkgdesc = Unofficial Proton Drive client: files-on-demand FUSE mount, CLI, GTK4 app and tray
pkgver = 2.1.1
pkgver = 2.2.1
pkgrel = 1
url = https://github.com/narrrl/proton-drive-linux
arch = x86_64
@@ -22,13 +22,13 @@ pkgbase = proton-drive-for-linux
optdepends = xdg-utils: "Open folder" action in the tray menu
optdepends = fzf: search-as-you-type launcher (pdfs-prompt --fzf)
optdepends = foot: terminal that hosts pdfs-prompt --fzf when started from a keybinding
provides = proton-drive-linux=2.1.1
provides = proton-drive-linux=2.2.1
provides = pdfs
conflicts = proton-drive-linux
conflicts = proton-drive-for-linux-bin
conflicts = proton-drive-for-linux-git
options = !lto
source = proton-drive-for-linux-2.1.1.tar.gz::https://github.com/narrrl/proton-drive-linux/archive/refs/tags/v2.1.1.tar.gz
sha256sums = 205b19e0cc34ed26bccc5218df7c530a2b2b2755f6a36e2b39b1c29ae9fcb655
source = proton-drive-for-linux-2.2.1.tar.gz::https://github.com/narrrl/proton-drive-linux/archive/refs/tags/v2.2.1.tar.gz
sha256sums = 4635716908232896bfb0bf16d0f10300dc2eb59c27c7693607a21eabcac2edff
pkgname = proton-drive-for-linux
@@ -1,7 +1,7 @@
# Maintainer: Nils Pukropp <contact@narl.io>
pkgname=proton-drive-for-linux
pkgver=2.1.1
pkgver=2.2.1
pkgrel=1
pkgdesc="Unofficial Proton Drive client: files-on-demand FUSE mount, CLI, GTK4 app and tray"
arch=('x86_64')
@@ -22,7 +22,7 @@ conflicts=('proton-drive-linux' 'proton-drive-for-linux-bin' 'proton-drive-for-l
# LTO has broken GTK/Rust links for this workspace; the release profile keeps it off.
options=('!lto')
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('205b19e0cc34ed26bccc5218df7c530a2b2b2755f6a36e2b39b1c29ae9fcb655')
sha256sums=('4635716908232896bfb0bf16d0f10300dc2eb59c27c7693607a21eabcac2edff')
_srcname="proton-drive-linux-$pkgver"
+5
View File
@@ -21,6 +21,11 @@ for pkg in proton-drive-for-linux proton-drive-for-linux-bin; do
(cd "$pkg" && updpkgsums)
done
# --printsrcinfo does not run pkgver(), so let makepkg clone the source and
# write the current git describe version back into the -git PKGBUILD first.
# --noprepare skips the cargo fetch in prepare().
(cd proton-drive-for-linux-git && makepkg -od --noprepare --noconfirm && rm -rf src)
for pkg in proton-drive-for-linux proton-drive-for-linux-git proton-drive-for-linux-bin; do
(cd "$pkg" && makepkg --printsrcinfo > .SRCINFO)
echo "updated $pkg"
+77 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: German\n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "My files"
msgstr "Meine Dateien"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -86,12 +86,12 @@ msgstr "Etwas anderes hat dies zuerst geändert"
msgid "Your Proton Drive is full"
msgstr "Das Proton Drive ist voll"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Einstellungen"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Tastenkürzel"
@@ -107,7 +107,7 @@ msgstr "Hauptmenü"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -119,17 +119,58 @@ msgstr ""
"Inoffizieller Client – nicht mit Proton AG verbunden, von Proton AG "
"unterstützt oder befürwortet."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Quellcode"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Nutzungsbedingungen von Proton"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Datenschutzerklärung von Proton"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Haftungsausschluss"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"Dies ist ein inoffizieller, von der Community entwickelter Client. Er ist "
"nicht mit Proton AG verbunden und wird von Proton AG weder befürwortet noch "
"unterstützt.\n"
"\n"
"„Proton“ und „Proton Drive“ sind Marken der Proton AG und werden hier nur "
"verwendet, um den Dienst zu beschreiben, mit dem sich diese Software "
"verbindet. Für die Nutzung von Proton Drive gelten die Nutzungsbedingungen "
"und die Datenschutzerklärung von Proton.\n"
"\n"
"Diese Software wird „wie besehen“ und ohne jegliche Gewährleistung "
"bereitgestellt. Daten, deren Verlust nicht hinnehmbar ist, sollten "
"zusätzlich gesichert werden."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Mitwirkende an Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "Proton Drive beenden?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -138,7 +179,7 @@ msgstr ""
"Verbindung hergestellt wird. Proton Drive startet bei der nächsten Anmeldung "
"erneut."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -166,67 +207,67 @@ msgstr ""
msgid "Cancel"
msgstr "Abbrechen"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Beenden"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "Proton Drive konnte nicht beendet werden"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "Der Einhängedienst wurde nicht beendet."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "Allgemein"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Drive durchsuchen"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Aktualisieren"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Tastenkürzel"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "Dateien"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Neuer Ordner"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Dateien hochladen"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Zurück / Vor"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Übergeordneter Ordner"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Raster / Liste"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -235,7 +276,7 @@ msgstr "Raster / Liste"
msgid "Rename"
msgstr "Umbenennen"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -246,51 +287,51 @@ msgstr "Umbenennen"
msgid "Move to Trash"
msgstr "In den Papierkorb verschieben"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Auswahl aufheben"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Größere Vorschaubilder"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Kleinere Vorschaubilder"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Vorschaubildgröße zurücksetzen"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Alles auswählen"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Fotobetrachter"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Vorheriges / nächstes Foto"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "Erstes / letztes Foto"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Details anzeigen"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Vollbild"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Schließen"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Zum Umbenennen genau ein Element auswählen"
+74 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: English (United Kingdom)\n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "My files"
msgstr "My files"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -86,12 +86,12 @@ msgstr "Something changed this first"
msgid "Your Proton Drive is full"
msgstr "Your Proton Drive is full"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Preferences"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Keyboard Shortcuts"
@@ -107,7 +107,7 @@ msgstr "Main menu"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -119,17 +119,55 @@ msgstr ""
"Unofficial client — not affiliated with, endorsed by, or supported by Proton "
"AG."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Source Code"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Proton Terms of Service"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Proton Privacy Policy"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Disclaimer"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Proton Drive for Linux contributors"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "Stop Proton Drive?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -137,7 +175,7 @@ msgstr ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -165,67 +203,67 @@ msgstr ""
msgid "Cancel"
msgstr "Cancel"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Stop"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "Couldn't stop Proton Drive"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "The mount service did not stop."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "General"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Search Drive"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Refresh"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Keyboard shortcuts"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "Files"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "New folder"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Upload files"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Back / forward"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Parent folder"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Grid / list"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -234,7 +272,7 @@ msgstr "Grid / list"
msgid "Rename"
msgstr "Rename"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -245,51 +283,51 @@ msgstr "Rename"
msgid "Move to Trash"
msgstr "Move to Trash"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Clear the selection"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Larger thumbnails"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Smaller thumbnails"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Reset thumbnail size"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Select all"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Photo Viewer"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Previous / next photo"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "First / last photo"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Show details"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Fullscreen"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Close"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Select a single item to rename it"
+75 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Spanish\n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "My files"
msgstr "Mis archivos"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -86,12 +86,12 @@ msgstr "Algo lo cambió antes"
msgid "Your Proton Drive is full"
msgstr "Su Proton Drive está lleno"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Preferencias"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Atajos del teclado"
@@ -107,7 +107,7 @@ msgstr "Menú principal"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -119,17 +119,56 @@ msgstr ""
"Cliente no oficial: no está afiliado a Proton AG, ni respaldado ni mantenido "
"por esta."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Código fuente"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Condiciones del servicio de Proton"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Política de privacidad de Proton"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Aviso legal"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"Este es un cliente no oficial creado por la comunidad. No está afiliado a "
"Proton AG, ni respaldado ni mantenido por esta.\n"
"\n"
"“Proton” y “Proton Drive” son marcas comerciales de Proton AG y se usan aquí "
"solo para describir el servicio al que se conecta este software. El uso de "
"Proton Drive se rige por las condiciones del servicio y la política de "
"privacidad de Proton.\n"
"\n"
"Este software se proporciona “tal cual”, sin garantía de ningún tipo. Guarde "
"una copia de los datos que no pueda permitirse perder."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Colaboradores de Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "¿Detener Proton Drive?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -137,7 +176,7 @@ msgstr ""
"La unidad se desmonta y no se sincroniza nada hasta que vuelva a conectarse. "
"Proton Drive se iniciará de nuevo en su próximo inicio de sesión."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -165,67 +204,67 @@ msgstr ""
msgid "Cancel"
msgstr "Cancelar"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Detener"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "No se pudo detener Proton Drive"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "El servicio de montaje no se detuvo."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "General"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Buscar en Drive"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Actualizar"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Atajos del teclado"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "Archivos"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Carpeta nueva"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Subir archivos"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Atrás / adelante"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Carpeta superior"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Cuadrícula / lista"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -234,7 +273,7 @@ msgstr "Cuadrícula / lista"
msgid "Rename"
msgstr "Renombrar"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -245,51 +284,51 @@ msgstr "Renombrar"
msgid "Move to Trash"
msgstr "Mover a la papelera"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Anular la selección"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Miniaturas más grandes"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Miniaturas más pequeñas"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Restablecer el tamaño de las miniaturas"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Seleccionar todo"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Visor de fotos"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Foto anterior / siguiente"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "Primera / última foto"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Mostrar detalles"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Pantalla completa"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Cerrar"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Seleccione un único elemento para renombrarlo"
+76 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: French\n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "My files"
msgstr "Mes fichiers"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -86,12 +86,12 @@ msgstr "Quelque chose l’a modifié entre-temps"
msgid "Your Proton Drive is full"
msgstr "Votre Proton Drive est plein"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Préférences"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Raccourcis clavier"
@@ -107,7 +107,7 @@ msgstr "Menu principal"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -119,17 +119,57 @@ msgstr ""
"Client non officiel — non affilié à Proton AG, ni approuvé ni pris en charge "
"par Proton AG."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Code source"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Conditions d’utilisation de Proton"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Politique de confidentialité de Proton"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Avertissement"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"Ceci est un client non officiel développé par la communauté. Il n’est ni "
"affilié à Proton AG, ni approuvé ou pris en charge par Proton AG.\n"
"\n"
"« Proton » et « Proton Drive » sont des marques de Proton AG, utilisées ici "
"uniquement pour décrire le service auquel ce logiciel se connecte. Votre "
"utilisation de Proton Drive est régie par les conditions d’utilisation et la "
"politique de confidentialité de Proton.\n"
"\n"
"Ce logiciel est fourni « tel quel », sans garantie d’aucune sorte. Conservez "
"une copie de toutes les données que vous ne pouvez pas vous permettre de "
"perdre."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Les contributeurs de Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "Arrêter Proton Drive ?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -138,7 +178,7 @@ msgstr ""
"vous reconnectiez. Proton Drive redémarrera à votre prochaine ouverture de "
"session."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -166,67 +206,67 @@ msgstr ""
msgid "Cancel"
msgstr "Annuler"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Arrêter"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "Impossible d’arrêter Proton Drive"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "Le service de montage ne s’est pas arrêté."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "Général"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Rechercher dans Drive"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Actualiser"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Raccourcis clavier"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "Fichiers"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Nouveau dossier"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Téléverser des fichiers"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Précédent / suivant"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Dossier parent"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Grille / liste"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -235,7 +275,7 @@ msgstr "Grille / liste"
msgid "Rename"
msgstr "Renommer"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -246,51 +286,51 @@ msgstr "Renommer"
msgid "Move to Trash"
msgstr "Mettre à la corbeille"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Effacer la sélection"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Miniatures plus grandes"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Miniatures plus petites"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Réinitialiser la taille des miniatures"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Tout sélectionner"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Visionneuse de photos"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Photo précédente / suivante"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "Première / dernière photo"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Afficher les détails"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Plein écran"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Fermer"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Sélectionnez un seul élément pour le renommer"
+75 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Italian\n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "My files"
msgstr "I miei file"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -86,12 +86,12 @@ msgstr "È stato modificato prima da qualcos'altro"
msgid "Your Proton Drive is full"
msgstr "Il tuo Proton Drive è pieno"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Preferenze"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Scorciatoie da tastiera"
@@ -107,7 +107,7 @@ msgstr "Menu principale"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -118,17 +118,56 @@ msgstr ""
"\n"
"Client non ufficiale: non affiliato, approvato né supportato da Proton AG."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Codice sorgente"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Termini di servizio di Proton"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Informativa sulla privacy di Proton"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Esclusione di responsabilità"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"Questo è un client non ufficiale sviluppato dalla comunità. Non è affiliato, "
"approvato né supportato da Proton AG.\n"
"\n"
"“Proton” e “Proton Drive” sono marchi di Proton AG, usati qui solo per "
"descrivere il servizio a cui si collega questo software. L’uso di Proton "
"Drive è regolato dai termini di servizio e dall’informativa sulla privacy di "
"Proton.\n"
"\n"
"Questo software è fornito “così com’è”, senza alcuna garanzia. Conserva una "
"copia dei dati che non puoi permetterti di perdere."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Collaboratori di Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "Arrestare Proton Drive?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -136,7 +175,7 @@ msgstr ""
"Il disco viene smontato e nulla viene sincronizzato finché non ti "
"riconnetti. Proton Drive si riavvierà al prossimo accesso."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -164,67 +203,67 @@ msgstr ""
msgid "Cancel"
msgstr "Annulla"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Arresta"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "Impossibile arrestare Proton Drive"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "Il servizio di montaggio non si è arrestato."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "Generale"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Cerca in Drive"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Aggiorna"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Scorciatoie da tastiera"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "File"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Nuova cartella"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Carica file"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Indietro / avanti"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Cartella superiore"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Griglia / elenco"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -233,7 +272,7 @@ msgstr "Griglia / elenco"
msgid "Rename"
msgstr "Rinomina"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -244,51 +283,51 @@ msgstr "Rinomina"
msgid "Move to Trash"
msgstr "Sposta nel cestino"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Annulla la selezione"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Miniature più grandi"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Miniature più piccole"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Ripristina la dimensione delle miniature"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Seleziona tutto"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Visualizzatore di foto"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Foto precedente / successiva"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "Prima / ultima foto"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Mostra dettagli"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Schermo intero"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Chiudi"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Seleziona un solo elemento per rinominarlo"
+75 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Dutch\n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "My files"
msgstr "Mijn bestanden"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -86,12 +86,12 @@ msgstr "Er is eerst iets anders gewijzigd"
msgid "Your Proton Drive is full"
msgstr "Je Proton Drive is vol"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Voorkeuren"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Sneltoetsen"
@@ -107,7 +107,7 @@ msgstr "Hoofdmenu"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -119,17 +119,56 @@ msgstr ""
"Onofficiële client — niet gelieerd aan, onderschreven door of ondersteund "
"door Proton AG."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Broncode"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Servicevoorwaarden van Proton"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Privacybeleid van Proton"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Disclaimer"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"Dit is een onofficiële client, gemaakt door de community. Hij is niet "
"verbonden aan, goedgekeurd door of ondersteund door Proton AG.\n"
"\n"
"“Proton” en “Proton Drive” zijn handelsmerken van Proton AG, hier alleen "
"gebruikt om de dienst te beschrijven waarmee deze software verbinding maakt. "
"Je gebruik van Proton Drive valt onder de eigen servicevoorwaarden en het "
"privacybeleid van Proton.\n"
"\n"
"Deze software wordt geleverd “zoals ze is”, zonder enige garantie. Bewaar "
"een kopie van gegevens die je niet kwijt wilt raken."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Bijdragers aan Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "Proton Drive stoppen?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -137,7 +176,7 @@ msgstr ""
"De schijf wordt ontkoppeld en er wordt niets gesynchroniseerd totdat je "
"opnieuw verbinding maakt. Proton Drive start weer bij je volgende aanmelding."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -165,67 +204,67 @@ msgstr ""
msgid "Cancel"
msgstr "Annuleren"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Stoppen"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "Kon Proton Drive niet stoppen"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "De koppeldienst is niet gestopt."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "Algemeen"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Drive doorzoeken"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Verversen"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Sneltoetsen"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "Bestanden"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Nieuwe map"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Bestanden uploaden"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Terug / vooruit"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Bovenliggende map"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Raster / lijst"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -234,7 +273,7 @@ msgstr "Raster / lijst"
msgid "Rename"
msgstr "Hernoemen"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -245,51 +284,51 @@ msgstr "Hernoemen"
msgid "Move to Trash"
msgstr "Naar prullenbak verplaatsen"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Selectie wissen"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Grotere miniaturen"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Kleinere miniaturen"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Miniatuurgrootte herstellen"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Alles selecteren"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Fotoweergave"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Vorige / volgende foto"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "Eerste / laatste foto"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Details tonen"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Volledig scherm"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Sluiten"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Selecteer één item om het te hernoemen"
+66 -37
View File
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.1\n"
"Project-Id-Version: proton-drive-linux 2.2.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -24,7 +24,7 @@ msgstr ""
msgid "My files"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -89,12 +89,12 @@ msgstr ""
msgid "Your Proton Drive is full"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr ""
@@ -110,7 +110,7 @@ msgstr ""
msgid "Proton Drive for Linux"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -118,23 +118,52 @@ msgid ""
"AG."
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -162,67 +191,67 @@ msgstr ""
msgid "Cancel"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -231,7 +260,7 @@ msgstr ""
msgid "Rename"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -242,51 +271,51 @@ msgstr ""
msgid "Move to Trash"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr ""
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr ""
+76 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Polish\n"
@@ -22,7 +22,7 @@ msgstr ""
msgid "My files"
msgstr "Moje pliki"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -87,12 +87,12 @@ msgstr "Coś zmieniło ten element wcześniej"
msgid "Your Proton Drive is full"
msgstr "Proton Drive jest pełny"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Preferencje"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Skróty klawiszowe"
@@ -108,7 +108,7 @@ msgstr "Menu główne"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -120,17 +120,57 @@ msgstr ""
"Nieoficjalny klient — niepowiązany z Proton AG, niepopierany ani "
"niewspierany przez tę firmę."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Kod źródłowy"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Warunki korzystania z usług Proton"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Polityka prywatności Proton"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Zastrzeżenia"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"To nieoficjalny klient tworzony przez społeczność. Nie jest powiązany z "
"Proton AG, zatwierdzony ani wspierany przez Proton AG.\n"
"\n"
"„Proton” i „Proton Drive” są znakami towarowymi Proton AG, użytymi tu "
"wyłącznie do opisania usługi, z którą łączy się to oprogramowanie. "
"Korzystanie z Proton Drive podlega warunkom korzystania z usług i polityce "
"prywatności Proton.\n"
"\n"
"To oprogramowanie jest dostarczane „tak jak jest”, bez jakiejkolwiek "
"gwarancji. Zachowaj kopię danych, na których utratę nie możesz sobie "
"pozwolić."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Współtwórcy programu Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "Zatrzymać Proton Drive?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -138,7 +178,7 @@ msgstr ""
"Dysk zostanie odmontowany, a synchronizacja wstrzymana do czasu ponownego "
"połączenia. Proton Drive uruchomi się ponownie przy następnym zalogowaniu."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -166,67 +206,67 @@ msgstr ""
msgid "Cancel"
msgstr "Anuluj"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Zatrzymaj"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "Nie można zatrzymać Proton Drive"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "Usługa montowania nie została zatrzymana."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "Ogólne"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Przeszukaj Drive"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Odśwież"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Skróty klawiszowe"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "Pliki"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Nowy katalog"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Wyślij pliki"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Wstecz/dalej"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Katalog nadrzędny"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Siatka/lista"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -235,7 +275,7 @@ msgstr "Siatka/lista"
msgid "Rename"
msgstr "Zmień nazwę"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -246,51 +286,51 @@ msgstr "Zmień nazwę"
msgid "Move to Trash"
msgstr "Przenieś do kosza"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Wyczyść zaznaczenie"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Większe miniatury"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Mniejsze miniatury"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Przywróć rozmiar miniatur"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Zaznacz wszystko"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Przeglądarka zdjęć"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Poprzednie/następne zdjęcie"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "Pierwsze/ostatnie zdjęcie"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Wyświetl szczegóły"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Pełny ekran"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Zamknij"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Należy zaznaczyć jeden element, aby zmienić jego nazwę"
+75 -36
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-09-23 20:16+0200\n"
"POT-Creation-Date: 2026-09-24 19:33+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Portuguese (Brazil)\n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "My files"
msgstr "Meus arquivos"
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1415
#: crates/pdfs-gui/src/app/main.rs:830 crates/pdfs-gui/src/app/main.rs:1443
#: crates/pdfs-gui/src/app/pages/albums.rs:623
#: crates/pdfs-gui/src/app/pages/photos.rs:677
msgid "Photos"
@@ -86,12 +86,12 @@ msgstr "Algo alterou isso antes"
msgid "Your Proton Drive is full"
msgstr "Seu Proton Drive está cheio"
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1397
#: crates/pdfs-gui/src/app/main.rs:1237 crates/pdfs-gui/src/app/main.rs:1425
#: crates/pdfs-gui/src/app/pages/status.rs:353
msgid "Preferences"
msgstr "Preferências"
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1454
#: crates/pdfs-gui/src/app/main.rs:1238 crates/pdfs-gui/src/app/main.rs:1482
msgid "Keyboard Shortcuts"
msgstr "Atalhos de teclado"
@@ -107,7 +107,7 @@ msgstr "Menu principal"
msgid "Proton Drive for Linux"
msgstr "Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1298
#: crates/pdfs-gui/src/app/main.rs:1299
msgid ""
"Files-on-demand Proton Drive for the Linux desktop.\n"
"\n"
@@ -118,17 +118,56 @@ msgstr ""
"\n"
"Cliente não oficial — sem afiliação, endosso ou suporte da Proton AG."
#: crates/pdfs-gui/src/app/main.rs:1304
msgid "Source Code"
msgstr "Código-fonte"
#: crates/pdfs-gui/src/app/main.rs:1308
msgid "Proton Terms of Service"
msgstr "Termos de Serviço da Proton"
#: crates/pdfs-gui/src/app/main.rs:1312
msgid "Proton Privacy Policy"
msgstr "Política de Privacidade da Proton"
#: crates/pdfs-gui/src/app/main.rs:1317
msgid "Disclaimer"
msgstr "Aviso legal"
#: crates/pdfs-gui/src/app/main.rs:1321
msgid ""
"This is an unofficial, community-built client. It is not affiliated with, "
"endorsed by, or supported by Proton AG.\n"
"\n"
"“Proton” and “Proton Drive” are trademarks of Proton AG, used here only to "
"describe the service this software connects to. Your use of Proton Drive is "
"governed by Proton's own terms of service and privacy policy.\n"
"\n"
"This software is provided “as is”, without warranty of any kind. Keep a copy "
"of any data you cannot afford to lose."
msgstr ""
"Este é um cliente não oficial, criado pela comunidade. Ele não é afiliado, "
"endossado nem mantido pela Proton AG.\n"
"\n"
"“Proton” e “Proton Drive” são marcas registradas da Proton AG, usadas aqui "
"apenas para descrever o serviço ao qual este software se conecta. O uso do "
"Proton Drive é regido pelos termos de serviço e pela política de privacidade "
"da própria Proton.\n"
"\n"
"Este software é fornecido “no estado em que se encontra”, sem garantia de "
"qualquer tipo. Mantenha uma cópia de todos os dados que você não pode perder."
#. Translators: replace with your name(s) and email address(es), one
#. per line, to be credited in the About dialog.
#: crates/pdfs-gui/src/app/main.rs:1304
#: crates/pdfs-gui/src/app/main.rs:1332
msgid "translator-credits"
msgstr "Colaboradores do Proton Drive for Linux"
#: crates/pdfs-gui/src/app/main.rs:1335
#: crates/pdfs-gui/src/app/main.rs:1363
msgid "Stop Proton Drive?"
msgstr "Parar o Proton Drive?"
#: crates/pdfs-gui/src/app/main.rs:1336
#: crates/pdfs-gui/src/app/main.rs:1364
msgid ""
"The drive unmounts and nothing syncs until you connect again. Proton Drive "
"starts again at your next login."
@@ -136,7 +175,7 @@ msgstr ""
"A unidade é desmontada e nada é sincronizado até você se conectar novamente. "
"O Proton Drive inicia novamente no seu próximo login."
#: crates/pdfs-gui/src/app/main.rs:1338 crates/pdfs-gui/src/app/main.rs:1611
#: crates/pdfs-gui/src/app/main.rs:1366 crates/pdfs-gui/src/app/main.rs:1639
#: crates/pdfs-gui/src/app/pages/albums.rs:242
#: crates/pdfs-gui/src/app/pages/albums.rs:423
#: crates/pdfs-gui/src/app/pages/browser.rs:2273
@@ -164,67 +203,67 @@ msgstr ""
msgid "Cancel"
msgstr "Cancelar"
#: crates/pdfs-gui/src/app/main.rs:1339
#: crates/pdfs-gui/src/app/main.rs:1367
msgctxt "verb"
msgid "Stop"
msgstr "Parar"
#: crates/pdfs-gui/src/app/main.rs:1356
#: crates/pdfs-gui/src/app/main.rs:1384
msgid "Couldn't stop Proton Drive"
msgstr "Não foi possível parar o Proton Drive"
#: crates/pdfs-gui/src/app/main.rs:1357
#: crates/pdfs-gui/src/app/main.rs:1385
msgid "The mount service did not stop."
msgstr "O serviço de montagem não parou."
#: crates/pdfs-gui/src/app/main.rs:1393
#: crates/pdfs-gui/src/app/main.rs:1421
#: crates/pdfs-gui/src/app/pages/status.rs:226
msgid "General"
msgstr "Geral"
#: crates/pdfs-gui/src/app/main.rs:1395
#: crates/pdfs-gui/src/app/main.rs:1423
#: crates/pdfs-gui/src/app/pages/browser.rs:270
msgid "Search Drive"
msgstr "Pesquisar no Drive"
#: crates/pdfs-gui/src/app/main.rs:1396
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/pages/browser.rs:1363
msgid "Refresh"
msgstr "Atualizar"
#: crates/pdfs-gui/src/app/main.rs:1398
#: crates/pdfs-gui/src/app/main.rs:1426
msgid "Keyboard shortcuts"
msgstr "Atalhos de teclado"
#: crates/pdfs-gui/src/app/main.rs:1402
#: crates/pdfs-gui/src/app/main.rs:1430
msgid "Files"
msgstr "Arquivos"
#: crates/pdfs-gui/src/app/main.rs:1404
#: crates/pdfs-gui/src/app/main.rs:1432
#: crates/pdfs-gui/src/app/pages/browser.rs:319
#: crates/pdfs-gui/src/app/pages/browser.rs:2586
msgid "New folder"
msgstr "Nova pasta"
#: crates/pdfs-gui/src/app/main.rs:1405
#: crates/pdfs-gui/src/app/main.rs:1433
#: crates/pdfs-gui/src/app/pages/browser.rs:315
msgid "Upload files"
msgstr "Enviar arquivos"
#: crates/pdfs-gui/src/app/main.rs:1406
#: crates/pdfs-gui/src/app/main.rs:1434
msgid "Back / forward"
msgstr "Voltar / avançar"
#: crates/pdfs-gui/src/app/main.rs:1407
#: crates/pdfs-gui/src/app/main.rs:1435
#: crates/pdfs-gui/src/app/pages/browser.rs:2320
msgid "Parent folder"
msgstr "Pasta superior"
#: crates/pdfs-gui/src/app/main.rs:1408
#: crates/pdfs-gui/src/app/main.rs:1436
msgid "Grid / list"
msgstr "Grade / lista"
#: crates/pdfs-gui/src/app/main.rs:1409
#: crates/pdfs-gui/src/app/main.rs:1437
#: crates/pdfs-gui/src/app/pages/albums.rs:297
#: crates/pdfs-gui/src/app/pages/browser.rs:2252
#: crates/pdfs-gui/src/app/pages/browser.rs:2274
@@ -233,7 +272,7 @@ msgstr "Grade / lista"
msgid "Rename"
msgstr "Renomear"
#: crates/pdfs-gui/src/app/main.rs:1410 crates/pdfs-gui/src/app/main.rs:1430
#: crates/pdfs-gui/src/app/main.rs:1438 crates/pdfs-gui/src/app/main.rs:1458
#: crates/pdfs-gui/src/app/pages/browser.rs:414
#: crates/pdfs-gui/src/app/pages/browser.rs:1306
#: crates/pdfs-gui/src/app/pages/browser.rs:1338
@@ -244,51 +283,51 @@ msgstr "Renomear"
msgid "Move to Trash"
msgstr "Mover para a lixeira"
#: crates/pdfs-gui/src/app/main.rs:1411
#: crates/pdfs-gui/src/app/main.rs:1439
msgid "Clear the selection"
msgstr "Limpar a seleção"
#: crates/pdfs-gui/src/app/main.rs:1417
#: crates/pdfs-gui/src/app/main.rs:1445
msgid "Larger thumbnails"
msgstr "Miniaturas maiores"
#: crates/pdfs-gui/src/app/main.rs:1418
#: crates/pdfs-gui/src/app/main.rs:1446
msgid "Smaller thumbnails"
msgstr "Miniaturas menores"
#: crates/pdfs-gui/src/app/main.rs:1419
#: crates/pdfs-gui/src/app/main.rs:1447
msgid "Reset thumbnail size"
msgstr "Redefinir tamanho das miniaturas"
#: crates/pdfs-gui/src/app/main.rs:1420
#: crates/pdfs-gui/src/app/main.rs:1448
msgid "Select all"
msgstr "Selecionar tudo"
#: crates/pdfs-gui/src/app/main.rs:1424
#: crates/pdfs-gui/src/app/main.rs:1452
msgid "Photo Viewer"
msgstr "Visualizador de fotos"
#: crates/pdfs-gui/src/app/main.rs:1426
#: crates/pdfs-gui/src/app/main.rs:1454
msgid "Previous / next photo"
msgstr "Foto anterior / próxima"
#: crates/pdfs-gui/src/app/main.rs:1427
#: crates/pdfs-gui/src/app/main.rs:1455
msgid "First / last photo"
msgstr "Primeira / última foto"
#: crates/pdfs-gui/src/app/main.rs:1428
#: crates/pdfs-gui/src/app/main.rs:1456
msgid "Show details"
msgstr "Mostrar detalhes"
#: crates/pdfs-gui/src/app/main.rs:1429
#: crates/pdfs-gui/src/app/main.rs:1457
msgid "Fullscreen"
msgstr "Tela cheia"
#: crates/pdfs-gui/src/app/main.rs:1431
#: crates/pdfs-gui/src/app/main.rs:1459
msgid "Close"
msgstr "Fechar"
#: crates/pdfs-gui/src/app/main.rs:1534
#: crates/pdfs-gui/src/app/main.rs:1562
msgid "Select a single item to rename it"
msgstr "Selecione um único item para renomeá-lo"