cosmic-settings/cosmic-settings/Cargo.toml
2025-04-30 19:23:53 +02:00

182 lines
5.7 KiB
TOML

[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 = "4.4.0", default-features = false, features = [
"tokio",
], optional = true }
zbus_polkit = { version = "4.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 = ["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"]