From c701e335d1bcf892e8a0217953eb52cf5ad7be92 Mon Sep 17 00:00:00 2001 From: matt1432 Date: Sun, 21 Jul 2024 17:12:26 -0400 Subject: [PATCH] refactor(flake): move some code out of flake.in.nix --- apps/default.nix | 12 ++++ flake.in.nix | 60 +++++++------------ flake/ci.nix | 3 +- legacyPackages/default.nix | 16 +++++ {pkgs => legacyPackages}/dracula/bat.nix | 0 {pkgs => legacyPackages}/dracula/default.nix | 0 {pkgs => legacyPackages}/dracula/git.nix | 0 {pkgs => legacyPackages}/dracula/gtk.nix | 0 {pkgs => legacyPackages}/dracula/plymouth.nix | 0 {pkgs => legacyPackages}/dracula/sioyek.nix | 0 .../dracula/wallpaper.nix | 0 .../firefox-addons/addons.json | 0 .../firefox-addons/default.nix | 0 .../generated-firefox-addons.nix | 0 .../mpv-scripts/default.nix | 0 .../mpv-scripts/kdialog-open-files.nix | 0 .../mpv-scripts/modernx.nix | 0 .../mpv-scripts/persist-properties.nix | 0 .../mpv-scripts/pointer-event.nix | 0 .../mpv-scripts/touch-gestures.nix | 0 .../mpv-scripts/undo-redo.nix | 0 {pkgs => packages}/README.md | 0 {pkgs => packages}/coloryou/LICENSE | 0 {pkgs => packages}/coloryou/coloryou.py | 0 {pkgs => packages}/coloryou/default.nix | 0 {pkgs => packages}/coloryou/requirements.txt | 0 {pkgs => packages}/coloryou/setup.py | 0 {pkgs => packages}/coloryou/shell.nix | 0 {pkgs => packages}/default.nix | 5 +- .../gpu-screen-recorder/default.nix | 0 .../pam-fprint-grosshack/default.nix | 0 .../pokemon-colorscripts/default.nix | 0 {pkgs => packages}/repl/default.nix | 0 {pkgs => packages}/repl/repl.nix | 0 {pkgs => packages}/trash-d/default.nix | 0 {pkgs => packages}/yuzu/compat-list.nix | 0 {pkgs => packages}/yuzu/default.nix | 0 {pkgs => packages}/yuzu/mainline.nix | 0 {pkgs => packages}/yuzu/nx_tzdb.nix | 0 39 files changed, 54 insertions(+), 42 deletions(-) create mode 100644 apps/default.nix create mode 100644 legacyPackages/default.nix rename {pkgs => legacyPackages}/dracula/bat.nix (100%) rename {pkgs => legacyPackages}/dracula/default.nix (100%) rename {pkgs => legacyPackages}/dracula/git.nix (100%) rename {pkgs => legacyPackages}/dracula/gtk.nix (100%) rename {pkgs => legacyPackages}/dracula/plymouth.nix (100%) rename {pkgs => legacyPackages}/dracula/sioyek.nix (100%) rename {pkgs => legacyPackages}/dracula/wallpaper.nix (100%) rename {pkgs => legacyPackages}/firefox-addons/addons.json (100%) rename {pkgs => legacyPackages}/firefox-addons/default.nix (100%) rename {pkgs => legacyPackages}/firefox-addons/generated-firefox-addons.nix (100%) rename {pkgs => legacyPackages}/mpv-scripts/default.nix (100%) rename {pkgs => legacyPackages}/mpv-scripts/kdialog-open-files.nix (100%) rename {pkgs => legacyPackages}/mpv-scripts/modernx.nix (100%) rename {pkgs => legacyPackages}/mpv-scripts/persist-properties.nix (100%) rename {pkgs => legacyPackages}/mpv-scripts/pointer-event.nix (100%) rename {pkgs => legacyPackages}/mpv-scripts/touch-gestures.nix (100%) rename {pkgs => legacyPackages}/mpv-scripts/undo-redo.nix (100%) rename {pkgs => packages}/README.md (100%) rename {pkgs => packages}/coloryou/LICENSE (100%) rename {pkgs => packages}/coloryou/coloryou.py (100%) rename {pkgs => packages}/coloryou/default.nix (100%) rename {pkgs => packages}/coloryou/requirements.txt (100%) rename {pkgs => packages}/coloryou/setup.py (100%) rename {pkgs => packages}/coloryou/shell.nix (100%) rename {pkgs => packages}/default.nix (97%) rename {pkgs => packages}/gpu-screen-recorder/default.nix (100%) rename {pkgs => packages}/pam-fprint-grosshack/default.nix (100%) rename {pkgs => packages}/pokemon-colorscripts/default.nix (100%) rename {pkgs => packages}/repl/default.nix (100%) rename {pkgs => packages}/repl/repl.nix (100%) rename {pkgs => packages}/trash-d/default.nix (100%) rename {pkgs => packages}/yuzu/compat-list.nix (100%) rename {pkgs => packages}/yuzu/default.nix (100%) rename {pkgs => packages}/yuzu/mainline.nix (100%) rename {pkgs => packages}/yuzu/nx_tzdb.nix (100%) diff --git a/apps/default.nix b/apps/default.nix new file mode 100644 index 00000000..4b328897 --- /dev/null +++ b/apps/default.nix @@ -0,0 +1,12 @@ +{ + inputs, + pkgs, + ... +}: let + mkApp = file: { + program = pkgs.callPackage file ({} // inputs); + type = "app"; + }; +in { + updateFlake = mkApp ./update; +} diff --git a/flake.in.nix b/flake.in.nix index 03ef2646..2b6aafc0 100644 --- a/flake.in.nix +++ b/flake.in.nix @@ -53,7 +53,7 @@ perSystem = attrs: nixpkgs.lib.genAttrs supportedSystems (system: - attrs system (mkPkgs system nixpkgs)); + attrs (mkPkgs system nixpkgs)); in { nixosModules = { adb = import ./modules/adb.nix; @@ -95,8 +95,7 @@ ]; live-image = mkNixOS [ - ("${nixpkgs}/nixos/modules/installer/" - + "cd-dvd/installation-cd-minimal.nix") + "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix" {home-manager.users.nixos.home.stateVersion = "24.05";} { vars = { @@ -107,33 +106,28 @@ ]; }; - nixOnDroidConfigurations.default = mkNixOnDroid [./devices/android]; + nixOnDroidConfigurations.default = + mkNixOnDroid [./devices/android]; - legacyPackages = perSystem (system: pkgs: let - mkScope = file: - pkgs.lib.recurseIntoAttrs - (pkgs.callPackage file ({inherit mkVersion;} // inputs)); - in { - dracula = mkScope ./pkgs/dracula; - firefoxAddons = mkScope ./pkgs/firefox-addons; - mpvScripts = mkScope ./pkgs/mpv-scripts; - }); + legacyPackages = + perSystem (pkgs: + import ./legacyPackages {inherit mkVersion pkgs inputs;}); packages = - perSystem (system: pkgs: - import ./pkgs ({inherit self system pkgs mkVersion;} // inputs)); + perSystem (pkgs: + import ./packages {inherit self pkgs mkVersion inputs;}); - devShells = perSystem (_: pkgs: { + apps = + perSystem (pkgs: + import ./apps {inherit inputs pkgs;}); + + devShells = perSystem (pkgs: { default = pkgs.mkShell { packages = with pkgs; [ - alejandra - git - nix-output-monitor - - (writeShellScriptBin "mkIso" (lib.concatStrings [ - "nom build $(realpath /etc/nixos)#nixosConfigurations." - "live-image.config.system.build.isoImage" - ])) + (writeShellScriptBin "mkIso" '' + isoConfig="nixosConfigurations.live-image.config.system.build.isoImage" + nom build $(realpath /etc/nixos)#$isoConfig + '') ]; }; @@ -161,21 +155,11 @@ }; }); - formatter = perSystem (_: pkgs: pkgs.alejandra); - - # Scripts - apps = perSystem (system: pkgs: let - inherit (pkgs) lib callPackage; - in { - updateFlake = { - program = lib.getExe (callPackage ./apps/update ({} // inputs)); - type = "app"; - }; - }); - # For nix-fast-build checks = - perSystem (system: pkgs: - import ./flake/ci.nix {inherit system pkgs self;}); + perSystem (pkgs: + import ./flake/ci.nix {inherit pkgs self;}); + + formatter = perSystem (pkgs: pkgs.alejandra); }; } diff --git a/flake/ci.nix b/flake/ci.nix index 28c0a8ee..1506279e 100644 --- a/flake/ci.nix +++ b/flake/ci.nix @@ -1,6 +1,5 @@ # CI: https://github.com/Mic92/dotfiles/blob/c2f538934d67417941f83d8bb65b8263c43d32ca/flake.nix#L168 { - system, pkgs, self, }: let @@ -9,6 +8,6 @@ nixosMachines = mapAttrs' (name: config: nameValuePair "nixos-${name}" config.config.system.build.toplevel) - ((filterAttrs (_: config: config.pkgs.system == system)) self.nixosConfigurations); + ((filterAttrs (_: config: config.pkgs.system == pkgs.system)) self.nixosConfigurations); in nixosMachines diff --git a/legacyPackages/default.nix b/legacyPackages/default.nix new file mode 100644 index 00000000..b85a2dbf --- /dev/null +++ b/legacyPackages/default.nix @@ -0,0 +1,16 @@ +{ + inputs, + mkVersion, + pkgs, + ... +}: let + inherit (pkgs) lib; + + mkScope = file: + lib.recurseIntoAttrs + (pkgs.callPackage file ({inherit mkVersion;} // inputs)); +in { + dracula = mkScope ./dracula; + firefoxAddons = mkScope ./firefox-addons; + mpvScripts = mkScope ./mpv-scripts; +} diff --git a/pkgs/dracula/bat.nix b/legacyPackages/dracula/bat.nix similarity index 100% rename from pkgs/dracula/bat.nix rename to legacyPackages/dracula/bat.nix diff --git a/pkgs/dracula/default.nix b/legacyPackages/dracula/default.nix similarity index 100% rename from pkgs/dracula/default.nix rename to legacyPackages/dracula/default.nix diff --git a/pkgs/dracula/git.nix b/legacyPackages/dracula/git.nix similarity index 100% rename from pkgs/dracula/git.nix rename to legacyPackages/dracula/git.nix diff --git a/pkgs/dracula/gtk.nix b/legacyPackages/dracula/gtk.nix similarity index 100% rename from pkgs/dracula/gtk.nix rename to legacyPackages/dracula/gtk.nix diff --git a/pkgs/dracula/plymouth.nix b/legacyPackages/dracula/plymouth.nix similarity index 100% rename from pkgs/dracula/plymouth.nix rename to legacyPackages/dracula/plymouth.nix diff --git a/pkgs/dracula/sioyek.nix b/legacyPackages/dracula/sioyek.nix similarity index 100% rename from pkgs/dracula/sioyek.nix rename to legacyPackages/dracula/sioyek.nix diff --git a/pkgs/dracula/wallpaper.nix b/legacyPackages/dracula/wallpaper.nix similarity index 100% rename from pkgs/dracula/wallpaper.nix rename to legacyPackages/dracula/wallpaper.nix diff --git a/pkgs/firefox-addons/addons.json b/legacyPackages/firefox-addons/addons.json similarity index 100% rename from pkgs/firefox-addons/addons.json rename to legacyPackages/firefox-addons/addons.json diff --git a/pkgs/firefox-addons/default.nix b/legacyPackages/firefox-addons/default.nix similarity index 100% rename from pkgs/firefox-addons/default.nix rename to legacyPackages/firefox-addons/default.nix diff --git a/pkgs/firefox-addons/generated-firefox-addons.nix b/legacyPackages/firefox-addons/generated-firefox-addons.nix similarity index 100% rename from pkgs/firefox-addons/generated-firefox-addons.nix rename to legacyPackages/firefox-addons/generated-firefox-addons.nix diff --git a/pkgs/mpv-scripts/default.nix b/legacyPackages/mpv-scripts/default.nix similarity index 100% rename from pkgs/mpv-scripts/default.nix rename to legacyPackages/mpv-scripts/default.nix diff --git a/pkgs/mpv-scripts/kdialog-open-files.nix b/legacyPackages/mpv-scripts/kdialog-open-files.nix similarity index 100% rename from pkgs/mpv-scripts/kdialog-open-files.nix rename to legacyPackages/mpv-scripts/kdialog-open-files.nix diff --git a/pkgs/mpv-scripts/modernx.nix b/legacyPackages/mpv-scripts/modernx.nix similarity index 100% rename from pkgs/mpv-scripts/modernx.nix rename to legacyPackages/mpv-scripts/modernx.nix diff --git a/pkgs/mpv-scripts/persist-properties.nix b/legacyPackages/mpv-scripts/persist-properties.nix similarity index 100% rename from pkgs/mpv-scripts/persist-properties.nix rename to legacyPackages/mpv-scripts/persist-properties.nix diff --git a/pkgs/mpv-scripts/pointer-event.nix b/legacyPackages/mpv-scripts/pointer-event.nix similarity index 100% rename from pkgs/mpv-scripts/pointer-event.nix rename to legacyPackages/mpv-scripts/pointer-event.nix diff --git a/pkgs/mpv-scripts/touch-gestures.nix b/legacyPackages/mpv-scripts/touch-gestures.nix similarity index 100% rename from pkgs/mpv-scripts/touch-gestures.nix rename to legacyPackages/mpv-scripts/touch-gestures.nix diff --git a/pkgs/mpv-scripts/undo-redo.nix b/legacyPackages/mpv-scripts/undo-redo.nix similarity index 100% rename from pkgs/mpv-scripts/undo-redo.nix rename to legacyPackages/mpv-scripts/undo-redo.nix diff --git a/pkgs/README.md b/packages/README.md similarity index 100% rename from pkgs/README.md rename to packages/README.md diff --git a/pkgs/coloryou/LICENSE b/packages/coloryou/LICENSE similarity index 100% rename from pkgs/coloryou/LICENSE rename to packages/coloryou/LICENSE diff --git a/pkgs/coloryou/coloryou.py b/packages/coloryou/coloryou.py similarity index 100% rename from pkgs/coloryou/coloryou.py rename to packages/coloryou/coloryou.py diff --git a/pkgs/coloryou/default.nix b/packages/coloryou/default.nix similarity index 100% rename from pkgs/coloryou/default.nix rename to packages/coloryou/default.nix diff --git a/pkgs/coloryou/requirements.txt b/packages/coloryou/requirements.txt similarity index 100% rename from pkgs/coloryou/requirements.txt rename to packages/coloryou/requirements.txt diff --git a/pkgs/coloryou/setup.py b/packages/coloryou/setup.py similarity index 100% rename from pkgs/coloryou/setup.py rename to packages/coloryou/setup.py diff --git a/pkgs/coloryou/shell.nix b/packages/coloryou/shell.nix similarity index 100% rename from pkgs/coloryou/shell.nix rename to packages/coloryou/shell.nix diff --git a/pkgs/default.nix b/packages/default.nix similarity index 97% rename from pkgs/default.nix rename to packages/default.nix index 85fb90e4..fe162873 100644 --- a/pkgs/default.nix +++ b/packages/default.nix @@ -1,8 +1,9 @@ { - pkgs, + inputs, mkVersion, + pkgs, ... -} @ inputs: { +}: { coloryou = pkgs.callPackage ./coloryou {}; gpu-screen-recorder = pkgs.callPackage ./gpu-screen-recorder { diff --git a/pkgs/gpu-screen-recorder/default.nix b/packages/gpu-screen-recorder/default.nix similarity index 100% rename from pkgs/gpu-screen-recorder/default.nix rename to packages/gpu-screen-recorder/default.nix diff --git a/pkgs/pam-fprint-grosshack/default.nix b/packages/pam-fprint-grosshack/default.nix similarity index 100% rename from pkgs/pam-fprint-grosshack/default.nix rename to packages/pam-fprint-grosshack/default.nix diff --git a/pkgs/pokemon-colorscripts/default.nix b/packages/pokemon-colorscripts/default.nix similarity index 100% rename from pkgs/pokemon-colorscripts/default.nix rename to packages/pokemon-colorscripts/default.nix diff --git a/pkgs/repl/default.nix b/packages/repl/default.nix similarity index 100% rename from pkgs/repl/default.nix rename to packages/repl/default.nix diff --git a/pkgs/repl/repl.nix b/packages/repl/repl.nix similarity index 100% rename from pkgs/repl/repl.nix rename to packages/repl/repl.nix diff --git a/pkgs/trash-d/default.nix b/packages/trash-d/default.nix similarity index 100% rename from pkgs/trash-d/default.nix rename to packages/trash-d/default.nix diff --git a/pkgs/yuzu/compat-list.nix b/packages/yuzu/compat-list.nix similarity index 100% rename from pkgs/yuzu/compat-list.nix rename to packages/yuzu/compat-list.nix diff --git a/pkgs/yuzu/default.nix b/packages/yuzu/default.nix similarity index 100% rename from pkgs/yuzu/default.nix rename to packages/yuzu/default.nix diff --git a/pkgs/yuzu/mainline.nix b/packages/yuzu/mainline.nix similarity index 100% rename from pkgs/yuzu/mainline.nix rename to packages/yuzu/mainline.nix diff --git a/pkgs/yuzu/nx_tzdb.nix b/packages/yuzu/nx_tzdb.nix similarity index 100% rename from pkgs/yuzu/nx_tzdb.nix rename to packages/yuzu/nx_tzdb.nix