anny-dock icon indicating copy to clipboard operation
anny-dock copied to clipboard

Error reconfiguring surface: Outdated

Open ClovertaTheTrilobita opened this issue 10 months ago • 5 comments

Hello, I'm trying out anny-dock on my Hyprland DE, and errors occurred during cargo run --release.

Full logging info:

warning: only one of `license` or `license-file` is necessary
`license` should be used if the package license can be expressed with a standard SPDX expression.
`license-file` should be used if the package uses a non-standard license.
See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
warning: unused import: `animation::ScrollAnimationState`
  --> src/systems/mod.rs:13:9
   |
13 | pub use animation::ScrollAnimationState;
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` on by default

warning: unused import: `DockConfig`
  --> src/utils/hover.rs:11:81
   |
11 | use crate::{Dragging, HoverTarget, MainCamera, UiState, ICON_SIZE, ScrollState, DockConfig};
   |                                                                                 ^^^^^^^^^^

warning: unused import: `serde::Deserialize`
 --> src/utils/config.rs:1:5
  |
1 | use serde::Deserialize;
  |     ^^^^^^^^^^^^^^^^^^

warning: unused variable: `q_icons`
  --> src/systems/animation.rs:13:9
   |
13 |     mut q_icons: Query<(&mut Transform, &HoverTarget)>,
   |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_q_icons`
   |
   = note: `#[warn(unused_variables)]` on by default

warning: unused variable: `scroll_state`
  --> src/systems/animation.rs:14:5
   |
14 |     scroll_state: Res<ScrollState>,
   |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scroll_state`

warning: unused variable: `config`
  --> src/systems/animation.rs:15:5
   |
15 |     config: Res<DockConfig>,
   |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`

warning: variable does not need to be mutable
  --> src/systems/animation.rs:13:5
   |
13 |     mut q_icons: Query<(&mut Transform, &HoverTarget)>,
   |     ----^^^^^^^
   |     |
   |     help: remove this `mut`
   |
   = note: `#[warn(unused_mut)]` on by default

warning: unused variable: `client_list`
   --> src/main.rs:309:5
    |
309 |     client_list: Res<ClientList>,
    |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_list`

warning: unused variable: `client_class`
   --> src/main.rs:555:58
    |
555 |         if let Some((entity, Some(_client_address), Some(client_class), Some(mut sprite))) =
    |                                                          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_class`

warning: unused variable: `workspace`
   --> src/main.rs:694:17
    |
694 |                 workspace,
    |                 ^^^^^^^^^ help: try ignoring the field: `workspace: _`

warning: unused variable: `client_class`
   --> src/main.rs:757:54
    |
757 |     if let Some((entity, Some(_client_address), Some(client_class), Some(mut sprite))) =
    |                                                      ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_class`

warning: unused variable: `favorites`
   --> src/main.rs:739:5
    |
739 |     favorites: &Res<Favorites>,
    |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_favorites`

warning: unused variable: `addr`
   --> src/main.rs:852:22
    |
852 |         if let (Some(addr), Some(class)) = (addr_opt, class_opt) {
    |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`

warning: unused variable: `entity`
   --> src/main.rs:873:5
    |
873 |     entity: Entity,
    |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`

warning: function `update_client_list_system` is never used
   --> src/main.rs:425:4
    |
425 | fn update_client_list_system(
    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` on by default

warning: function `process_closed_windows` is never used
   --> src/main.rs:492:4
    |
492 | fn process_closed_windows(
    |    ^^^^^^^^^^^^^^^^^^^^^^

warning: function `process_new_windows` is never used
   --> src/main.rs:529:4
    |
529 | fn process_new_windows(
    |    ^^^^^^^^^^^^^^^^^^^

warning: function `lerp` is never used
  --> src/systems/animation.rs:33:4
   |
33 | fn lerp(start: f32, end: f32, t: f32) -> f32 {
   |    ^^^^

warning: field `name` is never read
  --> src/types.rs:11:9
   |
7  | pub struct Client {
   |            ------ field in this struct
...
11 |     pub name: Option<String>,
   |         ^^^^
   |
   = note: `Client` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis

warning: field `0` is never read
  --> src/types.rs:80:29
   |
80 | pub struct IconRemovedEvent(pub String);
   |            ---------------- ^^^^^^^^^^
   |            |
   |            field in this struct
   |
   = help: consider removing this field

warning: field `max_visible_items` is never read
  --> src/types.rs:86:9
   |
83 | pub struct ScrollState {
   |            ----------- field in this struct
...
86 |     pub max_visible_items: usize,
   |         ^^^^^^^^^^^^^^^^^

warning: field `0` is never read
   --> src/types.rs:113:11
    |
113 |     Other(String),
    |     ----- ^^^^^^
    |     |
    |     field in this variant
    |
    = note: `HyprIpcEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
    |
113 -     Other(String),
113 +     Other(()),
    |

warning: fields `is_scrolling` and `scroll_timer` are never read
   --> src/utils/mod.rs:184:9
    |
183 | pub struct IconAnimationState {
    |            ------------------ fields in this struct
184 |     pub is_scrolling: bool,
    |         ^^^^^^^^^^^^
185 |     pub scroll_timer: Timer,
    |         ^^^^^^^^^^^^

warning: static `FALLBACK_ICON_SVG` is never used
  --> src/utils/loader.rs:15:8
   |
15 | static FALLBACK_ICON_SVG: &[u8] = include_bytes!("../../assets/icons/dock_icon.svg");
   |        ^^^^^^^^^^^^^^^^^

warning: multiple fields are never read
  --> src/utils/config.rs:6:9
   |
5  | pub struct DockConfig {
   |            ---------- fields in this struct
6  |     pub margin_x: f32,
   |         ^^^^^^^^
7  |     pub margin_y: f32,
   |         ^^^^^^^^
8  |     pub spacing: f32,
   |         ^^^^^^^
9  |     pub z_spacing: f32,
   |         ^^^^^^^^^
10 |     pub base_scale: f32,
   |         ^^^^^^^^^^
11 |     pub scale_factor: f32,
   |         ^^^^^^^^^^^^
12 |     pub scroll_speed: f32,
   |         ^^^^^^^^^^^^
13 |     pub visible_items: usize,
   |         ^^^^^^^^^^^^^
14 |     pub tilt_y: f32,
   |         ^^^^^^

warning: `anny-dock` (bin "anny-dock") generated 25 warnings (run `cargo fix --bin "anny-dock"` to apply 4 suggestions)
    Finished `release` profile [optimized] target(s) in 0.11s
warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.21.0
note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
     Running `target/release/anny-dock`
2025-05-27T01:15:31.466937Z  INFO bevy_winit::system: Creating new window "App" (0v0)
2025-05-27T01:15:31.467113Z  INFO log: Guessed window scale factor: 2    
2025-05-27T01:15:31.698867Z  INFO bevy_render::renderer: AdapterInfo { name: "NVIDIA GeForce RTX 4060 Laptop GPU", vendor: 4318, device: 10464, device_type: DiscreteGpu, driver: "NVIDIA", driver_info: "570.153.02", backend: Vulkan }
2025-05-27T01:15:31.800031Z  INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Linux rolling Arch Linux", kernel: "6.14.7-arch2-1", cpu: "AMD Ryzen 9 7940H w/ Radeon 780M Graphics", core_count: "8", memory: "30.6 GiB" }
2025-05-27T01:15:31.855014Z  WARN anny_dock::utils::loader: No icons found for QQ, using fallback
2025-05-27T01:15:31.911171Z  WARN anny_dock::utils::loader: No icons found for wechat, using fallback
2025-05-27T01:15:31.967572Z  WARN anny_dock::utils::loader: No icons found for jetbrains-idea, using fallback
2025-05-27T01:15:31.996278Z  INFO anny_dock::utils::loader: icon found for kitty: /home/cloverta/.local/share/icons/Nordzy/apps/scalable/kitty.svg
2025-05-27T01:15:32.025153Z  INFO anny_dock::utils::loader: icon found for kitty: /home/cloverta/.local/share/icons/Nordzy/apps/scalable/kitty.svg
2025-05-27T01:15:32.054041Z  INFO anny_dock::utils::loader: icon found for firefox: /home/cloverta/.local/share/icons/Nordzy/apps/scalable/firefox.svg
2025-05-27T01:15:32.209776Z  WARN anny_dock::utils::loader: No icons found for anny-dock, using fallback

thread 'main' panicked at /home/cloverta/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_render-0.11.3/src/view/window.rs:353:26:
Error reconfiguring surface: Outdated
stack backtrace:
   0: __rustc::rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: bevy_render::view::window::prepare_windows
   4: <bevy_ecs::system::function_system::FunctionSystem<Marker,F> as bevy_ecs::system::system::System>::run_unsafe
   5: std::panic::catch_unwind
   6: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::future::future::Future>::poll
   7: std::panic::catch_unwind
   8: <futures_lite::future::CatchUnwind<F> as core::future::future::Future>::poll
   9: std::panic::catch_unwind
  10: async_task::raw::RawTask<F,T,S,M>::run
  11: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::future::future::Future>::poll
  12: std::panic::catch_unwind
  13: <futures_lite::future::CatchUnwind<F> as core::future::future::Future>::poll
  14: <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll
  15: bevy_tasks::task_pool::TaskPool::scope_with_executor_inner::{{closure}}
  16: std::thread::local::LocalKey<T>::with
  17: futures_lite::future::block_on
  18: bevy_tasks::task_pool::TaskPool::scope_with_executor_inner
  19: std::thread::local::LocalKey<T>::with
  20: <bevy_ecs::schedule::executor::multi_threaded::MultiThreadedExecutor as bevy_ecs::schedule::executor::SystemExecutor>::run
  21: bevy_ecs::world::World::try_schedule_scope
  22: bevy_ecs::world::World::resource_scope
  23: <bevy_ecs::system::exclusive_function_system::ExclusiveFunctionSystem<Marker,F> as bevy_ecs::system::system::System>::run
  24: std::panic::catch_unwind
  25: <bevy_ecs::schedule::executor::single_threaded::SingleThreadedExecutor as bevy_ecs::schedule::executor::SystemExecutor>::run
  26: bevy_ecs::world::World::try_schedule_scope
  27: bevy_ecs::world::World::schedule_scope
  28: bevy_app::app::App::update
  29: bevy_winit::winit_runner::{{closure}}
  30: winit::platform_impl::platform::sticky_exit_callback
  31: winit::platform_impl::platform::x11::EventLoop<T>::run_return::single_iteration
  32: winit::platform_impl::platform::x11::EventLoop<T>::run_return
  33: winit::platform_impl::platform::x11::EventLoop<T>::run
  34: winit::platform_impl::platform::EventLoop<T>::run
  35: winit::event_loop::EventLoop<T>::run
  36: bevy_winit::run
  37: bevy_winit::winit_runner
  38: core::ops::function::FnOnce::call_once{{vtable.shim}}
  39: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
  40: bevy_app::app::App::run
  41: anny_dock::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Encountered a panic in system `bevy_render::view::window::prepare_windows`!

thread 'Compute Task Pool (5)' panicked at /home/cloverta/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bevy_render-0.11.3/src/pipelined_rendering.rs:143:45:
called `Result::unwrap()` on an `Err` value: RecvError
stack backtrace:
   0: __rustc::rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::future::future::Future>::poll
   4: std::panic::catch_unwind
   5: <futures_lite::future::CatchUnwind<F> as core::future::future::Future>::poll
   6: std::panic::catch_unwind
   7: async_task::raw::RawTask<F,T,S,M>::run
   8: <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll
   9: async_executor::Executor::run::{{closure}}
  10: std::thread::local::LocalKey<T>::with
  11: futures_lite::future::block_on
  12: std::panic::catch_unwind
  13: std::thread::local::LocalKey<T>::with
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

ClovertaTheTrilobita avatar May 27 '25 01:05 ClovertaTheTrilobita

Hi, @ClovertaTheTrilobita! Sorry for the delay in responding. Based on this issue related to the Bevy in wayland, please check your graphics drivers. I debugged a similar error on a device without Mesa drivers.

horberlan avatar Jun 10 '25 19:06 horberlan

Hey there @ClovertaTheTrilobita , in case you're still experiencing this issue, I encountered something similar and this reddit post suggested vulkan drivers which did the trick for me. may help ya

https://www.reddit.com/r/bevy/comments/18x2wpc/could_not_run_bevy_in_arch_linux/

rf0421 avatar Jun 29 '25 02:06 rf0421

Sorry for the late response, I've tried installing Mesa drivers but I somehow failed, I think it has conflict with my dotfiles (or maybe it's my problem not installing them correctly), I'll try to configure them again these days and see if it shall work.

ClovertaTheTrilobita avatar Jun 29 '25 06:06 ClovertaTheTrilobita

Hey there @ClovertaTheTrilobita , in case you're still experiencing this issue, I encountered something similar and this reddit post suggested vulkan drivers which did the trick for me. may help ya

https://www.reddit.com/r/bevy/comments/18x2wpc/could_not_run_bevy_in_arch_linux/

Thanks and I read this post, I think my vulkan is working as vulkainfo shows it's working with my hardware (with the nvidia drivers). Maybe I should try installing mesa again.

ClovertaTheTrilobita avatar Jun 29 '25 06:06 ClovertaTheTrilobita

Hey there @ClovertaTheTrilobita , in case you're still experiencing this issue, I encountered something similar and this reddit post suggested vulkan drivers which did the trick for me. may help ya https://www.reddit.com/r/bevy/comments/18x2wpc/could_not_run_bevy_in_arch_linux/

Thanks and I read this post, I think my vulkan is working as vulkainfo shows it's working with my hardware (with the nvidia drivers). Maybe I should try installing mesa again.

Well at least the vulkan potential is clear.

There are a lot of variables and it'd be hard to help without details. I personally don't use Nvidia in current set up but figured the video drivers/libraries could clash (I'm assuming you're currently running Nvidia drivers and trying to install mesa). I googled it to see and it seems that could potentially be your issue. I checked an arch post and it was from 2019 so things may have changed. I saw some that said solved (including the arch post) but didn't see much on there as far as an actual solution (may have missed it).

I'd suggest running verbose and/or checking logs so you can get further details. I'm leaning towards vid drivers/libraries clashing.

Good luck!

rf0421 avatar Jun 29 '25 13:06 rf0421