Use overlay

This commit is contained in:
Invariantspace 2023-10-27 15:15:24 -07:00
parent ef1f33eddd
commit 69de97b39e
3 changed files with 23 additions and 19 deletions

View file

@ -15,22 +15,26 @@
}; };
outputs = inputs@{ self, flake-utils, nixpkgs, ... }: outputs = inputs@{ self, flake-utils, nixpkgs, ... }:
flake-utils.lib.eachDefaultSystem (system:
let let
pkgs = nixpkgs.legacyPackages.${system}; pkgDrvDir = ./packages;
pkgDefDir = ./packages; pkgDrvs = pkgs: pkgs.lib.attrsets.mapAttrs'
pkgDefs = pkgs.lib.attrsets.mapAttrs' (pkgDrv: _: rec {
(pkgDef: _: {
name = builtins.substring 0 name = builtins.substring 0
( (
builtins.sub (builtins.stringLength pkgDef) 4 builtins.sub (builtins.stringLength pkgDrv) 4
) )
pkgDef; pkgDrv;
value = import (pkgDefDir + "/${pkgDef}") { inherit inputs pkgs; }; value = import (pkgDrvDir + "/${pkgDrv}") { inherit inputs name pkgs; };
}) })
(builtins.readDir pkgDefDir); (builtins.readDir pkgDrvDir);
in in
{ {
packages = pkgDefs; overlay = _: prev: pkgDrvs prev;
} // flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
in
{
packages = pkgDrvs pkgs;
}); });
} }

View file

@ -1,7 +1,7 @@
{ inputs, pkgs }: { inputs, name, pkgs }:
with pkgs; stdenv.mkDerivation rec { with pkgs; stdenv.mkDerivation {
name = "wallpaper-engine-kde-plugin-lib"; inherit name;
src = inputs.${name}; src = inputs.${name};
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake

View file

@ -1,9 +1,9 @@
{ inputs, pkgs, resolution ? "2560x1440" }: { inputs, name, pkgs, resolution ? "2560x1440" }:
assert builtins.any (s: resolution == s) [ "1920x1080" "2256x1504" "2560x1440" "3840x2160" ]; assert builtins.any (s: resolution == s) [ "1920x1080" "2256x1504" "2560x1440" "3840x2160" ];
pkgs.stdenv.mkDerivation rec { pkgs.stdenv.mkDerivation {
name = "yorha-grub-theme"; inherit name;
src = inputs.${name}; src = inputs.${name};
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall