# HACK: This directory is named zzzzzz-config.nix, because the config # overlay should always be applied last. self: super: let defaultOverlays = map import [ ../../config/firefox/overlay.nix ]; # Create another package set to avoid leaking configTools. pkgsWithConfigTools = super.extend (self: super: { configTools = super.callPackage ../../config/tools.nix { }; }); # Use callPackage from pkgsWithConfigTools so that configured packages # don't depend on other configured packages by default. inherit (pkgsWithConfigTools) callPackage; inherit (super.lib) foldl; in (foldl (a: e: a // e) {} (map (f: f self super) defaultOverlays)) // { pkgsConfigured = pkgsWithConfigTools // rec { alacritty = callPackage ../../config/alacritty { }; firefox = callPackage ../../config/firefox { }; firefox-nightly = callPackage ../../config/firefox { firefox = super.firefox-nightly; }; firefox-beta = callPackage ../../config/firefox { firefox = super.firefox-beta; }; firefox-esr-52 = callPackage ../../config/firefox { firefox = super.firefox-esr-52; }; firefox-esr-60 = callPackage ../../config/firefox { firefox = super.firefox-esr-60; }; firefox-esr = callPackage ../../config/firefox { firefox = super.firefox-esr; }; gitAndTools = super.gitAndTools // { git = callPackage ../../config/git { inherit (super.gitAndTools) git; }; gitFull = callPackage ../../config/git { git = super.gitAndTools.gitFull; }; gitSVN = callPackage ../../config/git { git = super.gitAndTools.gitSVN; }; }; inherit (gitAndTools) git gitFull gitSVN; gitMinimal = callPackage ../../config/git { git = super.gitMinimal; }; gnupg = callPackage ../../config/gnupg { }; isync = callPackage ../../config/isync { inherit gnupg; }; kakoune = callPackage ../../config/kakoune { }; less = callPackage ../../config/less { }; msmtp = callPackage ../../config/msmtp { inherit gnupg; }; neomutt = callPackage ../../config/neomutt { inherit gnupg msmtp; }; sway = callPackage ../../config/sway { }; sway-beta = callPackage ../../config/sway { sway = super.sway-beta; }; tmux = callPackage ../../config/tmux { }; weechat = callPackage ../../config/weechat { }; zsh = callPackage ../../config/zsh { }; }; }