let overrides = { lib, mylib }: self: super: mylib.mapNixDir (path: self.callPackage path {}) [ ./. ] // { xmonad-tv = self.callPackage ./xmonad-tv { pager = self.desktop-pager; }; }; in self: super: let inherit (super) lib mylib; in { haskell = super.haskell // { packages = lib.mapAttrs (name: value: if builtins.hasAttr "override" value then value.override (old: { overrides = lib.composeExtensions (old.overrides or (_: _: { })) (overrides { inherit lib mylib; }); }) else value ) super.haskell.packages; }; haskellPackages = super.haskellPackages.override (old: { overrides = lib.composeExtensions (old.overrides or (_: _: { })) (overrides { inherit lib mylib; }); }); }