!dGrjXvKnCwVLevgmzo:matrix.org

Stockholm NixOS meetup group

49 Members
Monthly meetups in Stockholm, Sweden around Nix releated topics(nixos.org)14 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
25 Apr 2024
@lillecarl:matrix.orglillecarl Erin: I must admit, since you talked about Silvan arguing against flakes I've noticed some warts here and there in the UX/DX too. My opinion is still "It gives more good than headache" 😁 12:33:09
@lillecarl:matrix.orglillecarlRedacted or Malformed Event13:31:40
@maedas:matrix.orgmaedas
In reply to @lillecarl:matrix.org
What's the purpose of the setattr and getattr for namespace? Looks a bit overcomplicated for my eyes

writing it that adds the module to a namespace of your choice (replace namespace) , so you dont have to add it manually in every module. Looking into it we realised there might be more readable ways to set it, but for now it works.

The way we get the filename doesnt though. Ill get an update on the final result

14:08:35
@lillecarl:matrix.orglillecarlAah, so the intention is creation options that align with the file path?14:10:15
@lillecarl:matrix.orglillecarlif 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
@claesatwork:matrix.orgClaes
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:matrix.orglillecarl Erin: Could you share your hyprscroller derivation? 😸 16:07:59
@erinvanderveen:matrix.orgErin
  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:matrix.orglillecarldank je wel16:13:28
@lillecarl:matrix.orglillecarlHehe, 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 hyprscroller16:38:05
@erinvanderveen:matrix.orgErinhttps://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:matrix.orgalxplus
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:matrix.orglillecarl
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:matrix.orglillecarlhttps://github.com/Lillecarl/nixos/commit/0dc04aa307eae85563c7e04abb7a9d5b36f4c53b17:20:30
@markuskowa:matrix.orgmarkuskowa LilleCarl (Salsa9): the latest and greatest: https://releases.nixos.org/nix/nix-2.22.0/manual/release-notes/rl-2.22.html 19:05:19

Show newer messages


Back to Room ListRoom Version: 10