{ 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 pkgs.hrt-time ] }" ''; }; 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}"; }; }; }