python312Packages.millheater: 0.11.8 -> 0.12.0
[NixPkgs.git] / nixos / tests / user-home-mode.nix
blob2d6d1af3f391b1921668b5684a6fcd2143858f5f
1 import ./make-test-python.nix ({ lib, ... }: {
2   name = "user-home-mode";
3   meta = with lib.maintainers; { maintainers = [ fbeffa ]; };
5   nodes.machine = {
6     users.users.alice = {
7       initialPassword = "pass1";
8       isNormalUser = true;
9     };
10     users.users.bob = {
11       initialPassword = "pass2";
12       isNormalUser = true;
13       homeMode = "750";
14     };
15     users.users.carol = {
16       initialPassword = "pass3";
17       isNormalUser = true;
18       createHome = true;
19       home = "/users/carol";
20     };
21   };
23   testScript = ''
24     machine.wait_for_unit("multi-user.target")
25     machine.wait_for_unit("getty@tty1.service")
26     machine.wait_until_tty_matches("1", "login: ")
27     machine.send_chars("alice\n")
28     machine.wait_until_tty_matches("1", "Password: ")
29     machine.send_chars("pass1\n")
30     machine.succeed('[ "$(stat -c %a /home/alice)" == "700" ]')
31     machine.succeed('[ "$(stat -c %a /home/bob)" == "750" ]')
32     machine.succeed('[ "$(stat -c %a /users)" == "755" ]')
33     machine.succeed('[ "$(stat -c %a /users/carol)" == "700" ]')
34   '';