diff options
| author | Leonardo <noreply@leoflo.me> | 2026-02-28 16:27:59 +0100 |
|---|---|---|
| committer | Leonardo <noreply@leoflo.me> | 2026-02-28 19:02:07 +0100 |
| commit | bb11479130b0988e93408aa917cfc872d427d95f (patch) | |
| tree | 58d37004d9529f927fcab0a5672bc6697d9b3c24 /systems/odino | |
| parent | 1507e4e369bd73b85f191fef20a7509283a418aa (diff) | |
| download | nixos-bb11479130b0988e93408aa917cfc872d427d95f.tar.gz nixos-bb11479130b0988e93408aa917cfc872d427d95f.zip | |
nuovo layout
Diffstat (limited to 'systems/odino')
| -rw-r--r-- | systems/odino/home-manager/default.nix | 5 | ||||
| -rw-r--r-- | systems/odino/home-manager/leo/home.nix | 13 | ||||
| -rw-r--r-- | systems/odino/home-manager/leo/programs.nix | 11 | ||||
| -rw-r--r-- | systems/odino/nixos/boot.nix | 19 | ||||
| -rw-r--r-- | systems/odino/nixos/default.nix | 36 | ||||
| -rw-r--r-- | systems/odino/nixos/hardware.nix | 28 | ||||
| -rw-r--r-- | systems/odino/nixos/locales.nix | 20 | ||||
| -rw-r--r-- | systems/odino/nixos/networking.nix | 31 | ||||
| -rw-r--r-- | systems/odino/nixos/programs.nix | 26 | ||||
| -rw-r--r-- | systems/odino/nixos/services.nix | 8 |
10 files changed, 197 insertions, 0 deletions
diff --git a/systems/odino/home-manager/default.nix b/systems/odino/home-manager/default.nix new file mode 100644 index 0000000..bb6ef28 --- /dev/null +++ b/systems/odino/home-manager/default.nix @@ -0,0 +1,5 @@ +{...}: { + imports = [ + ./leo/home.nix + ]; +} diff --git a/systems/odino/home-manager/leo/home.nix b/systems/odino/home-manager/leo/home.nix new file mode 100644 index 0000000..e0c3d6f --- /dev/null +++ b/systems/odino/home-manager/leo/home.nix @@ -0,0 +1,13 @@ +{...}: { + imports = [ + ./programs.nix + ]; + + home = { + username = "leo"; + homeDirectory = "/home/leo"; + }; + + # Version + home.stateVersion = "25.05"; +} diff --git a/systems/odino/home-manager/leo/programs.nix b/systems/odino/home-manager/leo/programs.nix new file mode 100644 index 0000000..eac28b0 --- /dev/null +++ b/systems/odino/home-manager/leo/programs.nix @@ -0,0 +1,11 @@ +{...}: { + imports = [ + ../../../../components/programs/zsh.nix + ../../../../components/programs/tmux.nix + ../../../../components/programs/fastfetch.nix + ]; + + zsh.enable = true; + tmux.enable = true; + fastfetch.enable = true; +} diff --git a/systems/odino/nixos/boot.nix b/systems/odino/nixos/boot.nix new file mode 100644 index 0000000..52b2d3e --- /dev/null +++ b/systems/odino/nixos/boot.nix @@ -0,0 +1,19 @@ +{pkgs, ...}: { + boot = { + kernelPackages = pkgs.linuxPackages_6_18; # NOTE: soltanto versioni LTS per il server + kernelModules = [ "kvm-intel" ]; + kernelParams = [ "boot.shell_on_fail" ]; + + initrd = { + availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ]; + kernelModules = [ ]; + }; + + loader = { + systemd-boot.enable = true; + efi.canTouchEfiVariables = true; + }; + + extraModulePackages = [ ]; + }; +} diff --git a/systems/odino/nixos/default.nix b/systems/odino/nixos/default.nix new file mode 100644 index 0000000..e58ea6a --- /dev/null +++ b/systems/odino/nixos/default.nix @@ -0,0 +1,36 @@ +{pkgs, ...}: { + imports = [ + ./hardware.nix + ./boot.nix + ./networking.nix + ./locales.nix + + ./services.nix + ./programs.nix + ]; + + # Experimental features + nix.settings.experimental-features = [ "nix-command" "flakes" ]; + + # Users + users.users.leo = { + isNormalUser = true; + shell = pkgs.zsh; + + extraGroups = [ "wheel" "networkmanager" ]; + }; + + programs.zsh.enable = true; + + environment.shellAliases = { + l = "eza -lh"; + ll = "eza -lah"; + + update-boot = "sudo nixos-rebuild boot --flake ~/nixos#odino"; + update-system = "sudo nixos-rebuild switch --flake ~/nixos#odino"; + update-home = "home-manager switch --flake ~/nixos#odino"; + }; + + # Version + system.stateVersion = "25.05"; +} diff --git a/systems/odino/nixos/hardware.nix b/systems/odino/nixos/hardware.nix new file mode 100644 index 0000000..4bb260c --- /dev/null +++ b/systems/odino/nixos/hardware.nix @@ -0,0 +1,28 @@ +{config, lib, modulesPath, ...}: { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/31eed536-5936-4814-bb60-73fcc4fabdc5"; + fsType = "ext4"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/1DD7-85F5"; + fsType = "vfat"; + options = [ "fmask=0077" "dmask=0077" ]; + }; + + fileSystems."/mnt/media" = { + device = "/dev/disk/by-uuid/d441ef68-e6c5-4407-8ab4-f85855c2848a"; + fsType = "ext4"; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/8478cb29-8a67-4842-b9ed-16a226506cb7"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/systems/odino/nixos/locales.nix b/systems/odino/nixos/locales.nix new file mode 100644 index 0000000..2d2363d --- /dev/null +++ b/systems/odino/nixos/locales.nix @@ -0,0 +1,20 @@ +{...}: { + time.timeZone = "Europe/Rome"; + console.keyMap = "it"; + + i18n = { + defaultLocale = "en_US.UTF-8"; + + extraLocaleSettings = { + LC_ADDRESS = "it_IT.UTF-8"; + LC_IDENTIFICATION = "it_IT.UTF-8"; + LC_MEASUREMENT = "it_IT.UTF-8"; + LC_MONETARY = "it_IT.UTF-8"; + LC_NAME = "it_IT.UTF-8"; + LC_NUMERIC = "it_IT.UTF-8"; + LC_PAPER = "it_IT.UTF-8"; + LC_TELEPHONE = "it_IT.UTF-8"; + LC_TIME = "it_IT.UTF-8"; + }; + }; +} diff --git a/systems/odino/nixos/networking.nix b/systems/odino/nixos/networking.nix new file mode 100644 index 0000000..ca9cf74 --- /dev/null +++ b/systems/odino/nixos/networking.nix @@ -0,0 +1,31 @@ +{lib, ...}: { + networking = { + hostName = "odino"; + useDHCP = lib.mkDefault true; + + nameservers = [ "208.67.222.222" "208.67.220.220" ]; + + networkmanager.enable = true; + + firewall = { + enable = true; + + allowedTCPPorts = [ 22 ]; + allowedUDPPorts = [ 51820 ]; + }; + + wg-quick.interfaces."tunnel" = { + privateKeyFile = "/home/leo/.wireguard/private.key"; + address = [ "10.69.0.2/24" ]; + + peers = [ + { + publicKey = "rwUMCdhjQbQt9uGjljfdABj4DSJFgL62bzT13sg8LmU="; + allowedIPs = [ "10.69.0.0/24" ]; + endpoint = "leoflo.me:51820"; + persistentKeepalive = 25; + } + ]; + }; + }; +} diff --git a/systems/odino/nixos/programs.nix b/systems/odino/nixos/programs.nix new file mode 100644 index 0000000..3e890cb --- /dev/null +++ b/systems/odino/nixos/programs.nix @@ -0,0 +1,26 @@ +{inputs, pkgs, ...}: { + imports = [ + ../../../components/programs/git.nix + + inputs.home-manager.nixosModules.home-manager + ]; + + nixpkgs.config.allowUnfree = true; + + # Packages + environment.systemPackages = with pkgs; [ + ascii file fastfetch eza btop dysk + openssh rsync wireguard-tools dig + tmux vim + + # Home manager + inputs.home-manager.packages.${stdenv.hostPlatform.system}.home-manager + ]; + + # Docker + virtualisation.docker.enable = true; + users.extraGroups."docker".members = [ "leo" ]; + + # Custom + git.enable = true; +} diff --git a/systems/odino/nixos/services.nix b/systems/odino/nixos/services.nix new file mode 100644 index 0000000..36c8515 --- /dev/null +++ b/systems/odino/nixos/services.nix @@ -0,0 +1,8 @@ +{...}: { + imports = [ + ../../../components/services/openssh.nix + ]; + + # Custom + openssh.enable = true; +} |
