lix-module: can't switch after following documentation #375

Closed
opened 2024-06-05 01:46:58 +00:00 by ajaxbits · 5 comments

Describe the bug

I followed the tutorial instructions for flake-based configurations1, but Lix does not replace Nix on my system.

After altering my config to the flake listed below, my nix output is still nix (Nix) 2.18.1

Steps To Reproduce

  1. Copy the below flake.nix
  2. Run nixos-rebuild switch --flake .#patroclus
  3. Run nix --version

Expected behavior

nix --version outputs:

nix (Lix, like Nix) 2.90.0-beta.1

Actual behavior

nix --version outputs:

nix (Nix) 2.18.1

nix --version output

nix (Nix) 2.18.1

Additional context

# flake.nix
{
  description = "NixOS configurations";
  inputs = {
    nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/*.tar.gz";
    unstable.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.0.tar.gz";
    latest.url = "github:nixos/nixpkgs/master";
    unfree.url = "github:numtide/nixpkgs-unfree";
    unfree.inputs.nixpkgs.follows = "nixpkgs";

    lix = {
      url = "git+https://git.lix.systems/lix-project/lix?ref=refs/tags/2.90-beta.1";
      flake = false;
    };
    lix-module = {
      url = "git+https://git.lix.systems/lix-project/nixos-module";
      inputs.lix.follows = "lix";
      inputs.nixpkgs.follows = "nixpkgs";
    };

    home-manager.url = "github:nix-community/home-manager/release-23.11";
    home-manager.inputs.nixpkgs.follows = "nixpkgs";

    flake-parts.url = "github:hercules-ci/flake-parts";

    nixos-hardware.url = "github:NixOS/nixos-hardware/master";

    agenix = {
      url = "https://flakehub.com/f/ryantm/agenix/0.14.0.tar.gz";
      inputs.nixpkgs.follows = "nixpkgs";
    };

    # custom pkgs
    caddy = {
      url = "github:ajaxbits/nixos-caddy-patched";
      inputs.nixpkgs.follows = "nixpkgs";
    };
    centerpiece = {
      url = "github:friedow/centerpiece";
      inputs.nixpkgs.follows = "unstable";
    };
    neovim.url = "github:ajaxbits/nvim";
    nur.url = "github:nix-community/NUR";
  };

  outputs = {
    self,
    nixpkgs,
    latest,
    unfree,
    unstable,
    flake-parts,
    home-manager,
    neovim,
    nur,
    agenix,
    nixos-hardware, # deadnix: skip
    lix-module,
    caddy,
    ...
  } @ inputs:
    flake-parts.lib.mkFlake {inherit inputs;} {
      systems = ["x86_64-linux" "aarch64-darwin" "x86_64-darwin"];
      perSystem = {
        pkgs,
        system,
        ...
      }: {
        devShells.default = pkgs.mkShell {
          packages = [
            pkgs.bashInteractive
            agenix.packages.${system}.default
          ];
        };
      };

      flake.nixosConfigurations = let
        inherit (pkgs) lib;

        system = "x86_64-linux";
        user = "admin";

        pkgs = import nixpkgs {inherit system;};
        pkgsLatest = import latest {inherit system;};
        pkgsUnfree = unfree.legacyPackages.${system};
        pkgsUnstable = unstable.legacyPackages.${system};

        overlays = import ./overlays.nix {inherit inputs system;};

        specialArgs = {inherit inputs self system lib pkgs pkgsLatest pkgsUnstable pkgsUnfree overlays user;};
      in {
        patroclus = nixpkgs.lib.nixosSystem {
          inherit specialArgs system;
          modules = [
            "${self}/hosts/patroclus/configuration.nix"
            "${self}/common"
            "${self}/components"
            home-manager.nixosModules.home-manager
            lix-module.nixosModules.default
          ];
        };
        hermes = nixpkgs.lib.nixosSystem {
          inherit specialArgs system;
          modules = [
            "${self}/hosts/hermes/configuration.nix"
            "${self}/common"
            "${self}/components"
            home-manager.nixosModules.home-manager
            lix-module.nixosModules.default
          ];
        };
      };
    };

  nixConfig = {
    extra-substituters = [
      "https://cache.garnix.io"
      "https://numtide.cachix.org"
      "https://cache.lix.systems"
    ];
    extra-trusted-public-keys = [
      "cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
      "numtide.cachix.org-1:2ps1kLBUWjxIneOy1Ik6cQjb41X0iXVXeHigGmycPPE="
      "cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o="
    ];
  };
}

EDIT: Fixed a flake typo


  1. Which are awesome, by the way. Thank you! ↩︎

## Describe the bug I followed the [tutorial instructions for flake-based configurations](https://lix.systems/add-to-config/#flake-based-configurations)[^1], but Lix does not replace Nix on my system. After altering my config to the flake listed below, my nix output is still `nix (Nix) 2.18.1` ## Steps To Reproduce 1. Copy the below flake.nix 2. Run `nixos-rebuild switch --flake .#patroclus` 3. Run `nix --version` ## Expected behavior `nix --version` outputs: ``` nix (Lix, like Nix) 2.90.0-beta.1 ``` ## Actual behavior `nix --version` outputs: ``` nix (Nix) 2.18.1 ``` ## `nix --version` output ``` nix (Nix) 2.18.1 ``` ## Additional context ```nix # flake.nix { description = "NixOS configurations"; inputs = { nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/*.tar.gz"; unstable.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1.0.tar.gz"; latest.url = "github:nixos/nixpkgs/master"; unfree.url = "github:numtide/nixpkgs-unfree"; unfree.inputs.nixpkgs.follows = "nixpkgs"; lix = { url = "git+https://git.lix.systems/lix-project/lix?ref=refs/tags/2.90-beta.1"; flake = false; }; lix-module = { url = "git+https://git.lix.systems/lix-project/nixos-module"; inputs.lix.follows = "lix"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager.url = "github:nix-community/home-manager/release-23.11"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; flake-parts.url = "github:hercules-ci/flake-parts"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; agenix = { url = "https://flakehub.com/f/ryantm/agenix/0.14.0.tar.gz"; inputs.nixpkgs.follows = "nixpkgs"; }; # custom pkgs caddy = { url = "github:ajaxbits/nixos-caddy-patched"; inputs.nixpkgs.follows = "nixpkgs"; }; centerpiece = { url = "github:friedow/centerpiece"; inputs.nixpkgs.follows = "unstable"; }; neovim.url = "github:ajaxbits/nvim"; nur.url = "github:nix-community/NUR"; }; outputs = { self, nixpkgs, latest, unfree, unstable, flake-parts, home-manager, neovim, nur, agenix, nixos-hardware, # deadnix: skip lix-module, caddy, ... } @ inputs: flake-parts.lib.mkFlake {inherit inputs;} { systems = ["x86_64-linux" "aarch64-darwin" "x86_64-darwin"]; perSystem = { pkgs, system, ... }: { devShells.default = pkgs.mkShell { packages = [ pkgs.bashInteractive agenix.packages.${system}.default ]; }; }; flake.nixosConfigurations = let inherit (pkgs) lib; system = "x86_64-linux"; user = "admin"; pkgs = import nixpkgs {inherit system;}; pkgsLatest = import latest {inherit system;}; pkgsUnfree = unfree.legacyPackages.${system}; pkgsUnstable = unstable.legacyPackages.${system}; overlays = import ./overlays.nix {inherit inputs system;}; specialArgs = {inherit inputs self system lib pkgs pkgsLatest pkgsUnstable pkgsUnfree overlays user;}; in { patroclus = nixpkgs.lib.nixosSystem { inherit specialArgs system; modules = [ "${self}/hosts/patroclus/configuration.nix" "${self}/common" "${self}/components" home-manager.nixosModules.home-manager lix-module.nixosModules.default ]; }; hermes = nixpkgs.lib.nixosSystem { inherit specialArgs system; modules = [ "${self}/hosts/hermes/configuration.nix" "${self}/common" "${self}/components" home-manager.nixosModules.home-manager lix-module.nixosModules.default ]; }; }; }; nixConfig = { extra-substituters = [ "https://cache.garnix.io" "https://numtide.cachix.org" "https://cache.lix.systems" ]; extra-trusted-public-keys = [ "cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g=" "numtide.cachix.org-1:2ps1kLBUWjxIneOy1Ik6cQjb41X0iXVXeHigGmycPPE=" "cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o=" ]; }; } ``` EDIT: Fixed a flake typo [^1]: Which are awesome, by the way. Thank you!
ajaxbits added the
bug
label 2024-06-05 01:46:58 +00:00
Owner

Can you please give the output of which nix?

Can you please give the output of `which nix`?
Author

@jade yes!

~
❯ which nix
/run/current-system/sw/bin/nix
@jade yes! ``` ~ ❯ which nix /run/current-system/sw/bin/nix ```
Owner

uhhhhhhhhhhhh ok that's weird. realpath $(which nix) says some store path to a Nix 2.18 right?

I would suggest the following:

nix repl
nix repl> :lf .
nix-repl> nixosConfigurations.patroclus.config.environment.systemPackages

Then go looking for nix-2.18.1 in there. My best guess as to what is broken is that the overlay isn't being applied to whichever nixpkgs the thing is actually coming from. If you find it in there, then use:

nix-repl> :p nixosConfigurations.micro.options.environment.systemPackages.definitionsWithLocations
[
  {
    file = "/nix/store/650j04jby1z652v2g8grpsz1xxwdw13b-source/configs/nix/roles/base";
    value = [
      «derivation /nix/store/4gdr0496vyls6d3l7kid95pqk4qfgbih-file-5.45.drv»
      «derivation /nix/store/9q59jsycycnds53xl87jlws8r6haqhi1-neovim-0.10.0.drv»
      «derivation /nix/store/1n42kfgaxn1wv1a0arxk4iwabcacpsly-polkadots-0.0.0.drv»
      «derivation /nix/store/fv7ny9w4bb7cnafh86zbz9sxb99nqqpc-nodejs-20.12.2.drv»
      «derivation /nix/store/g5cb52anrhjzvin5qkdyqbf58nmj693w-rustup-1.26.0.drv»
      «derivation /nix/store/ln206xdqzvmxf8j7cc0vhz10vz83a4xq-zsh-5.9.drv»
      «derivation /nix/store/xkmbnp3y5sgfycay85dlvp1vvmxsns7x-tree-2.1.1.drv»
      «derivation /nix/store/r14sa8nvq4g8c7qz4940m3ffpzd2q00h-htop-3.3.0.drv»
    ];
  }
........
  {
    file = "/nix/store/qgbn0imyridkb9527v6gnv6z3jzzprb9-source/nixos/modules/services/system/nix-daemon.nix";
    value = [
      «derivation /nix/store/4w1pwcfvpwd8aqphwigk13ilmzma0yl7-nix-2.90.0-lixpre20240530-2f104bb.drv»
      «derivation /nix/store/vbkyi4iwhbrydw024vsjmnqzkvcarzf4-nix-info.drv»
      «derivation /nix/store/aw38ldl2zwxmgjxb2kwhg57zjrx3shbw-nix-bash-completions-0.6.8.drv»
    ];
  }

If that's not a big enough hammer, try adapting this command to your configuration:

configs/nix » nix why-depends --all --precise --derivation .#nixosConfigurations.micro.config.system.build.toplevel /nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv
fetching git input 'git+file:///home/jade/.dotfiles'
warning: The interpretation of store paths arguments ending in `.drv` recently changed. If this command is now failing try again with '/nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv^*'
/nix/store/8lba49l15r5vcgnqkkpjr8j6gb0y9r02-nixos-system-micro-24.11.20240529.ad57eef.drv
├───/: …3.11.drv",["out"]),("/nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv",["out"]),("/ni…
│   → /nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv
│   └───/: …rv",["bin","man"]),("/nix/store/cjv4k8bahaa7x9hz9w6ql2k0fs8m51pz-nixos-option.drv",["out"]),("/n…
│       → /nix/store/cjv4k8bahaa7x9hz9w6ql2k0fs8m51pz-nixos-option.drv
│       └───/: …2p26.drv",["out"]),("/nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv",["dev"]),("/nix…
│           → /nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv
└───/: …-env.drv",["out"]),("/nix/store/7gs7d96jf404n9szsiccllva21yskaq3-etc.drv",["out"]),("/nix/store/…
    → /nix/store/7gs7d96jf404n9szsiccllva21yskaq3-etc.drv
    ├───/: ….pam.drv",["out"]),("/nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv",["out"]),("/ni…
    │   → /nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv
    ├───/: …keys.drv",["out"]),("/nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv",["out"]),("/nix/sto…
    │   → /nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv
    │   └───/: …hook.drv",["out"]),("/nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv",["out"])],["/n…
    │       → /nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv
    ├───/: …2p26.drv",["out"]),("/nix/store/hkymf1g23q56lwbi7f4rd2kdvkw4lvn8-user-units.drv",["out"]),("/nix…
    │   → /nix/store/hkymf1g23q56lwbi7f4rd2kdvkw4lvn8-user-units.drv
    │   └───/: …55.6.drv",["out"]),("/nix/store/whb8rjm0hfjli4z8n8r414mg0b7k85ls-unit-dbus.service.drv",["out"])…
    │       → /nix/store/whb8rjm0hfjli4z8n8r414mg0b7k85ls-unit-dbus.service.drv
    │       └───/: …2p26.drv",["out"]),("/nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv",["…
    │           → /nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv
    │           └───/: …ers-dbus","","")],[("/nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv",["out"]),("/nix/sto…
    │               → /nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv
    └───/: …tors.drv",["out"]),("/nix/store/lxzzcz39h3gqnlla62jymcbdp344fgl2-system-units.drv",["out"]),("/n…
        → /nix/store/lxzzcz39h3gqnlla62jymcbdp344fgl2-system-units.drv
        └───/: …vice.drv",["out"]),("/nix/store/rwmpf3nvha0acm53821abzylg0k2cb5m-unit-dbus.service.drv",["out"])…
            → /nix/store/rwmpf3nvha0acm53821abzylg0k2cb5m-unit-dbus.service.drv
            └───/: …2p26.drv",["out"]),("/nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv",["…
                → /nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv

(to be clear, the above actually is expected output for a Lix system; we have a stray 2.18 dep or two due to nixos-option. the arrows here are saying "this thing appears elsewhere in the output")

One thing that's suspect about your configuration, by the way, is that your nixpkgs that nix is coming from is rather out of date, since Nix 2.18.2 was released on March 7 2024, and contains security fixes.

Also, FYI, some code review since I am short on ideas:

  • nixpkgs master is just a 2 day newer version of nixos-unstable, so you probably don't need it at all
  • i have no idea what those flakehub inputs resolve to, but i think they're probably not broken
  • specialArgs.pkgs is probably really busted, I would not do that. pkgs is passed to every nixos module already.
  • specialArgs.system is unnecessary, that's just config.nixpkgs.system or pkgs.system
  • ${self}/whatever in imports is equivalent to ./whatever.
uhhhhhhhhhhhh ok that's weird. `realpath $(which nix)` says some store path to a Nix 2.18 right? I would suggest the following: ``` nix repl nix repl> :lf . nix-repl> nixosConfigurations.patroclus.config.environment.systemPackages ``` Then go looking for `nix-2.18.1` in there. My best guess as to what is broken is that the overlay isn't being applied to whichever nixpkgs the thing is actually coming from. If you find it in there, then use: ``` nix-repl> :p nixosConfigurations.micro.options.environment.systemPackages.definitionsWithLocations [ { file = "/nix/store/650j04jby1z652v2g8grpsz1xxwdw13b-source/configs/nix/roles/base"; value = [ «derivation /nix/store/4gdr0496vyls6d3l7kid95pqk4qfgbih-file-5.45.drv» «derivation /nix/store/9q59jsycycnds53xl87jlws8r6haqhi1-neovim-0.10.0.drv» «derivation /nix/store/1n42kfgaxn1wv1a0arxk4iwabcacpsly-polkadots-0.0.0.drv» «derivation /nix/store/fv7ny9w4bb7cnafh86zbz9sxb99nqqpc-nodejs-20.12.2.drv» «derivation /nix/store/g5cb52anrhjzvin5qkdyqbf58nmj693w-rustup-1.26.0.drv» «derivation /nix/store/ln206xdqzvmxf8j7cc0vhz10vz83a4xq-zsh-5.9.drv» «derivation /nix/store/xkmbnp3y5sgfycay85dlvp1vvmxsns7x-tree-2.1.1.drv» «derivation /nix/store/r14sa8nvq4g8c7qz4940m3ffpzd2q00h-htop-3.3.0.drv» ]; } ........ { file = "/nix/store/qgbn0imyridkb9527v6gnv6z3jzzprb9-source/nixos/modules/services/system/nix-daemon.nix"; value = [ «derivation /nix/store/4w1pwcfvpwd8aqphwigk13ilmzma0yl7-nix-2.90.0-lixpre20240530-2f104bb.drv» «derivation /nix/store/vbkyi4iwhbrydw024vsjmnqzkvcarzf4-nix-info.drv» «derivation /nix/store/aw38ldl2zwxmgjxb2kwhg57zjrx3shbw-nix-bash-completions-0.6.8.drv» ]; } ``` If that's not a big enough hammer, try adapting this command to your configuration: ``` configs/nix » nix why-depends --all --precise --derivation .#nixosConfigurations.micro.config.system.build.toplevel /nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv fetching git input 'git+file:///home/jade/.dotfiles' warning: The interpretation of store paths arguments ending in `.drv` recently changed. If this command is now failing try again with '/nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv^*' /nix/store/8lba49l15r5vcgnqkkpjr8j6gb0y9r02-nixos-system-micro-24.11.20240529.ad57eef.drv ├───/: …3.11.drv",["out"]),("/nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv",["out"]),("/ni… │ → /nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv │ └───/: …rv",["bin","man"]),("/nix/store/cjv4k8bahaa7x9hz9w6ql2k0fs8m51pz-nixos-option.drv",["out"]),("/n… │ → /nix/store/cjv4k8bahaa7x9hz9w6ql2k0fs8m51pz-nixos-option.drv │ └───/: …2p26.drv",["out"]),("/nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv",["dev"]),("/nix… │ → /nix/store/m4gx361dyw22iwqpsxadf1ynpwd061dw-nix-2.18.2.drv └───/: …-env.drv",["out"]),("/nix/store/7gs7d96jf404n9szsiccllva21yskaq3-etc.drv",["out"]),("/nix/store/… → /nix/store/7gs7d96jf404n9szsiccllva21yskaq3-etc.drv ├───/: ….pam.drv",["out"]),("/nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv",["out"]),("/ni… │ → /nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv ├───/: …keys.drv",["out"]),("/nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv",["out"]),("/nix/sto… │ → /nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv │ └───/: …hook.drv",["out"]),("/nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv",["out"])],["/n… │ → /nix/store/r5f3d1z0apk59mw4n5h2nd1f79caw0hk-system-path.drv ├───/: …2p26.drv",["out"]),("/nix/store/hkymf1g23q56lwbi7f4rd2kdvkw4lvn8-user-units.drv",["out"]),("/nix… │ → /nix/store/hkymf1g23q56lwbi7f4rd2kdvkw4lvn8-user-units.drv │ └───/: …55.6.drv",["out"]),("/nix/store/whb8rjm0hfjli4z8n8r414mg0b7k85ls-unit-dbus.service.drv",["out"])… │ → /nix/store/whb8rjm0hfjli4z8n8r414mg0b7k85ls-unit-dbus.service.drv │ └───/: …2p26.drv",["out"]),("/nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv",["… │ → /nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv │ └───/: …ers-dbus","","")],[("/nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv",["out"]),("/nix/sto… │ → /nix/store/3rxihjmp2m3dx5r7z2mzv0dzx56dkngy-dbus-1.drv └───/: …tors.drv",["out"]),("/nix/store/lxzzcz39h3gqnlla62jymcbdp344fgl2-system-units.drv",["out"]),("/n… → /nix/store/lxzzcz39h3gqnlla62jymcbdp344fgl2-system-units.drv └───/: …vice.drv",["out"]),("/nix/store/rwmpf3nvha0acm53821abzylg0k2cb5m-unit-dbus.service.drv",["out"])… → /nix/store/rwmpf3nvha0acm53821abzylg0k2cb5m-unit-dbus.service.drv └───/: …2p26.drv",["out"]),("/nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv",["… → /nix/store/irdm99yhwwdcp14r8kybx1hxxl2r8l26-X-Restart-Triggers-dbus.drv ``` (to be clear, the above actually is *expected output* for a Lix system; we have a stray 2.18 dep or two due to nixos-option. the arrows here are saying "this thing appears elsewhere in the output") One thing that's suspect about your configuration, by the way, is that your nixpkgs that nix is coming from is rather out of date, since Nix 2.18.2 was released on March 7 2024, and contains security fixes. Also, FYI, some code review since I am short on ideas: * nixpkgs master is just a 2 day newer version of nixos-unstable, so you probably don't need it at all * i have no idea what those flakehub inputs resolve to, but i think they're probably not broken * specialArgs.pkgs is probably *really* busted, I would not do that. `pkgs` is passed to every nixos module already. * specialArgs.system is unnecessary, that's just `config.nixpkgs.system` or `pkgs.system` * `${self}/whatever` in imports is equivalent to `./whatever`.
Owner

I have thought about this some more. I think it's the specialArgs.pkgs at fault, since that one doesn't actually apply any overlays and bypasses the nixpkgs.overlays NixOS option, which means that in turn, pkgs.nix will get the wrong nix from inside the module that adds it to environment.systemPackages.

I have thought about this some more. I think it's the `specialArgs.pkgs` at fault, since that one doesn't actually apply any overlays and bypasses the `nixpkgs.overlays` NixOS option, which means that in turn, `pkgs.nix` will get the wrong nix from inside the module that adds it to `environment.systemPackages`.
Author

I think it's the specialArgs.pkgs

This was it. Removing the pkgs specialArg was sufficient to solve this issue.

Thank you very much for the response, and for the code review! That was very nice and helped me learn some new stuff! 🫶

> I think it's the specialArgs.pkgs This was it. Removing the `pkgs` `specialArg` was sufficient to solve this issue. Thank you very much for the response, and for the code review! That was very nice and helped me learn some new stuff! 🫶
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lix-project/lix#375
No description provided.