100 lines
2.2 KiB
Nix
100 lines
2.2 KiB
Nix
{ inputs, lib, ... }:
|
|
|
|
{
|
|
flake.modules.nixos."nixosConfigurations/home02" =
|
|
{ pkgs, ... }:
|
|
{
|
|
imports = with inputs.self.modules.nixos; [
|
|
inputs.agenix.nixosModules.default
|
|
|
|
nginx-oliverdavies-uk
|
|
nginx-ponthir-taekwondo
|
|
server-forgejo
|
|
];
|
|
|
|
homelab.services =
|
|
let
|
|
cloudflareTunnelId = "c1537889-81ac-4d41-b80d-9657f8db30c7";
|
|
in
|
|
{
|
|
forgejo = {
|
|
inherit cloudflareTunnelId;
|
|
|
|
domain = "git.oliverdavies.uk";
|
|
enable = true;
|
|
sshDomain = "ssh.oliverdavies.uk";
|
|
};
|
|
};
|
|
|
|
nix.settings = {
|
|
auto-optimise-store = true;
|
|
|
|
experimental-features = [
|
|
"nix-command"
|
|
"flakes"
|
|
];
|
|
|
|
warn-dirty = false;
|
|
};
|
|
|
|
age.secrets = {
|
|
cloudflare.file = ../../../../secrets/cloudflare.age;
|
|
cloudflared.file = ../../../../secrets/cloudflared-credentials2.age;
|
|
};
|
|
|
|
networking.hostName = "home02";
|
|
|
|
system.stateVersion = "25.05";
|
|
|
|
boot.loader.efi.canTouchEfiVariables = true;
|
|
boot.loader.systemd-boot.enable = true;
|
|
|
|
networking.networkmanager.enable = true;
|
|
|
|
time.timeZone = "Europe/London";
|
|
|
|
i18n.defaultLocale = "en_GB.UTF-8";
|
|
|
|
i18n.extraLocaleSettings = {
|
|
LC_ADDRESS = "en_GB.UTF-8";
|
|
LC_IDENTIFICATION = "en_GB.UTF-8";
|
|
LC_MEASUREMENT = "en_GB.UTF-8";
|
|
LC_MONETARY = "en_GB.UTF-8";
|
|
LC_NAME = "en_GB.UTF-8";
|
|
LC_NUMERIC = "en_GB.UTF-8";
|
|
LC_PAPER = "en_GB.UTF-8";
|
|
LC_TELEPHONE = "en_GB.UTF-8";
|
|
LC_TIME = "en_GB.UTF-8";
|
|
};
|
|
|
|
services.xserver.xkb = {
|
|
layout = "gb";
|
|
variant = "";
|
|
};
|
|
|
|
console.keyMap = "uk";
|
|
|
|
users.users.opdavies = {
|
|
isNormalUser = true;
|
|
description = "Oliver Davies";
|
|
extraGroups = [
|
|
"networkmanager"
|
|
"wheel"
|
|
];
|
|
packages = [ ];
|
|
shell= pkgs.zsh;
|
|
};
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
services.openssh.enable = true;
|
|
|
|
security.sudo.wheelNeedsPassword = false;
|
|
|
|
programs.zsh.enable = true;
|
|
programs.zsh.interactiveShellInit = ''
|
|
clear
|
|
${lib.getExe pkgs.fastfetch}
|
|
'';
|
|
};
|
|
}
|