{pkgs, ...}: { home.packages = let inherit (pkgs) lib; ghc = pkgs.haskellPackages.ghc.withPackages (haskellPackages: [ haskellPackages.xmobar ]); wrapped-xmobar = pkgs.symlinkJoin { name = "xmobar"; paths = [pkgs.xmobar]; buildInputs = [pkgs.makeWrapper]; postBuild = '' wrapProgram $out/bin/xmobar \ --prefix PATH : "${lib.makeBinPath [ghc pkgs.libnotify]}" ''; }; in [ wrapped-xmobar ]; xdg.configFile = { "xmobar" = { # Xmobar uses the directory to compile too, # Linking the entire folder directly would make the directory not writable # # Just relink the file if you want to debug it quickly # We need to clean up the xmobar executable so it recompiles (it's copied to store) recursive = true; source = "${./xmobar}"; }; }; }