[package] name = "cosmic-files" version = "0.1.0" authors = ["Jeremy Soller "] edition = "2024" license = "GPL-3.0-only" rust-version = "1.85" [dependencies] anyhow = "1" chrono = { version = "0.4", features = ["unstable-locales"] } icu = { version = "1.5.0", features = [ "experimental", "compiled_data", "icu_datetime_experimental", ] } cctk = { git = "https://github.com/pop-os/cosmic-protocols", package = "cosmic-client-toolkit", rev = "178eb0b", optional = true } 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 ordermap = { version = "0.5.8", features = ["serde"] } # 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 = { git = "https://github.com/pop-os/recently-used-xbel.git" } zip = "2.2.2" uzers = "0.12.1" md-5 = "0.10.6" png = "0.17.16" jxl-oxide = { version = "0.12.2", features = ["image"] } num_cpus = "1.17.0" # Completion-based IO runtime to enable io_uring / IOCP file IO support. [dependencies.compio] version = "0.14.0" default-features = false features = ["io", "macros", "polling", "runtime"] [dependencies.io-uring] version = "0.7.6" default-features = false optional = true [dependencies.libcosmic] git = "https://github.com/pop-os/libcosmic.git" default-features = false #TODO: a11y feature crashes features = ["autosize", "multi-window", "tokio", "winit", "surface-message"] [features] default = [ "bzip2", "desktop", "gvfs", "io-uring", "notify", "wgpu", "wayland", "xz2", ] dbus-config = ["libcosmic/dbus-config"] desktop = [ "libcosmic/desktop", "libcosmic/about", "dep:cosmic-mime-apps", "dep:xdg", ] desktop-applet = [] gvfs = ["dep:gio", "dep:glib"] io-uring = ["compio/io-uring", "dep:io-uring"] io-uring-bindgen = ["io-uring?/bindgen"] jemalloc = ["dep:tikv-jemallocator"] notify = ["dep:notify-rust"] wayland = ["libcosmic/wayland", "dep:cctk", "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.'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"]