How to deal with outdated or non working packages?

I installed nix and with home-manager according to How to install Nix on Fedora Silverblue . It looks very good, it works and I am fascinated by it.

I don’t expect everything to work, especially not experimental builds like zed but I’d like to know what to do or how to deal with it. How do you proceed if a package is not working as intended or outdated?

julia had errors compiling packages. Hence, I installed it via the one liner instead https://julialang.org/downloads/

rstudio and R had problems.

zed-editor NixOS Search

$ zed
[2024-06-29T07:42:41+02:00 ERROR blade_graphics::hal::init] Instance extension "VK_KHR_get_physical_device_properties2" is not supported
[2024-06-29T07:42:41+02:00 ERROR Zed::reliability] {
  "thread": "main",
  "payload": "called `Result::unwrap()` on an `Err` value: NotSupportedError",
  "location_data": {
    "file": "crates/gpui/src/platform/linux/wayland/window.rs",
    "line": 130
  },
  "backtrace": [
    "core::panicking::panic_fmt",
    "core::result::unwrap_failed",
    "gpui::platform::linux::wayland::window::WaylandWindow::new",
    "<gpui::platform::linux::wayland::client::WaylandClient as gpui::platform::linux::platform::LinuxClient>::open_window",
    "gpui::window::Window::new",
    "workspace::Workspace::new_local::{{closure}}::{{closure}}",
    "async_task::raw::RawTask<F,T,S,M>::run",
    "<core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events",
    "<gpui::platform::linux::wayland::client::WaylandClient as gpui::platform::linux::platform::LinuxClient>::run",
    "gpui::platform::linux::platform::<impl gpui::platform::Platform for P>::run",
    "gpui::app::App::run",
    "Zed::main",
    "std::sys_common::backtrace::__rust_begin_short_backtrace",
    "std::rt::lang_start::{{closure}}",
    "std::rt::lang_start_internal",
    "main",
    "__libc_start_call_main",
    "__libc_start_main@@GLIBC_2.34",
    "_start"
  ],
  "app_version": "1.0.0",
  "release_channel": "Zed",
  "os_name": "Linux",
  "os_version": "1.0.0",
  "architecture": "x86_64",
  "panicked_on": 1719639761775,
  "installation_id": "4283dd34-15ba-40f6-9df5-0b0b297f2eaa",
  "session_id": "02d18dbc-16a8-4a64-bf92-eba857ec5eb4"
}
Aborted (core dumped)
$ nix --version
nix (Nix) 2.21.2
$ home-manager --version
24.11-pre

There is a meta.broken for packages that are known to not build for a longer time (first should be ofc the try to fix that). If a package is outdated with security issues there is also a meta tag on the package.

For just outdated, there I am not aware of any flagging (people tend to either create package update requests on GitHub or directly PRs to bump the version).

If something is not working intended, an issue might be a good idea as well.

For your setup, be aware that you might get into trouble for GL stuff, esp zed seems to have struggle because of Vulkan topics.

The problem there is that nix is not aware of the graphics stack that you are using, which is not a problem on a pure nixos setup.
There is a community project that tries to mitigate that issue, possibly that’s worth a look GitHub - nix-community/nixGL: A wrapper tool for nix OpenGL application [maintainer=@guibou]

But I have to say that I never tried to run GL stuff on a non-nixos setup, so I have no experience in that topic so I can not say how good it’s working.

2 Likes