added quadlet-nix input, created initial ixion config, created wrapper around quadlets
also wrote some doucumentation about quadlets, nothing too comprehesive though as the wrapper might get removed later
This commit is contained in:
parent
4afb47e881
commit
831fce71b8
35
flake.nix
35
flake.nix
@ -12,6 +12,7 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
ghostty.url = "github:ghostty-org/ghostty";
|
ghostty.url = "github:ghostty-org/ghostty";
|
||||||
|
quadlet-nix.url = "github:SEIAROTg/quadlet-nix";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs @ {
|
outputs = inputs @ {
|
||||||
@ -21,6 +22,7 @@
|
|||||||
darwin,
|
darwin,
|
||||||
home-manager,
|
home-manager,
|
||||||
ghostty,
|
ghostty,
|
||||||
|
quadlet-nix,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
userName = "wyatt";
|
userName = "wyatt";
|
||||||
@ -110,24 +112,21 @@
|
|||||||
hostname = "ixion";
|
hostname = "ixion";
|
||||||
role = "server";
|
role = "server";
|
||||||
};
|
};
|
||||||
# modules = [
|
modules = [
|
||||||
# nix-flatpak.nixosModules.nix-flatpak
|
nix-flatpak.nixosModules.nix-flatpak
|
||||||
# nix-ld.nixosModules.nix-ld
|
./modules/common
|
||||||
# ./modules/nixos/hardware-configuration.nix
|
./modules/machine/ixion
|
||||||
# ./modules/nix-core.nix
|
|
||||||
# ./modules/nixos/configuration.nix
|
home-manager.nixosModules.home-manager
|
||||||
# ./modules/host-users.nix
|
{
|
||||||
#
|
home-manager.useGlobalPkgs = true;
|
||||||
# home-manager.nixosModules.home-manager
|
home-manager.useUserPackages = true;
|
||||||
# {
|
home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||||
# home-manager.useGlobalPkgs = true;
|
home-manager.users.${userName}.imports = [
|
||||||
# home-manager.useUserPackages = true;
|
./home
|
||||||
# home-manager.extraSpecialArgs = extraSpecialArgs;
|
];
|
||||||
# home-manager.users.${userName}.imports = [
|
}
|
||||||
# ./home
|
];
|
||||||
# ];
|
|
||||||
# }
|
|
||||||
# ];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
16
modules/machine/ixion/configuration.nix
Normal file
16
modules/machine/ixion/configuration.nix
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
userName,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [ ];
|
||||||
|
|
||||||
|
# Enable flakes for NixOS
|
||||||
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||||
|
|
||||||
|
# Custom kernel/boot stuff
|
||||||
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
}
|
6
modules/machine/ixion/default.nix
Normal file
6
modules/machine/ixion/default.nix
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
./configuration.nix
|
||||||
|
./hardware-configuration.nix
|
||||||
|
];
|
||||||
|
}
|
46
modules/machine/ixion/hardware-configuration.nix
Normal file
46
modules/machine/ixion/hardware-configuration.nix
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# --- DO NOT USE ---
|
||||||
|
#
|
||||||
|
# this is copied from ../valefor/hardware-configuration.nix
|
||||||
|
# generate a new hardware-configuration.nix before using this!
|
||||||
|
#
|
||||||
|
# ------------------
|
||||||
|
#
|
||||||
|
# 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 + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/ff89bde1-4b33-4277-b649-b92700b2406c";
|
||||||
|
fsType = "xfs";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/3A4B-6866";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0022" "dmask=0022" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
# 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.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
@ -40,7 +40,13 @@ Example:
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
To get a full, comprehensive list of what you can do with the podman module, please check out (podman.nix)[./podman.nix]!
|
To get a full, comprehensive list of what you can do with the podman module, please check out [podman.nix](./podman.nix)!
|
||||||
|
|
||||||
|
### Podman Quadlets
|
||||||
|
|
||||||
|
This is a wrapper around a project called [`quadlet-nix`](https://github.com/SEIAROTg/quadlet-nix), a way of defining systemd services as containers with Nix! Since I have existing services running inside of containers and don't want to risk breaking _everything_ that I have running, I figured this would be a safe, transitionary approach to handle this.
|
||||||
|
|
||||||
|
This is still a work-in-progress, check back soon on progress on this.
|
||||||
|
|
||||||
## Kubernetes
|
## Kubernetes
|
||||||
|
|
||||||
|
5
modules/virtualization/quadlet.nix
Normal file
5
modules/virtualization/quadlet.nix
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# ----------------------
|
||||||
|
# Wrapper for defining Quadlets in Nix via quadlet-nix
|
||||||
|
#
|
||||||
|
# Still WIP
|
||||||
|
# ----------------------
|
Loading…
x
Reference in New Issue
Block a user