cosmic-files/Cargo.toml
Jeremy Soller dd98622cfa Reduce features used on remote filesystems
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.
2025-04-29 14:51:11 -06:00

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"]