[package] name = "cosmic-settings" version = "0.1.0" edition = "2024" license = "GPL-3.0-only" [dependencies] accounts-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } anyhow = "1.0" as-result = "0.2.1" ashpd = { version = "0.9", default-features = false, features = [ "tokio", ], optional = true } async-channel = "2.3.1" chrono = "0.4.40" clap = { version = "4.5.32", features = ["derive"] } color-eyre = "0.6.3" cosmic-bg-config.workspace = true cosmic-comp-config = { workspace = true, optional = true } cosmic-config.workspace = true cosmic-dbus-networkmanager = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } cosmic-idle-config.workspace = true cosmic-panel-config = { workspace = true, optional = true } cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols", optional = true } cosmic-randr-shell.workspace = true cosmic-randr = { workspace = true, optional = true } cosmic-settings-config = { git = "https://github.com/pop-os/cosmic-settings-daemon", optional = true } cosmic-settings-page = { path = "../page" } cosmic-settings-system = { path = "../pages/system", optional = true } cosmic-settings-wallpaper = { path = "../pages/wallpapers" } cosmic-settings-daemon-config = { git = "https://github.com/pop-os/cosmic-settings-daemon", optional = true } derivative = "2.2.0" derive_setters = "0.1.6" dirs = "5.0.1" downcast-rs = "1.2.1" eyre = "0.6.12" freedesktop-desktop-entry = "0.7.9" futures = "0.3.31" hostname-validator = "1.1.1" hostname1-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } i18n-embed-fl = "0.9.3" image = { version = "0.25", default-features = false, features = [ "jpeg", "png", "rayon", "webp", "hdr", ] } indexmap = "2.8.0" itertools = "0.13.0" itoa = "1.0.15" libcosmic.workspace = true locale1 = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } mime-apps = { package = "cosmic-mime-apps", git = "https://github.com/pop-os/cosmic-mime-apps", optional = true } notify = "6.1.1" once_cell = "1.21.1" regex = "1.11.1" ron = "0.9.0" rust-embed = "8.6.0" sctk = { workspace = true, optional = true } secure-string = "0.3.0" serde = { version = "1.0.219", features = ["derive"] } slab = "0.4.9" slotmap = "1.0.7" static_init = "1.0.3" sunrise = "1.2.1" tachyonix = "0.3.1" timedate-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } tokio = { workspace = true, features = ["fs", "io-util", "sync"] } tracing = "0.1.41" tracing-subscriber = "0.3.19" udev = { version = "0.9.3", optional = true } upower_dbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } bluez-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } url = "2.5.4" xkb-data = "0.2.1" zbus = { version = "5.7.1", default-features = false, features = [ "tokio", ], optional = true } zbus_polkit = { version = "5.0.0", optional = true } fontdb = "0.23.0" fixed_decimal = "0.5.6" mime = "0.3.17" rustix = { version = "1.0.3", features = ["process"] } gettext-rs = { version = "0.7.2", features = [ "gettext-system", ], optional = true } async-fn-stream = "0.2.2" num-traits = "0.2" num-derive = "0.4" pwhash = "1" [dependencies.cosmic-settings-subscriptions] git = "https://github.com/pop-os/cosmic-settings-subscriptions" #TODO: only select features as needed features = [ "cosmic_a11y_manager", "accessibility", "network_manager", "pipewire", "pulse", "bluetooth", ] optional = true [dependencies.icu] version = "1.5.0" features = ["experimental", "compiled_data", "icu_datetime_experimental"] [dependencies.i18n-embed] version = "0.15.3" features = ["fluent-system", "desktop-requester"] # Contains region-handling logic for Linux [dependencies.locales-rs] git = "https://github.com/AerynOS/locales-rs" optional = true [features] default = ["a11y", "dbus-config", "linux", "single-instance", "wgpu"] gettext = ["dep:gettext-rs"] # Default features for Linux linux = [ "page-accessibility", "page-about", "page-bluetooth", "page-date", "page-default-apps", "page-display", "page-input", "page-legacy-applications", "page-networking", "page-power", "page-region", "page-sound", "page-users", "page-window-management", "page-workspaces", "xdg-portal", "wayland", ] # Pages page-accessibility = [ "dep:cosmic-comp-config", "dep:cosmic-protocols", "dep:cosmic-settings-config", "dep:cosmic-settings-daemon-config", "dep:sctk", ] page-about = ["dep:cosmic-settings-system", "dep:hostname1-zbus", "dep:zbus"] page-bluetooth = [ "dep:bluez-zbus", "dep:zbus", "dep:cosmic-settings-subscriptions", ] page-date = ["dep:timedate-zbus", "dep:zbus"] page-default-apps = ["dep:cosmic-settings-config", "dep:mime-apps"] page-display = ["dep:udev"] page-input = [ "gettext", "dep:cosmic-comp-config", "dep:cosmic-settings-config", "dep:udev", ] page-legacy-applications = ["dep:cosmic-comp-config"] page-networking = [ "xdg-portal", "dep:cosmic-dbus-networkmanager", "dep:cosmic-settings-subscriptions", "dep:zbus", ] page-power = ["dep:upower_dbus", "dep:zbus"] page-region = ["gettext", "dep:locales-rs", "dep:locale1", "dep:zbus"] page-sound = ["dep:cosmic-settings-subscriptions"] page-users = ["xdg-portal", "dep:accounts-zbus", "dep:zbus", "dep:zbus_polkit"] page-window-management = ["dep:cosmic-settings-config"] page-workspaces = ["dep:cosmic-comp-config"] # Other features a11y = ["libcosmic/a11y"] ashpd = ["dep:ashpd"] dbus-config = ["libcosmic/dbus-config", "cosmic-config/dbus"] single-instance = ["libcosmic/single-instance"] test = [] wayland = ["libcosmic/wayland", "dep:cosmic-panel-config", "dep:cosmic-randr"] wgpu = ["libcosmic/wgpu"] xdg-portal = ["ashpd", "libcosmic/xdg-portal"]