diff --git a/flake.nix b/flake.nix index b9ee70e..780740e 100644 --- a/flake.nix +++ b/flake.nix @@ -33,6 +33,21 @@ description = '' NIXOS Vserver - basic vserver with traefik and podman to be run on a vps. ''; + welcomeText = '' + ## Next steps + + 1. Move hosts/HOSTNAME to hosts/your-hostname with + + `mv hosts/__HOSTNAME__ hosts/your-hostname` + + 2. Change the hostname in your 2. Edit configuration.nix + + `networking.hostName = "__HOSTNAME__"; # CHANGE ME.` + + `networking.hostId = ""; # CHANGE ME` + + You can generate a random hostId with openssl rand -hex 4 + ''; path = ./nixos/vps; }; }; diff --git a/nixos/vps/hosts/vserver/configuration.nix b/nixos/vps/hosts/vserver/configuration.nix deleted file mode 100644 index 7d92259..0000000 --- a/nixos/vps/hosts/vserver/configuration.nix +++ /dev/null @@ -1,110 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page, on -# https://search.nixos.org/options and in the NixOS manual (`nixos-help`). -{pkgs, ...}: { - imports = [ - # Include the results of the hardware scan. - ./disko-config.nix - ./hardware-configuration.nix - ]; - - # Bootloader. - boot.loader.grub = { - efiSupport = true; - efiInstallAsRemovable = true; - }; - - networking.hostName = "new-vps"; # CHANGE ME. - networking.hostId = ""; # CHANGE ME - # Pick only one of the below networking options. - # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. - networking.networkmanager.enable = - true; # Easiest to use and most distros use this by default. - # Set your time zone. - time.timeZone = "Europe/Berlin"; - - # Configure network proxy if necessary - # networking.proxy.default = "http://user:password@proxy:port/"; - # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; - - # Select internationalisation properties. - i18n.defaultLocale = "en_US.UTF-8"; - # console = { - # font = "Lat2-Terminus16"; - # keyMap = "us"; - # useXkbConfig = true; # use xkb.options in tty. - # }; - - # Enable the X11 windowing system. - # services.xserver.enable = true; - - # Enable the GNOME Desktop Environment. - # services.xserver.displayManager.gdm.enable = true; - # services.xserver.desktopManager.gnome.enable = true; - - # Configure keymap in X11 - # services.xserver.xkb.layout = "us"; - # services.xserver.xkb.options = "eurosign:e,caps:escape"; - - # Enable CUPS to print documents. - # services.printing.enable = true; - - # Enable sound. - # hardware.pulseaudio.enable = true; - # OR - - # Enable touchpad support (enabled default in most desktopManager). - # services.libinput.enable = true; - - # Define a user account. Don't forget to set a password with ‘passwd’. - - # List packages installed in system profile. To search, run: - # $ nix search wget - environment.systemPackages = with pkgs; [neovim git]; - - # Some programs need SUID wrappers, can be configured further or are - # started in user sessions. - # programs.mtr.enable = true; - # programs.gnupg.agent = { - # enable = true; - # enableSSHSupport = true; - # }; - - # List services that you want to enable: - - # Enable the OpenSSH daemon. - services.openssh = { - enable = true; - settings.PermitRootLogin = "no"; - }; - - # [[Open ports in the firewall. - # networking.firewall.allowedTCPPorts = [ ... ]; - # networking.firewall.allowedUDPPorts = [ ... ]; - # Or disable the firewall altogether. - # networking.firewall.enable = false; - - # Copy the NixOS configuration file and link it from the resulting system - # (/run/current-system/configuration.nix). This is useful in case you - # accidentally delete configuration.nix. - # system.copySystemConfiguration = true; - - # This option defines the first version of NixOS you have installed on this particular machine, - # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. - # - # Most users should NEVER change this value after the initial install, for any reason, - # even if you've upgraded your system to a new NixOS release. - # - # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, - # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how - # to actually do that. - # - # This value being lower than the current NixOS release does NOT mean your system is - # out of date, out of support, or vulnerable. - # - # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, - # and migrated your data accordingly. - # - # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . - system.stateVersion = "24.11"; # Did you read the comment? -} diff --git a/nixos/vps/hosts/vserver/default.nix b/nixos/vps/hosts/vserver/default.nix deleted file mode 100644 index 47932d0..0000000 --- a/nixos/vps/hosts/vserver/default.nix +++ /dev/null @@ -1,50 +0,0 @@ -# A staring point is the basic NIXOS configuration generated by the ISO installer. -# On an existing NIXOS install you can use the following command in your flakes basedir: -# sudo nixos-generate-config --dir ./hosts/m3tam3re -# -# Please make sure to change the first couple of lines in your configuration.nix: -# { config, inputs, ouputs, lib, pkgs, ... }: -# -# { -# imports = [ # Include the results of the hardware scan. -# ./hardware-configuration.nix -# inputs.home-manager.nixosModules.home-manager -# ]; -# ... -# -# Moreover please update the packages option in your user configuration and add the home-manager options: -# users.users = { -# m3tam3re = { -# isNormalUser = true; -# initialPassword = "12345"; -# extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user. -# packages = [ inputs.home-manager.packages.${pkgs.system}.default ]; -# }; -# }; -# -# home-manager = { -# useUserPackages = true; -# extraSpecialArgs = { inherit inputs outputs; }; -# users.m3tam3re = -# import ../../home/m3tam3re/${config.networking.hostName}.nix; -# }; -# -# Please also change your hostname accordingly: -#:w -# networking.hostName = "nixos"; # Define your hostname. -{ - imports = [ - ../common - ./configuration.nix - ./programs.nix - ./secrets.nix - ./services - ]; - - extraServices = { - flatpak.enable = false; - ollama.enable = false; - podman.enable = true; - virtualisation.enable = false; - }; -} diff --git a/nixos/vps/hosts/vserver/disko-config.nix b/nixos/vps/hosts/vserver/disko-config.nix deleted file mode 100644 index 74cb823..0000000 --- a/nixos/vps/hosts/vserver/disko-config.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - disko.devices = { - disk = { - main = { - type = "disk"; - device = "/dev/vda"; # CHANGE ME - content = { - type = "gpt"; - partitions = { - boot = { - size = "1M"; - type = "EF02"; # for GRUB MBR - priority = 1; - }; - esp = { - size = "512M"; - type = "EF00"; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - mountOptions = ["defaults" "umask=0077"]; - }; - }; - root = { - size = "100%"; - content = { - type = "filesystem"; - format = "ext4"; - mountpoint = "/"; - mountOptions = ["noatime" "nodiratime" "discard"]; - }; - }; - }; - }; - }; - }; - }; -} diff --git a/nixos/vps/hosts/vserver/hardware-configuration.nix b/nixos/vps/hosts/vserver/hardware-configuration.nix deleted file mode 100644 index 7caa8fe..0000000 --- a/nixos/vps/hosts/vserver/hardware-configuration.nix +++ /dev/null @@ -1,28 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ - config, - lib, - pkgs, - modulesPath, - ... -}: { - imports = [ - (modulesPath + "/profiles/qemu-guest.nix") - ]; - - boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"]; - boot.initrd.kernelModules = []; - boot.kernelModules = []; - boot.extraModulePackages = []; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.ens18.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; -} diff --git a/nixos/vps/hosts/vserver/programs.nix b/nixos/vps/hosts/vserver/programs.nix deleted file mode 100644 index 829e7cf..0000000 --- a/nixos/vps/hosts/vserver/programs.nix +++ /dev/null @@ -1,14 +0,0 @@ -{pkgs, ...}: { - programs.nix-ld.enable = true; - programs.nix-ld.libraries = with pkgs; [ - # Add any missing dynamic libraries for unpackaged programs - # here, NOT in environment.systemPackages - ]; - programs.fish.enable = true; - programs.nh = { - enable = true; - clean.enable = true; - clean.extraArgs = "--keep-since 4d --keep 3"; - flake = "/home/m3tam3re/p/nixos/nixos-config"; - }; -} diff --git a/nixos/vps/hosts/vserver/secrets.nix b/nixos/vps/hosts/vserver/secrets.nix deleted file mode 100644 index 9ab40c8..0000000 --- a/nixos/vps/hosts/vserver/secrets.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - age = { - secrets = { - traefik = { - file = ../../secrets/traefik.age; - mode = "770"; - owner = "traefik"; - }; - m3tam3re-secrets = { - file = ../../secrets/m3tam3re-secrets.age; - owner = "m3tam3re"; - }; - }; - }; -} diff --git a/nixos/vps/hosts/vserver/services/containers/default.nix b/nixos/vps/hosts/vserver/services/containers/default.nix deleted file mode 100644 index 9abc631..0000000 --- a/nixos/vps/hosts/vserver/services/containers/default.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ - imports = [ - # Import some nix modules - ]; -} diff --git a/nixos/vps/hosts/vserver/services/default.nix b/nixos/vps/hosts/vserver/services/default.nix deleted file mode 100644 index e1fb282..0000000 --- a/nixos/vps/hosts/vserver/services/default.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - imports = [ - ./containers - ./traefik.nix - ]; -} diff --git a/nixos/vps/hosts/vserver/services/traefik.nix b/nixos/vps/hosts/vserver/services/traefik.nix deleted file mode 100644 index e69de29..0000000