94 lines
1.9 KiB
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
|
|
];
|
|
|
|
};
|
|
}
|