cosmic-settings/cosmic-settings/Cargo.toml

199 lines
6.6 KiB
TOML
Raw Normal View History

[package]
name = "cosmic-settings"
2026-02-17 17:04:16 +01:00
version = "1.0.7"
2025-03-21 14:15:34 -04:00
edition = "2024"
license = "GPL-3.0-only"
publish = false
[build-dependencies]
xdgen = "0.1"
[dependencies]
2026-05-25 09:55:11 +02:00
accounts-zbus = { path = "../../dbus-settings-bindings/accounts-zbus", optional = true }
anyhow = "1.0"
2025-09-12 14:59:30 +02:00
ashpd = { version = "0.12", default-features = false, features = [
2024-11-11 17:25:09 +01:00
"tokio",
], optional = true }
chrono = "0.4"
jiff = "0.2"
2026-02-19 18:30:33 +01:00
clap = { version = "4.5.59", features = ["derive"] }
color-eyre = "0.6.5"
cosmic-bg-config.workspace = true
cosmic-comp-config = { workspace = true, optional = true }
cosmic-config.workspace = true
2026-05-25 09:55:11 +02:00
cosmic-dbus-networkmanager = { path = "../../dbus-settings-bindings/networkmanager", optional = true }
nm-secret-agent-manager = { path = "../../dbus-settings-bindings/nm-secret-agent-manager", optional = true }
2024-10-17 19:09:58 -07:00
cosmic-idle-config.workspace = true
cosmic-panel-config = { workspace = true, optional = true }
2026-05-25 18:10:22 +02:00
cosmic-protocols = { path = "../../cosmic-protocols", optional = true }
cosmic-randr-shell.workspace = true
cosmic-randr = { workspace = true, optional = true }
2026-05-25 18:10:22 +02:00
cosmic-settings-config = { path = "../../cosmic-settings-daemon/config", 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 }
2026-01-02 15:37:09 -05:00
cosmic-settings-sound-subscription = { path = "../subscriptions/sound", optional = true, features = [
"auto-profile-init",
] }
cosmic-settings-wallpaper = { path = "../pages/wallpapers" }
2026-05-25 18:10:22 +02:00
cosmic-settings-daemon-config = { path = "../../cosmic-settings-daemon/cosmic-settings-daemon-config", optional = true }
2026-02-19 18:30:33 +01:00
derive_setters = "0.1.9"
dirs = "6.0.0"
eyre = "0.6.12"
2026-01-10 03:47:06 +01:00
freedesktop-desktop-entry = "0.8.1"
2026-02-19 18:30:33 +01:00
futures = "0.3.32"
hostname-validator = "1.1.1"
2026-05-25 09:55:11 +02:00
hostname1-zbus = { path = "../../dbus-settings-bindings/hostname1", optional = true }
i18n-embed-fl = "0.10.0"
2025-02-14 01:48:26 +01:00
image = { version = "0.25", default-features = false, features = [
"jpeg",
"png",
"rayon",
"webp",
"hdr",
] }
2026-01-10 03:47:06 +01:00
indexmap = "2.13.0"
itertools = "0.14.0"
2026-01-10 03:47:06 +01:00
itoa = "1.0.17"
libcosmic-yoda.workspace = true
iced_winit.workspace = true
2026-05-25 09:55:11 +02:00
locale1 = { path = "../../dbus-settings-bindings/locale1", optional = true }
2026-03-17 16:56:55 -04:00
sysinfo = { version = "=0.38.0", optional = true }
2024-11-22 00:42:00 +01:00
mime-apps = { package = "cosmic-mime-apps", git = "https://github.com/pop-os/cosmic-mime-apps", optional = true }
2026-01-10 03:47:06 +01:00
notify = "8.2.0"
2026-02-19 18:30:33 +01:00
regex = "1.12.3"
2026-01-10 03:47:06 +01:00
ron = "0.12"
2026-02-19 18:30:33 +01:00
rust-embed = "8.11.0"
sctk = { workspace = true, optional = true }
secure-string = "0.3.0"
serde = { version = "1.0.228", features = ["derive"] }
2026-02-19 18:30:33 +01:00
slab = "0.4.12"
2026-01-10 03:47:06 +01:00
slotmap = "1.1.1"
static_init = "1.0.4"
sunrise = "3.0.0"
2026-05-25 09:55:11 +02:00
timedate-zbus = { path = "../../dbus-settings-bindings/timedate", optional = true }
2026-01-29 12:36:51 -07:00
tokio = { workspace = true, features = ["fs", "io-util", "process", "sync"] }
2026-01-10 03:47:06 +01:00
tracing = "0.1.44"
tracing-subscriber = { version = "0.3.22", features = ["env-filter"] }
2025-02-14 01:48:26 +01:00
udev = { version = "0.9.3", optional = true }
2026-05-25 09:55:11 +02:00
upower_dbus = { path = "../../dbus-settings-bindings/upower", optional = true }
bluez-zbus = { path = "../../dbus-settings-bindings/bluez", optional = true }
2026-01-10 03:47:06 +01:00
url = "2.5.8"
2026-02-19 18:30:33 +01:00
xkb-data = "0.2.2"
xkeysym = { version = "0.2.1", optional = true }
2026-02-19 18:30:33 +01:00
zbus = { version = "5.13.2", default-features = false, features = [
2025-02-14 01:48:26 +01:00
"tokio",
], optional = true }
2025-05-25 12:07:14 +02:00
zbus_polkit = { version = "5.0.0", optional = true }
fontdb = "0.23.0"
2024-11-22 00:42:00 +01:00
mime = "0.3.17"
2026-01-10 03:47:06 +01:00
rustix = { version = "1.1.3", features = ["process"] }
gettext-rs = { version = "0.7.7", features = [
"gettext-system",
], optional = true }
2025-03-17 19:45:00 +01:00
num-traits = "0.2"
pwhash = "1"
which = "8.0.0"
[dependencies.icu]
version = "2.1.1"
2025-09-12 14:55:31 +02:00
features = ["compiled_data"]
[dependencies.i18n-embed]
version = "0.16.0"
features = ["fluent-system", "desktop-requester"]
2023-12-22 16:42:56 +01:00
2024-11-11 17:25:09 +01:00
# Contains region-handling logic for Linux
[dependencies.locales-rs]
git = "https://github.com/AerynOS/locales-rs"
2024-11-11 17:25:09 +01:00
optional = true
2023-12-22 16:42:56 +01:00
[features]
2025-06-23 11:49:19 -06:00
default = ["a11y", "linux", "single-instance", "wgpu"]
gettext = ["dep:gettext-rs"]
# Default features for Linux
linux = [
2026-01-29 12:16:17 -07:00
"cosmic-comp-config",
"page-accessibility",
"page-about",
"page-bluetooth",
"page-date",
2024-11-22 00:42:00 +01:00
"page-default-apps",
2025-03-13 13:56:26 -06:00
"page-display",
"page-input",
"page-legacy-applications",
"page-networking",
"page-power",
2024-11-11 17:25:09 +01:00
"page-region",
"page-sound",
"page-users",
"page-window-management",
"page-workspaces",
"xdg-portal",
"wayland",
]
# Pages
2025-03-13 13:56:26 -06:00
page-accessibility = [
2026-01-29 12:16:17 -07:00
"cosmic-comp-config",
"dep:sctk",
2025-03-13 13:56:26 -06:00
"dep:cosmic-protocols",
"dep:cosmic-settings-config",
2025-03-27 18:50:40 -04:00
"dep:cosmic-settings-daemon-config",
"dep:cosmic-settings-accessibility-subscription",
"dep:cosmic-settings-a11y-manager-subscription",
2025-03-13 13:56:26 -06:00
]
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"]
2025-03-13 13:56:26 -06:00
page-default-apps = ["dep:cosmic-settings-config", "dep:mime-apps"]
page-display = ["dep:udev"]
2024-11-11 17:25:09 +01:00
page-input = [
2026-01-29 12:16:17 -07:00
"cosmic-comp-config",
"gettext",
2024-11-11 17:25:09 +01:00
"dep:cosmic-settings-config",
"dep:udev",
2025-09-15 18:55:38 -04:00
"dep:xkeysym",
"wayland",
2024-11-11 17:25:09 +01:00
]
2026-01-29 12:16:17 -07:00
page-legacy-applications = ["cosmic-comp-config", "dep:cosmic-randr"]
2024-11-11 17:25:09 +01:00
page-networking = [
"dep:cosmic-settings-network-manager-subscription",
"xdg-portal",
2024-11-11 17:25:09 +01:00
"dep:cosmic-dbus-networkmanager",
"dep:nm-secret-agent-manager",
2024-11-11 17:25:09 +01:00
"dep:zbus",
]
page-power = ["dep:upower_dbus", "dep:zbus"]
2026-03-17 16:56:55 -04:00
page-region = [
"gettext",
"dep:locales-rs",
"dep:locale1",
"dep:zbus",
"dep:accounts-zbus",
]
page-sound = ["dep:cosmic-settings-sound-subscription"]
2025-03-21 14:15:34 -04:00
page-users = ["xdg-portal", "dep:accounts-zbus", "dep:zbus", "dep:zbus_polkit"]
2026-01-29 12:16:17 -07:00
page-window-management = ["cosmic-comp-config", "dep:cosmic-settings-config"]
page-workspaces = ["cosmic-comp-config"]
# Other features
a11y = ["libcosmic-yoda/a11y"]
ashpd = ["dep:ashpd"]
2026-01-29 12:16:17 -07:00
cosmic-comp-config = ["dep:cosmic-comp-config"]
dbus-config = ["libcosmic-yoda/dbus-config", "cosmic-config/dbus"]
single-instance = ["libcosmic-yoda/single-instance"]
2023-12-22 16:42:56 +01:00
test = []
wayland = ["libcosmic-yoda/wayland", "dep:cosmic-panel-config", "dep:cosmic-randr", "iced_winit/cctk"]
wgpu = ["libcosmic-yoda/wgpu"]
xdg-portal = ["ashpd", "libcosmic-yoda/xdg-portal"]