从不同磁盘挂载主页(从 ubuntu 迁移)

从不同磁盘挂载主页(从 ubuntu 迁移)

我正在从 ubuntu 迁移到 nixos。我想保留位于另一个磁盘上的以前的主目录。

我成功安装了 nixos。然后我添加了

fileSystems."/home" = {
  device= "/dev/disk/by-uuid/123...;
  fsType = "ext4";
};

configuration.nix,这似乎正确安装了磁盘。

然而,我无法登录 kde不再与我的用户联系。这是

users.users.manuel = {
  isNormalUser = true;
  uid = 1000; # all files in /home/manuel have uid 1000
  home=/home/manuel;
  extraGroups = [ "wheel" "networkmanager ];
};

该组不匹配:

> ll /home
drwxr-rxr-x 55 manuel 1000 4.0K Mar 7 16:58 manuel/

用户可以登录控制台并写入/home/manuel。但它的主页~位于/nix/store/1gr0...-manuel

我怎样才能解决这个问题?

答案1

使用字符串(而非路径)值作为属性值users.users.manuel.home

home = "/home/manuel";

Nix 具有原生路径类型。路径文字(例如)/home/manuel会内置到不可变包中,并且生成的只读 nix 存储路径将用作值。这对于在包中包含源文件很有用,但不是这里需要的。相反,请使用字符串文字(例如)"/home/manuel"

相关内容