dotfiles/overlays/default.nix

47 lines
1.4 KiB
Nix

{inputs, ...}: {
# 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;
};
input-flake-packages = final: prev: {
sheet-organizer = inputs.sheet-organizer.packages.${prev.system}.default; # TODO: change sheet-organizer package output
music-reader = inputs.music-reader.defaultPackage.${prev.system}; # TODO: change music reader to packages.system
};
# Adds my custom packages, available as pkgs.frajul.xyz
my-pkgs = final: prev: {frajul = 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 = final: prev: {
gparted-xhost = prev.gparted.overrideAttrs (oldAttrs: {
configureFlags = oldAttrs.configureFlags ++ ["--enable-xhost-root"];
});
};
nix-matlab = inputs.nix-matlab.overlay;
}