summaryrefslogtreecommitdiff
path: root/hosts/himeji/default.nix
blob: 85bf3a4a6c411dd03d4e9c2b7401beafb20be929 (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
74
75
76
77
78
79
{ secrets, pkgs, ... }:
{
  imports = [
    ../../modules/nix
    ../../disks/himeji.nix
    ./hardware-configuration.nix
    ../../modules/networking/vpn/tailscale.nix
    ../../modules/options.nix
    ./options.nix
  ];

  boot.tmp.cleanOnBoot = true;
  zramSwap.enable = true;
  services.openssh.enable = true;
  system.stateVersion = "24.05";

  environment.systemPackages = with pkgs; [
    fastfetch
    vim
  ];

  networking = {
    hostName = "himeji";
    domain = "";
  };

  users.users.root = {
    initialHashedPassword = secrets.initial_hashed_password;

    openssh.authorizedKeys.keys = [
      "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBm/ydlGJiKWMxH6v9SFN3vo/ZkX6eQ+uCmH32gnCkUW"
    ];
  };

  virtualisation = {
    containers.enable = true;
    docker.enable = true;

    podman = {
      enable = false;
      dockerCompat = true;
      defaultNetwork.settings.dns_enabled = true;
    };

    oci-containers = {
      backend = "docker"; # "podman"

      containers = {
        september = {
          image = "fuwn/september";
          autoStart = true;
          ports = [ "8084:80" ];

          environment = {
            CONDENSE_LINKS_AT_HEADINGS = "## Quick Links,# Fuwn[.me],## Footer";
            EMBED_IMAGES = "2";
            HEAD = ''<script async src="https://us.umami.is/script.js" data-website-id="fb2fa218-bbfc-419f-8b70-4f0b937df064"></script><link rel="icon" type="image/x-icon" href="https://avatars.githubusercontent.com/u/99055925?s=200&v=4">'';
            MATHJAX = "true";
            PLAIN_TEXT_ROUTE = "*.xml,*.txt";
            PRIMARY_COLOUR = "#DCC6BD";
          };
        };

        momoka = {
          image = "fuwn/momoka";
          autoStart = true;
          ports = [ "70:70" ];
        };

        gigi = {
          image = "fuwn/gigi";
          autoStart = true;
          ports = [ "79:79" ];
          volumes = [ "/mnt/docker/gigi:/gigi/.gigi" ];
        };
      };
    };
  };
}