| 25 Apr 2024 |
lillecarl | Aah, so the intention is creation options that align with the file path? | 14:10:15 |
lillecarl | if you wanna use __curPos, stick this in the args attrs:
{ __curPos ? __curPos }
if you use the nil LSP, it doesn't know about __curPos so we kinda have to trick it 😄 | 14:14:47 |
Claes | In reply to @lillecarl:matrix.org
I've got some questions for everyone:
- What's your biggest painpoints using NixOS &/ home-manager today?
- What package update solution are you using to update your own derivations?
Mine's still packaging things that doesn't quite fit the "norm". (https://github.com/dawsers/hyprscroller comes to mind right now).
No pain point that comes to mind but I am not especially advanced in my Nix usage. I need to learn more about packaging of other software. I have done that only a handful of times. | 16:03:01 |
lillecarl | Erin: Could you share your hyprscroller derivation? 😸 | 16:07:59 |
Erin | hyprscroller = pkgs.unstable.hyprlandPlugins.mkHyprlandPlugin pkgs.hyprland {
pluginName = "hyprscroller";
version = pkgs.hyprland.version; # No version present in repo, just use hyprland version instead
src = inputs.hyprscroller;
installPhase = ''
mkdir -p $out/lib/
cp hyprscroller.so $out/lib/libhyprscroller.so
'';
dontStrip = true;
nativeBuildInputs = with pkgs; [ cmake ];
meta = with pkgs.lib; {
homepage = "https://github.com/dawsers/hyprscroller";
description = "Hyprland layout plugin providing a scrolling layout like PaperWM";
license = licenses.mit;
platforms = platforms.linux;
maintainers = [ maintainers.erin ];
};
};
| 16:10:13 |
lillecarl | dank je wel | 16:13:28 |
lillecarl | Hehe, I was doing the right thing.
I'm ofc overdoing it a bit stupidly with this module:
https://gist.github.com/Lillecarl/5ce2ce445dc67889f3eca9b225b99a6a
The issue was i yanked and pasted the fetchfromgithub function, forgot to clear the sha256 so I was pulling hyprland source instead of hyprscroller | 16:38:05 |
Erin | https://nix-community.github.io/home-manager/options.xhtml#opt-wayland.windowManager.hyprland.plugins
Home Manager already has a way to add plugins. No need to make that module yourself 😉 | 16:53:50 |
alxplus | In reply to @erinvanderveen:matrix.org
hyprscroller = pkgs.unstable.hyprlandPlugins.mkHyprlandPlugin pkgs.hyprland {
pluginName = "hyprscroller";
version = pkgs.hyprland.version; # No version present in repo, just use hyprland version instead
src = inputs.hyprscroller;
installPhase = ''
mkdir -p $out/lib/
cp hyprscroller.so $out/lib/libhyprscroller.so
'';
dontStrip = true;
nativeBuildInputs = with pkgs; [ cmake ];
meta = with pkgs.lib; {
homepage = "https://github.com/dawsers/hyprscroller";
description = "Hyprland layout plugin providing a scrolling layout like PaperWM";
license = licenses.mit;
platforms = platforms.linux;
maintainers = [ maintainers.erin ];
};
};
Thanks! Speaking of pain points before, this is something I struggle with, trying to figure out what the most appropriate function, in the end whatever I do feels like a series of functions kept together by duct tape and a prayer 😅 | 17:13:19 |
lillecarl | In reply to @erinvanderveen:matrix.org
https://nix-community.github.io/home-manager/options.xhtml#opt-wayland.windowManager.hyprland.plugins
Home Manager already has a way to add plugins. No need to make that module yourself 😉 Hehe yeah, that's a NixOS module, there's something something that isn't handled by HM mod, so I specify package and plugins in nixos and read it from the HM module | 17:19:23 |
lillecarl | https://github.com/Lillecarl/nixos/commit/0dc04aa307eae85563c7e04abb7a9d5b36f4c53b | 17:20:30 |