nixos-config/modules/hosts/loptland/default.nix

94 lines
1.9 KiB
Nix

{
config,
...
}:
let
in
{
flake.modules.nixos."hosts/loptland" =
{
inputs,
lib,
pkgs,
modulesPath,
...
}:
let
domainName = "christophhollizeck.dev";
sopsFile = ../../../secrets/secrets-loptland.yaml;
in
{
nixpkgs.config.allowUnfree = true;
services.qemuGuest.enable = true;
imports =
with config.flake.modules.nixos;
[
(modulesPath + "/profiles/qemu-guest.nix")
inputs.catppuccin.nixosModules.catppuccin
inputs.sops-nix.nixosModules.sops
# System modules
base
server
hydra
forgejo
factorio-server
# apps
# Users
cholli
]
++ [
{
home-manager.users.cholli = {
imports = with config.flake.modules.homeManager; [
inputs.catppuccin.homeModules.catppuccin
# components
base
# Activate all user based config
cholli
];
};
}
];
# sops.secrets = {
# "forgejo/mail/passwordHash" = {
# inherit sopsFile;
# };
# };
# mailserver = {
# enable = true;
# fqdn = "mail.${domainName}";
# domains = [ domainName ];
# loginAccounts = {
# "forgejo@${domainName}" = {
# hashedPasswordFile = config.sops.secrets."forgejo/mail/passwordHash".path;
# aliases = [ "no-reply@${domainName}" ];
# };
# };
# certificateScheme = "acme-nginx";
# stateVersion = 3;
# };
services.tailscale = {
enable = true;
useRoutingFeatures = "client";
};
networking.firewall.allowedTCPPorts = [
3000
80
443
];
};
}