snowfallorg / nix-software-center

A simple gtk4/libadwaita software center to easily install and manage nix packages
GNU General Public License v3.0
560 stars 16 forks source link

Panick on lauch #18

Closed TherryHilaire closed 1 year ago

TherryHilaire commented 1 year ago

The app is able to launch without any problem, but when I try to to click on any button it crashes and the following error pops up:

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Close', /build/nix-software-center-0.1.0-vendor.tar.gz/relm4/src/channel/component.rs:67:34
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Side note: I installed with nix-env.

Thanks for helping !

TherryHilaire commented 1 year ago

Closed

camillemndn commented 1 year ago

This is happening to me as well. Did you happen to fix it?

TherryHilaire commented 1 year ago

No

Henry-Hiles commented 1 year ago

I believe this works only on SnowflakeOS, perhaps that is the issue.

vlinkz commented 1 year ago

It should work on NixOS as well. The panic occurring inside the relm4 component for the file chooser seems to indicate that it might be a dependency issue, or possibly I need to update the relm4 version. Curious were you using GNOME or some other desktop environment?

olifloof commented 1 year ago

I'm also getting this error on GNOME

[pinkcreeper100@pc100:~]$ RUST_BACKTRACE=1 nix-software-center
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: RowNotFound', src/ui/window.rs:1437:34
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: <nix_software_center::ui::window::AppModel as relm4::component::sync::traits::Component>::update::{{closure}}
   4: tokio::runtime::park::CachedParkThread::block_on
   5: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
   6: tokio::runtime::runtime::Runtime::block_on
   7: <nix_software_center::ui::window::AppModel as relm4::component::sync::traits::Component>::update
   8: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
   9: glib::main_context::<impl glib::auto::main_context::MainContext>::with_thread_default
  10: glib::main_context_futures::TaskSource::dispatch
  11: g_main_context_dispatch
  12: g_main_context_iterate.constprop.0
  13: g_main_context_iteration
  14: g_application_run
  15: relm4::app::RelmApp::run
  16: nix_software_center::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
vlinkz commented 1 year ago

Is that on SnowflakeOS or NixOS? Also if you run RUST_LOG=nix_software_center,nix_data=trace nix-software-center that can give a better insight than RUST_BACKTRACE

olifloof commented 1 year ago

SnowflakeOS

[pinkcreeper100@pc100:~]$ RUST_LOG=nix_software_center,nix_data=trace nix-software-center
 INFO  nix_software_center > Resource loaded: /nix/store/ixg2z6n3pri1zh1l2jxq19b5xm8irjgl-nix-software-center-0.1.0/share/nix-software-center/resources.gresource
 DEBUG nix_software_center::ui::window > Got config: NixDataConfig { systemconfig: Some("/etc/nixos/configuration.nix"), flake: Some("/etc/nixos/flake.nix"), flakearg: Some("snowflakeos"), generations: None }
 DEBUG nix_software_center::ui::window > userpkgtype: Profile
 DEBUG nix_software_center::ui::window > syspkgtype: Flake
 INFO  nix_software_center::ui::windowloading > WindowAsyncHandlerMsg::CheckCache
 DEBUG nix_data::cache::nixos                 > Checking NixOS version
 INFO  nix_software_center::ui::window        > AppMsg::SetDarkMode(true)
 DEBUG nix_data::cache::nixos                 > Latest NixOS version: 23.05pre451394.0591d6b57bf
 INFO  nix_data::cache::nixos                 > latestnixosver: 23.05pre451394.0591d6b57bf
 DEBUG nix_data::cache::nixos                 > No new version of NixOS found
 DEBUG nix_data::cache::profile               > Checking nixpkgs version
 DEBUG nix_data::cache::profile               > Latest nixpkgs version: 23.05pre451753.d25de6654a3
 DEBUG nix_data::cache::profile               > No new version of nixpkgs found
 INFO  nix_data::cache::flakes                > No new version of NixOS flakes found
 INFO  nix_software_center::ui::window        > AppMsg::Initialize
 INFO  nix_software_center::ui::window        > AppMsg::UpdateRecPkgs
 INFO  nix_software_center::ui::window        > AppAsyncMsg::UpdateRecPkgs
 INFO  nix_software_center::ui::window        > DONE AppAsyncMsg::UpdateRecPkgs
 INFO  nix_software_center::ui::window        > AppMsg::UpdateInstalledPkgs
 DEBUG nix_data::cache::nixos                 > getnixospkgs: {"asciinema", "yt-dlp", "patchelf", "python310Packages.pip", "ltex-ls", "obs-studio", "webcord", "dotnet-runtime_3", "mpv", "zathura", "gawk", "firefox", "findutils", "omnisharp-roslyn", "fuse", "lazygit", "which", "python310Packages.requests", "ncurses", "scdl", "ffmpeg", "neofetch", "netcoredbg", "superTux", "furnace", "wezterm", "coreutils", "helix", "nil", "gh", "gzdoom", "python3", "dotnet-sdk", "git", "jetbrains.rider", "texlab", "teams", "stow", "marksman", "gnumake", "amberol", "prismlauncher", "curl", "zsh-powerlevel10k"}
 INFO  nix_data::cache::flakes                > No new version of NixOS flakes found
 INFO  nix_software_center::ui::window        > AppAsyncMsg::UpdateInstalledPkgs
 WARN  nix_software_center::ui::window        > Changes needed!
 DEBUG nix_software_center::ui::window        > Getting recommended apps guard
 DEBUG nix_software_center::ui::window        > Got recommended apps guard
 INFO  nix_software_center::ui::window        > DONE AppAsyncMsg::UpdateInstalledPkgs
 INFO  nix_software_center::ui::window        > AppMsg::UpdateInstalledPage
 DEBUG nix_software_center::ui::window        > Installed user pkgs: {}
 DEBUG nix_software_center::ui::window        > Installed system pkgs: {"firefox", "patchelf", "nil", "neofetch", "git", "dotnet-runtime_3", "dotnet-sdk", "teams", "webcord", "gzdoom", "texlab", "ffmpeg", "zsh-powerlevel10k", "omnisharp-roslyn", "wezterm", "amberol", "gnumake", "ltex-ls", "helix", "asciinema", "marksman", "python3", "yt-dlp", "curl", "fuse", "which", "findutils", "prismlauncher", "scdl", "lazygit", "gawk", "gh", "furnace", "ncurses", "netcoredbg", "obs-studio", "coreutils", "superTux"}
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: RowNotFound', src/ui/window.rs:1437:34
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
camillemndn commented 1 year ago

I am using GNOME 43.2 (Wayland) on NixOS 23.05:

$ RUST_BACKTRACE=full RUST_LOG=nix_software_center,nix_data=trace nix-software-center
 INFO  nix_software_center > Resource loaded: /nix/store/2dsvhg56cp4hvv5a2z05q43m7ydch4ar-nix-software-center-0.1.0/share/nix-software-center/resources.gresource
 DEBUG nix_software_center::ui::window > No config found
 DEBUG nix_software_center::ui::window > userpkgtype: Env
 DEBUG nix_software_center::ui::window > syspkgtype: None
 INFO  nix_software_center::ui::window > AppMsg::SetDarkMode(true)
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: OpenConf', /build/nix-software-center-0.1.0-vendor.tar.gz/relm4/src/channel/component.rs:67:34
stack backtrace:
   0:     0x55a35467c622 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h0b60020a4713e5fb
   1:     0x55a3546b865c - core::fmt::write::hd2bbf674326f971d
   2:     0x55a354690ac5 - std::io::Write::write_fmt::h9e09deb1651b82d4
   3:     0x55a35467c3e1 - std::sys_common::backtrace::print::hb0f6f2fe5c4496c1
   4:     0x55a35469e43f - std::panicking::default_hook::{{closure}}::hf3d6d483953ab294
   5:     0x55a35469e0c4 - std::panicking::default_hook::h7229a04a9f746202
   6:     0x55a35469ea79 - std::panicking::rust_panic_with_hook::h7c53bfc9ab300aca
   7:     0x55a35467c977 - std::panicking::begin_panic_handler::{{closure}}::hc2a71b5a463ec201
   8:     0x55a35467c754 - std::sys_common::backtrace::__rust_end_short_backtrace::he21bec3aa77e6ef6
   9:     0x55a35469e5f2 - rust_begin_unwind
  10:     0x55a353d85293 - core::panicking::panic_fmt::h136a2a3f69fc0251
  11:     0x55a353d855b3 - core::result::unwrap_failed::h656bdbcac2f79cc7
  12:     0x55a353f8191c - <O as gtk4::auto::button::ButtonExt>::connect_clicked::clicked_trampoline::hb4bcf43bd07e9a6d
  13:     0x7f0a94c8d7d9 - _g_closure_invoke_va
  14:     0x7f0a94ca764d - g_signal_emit_valist
  15:     0x7f0a94ca794f - g_signal_emit
  16:     0x7f0a944c7989 - _gtk_marshal_VOID__INT_DOUBLE_DOUBLEv
  17:     0x7f0a94c8d7d9 - _g_closure_invoke_va
  18:     0x7f0a94ca764d - g_signal_emit_valist
  19:     0x7f0a94ca794f - g_signal_emit
  20:     0x7f0a9459321e - gtk_gesture_click_end
  21:     0x7f0a94c90642 - g_cclosure_marshal_VOID__BOXEDv
  22:     0x7f0a94c8d7d9 - _g_closure_invoke_va
  23:     0x7f0a94ca764d - g_signal_emit_valist
  24:     0x7f0a94ca794f - g_signal_emit
  25:     0x7f0a94590257 - _gtk_gesture_check_recognized
  26:     0x7f0a945919cb - gtk_gesture_handle_event
  27:     0x7f0a9459483e - gtk_gesture_single_handle_event
  28:     0x7f0a94563f06 - gtk_event_controller_handle_event
  29:     0x7f0a946ed5b7 - gtk_widget_run_controllers
  30:     0x7f0a946f4d54 - _gtk_widget_captured_event
  31:     0x7f0a945db7be - gtk_propagate_event_internal
  32:     0x7f0a945dbe8b - gtk_main_do_event
  33:     0x7f0a9470126c - surface_event
  34:     0x7f0a947e6ed9 - _gdk_marshal_BOOLEAN__POINTERv
  35:     0x7f0a9485be9d - gdk_surface_event_marshallerv
  36:     0x7f0a94c8d7d9 - _g_closure_invoke_va
  37:     0x7f0a94ca6c56 - g_signal_emit_valist
  38:     0x7f0a94ca794f - g_signal_emit
  39:     0x7f0a9485f5a0 - gdk_surface_handle_event
  40:     0x7f0a948027aa - gdk_event_source_dispatch
  41:     0x7f0a93ff69db - g_main_context_dispatch
  42:     0x7f0a93ff6c88 - g_main_context_iterate.constprop.0
  43:     0x7f0a93ff6d3f - g_main_context_iteration
  44:     0x7f0a941c119d - g_application_run
  45:     0x55a353db6a49 - <O as gio::application::ApplicationExtManual>::run_with_args::h7c1075b041761b1f
  46:     0x55a353db78ee - nix_software_center::main::hd1da07f0c7f552bd
  47:     0x55a353d97bd3 - std::sys_common::backtrace::__rust_begin_short_backtrace::h074b43de7c7fcfb4
  48:     0x55a353d9bd99 - std::rt::lang_start::{{closure}}::h5f67396adaa3a1b7
  49:     0x55a35468f8b4 - std::rt::lang_start_internal::h398023bd7970a80b
  50:     0x55a353db7a05 - main
  51:     0x7f0a9342924e - __libc_start_call_main
  52:     0x7f0a93429309 - __libc_start_main_alias_1
  53:     0x55a353d85685 - _start
  54:                0x0 - <unknown>
vlinkz commented 1 year ago

Updated dependencies and made a few fixes that should address the initial crash @TherryHilaire and @camillemndn were facing. The issue @pinkcreeper100 has seems different, I tried to fix it with a few changes, but I was not able to reproduce it so not sure if that fixes it

camillemndn commented 1 year ago

Works like a charm! Thank you

TherryHilaire commented 1 year ago

I am not currently using nix so I cannot test if it does work. But it looks like it does for @camillemndn so it might for me.