diff --git a/flake.nix b/flake.nix index 37021e8..600dcf0 100644 --- a/flake.nix +++ b/flake.nix @@ -66,16 +66,26 @@ nixos-conf-editor.url = "github:vlinkz/nixos-conf-editor"; nix-software-center.url = "github:vlinkz/nix-software-center"; }; - outputs = inputs@{ nixpkgs, home-manager, nur, ... }: + outputs = inputs: let - inherit (import ./user/variables.nix) desktop; - system = "x86_64-linux"; - pkgs = import nixpkgs { + nixpkgsConfig = { inherit system; config = { allowUnfree = true; }; overlays = old_overlays.all; }; - lib = nixpkgs.lib; + + bootstrapPkgs = import inputs.nixpkgs nixpkgsConfig; + nixpkgs = bootstrapPkgs.applyPatches { + name = "patched-nixpkgs"; + src = inputs.nixpkgs; + patches = lib.mapAttrsToList (k: v: ./patches/nixpkgs/${k}) + (builtins.readDir ./patches/nixpkgs); + }; + + inherit (import ./user/variables.nix) desktop; + system = "x86_64-linux"; + pkgs = import nixpkgs nixpkgsConfig; + lib = inputs.nixpkgs.lib; packages = import ./pkgs { inherit pkgs inputs; }; @@ -92,7 +102,7 @@ inputs.hyprland.nixosModules.default inputs.dzgui-nix.nixosModules.default { programs.hyprland.enable = (desktop == "hyprland"); } - home-manager.nixosModules.home-manager + inputs.home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; @@ -150,7 +160,7 @@ }; }; - homeConfigurations.lelgenio = home-manager.lib.homeManagerConfiguration { + homeConfigurations.lelgenio = inputs.home-manager.lib.homeManagerConfiguration { inherit pkgs; extraSpecialArgs = { diff --git a/patches/nixpkgs/fix-steam-generation-after-generation-switch.patch b/patches/nixpkgs/fix-steam-generation-after-generation-switch.patch new file mode 100644 index 0000000..7c2b37f --- /dev/null +++ b/patches/nixpkgs/fix-steam-generation-after-generation-switch.patch @@ -0,0 +1,27 @@ +From ac4d51306af54a088e29e2e5efcfac5dfe87d95c Mon Sep 17 00:00:00 2001 +From: lelgenio +Date: Fri, 4 Aug 2023 01:25:04 -0300 +Subject: [PATCH] HACK: fix steam after generation switch + +--- + pkgs/build-support/build-fhsenv-bubblewrap/default.nix | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/pkgs/build-support/build-fhsenv-bubblewrap/default.nix b/pkgs/build-support/build-fhsenv-bubblewrap/default.nix +index 3500e5e9216f..4d7ac0aa7618 100644 +--- a/pkgs/build-support/build-fhsenv-bubblewrap/default.nix ++++ b/pkgs/build-support/build-fhsenv-bubblewrap/default.nix +@@ -152,6 +152,10 @@ let + fi + if [[ -L $i ]]; then + symlinks+=(--symlink "$(${coreutils}/bin/readlink "$i")" "$i") ++ elif [[ -f $i && -r $i ]]; then ++ SNAPSHOT=$(mktemp --dry-run) ++ cp "$i" "$SNAPSHOT" ++ ro_mounts+=(--ro-bind-try "$SNAPSHOT" "$i") + else + ro_mounts+=(--ro-bind-try "$i" "$i") + fi +-- +2.42.0 +