{ inputs, outputs, }: { # For every flake input, aliases 'pkgs.inputs.${flake}' to # 'inputs.${flake}.packages.${pkgs.system}' or # 'inputs.${flake}.legacyPackages.${pkgs.system}' flake-inputs = final: _: { inputs = builtins.mapAttrs ( _: flake: let legacyPackages = (flake.legacyPackages or { }).${final.system} or { }; packages = (flake.packages or { }).${final.system} or { }; in if legacyPackages != { } then legacyPackages else packages ) inputs; }; # Adds my custom packages my-pkgs = final: prev: import ../pkgs { pkgs = final; }; nixpkgs-stable-unstable = final: prev: { unstable = import inputs.nixpkgs { system = prev.system; config.allowUnfree = true; }; stable = import inputs.nixpkgs-stable { system = prev.system; config.allowUnfree = true; }; }; # Makes gparted actually open gparted-xhost = self: super: { gparted-xhost = super.gparted.overrideAttrs (oldAttrs: { configureFlags = oldAttrs.configureFlags ++ [ "--enable-xhost-root" ]; }); }; nix-matlab = inputs.nix-matlab.overlay; }