aboutsummaryrefslogtreecommitdiff
path: root/hosts/meowbook/default.nix
blob: 7c934768d07861d1f8ba43a0747e26b0f1dfeec7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{ config, pkgs, ... }:
{
  imports = [
    ./disks.nix
  ];

  home-manager.users.rosa = {
    imports = [
      ../../modules/user
    ];

    desktop.sessions.sway.enable = true;
    editors.kakoune.enable = true;
    home = {
      homeDirectory = "/home/rosa";
      packages = with pkgs; [
        gimp
      ];

      stateVersion = "26.05";
      username = "rosa";
    };

    programs.vesktop.enable = true;
  };

  networking = {
	  networkmanager = {
	    enable = true;
	    wifi.macAddress = "random";
	  };

	  useNetworkd = true;
  };

  programs.sway.enable = true;
  security.doas.enable = true;
  services.automatic-timezoned.enable = true;
  system = {
    enableDesktopDefaults = true;
    stateVersion = "26.05";
  };

  systemd.network = {
	  netdevs."90-evilvpn" = {
		  netdevConfig = {
			  Kind = "wireguard";
			  Name = "wg0";
		  };

		  wireguardConfig = {
			  PrivateKeyFile = "/etc/wireguard/meowbook.key";
			  RouteTable = "main";
		  };

		  wireguardPeers = [
			  {
				  AllowedIPs = [ "10.6.6.0/24" ];
				  Endpoint = "51.79.54.109:51820";
				  PersistentKeepalive = 25;
				  PublicKey = "ChnzJG0HJcgk3OhgTzoPZ9EOyhuCH1EAknaQ9VF7N0I=";
			  }
		  ];
	  };

	  networks."90-evilvpn" = {
		  address = [ "10.6.6.4/24" ];
		  matchConfig.Name = "wg0";
	  };
  };

  users.users.rosa.enable = true;
}