From 528814ac52d81cdf5de267937eb92fca05611cfb Mon Sep 17 00:00:00 2001 From: Malte Tammena Date: Sun, 10 Mar 2024 21:15:13 +0100 Subject: [PATCH] feat: add lib infrastructure and test it with version check --- flake.nix | 2 ++ hosts/cerithium-telescopium/default.nix | 4 ++-- lib/default.nix | 3 +++ 3 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 lib/default.nix diff --git a/flake.nix b/flake.nix index 91bbdf0..524b48a 100644 --- a/flake.nix +++ b/flake.nix @@ -181,6 +181,8 @@ }; in builtins.listToAttrs (builtins.map genSystem listOfHosts); + # Additional library functions + flake.lib = (builtins.import ./lib) {inherit (inputs.nixpkgs) lib;}; # Iso for USB flake.packages.x86_64-linux.iso = inputs.self.nixosConfigurations.radix-balthica.config.system.build.isoImage; # VM for testing diff --git a/hosts/cerithium-telescopium/default.nix b/hosts/cerithium-telescopium/default.nix index 561b5b4..35bf939 100644 --- a/hosts/cerithium-telescopium/default.nix +++ b/hosts/cerithium-telescopium/default.nix @@ -1,6 +1,6 @@ { pkgs, - lib, + inputs, ... }: { imports = [ @@ -27,7 +27,7 @@ ''; services.xserver.desktopManager.kodi.package = let youtubePlugin = pkgs.kodiPackages.youtube.overrideAttrs (old: rec { - version = lib.throwIf (lib.versionOlder hashes.youtubePlugin.version old.version) "Youtube Plugin override outdated" hashes.youtubePlugin.version; + version = inputs.self.lib.versionIfNewer hashes.youtubePlugin.version old.version "Youtube Plugin override outdated"; src = pkgs.fetchFromGitHub { inherit (hashes.youtubePlugin) hash; diff --git a/lib/default.nix b/lib/default.nix new file mode 100644 index 0000000..d336efe --- /dev/null +++ b/lib/default.nix @@ -0,0 +1,3 @@ +{lib, ...}: { + versionIfNewer = newVersion: oldVersion: message: lib.throwIf (lib.versionOlder newVersion oldVersion) message newVersion; +}