This attempts to detect remote filesystems on Linux using the /proc/self/mountinfo file and checking the filesystem against a hardcoded list of remote filesystems. Remote filesystems will not thumbnail, read file data to determine mime types, or calculate directory sizes.
137 lines
4 KiB
TOML
137 lines
4 KiB
TOML
[package]
|
|
name = "cosmic-files"
|
|
version = "0.1.0"
|
|
authors = ["Jeremy Soller <jeremy@system76.com>"]
|
|
edition = "2021"
|
|
license = "GPL-3.0-only"
|
|
rust-version = "1.85.0"
|
|
|
|
[build-dependencies]
|
|
vergen = { version = "8", features = ["git", "gitcl"] }
|
|
|
|
[dependencies]
|
|
chrono = { version = "0.4", features = ["unstable-locales"] }
|
|
icu = { version = "1.5.0", features = [
|
|
"experimental",
|
|
"compiled_data",
|
|
"icu_datetime_experimental",
|
|
] }
|
|
# Completion-based IO runtime to enable io_uring / IOCP file IO support.
|
|
compio = { version = "0.14.0", features = ["io", "macros", "runtime"] }
|
|
cosmic-mime-apps = { git = "https://github.com/pop-os/cosmic-mime-apps.git", optional = true }
|
|
dirs = "6.0.0"
|
|
env_logger = "0.11"
|
|
freedesktop_entry_parser = "1.3"
|
|
futures = "0.3.31"
|
|
gio = { version = "0.20", optional = true }
|
|
glib = { version = "0.20", optional = true }
|
|
glob = "0.3"
|
|
icu_collator = "1.5"
|
|
icu_provider = { version = "1.5", features = ["sync"] }
|
|
ignore = "0.4"
|
|
image = "0.25"
|
|
libc = "0.2"
|
|
log = "0.4"
|
|
mime_guess = "2"
|
|
notify-debouncer-full = "0.3"
|
|
notify-rust = { version = "4", optional = true }
|
|
once_cell = "1.20"
|
|
open = "5.3.2"
|
|
paste = "1.0"
|
|
regex = "1"
|
|
serde = { version = "1", features = ["serde_derive"] }
|
|
shlex = { version = "1.3" }
|
|
tempfile = "3"
|
|
tikv-jemallocator = { version = "0.6", optional = true }
|
|
tokio = { version = "1", features = ["process", "sync"] }
|
|
trash = { git = "https://github.com/jackpot51/trash-rs.git", branch = "cosmic" }
|
|
url = "2.5"
|
|
walkdir = "2.5.0"
|
|
wayland-client = { version = "0.31.8", optional = true }
|
|
xdg = { version = "2.5.2", optional = true }
|
|
# https://github.com/ebassi/xdg-mime-rs/pull/31
|
|
xdg-mime = { git = "https://github.com/ellieplayswow/xdg-mime-rs", branch = "feature/get-same-as" }
|
|
# Compression
|
|
bzip2 = { version = "0.5", optional = true } #TODO: replace with pure Rust crate
|
|
flate2 = "1.0"
|
|
tar = "0.4.43"
|
|
xz2 = { version = "0.1", optional = true } #TODO: replace with pure Rust crate
|
|
# Internationalization
|
|
i18n-embed = { version = "0.15", features = [
|
|
"fluent-system",
|
|
"desktop-requester",
|
|
] }
|
|
i18n-embed-fl = "0.9"
|
|
rust-embed = "8"
|
|
slotmap = "1.0.7"
|
|
recently-used-xbel = "1.1.0"
|
|
zip = "2.2.2"
|
|
unix_permissions_ext = "0.1.2"
|
|
uzers = "0.12.1"
|
|
io-uring = { version = "0.7.4", features = ["bindgen"], optional = true }
|
|
|
|
[dependencies.libcosmic]
|
|
git = "https://github.com/pop-os/libcosmic.git"
|
|
default-features = false
|
|
#TODO: a11y feature crashes
|
|
features = ["multi-window", "tokio", "winit", "surface-message"]
|
|
|
|
[features]
|
|
default = [
|
|
"bzip2",
|
|
"dbus-config",
|
|
"desktop",
|
|
"gvfs",
|
|
"io-uring",
|
|
"notify",
|
|
"wgpu",
|
|
"xz2",
|
|
]
|
|
dbus-config = ["libcosmic/dbus-config"]
|
|
desktop = ["libcosmic/desktop", "dep:cosmic-mime-apps", "dep:xdg"]
|
|
gvfs = ["dep:gio", "dep:glib"]
|
|
jemalloc = ["dep:tikv-jemallocator"]
|
|
notify = ["dep:notify-rust"]
|
|
wayland = ["libcosmic/wayland", "dep:wayland-client"]
|
|
wgpu = ["libcosmic/wgpu"]
|
|
|
|
[profile.dev]
|
|
opt-level = 1
|
|
|
|
[profile.release-with-debug]
|
|
inherits = "release"
|
|
debug = true
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
fork = "0.2"
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
procfs = "0.17"
|
|
|
|
[dev-dependencies]
|
|
# cap-std = "3"
|
|
# cap-tempfile = "3"
|
|
fastrand = "2"
|
|
test-log = "0.2"
|
|
tokio = { version = "1", features = ["rt", "macros"] }
|
|
|
|
[patch.crates-io]
|
|
# https://github.com/smol-rs/polling/pull/235
|
|
polling = { git = "https://github.com/jackpot51/polling.git", branch = "master" }
|
|
# Fixes building on ppc64le, s390x
|
|
# https://github.com/tokio-rs/io-uring/issues/321#issuecomment-2831832546
|
|
io-uring = { git = "https://github.com/tokio-rs/io-uring.git", rev = "2c9010a3316519e02444f41e536623099af58a84" }
|
|
|
|
# [patch.'https://github.com/pop-os/cosmic-text']
|
|
# cosmic-text = { path = "../cosmic-text" }
|
|
|
|
# [patch.'https://github.com/pop-os/libcosmic']
|
|
# libcosmic = { path = "../libcosmic" }
|
|
# cosmic-config = { path = "../libcosmic/cosmic-config" }
|
|
# cosmic-theme = { path = "../libcosmic/cosmic-theme" }
|
|
|
|
# [patch.'https://github.com/pop-os/smithay-clipboard']
|
|
# smithay-clipboard = { path = "../smithay-clipboard" }
|
|
|
|
[workspace]
|
|
members = ["cosmic-files-applet"]
|