cosmic-settings/cosmic-settings/Cargo.toml
2026-01-05 17:03:56 +01:00

184 lines
6.3 KiB
TOML

[package]
name = "cosmic-settings"
version = "1.0.0-beta6"
edition = "2024"
license = "GPL-3.0-only"
publish = false
[dependencies]
accounts-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
anyhow = "1.0"
ashpd = { version = "0.12", default-features = false, features = [
"tokio",
], optional = true }
chrono = "0.4.42"
clap = { version = "4.5.51", features = ["derive"] }
color-eyre = "0.6.5"
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-accessibility-subscription = { path = "../subscriptions/accessibility", optional = true }
cosmic-settings-a11y-manager-subscription = { path = "../subscriptions/a11y-manager", optional = true }
cosmic-settings-airplane-mode-subscription = { path = "../subscriptions/airplane-mode", optional = true }
cosmic-settings-bluetooth-subscription = { path = "../subscriptions/bluetooth", optional = true }
cosmic-settings-network-manager-subscription = { path = "../subscriptions/network-manager", optional = true }
cosmic-settings-upower-subscription = { path = "../subscriptions/upower", optional = true }
cosmic-settings-sound-subscription = { path = "../subscriptions/sound", optional = true, features = [
"auto-profile-init",
] }
cosmic-settings-wallpaper = { path = "../pages/wallpapers" }
cosmic-settings-daemon-config = { git = "https://github.com/pop-os/cosmic-settings-daemon", optional = true }
derive_setters = "0.1.8"
dirs = "6.0.0"
eyre = "0.6.12"
freedesktop-desktop-entry = "0.7.19"
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.10.0"
image = { version = "0.25", default-features = false, features = [
"jpeg",
"png",
"rayon",
"webp",
"hdr",
] }
indexmap = "2.12.0"
itertools = "0.14.0"
itoa = "1.0.15"
libcosmic.workspace = true
locale1 = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
sysinfo = { version = "0.36.1", optional = true }
mime-apps = { package = "cosmic-mime-apps", git = "https://github.com/pop-os/cosmic-mime-apps", optional = true }
# TODO: updating notify beyond this hangs the app
notify = "6.1.1"
regex = "1.12.2"
ron = "0.11"
rust-embed = "8.9.0"
sctk = { workspace = true, optional = true }
secure-string = "0.3.0"
serde = { version = "1.0.228", features = ["derive"] }
slab = "0.4.11"
slotmap = "1.0.7"
static_init = "1.0.4"
sunrise = "2.1.0"
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 = { version = "0.3.20", features = ["env-filter"] }
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.7"
xkb-data = "0.2.1"
xkeysym = { version = "0.2.1", optional = true }
zbus = { version = "5.12.0", default-features = false, features = [
"tokio",
], optional = true }
zbus_polkit = { version = "5.0.0", optional = true }
fontdb = "0.23.0"
mime = "0.3.17"
rustix = { version = "1.1.2", features = ["process"] }
gettext-rs = { version = "0.7.7", features = [
"gettext-system",
], optional = true }
async-fn-stream = "0.3"
num-traits = "0.2"
pwhash = "1"
[dependencies.icu]
version = "2.1.1"
features = ["compiled_data"]
[dependencies.i18n-embed]
version = "0.16.0"
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", "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:sctk",
"dep:cosmic-protocols",
"dep:cosmic-comp-config",
"dep:cosmic-settings-config",
"dep:cosmic-settings-daemon-config",
"dep:cosmic-settings-accessibility-subscription",
"dep:cosmic-settings-a11y-manager-subscription",
]
page-about = ["dep:hostname1-zbus", "dep:sysinfo", "dep:zbus"]
page-bluetooth = [
"dep:cosmic-settings-bluetooth-subscription",
"dep:zbus",
"dep:bluez-zbus",
]
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",
"dep:xkeysym",
"wayland",
]
page-legacy-applications = ["dep:cosmic-comp-config"]
page-networking = [
"dep:cosmic-settings-network-manager-subscription",
"xdg-portal",
"dep:cosmic-dbus-networkmanager",
"dep:zbus",
]
page-power = ["dep:upower_dbus", "dep:zbus"]
page-region = ["gettext", "dep:locales-rs", "dep:locale1", "dep:zbus"]
page-sound = ["dep:cosmic-settings-sound-subscription"]
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"]