hyprwm/hyprland-plugins

hyprexpo: Failed initializing hooks

Opened this issue · 9 comments

I'm encountering this very vaguer error when I try to load hyprexpo.

~ > hyprctl plugin list
no plugins loaded

~ > hyprctl plugin load /nix/store/c3qqlwg0wf9lvgc5zhk7iq3k3jq8y6vx-hyprexpo-0.43.0/lib/libhyprexpo.so
error in loading plugin, last error: Plugin /nix/store/c3qqlwg0wf9lvgc5zhk7iq3k3jq8y6vx-hyprexpo-0.43.0/lib/libhyprexpo.so could not be loaded: plugin crashed/threw in main: [he] Failed initializing hooks

~ > hyprctl version
Hyprland, built from branch main at commit 0f594732b063a90d44df8c5d402d658f27471dfe  (props: bump version to 0.43.0).
Date: 2024-09-08
Tag: v0.43.0, commits: 0f594732b063a90d44df8c5d402d658f27471dfe

flags: (if any)


~ > hyprctl systeminfo 
Hyprland, built from branch main at commit 0f594732b063a90d44df8c5d402d658f27471dfe  (props: bump version to 0.43.0).
Date: 2024-09-08
Tag: v0.43.0, commits: 0f594732b063a90d44df8c5d402d658f27471dfe

flags: (if any)


System Information:
System name: Linux
Node name: asahi
Release: 6.10.6-asahi
Version: #1-NixOS SMP PREEMPT_DYNAMIC Tue Jan  1 00:00:00 UTC 1980


GPU information: 
apple,agx-t8112

os-release: ANSI_COLOR="1;34"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
BUILD_ID="24.11.20240923.30439d9"
DOCUMENTATION_URL="https://nixos.org/learn.html"
HOME_URL="https://nixos.org/"
ID=nixos
IMAGE_ID=""
IMAGE_VERSION=""
LOGO="nix-snowflake"
NAME=NixOS
PRETTY_NAME="NixOS 24.11 (Vicuna)"
SUPPORT_URL="https://nixos.org/community.html"
VERSION="24.11 (Vicuna)"
VERSION_CODENAME=vicuna
VERSION_ID="24.11"


plugins:

might be due to a stdenv mismatch. Try overriding the stdenv to gcc14Stdenv.

Nope, still doesn't work with this override

(pkgs.hyprlandPlugins.hyprexpo.overrideAttrs (oldAttrs: rec{ stdenv = pkgs.gcc14Stdenv; }))

That's not correct. Should be (pkgs.hyprlandPlugins.hyprexpo.override {stdenv = pkgs.gcc14Stdenv;})

im sorry if this is turning into a nixos support thread but using .override gives me this error:

error: function 'anonymous lambda' called with unexpected argument 'stdenv'

You seem to be using hyprexpo and hyprland both from nixpkgs, so I guess I managed to break the plugins in the last update. I'll look into it.

@themg95 try adding this in your config, hopefully it works

nixpkgs.overlays = [
  (final: prev: {
    hyprland-plugins = prev.hyprland-plugins // {
      mkHyprlandPlugin =
        hyprland:
        args@{ pluginName, ... }:
        hyprland.stdenv.mkDerivation (
          args
          // {
            pname = "${pluginName}";
            nativeBuildInputs = [ final.pkg-config ] ++ args.nativeBuildInputs or [ ];
            buildInputs = [ hyprland ] ++ hyprland.buildInputs ++ (args.buildInputs or [ ]);
            meta = args.meta // {
              description = args.meta.description or "";
              longDescription =
                (args.meta.longDescription or "")
                + "\n\nPlugins can be installed via a plugin entry in the Hyprland NixOS or Home Manager options.";
            };
          }
        );
      };
    };
  )
];

I had to change prev.hyprland-plugins to prev.hyprlandPlugins for it to compile but nope, still the same error.

iirc I am running expo on my laptop on git and it is working

Yeah I'm also running git. The problem is hyprland 0.43 and the tagged 0.43 hyprexpo (same as git, for all intents and purposes).