!SgYlXivkogarTVcnZO:nixos.org

Nix Flakes

864 Members
167 Servers

Load older messages


SenderMessageTime
10 Mar 2024
@stablejoy:matrix.org@stablejoy:matrix.org joined the room.04:08:11
@sdvohet:matrix.orgSdvohet joined the room.08:11:31
@accelbread:matrix.org@accelbread:matrix.orgIs the flake.lock file format documented anywhere?21:12:15
11 Mar 2024
@sky1e:mildlyfunctional.gay@sky1e:mildlyfunctional.gay joined the room.00:34:57
@maribox:matrix.orgmaribox *

Hey! I am currently on the jouney of learning nix and modularizing my config. I tried adding a basePath to my flake.nix because I thought it's a good idea to make the paths absolute but now when I try to rebuild I get the error

"error: cannot coerce a set to a string"

and I have no clue what that even means and also didn't find a clear explanation on the internet.

It would be amazing if someone could help me.

my code for flake.nix looks like this:

{
 description = "NixOS configuration";

  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
    home-manager.url = "github:nix-community/home-manager";
    home-manager.inputs.nixpkgs.follows = "nixpkgs";
    alejandra.url = "github:kamadorueda/alejandra/3.0.0";
    alejandra.inputs.nixpkgs.follows = "nixpkgs";
  };

  outputs = inputs @ {
    nixpkgs,
    home-manager,
    alejandra,
    ...
  }: 
let 
        homeDir = builtins.getEnv "HOME";
        basePath = homeDir + "/nixos-config";
in 
{
     nixosConfigurations = {
      tunix = nixpkgs.lib.nixosSystem {
        system = "x86_64-linux";
        modules = [
          builtins.toPath "${basePath}/hosts/lat"
          builtins.toPath "${basePath}/configuration.nix"
          {
            _module.args = {inherit alejandra;};
          }
          home-manager.nixosModules.home-manager
          {
            home-manager.useGlobalPkgs = true;
            home-manager.useUserPackages = true;
            home-manager.users.marri = import builtins.toPath "${basePath}/home.nix";

            # Optionally, use home-manager.extraSpecialArgs to pass
            # arguments to home.nix
          }
        ];
      };
    };
  };
}

The reason the let in is not at the start but at the outputs section is this issue:
https://github.com/NixOS/nix/issues/3966

02:16:11
12 Mar 2024
@phileas:asra.gr@phileas:asra.gr joined the room.22:24:59
@phileas:asra.gr@phileas:asra.gr
In reply to @accelbread:matrix.org
Is the flake.lock file format documented anywhere?

https://github.com/NixOS/nix/blob/bff5c94184e0eee2a093f3e04d4cec5010de81c7/src/nix/flake.md#lock-files

This goes technical in-detail, overall searching for flake.lock inside nix.git might also help understanding it on a lower-level: https://github.com/search?q=repo%3ANixOS%2Fnix%20flake.lock&type=code

22:30:31
@accelbread:matrix.org@accelbread:matrix.org
In reply to @phileas:asra.gr

https://github.com/NixOS/nix/blob/bff5c94184e0eee2a093f3e04d4cec5010de81c7/src/nix/flake.md#lock-files

This goes technical in-detail, overall searching for flake.lock inside nix.git might also help understanding it on a lower-level: https://github.com/search?q=repo%3ANixOS%2Fnix%20flake.lock&type=code

thanks!
23:11:24
@tomberek:matrix.orgtomberek accelbread: note that we are considering a lock format change in the future, prior to flake stabilization 23:14:23
@accelbread:matrix.org@accelbread:matrix.org Makes sense; i needed to parse current lockfiles to get inputs.
Can just update logic to add support for new version when that arrives
23:16:40
13 Mar 2024
@alexeusgr:matrix.org50^2 changed their profile picture.13:46:58
14 Mar 2024
@federicodschonborn:matrix.org@federicodschonborn:matrix.org left the room.02:04:00
@countoren:matrix.orgcountoren changed their display name from oren to countoren.14:09:38
@mjolnir:nixos.orgNixOS Moderation Botchanged room power levels.18:44:47
15 Mar 2024
@annib-ale:matrix.orgAlessandro Candido joined the room.09:48:29
@gsaurel:laas.frnim65sHi :) I have a dotfiles repo with multiple flake.nix / flake.lock for different computers nixos/hm setup, where most of the conf is in a common modules. They all have the same inputs, and I would like to keep the locks synchronized. What would be the recommended way ? Make only one lock at the root and symlink it everywhere ?13:07:50
@gsaurel:laas.frnim65s * Hi :) I have a dotfiles repo with multiple flake.nix / flake.lock for different computers nixos/hm setup, where most of the conf is in common modules. They all have the same inputs, and I would like to keep the locks synchronized. What would be the recommended way ? Make only one lock at the root and symlink it everywhere ?13:08:22
@2xsaiko:tchncs.de@2xsaiko:tchncs.de
In reply to @gsaurel:laas.fr
Hi :)
I have a dotfiles repo with multiple flake.nix / flake.lock for different computers nixos/hm setup, where most of the conf is in common modules. They all have the same inputs, and I would like to keep the locks synchronized. What would be the recommended way ? Make only one lock at the root and symlink it everywhere ?
don't have multiple flake.nix, it's not a problem to have all the configurations in the same flake since the outputs are named differently
13:13:01
@gsaurel:laas.frnim65sI think I can merge those flake.nix for nixos configuration, because it has the hostname in the outputs, yes. But with home-manager on non-nixos, the output only include the username, which is the same in my case on different computers14:03:34
@federicodschonborn:matrix.org@federicodschonborn:matrix.org joined the room.14:26:36
@2xsaiko:tchncs.de@2xsaiko:tchncs.de
In reply to @gsaurel:laas.fr
I think I can merge those flake.nix for nixos configuration, because it has the hostname in the outputs, yes. But with home-manager on non-nixos, the output only include the username, which is the same in my case on different computers
Then include the hostname, I think it tries "user@host" first
16:56:25
@gsaurel:laas.frnim65soh, nice ! thanks :D17:14:46
@grahamc:nixos.org@grahamc:nixos.org joined the room.21:36:01
16 Mar 2024
@h0lylag:matrix.orgh0ly lag joined the room.04:21:11
@wackadoodle:matrix.orgwackadoodle joined the room.15:52:43
17 Mar 2024
@lenny:flipdot.org@lenny:flipdot.org left the room.15:11:48
@cblacktech:matrix.orgcblacktech joined the room.17:07:46
@sankaratupi:matrix.orgFelipe Marcelino joined the room.17:57:42
18 Mar 2024
@darkwater4213:matrix.orgdarkwater4213 joined the room.00:31:59
@chumpinski:matrix.org@chumpinski:matrix.org joined the room.03:37:23

Show newer messages


Back to Room ListRoom Version: 6