chore: update dependencies

This commit is contained in:
Michael Aaron Murphy 2026-01-10 03:47:06 +01:00 committed by Michael Murphy
parent c05dad00de
commit 0de9c33822
15 changed files with 313 additions and 359 deletions

450
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -8,10 +8,10 @@ rust-version = "1.85"
[workspace.dependencies] [workspace.dependencies]
cosmic-randr = { git = "https://github.com/pop-os/cosmic-randr" } cosmic-randr = { git = "https://github.com/pop-os/cosmic-randr" }
tokio = { version = "1.48.0", features = ["macros"] } tokio = { version = "1.49.0", features = ["macros"] }
[workspace.dependencies.libcosmic] [workspace.dependencies.libcosmic]
features = ["dbus-config", "multi-window", "winit", "tokio", "qr_code"] features = ["dbus-config", "desktop", "multi-window", "winit", "tokio", "qr_code"]
git = "https://github.com/pop-os/libcosmic" git = "https://github.com/pop-os/libcosmic"
[workspace.dependencies.cosmic-config] [workspace.dependencies.cosmic-config]
@ -34,9 +34,8 @@ git = "https://github.com/pop-os/cosmic-panel"
git = "https://github.com/pop-os/cosmic-randr" git = "https://github.com/pop-os/cosmic-randr"
[workspace.dependencies.sctk] [workspace.dependencies.sctk]
git = "https://github.com/smithay/client-toolkit/" version = "0.20"
package = "smithay-client-toolkit" package = "smithay-client-toolkit"
# rev = "c583de8"
[profile.dev] [profile.dev]
opt-level = 3 opt-level = 3
@ -52,13 +51,12 @@ inherits = "release"
lto = "off" lto = "off"
debug = true debug = true
# Fix text rendering being cut off on the right
# [patch.'https://github.com/pop-os/cosmic-text'] # [patch.'https://github.com/pop-os/cosmic-text']
# cosmic-text = { git = "https://github.com/pop-os/cosmic-text//", rev = "b017d7c" } # cosmic-text = { git = "https://github.com/pop-os/cosmic-text//", rev = "b017d7c" }
[patch.'https://github.com/pop-os/cosmic-protocols'] # [patch.'https://github.com/pop-os/cosmic-protocols']
cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols//", rev = "d0e95be" } # cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols//", rev = "d0e95be" }
cosmic-client-toolkit = { git = "https://github.com/pop-os/cosmic-protocols//", rev = "d0e95be" } # cosmic-client-toolkit = { git = "https://github.com/pop-os/cosmic-protocols//", rev = "d0e95be" }
# [patch.'https://github.com/pop-os/cosmic-settings-daemon'] # [patch.'https://github.com/pop-os/cosmic-settings-daemon']
# cosmic-settings-config = { git = "https://github.com/pop-os/cosmic-settings-daemon//", branch = "input_nobuild" } # cosmic-settings-config = { git = "https://github.com/pop-os/cosmic-settings-daemon//", branch = "input_nobuild" }
@ -74,6 +72,3 @@ cosmic-client-toolkit = { git = "https://github.com/pop-os/cosmic-protocols//",
# cosmic-dbus-networkmanager = { path = "../dbus-settings-bindings/networkmanager" } # cosmic-dbus-networkmanager = { path = "../dbus-settings-bindings/networkmanager" }
# upower_dbus = { path = "../dbus-settings-bindings/upower" } # upower_dbus = { path = "../dbus-settings-bindings/upower" }
# nm-secret-agent-manager = { git = "https://github.com/pop-os/dbus-settings-bindings//", branch = "nm-secret-agent" } # nm-secret-agent-manager = { git = "https://github.com/pop-os/dbus-settings-bindings//", branch = "nm-secret-agent" }
[patch."https://github.com/smithay/client-toolkit.git"]
sctk = { package = "smithay-client-toolkit", version = "0.20.0" }

View file

@ -12,7 +12,7 @@ ashpd = { version = "0.12", default-features = false, features = [
"tokio", "tokio",
], optional = true } ], optional = true }
chrono = "0.4.42" chrono = "0.4.42"
clap = { version = "4.5.51", features = ["derive"] } clap = { version = "4.5.54", features = ["derive"] }
color-eyre = "0.6.5" color-eyre = "0.6.5"
cosmic-bg-config.workspace = true cosmic-bg-config.workspace = true
cosmic-comp-config = { workspace = true, optional = true } cosmic-comp-config = { workspace = true, optional = true }
@ -40,7 +40,7 @@ cosmic-settings-daemon-config = { git = "https://github.com/pop-os/cosmic-settin
derive_setters = "0.1.8" derive_setters = "0.1.8"
dirs = "6.0.0" dirs = "6.0.0"
eyre = "0.6.12" eyre = "0.6.12"
freedesktop-desktop-entry = "0.7.19" freedesktop-desktop-entry = "0.8.1"
futures = "0.3.31" futures = "0.3.31"
hostname-validator = "1.1.1" hostname-validator = "1.1.1"
hostname1-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } hostname1-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
@ -52,48 +52,51 @@ image = { version = "0.25", default-features = false, features = [
"webp", "webp",
"hdr", "hdr",
] } ] }
indexmap = "2.12.0" indexmap = "2.13.0"
itertools = "0.14.0" itertools = "0.14.0"
itoa = "1.0.15" itoa = "1.0.17"
libcosmic.workspace = true libcosmic.workspace = true
locale1 = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } locale1 = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
sysinfo = { version = "0.36.1", optional = true } sysinfo = { version = "0.37.2", optional = true }
mime-apps = { package = "cosmic-mime-apps", git = "https://github.com/pop-os/cosmic-mime-apps", 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 = "8.2.0"
notify = "6.1.1"
regex = "1.12.2" regex = "1.12.2"
ron = "0.11" ron = "0.12"
rust-embed = "8.9.0" rust-embed = "8.9.0"
sctk = { workspace = true, optional = true } sctk = { workspace = true, optional = true }
secure-string = "0.3.0" secure-string = "0.3.0"
serde = { version = "1.0.228", features = ["derive"] } serde = { version = "1.0.228", features = ["derive"] }
slab = "0.4.11" slab = "0.4.11"
slotmap = "1.0.7" slotmap = "1.1.1"
static_init = "1.0.4" static_init = "1.0.4"
sunrise = "2.1.0" sunrise = "2.1.0"
timedate-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true } timedate-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
tokio = { workspace = true, features = ["fs", "io-util", "sync"] } tokio = { workspace = true, features = ["fs", "io-util", "sync"] }
tracing = "0.1.41" tracing = "0.1.44"
tracing-subscriber = { version = "0.3.20", features = ["env-filter"] } tracing-subscriber = { version = "0.3.22", features = ["env-filter"] }
udev = { version = "0.9.3", optional = true } udev = { version = "0.9.3", optional = true }
upower_dbus = { git = "https://github.com/pop-os/dbus-settings-bindings", 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 } bluez-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings", optional = true }
url = "2.5.7" url = "2.5.8"
xkb-data = "0.2.1" xkb-data = "0.2.1"
xkeysym = { version = "0.2.1", optional = true } xkeysym = { version = "0.2.1", optional = true }
zbus = { version = "5.12.0", default-features = false, features = [ zbus = { version = "=5.12.0", default-features = false, features = [
"tokio", "tokio",
], optional = true } ], optional = true }
zbus_polkit = { version = "5.0.0", optional = true } zbus_polkit = { version = "5.0.0", optional = true }
fontdb = "0.23.0" fontdb = "0.23.0"
mime = "0.3.17" mime = "0.3.17"
rustix = { version = "1.1.2", features = ["process"] } rustix = { version = "1.1.3", features = ["process"] }
gettext-rs = { version = "0.7.7", features = [ gettext-rs = { version = "0.7.7", features = [
"gettext-system", "gettext-system",
], optional = true } ], optional = true }
async-fn-stream = "0.3" async-fn-stream = "0.3"
num-traits = "0.2" num-traits = "0.2"
pwhash = "1" pwhash = "1"
# Pinned to fix ashpd. Remove this when fixed.
zvariant = "=5.8.0"
# Pinned to fix ashpd. Remove this when fixed.
zvariant_derive = "=5.8.0"
[dependencies.icu] [dependencies.icu]
version = "2.1.1" version = "2.1.1"

View file

@ -2,98 +2,58 @@ use cosmic::{
iced::{Subscription, stream}, iced::{Subscription, stream},
iced_futures::futures::{self, SinkExt}, iced_futures::futures::{self, SinkExt},
}; };
use notify::{Config, Event, RecommendedWatcher, RecursiveMode, Watcher}; use notify::{Config, EventKind, RecommendedWatcher, RecursiveMode, Watcher};
use std::fmt::Debug; use std::fmt::Debug;
use std::hash::Hash; use std::hash::Hash;
use tokio::sync::mpsc::{UnboundedReceiver, unbounded_channel}; use tokio::sync::mpsc;
#[derive(Debug)]
pub enum State {
Ready,
Waiting {
watcher: RecommendedWatcher,
rx: UnboundedReceiver<notify::Result<Event>>,
},
Finished,
}
#[derive(Debug, Clone, Copy)] #[derive(Debug, Clone, Copy)]
pub enum DesktopFileEvent { pub enum Event {
Changed, Changed,
} }
pub fn desktop_files<I: 'static + Hash + Copy + Send + Sync + Debug>( pub fn desktop_files<I: 'static + Hash + Copy + Send + Sync + Debug>(
id: I, id: I,
) -> cosmic::iced::Subscription<DesktopFileEvent> { ) -> cosmic::iced::Subscription<Event> {
Subscription::run_with_id( Subscription::run_with_id(
id, id,
stream::channel(50, move |mut output| async move { stream::channel(1, move |mut output| async move {
let mut state = State::Ready; let handle = tokio::runtime::Handle::current();
let (tx, mut rx) = mpsc::channel(4);
let mut last_update = std::time::Instant::now();
loop { // Automatically select the best implementation for your platform.
state = start_watching(state, &mut output).await; // You can also access each implementation directly e.g. INotifyWatcher.
} let watcher = RecommendedWatcher::new(
}), move |res: Result<notify::Event, notify::Error>| {
) if let Ok(event) = res {
} match event.kind {
EventKind::Create(_) | EventKind::Modify(_) | EventKind::Remove(_) => {
let now = std::time::Instant::now();
if now.duration_since(last_update).as_secs() > 3 {
_ = handle.block_on(tx.send(()));
last_update = now;
}
}
async fn start_watching( _ => (),
state: State, }
output: &mut futures::channel::mpsc::Sender<DesktopFileEvent>, }
) -> State { },
match state { Config::default(),
State::Ready => { );
let paths = freedesktop_desktop_entry::default_paths();
// TODO log errors if let Ok(mut watcher) = watcher {
if let Ok((mut watcher, rx)) = async_watcher() { for path in cosmic::desktop::fde::default_paths() {
for path in paths {
let _ = watcher.watch(path.as_ref(), RecursiveMode::Recursive); let _ = watcher.watch(path.as_ref(), RecursiveMode::Recursive);
} }
_ = output.send(DesktopFileEvent::Changed).await; while rx.recv().await.is_some() {
State::Waiting { watcher, rx } _ = output.send(Event::Changed).await;
} else { }
State::Finished
} }
}
State::Waiting { watcher, rx } => { futures::future::pending().await
if let Some(rx) = async_watch(rx).await { }),
_ = output.send(DesktopFileEvent::Changed).await; )
State::Waiting { watcher, rx }
} else {
State::Finished
}
}
State::Finished => cosmic::iced::futures::future::pending().await,
}
}
fn async_watcher() -> notify::Result<(RecommendedWatcher, UnboundedReceiver<notify::Result<Event>>)>
{
let (tx, rx) = unbounded_channel();
// Automatically select the best implementation for your platform.
// You can also access each implementation directly e.g. INotifyWatcher.
let watcher = RecommendedWatcher::new(
move |res| {
_ = tx.send(res);
},
Config::default(),
)?;
Ok((watcher, rx))
}
async fn async_watch(
mut rx: UnboundedReceiver<notify::Result<Event>>,
) -> Option<UnboundedReceiver<notify::Result<Event>>> {
// TODO log errors
if let Some(res) = rx.recv().await {
match res {
Ok(_) => return Some(rx),
Err(_) => return None,
}
}
None
} }

View file

@ -8,13 +8,13 @@ license = "MPL-2.0"
publish = true publish = true
[dependencies] [dependencies]
intmap = "3.1.2" intmap = "3.1.3"
libspa = "0.9.2" libspa = "0.9.2"
libspa-sys = "0.9.2" libspa-sys = "0.9.2"
pipewire = "0.9" pipewire = "0.9"
serde = { version = "1.0.228", features = ["derive"]} serde = { version = "1.0.228", features = ["derive"]}
serde_json = "1.0.145" serde_json = "1.0.149"
tracing = "0.1.41" tracing = "0.1.44"
[features] [features]
# Cache route port types # Cache route port types

View file

@ -6,8 +6,8 @@ edition = "2024"
[dependencies] [dependencies]
derive_setters = "0.1.8" derive_setters = "0.1.8"
regex = "1.12.2" regex = "1.12.2"
slotmap = "1.0.7" slotmap = "1.1.1"
libcosmic = { workspace = true } libcosmic = { workspace = true }
downcast-rs = "2.0.2" downcast-rs = "2.0.2"
url = "2.5.7" url = "2.5.8"
slab = "0.4.11" slab = "0.4.11"

View file

@ -16,9 +16,9 @@ fast_image_resize = { version = "5", features = [
] } ] }
futures-lite = "2.6.1" futures-lite = "2.6.1"
futures-util = "0.3.31" futures-util = "0.3.31"
image = "0.25.8" image = "0.25.9"
infer = "0.19.0" infer = "0.19.0"
jxl-oxide = { version = "0.12.5", features = ["image"] } jxl-oxide = { version = "0.12.5", features = ["image"] }
tokio = { workspace = true, features = ["sync"] } tokio = { workspace = true, features = ["sync"] }
tracing = "0.1.41" tracing = "0.1.44"
walkdir = "=2.5.0" walkdir = "=2.5.0"

View file

@ -11,6 +11,6 @@ cosmic-protocols = { git = "https://github.com/pop-os/cosmic-protocols" }
iced_futures = { git = "https://github.com/pop-os/libcosmic" } iced_futures = { git = "https://github.com/pop-os/libcosmic" }
num-derive = "0.4.2" num-derive = "0.4.2"
num-traits = "0.2.19" num-traits = "0.2.19"
sctk = { git = "https://github.com/smithay/client-toolkit/", package = "smithay-client-toolkit" } sctk.workspace = true
tokio = "1.48.0" tokio = "1.49.0"
tracing = "0.1.41" tracing = "0.1.44"

View file

@ -10,6 +10,6 @@ publish = true
cosmic-dbus-a11y = { git = "https://github.com/pop-os/dbus-settings-bindings" } cosmic-dbus-a11y = { git = "https://github.com/pop-os/dbus-settings-bindings" }
futures = "0.3.31" futures = "0.3.31"
iced_futures = { git = "https://github.com/pop-os/libcosmic" } iced_futures = { git = "https://github.com/pop-os/libcosmic" }
tokio = { version = "1.48.0", features = ["sync", "time"] } tokio = { version = "1.49.0", features = ["sync", "time"] }
tracing = "0.1.41" tracing = "0.1.44"
zbus = "5" zbus = "5.12"

View file

@ -9,6 +9,6 @@ publish = true
[dependencies] [dependencies]
futures = "0.3.31" futures = "0.3.31"
iced_futures = { git = "https://github.com/pop-os/libcosmic" } iced_futures = { git = "https://github.com/pop-os/libcosmic" }
log = "0.4.28" log = "0.4.29"
rustix = "1.1.2" rustix = "1.1.3"
tokio = "1.48.0" tokio = "1.49.0"

View file

@ -10,6 +10,6 @@ publish = true
bluez-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings" } bluez-zbus = { git = "https://github.com/pop-os/dbus-settings-bindings" }
futures = "0.3.31" futures = "0.3.31"
iced_futures = { git = "https://github.com/pop-os/libcosmic" } iced_futures = { git = "https://github.com/pop-os/libcosmic" }
tokio = "1.48.0" tokio = "1.49.0"
tracing = "0.1.41" tracing = "0.1.44"
zbus = "5.12.0" zbus = "5.12.0"

View file

@ -15,7 +15,7 @@ iced_futures = { git = "https://github.com/pop-os/libcosmic" }
itertools = "0.14.0" itertools = "0.14.0"
secure-string = "0.3.0" secure-string = "0.3.0"
thiserror = "2.0.17" thiserror = "2.0.17"
tokio = "1.48.0" tokio = "1.49.0"
tracing = "0.1.41" tracing = "0.1.44"
zbus = { version = "5.12.0", features = ["tokio"] } zbus = { version = "5.12.0", features = ["tokio"] }
bitflags = "2.10.0" bitflags = "2.10.0"

View file

@ -8,7 +8,7 @@ publish = true
[dependencies] [dependencies]
futures = "0.3.31" futures = "0.3.31"
iced_futures = { git = "https://github.com/pop-os/libcosmic" } iced_futures = { git = "https://github.com/pop-os/libcosmic" }
log = "0.4.28" log = "0.4.29"
tokio = "1.48.0" tokio = "1.49.0"
tokio-stream = "0.1.17" tokio-stream = "0.1.18"
zbus = "5.12.0" zbus = "5.12.0"

View file

@ -9,12 +9,12 @@ publish = true
[dependencies] [dependencies]
cosmic-pipewire = { path = "../../crates/cosmic-pipewire" } cosmic-pipewire = { path = "../../crates/cosmic-pipewire" }
futures = "0.3.31" futures = "0.3.31"
intmap = "3.1.2" intmap = "3.1.3"
libcosmic = { git = "https://github.com/pop-os/libcosmic", default-features = false } libcosmic = { git = "https://github.com/pop-os/libcosmic", default-features = false }
numtoa = "1.0.0-alpha1" numtoa = "1.0.0-alpha1"
rustix = "1.0.8" rustix = "1.1.3"
tokio = { version = "1.47.1", features = ["process", "rt", "time"] } tokio = { version = "1.49.0", features = ["process", "rt", "time"] }
tracing = { version = "0.1.41", default-features = false } tracing = { version = "0.1.44", default-features = false }
[features] [features]
# Set profile on first load # Set profile on first load

View file

@ -9,8 +9,8 @@ publish = true
[dependencies] [dependencies]
futures = "0.3.31" futures = "0.3.31"
iced_futures = { git = "https://github.com/pop-os/libcosmic" } iced_futures = { git = "https://github.com/pop-os/libcosmic" }
log = "0.4.28" log = "0.4.29"
tokio = "1.48.0" tokio = "1.49.0"
tokio-stream = "0.1.17" tokio-stream = "0.1.18"
upower_dbus = { git = "https://github.com/pop-os/dbus-settings-bindings" } upower_dbus = { git = "https://github.com/pop-os/dbus-settings-bindings" }
zbus = "5.12.0" zbus = "5.12.0"