hyprwm / hyprland-plugins

Official plugins for Hyprland
BSD 3-Clause "New" or "Revised" License
567 stars 60 forks source link

hyprexpo: Failed initializing hooks #226

Open themg95 opened 1 month ago

themg95 commented 1 month ago

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:
fufexan commented 1 month ago

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

themg95 commented 1 month ago

Nope, still doesn't work with this override

(pkgs.hyprlandPlugins.hyprexpo.overrideAttrs (oldAttrs: rec{ stdenv = pkgs.gcc14Stdenv; }))
fufexan commented 1 month ago

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

themg95 commented 1 month ago

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'
fufexan commented 1 month ago

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.

fufexan commented 1 month ago

@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.";
            };
          }
        );
      };
    };
  )
];
themg95 commented 1 month ago

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

vaxerski commented 1 month ago

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

fufexan commented 1 month ago

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).