formatting
This commit is contained in:
@@ -1,13 +1,7 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
timezone = "America/Chicago";
|
||||
in
|
||||
{
|
||||
imports =
|
||||
[
|
||||
../modules
|
||||
../share
|
||||
];
|
||||
let timezone = "America/Chicago";
|
||||
in {
|
||||
imports = [ ../modules ../share ];
|
||||
|
||||
# Enable nix flakes and nix-command tools
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
@@ -23,17 +17,17 @@ in
|
||||
# Disable pulse audio in favor of pipewire
|
||||
pulseaudio.enable = false;
|
||||
};
|
||||
|
||||
|
||||
# Services configs
|
||||
services = {
|
||||
openssh.enable = true;
|
||||
|
||||
# Enable firmware updates
|
||||
fwupd.enable = true;
|
||||
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
printing.enable = true;
|
||||
|
||||
|
||||
# configure pipewire
|
||||
pipewire = {
|
||||
enable = true;
|
||||
@@ -56,8 +50,8 @@ in
|
||||
interpreter = "${pkgs.appimage-run}/bin/appimage-run";
|
||||
recognitionType = "magic";
|
||||
offset = 0;
|
||||
mask = ''\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff'';
|
||||
magicOrExtension = ''\x7fELF....AI\x02'';
|
||||
mask = "\\xff\\xff\\xff\\xff\\x00\\x00\\x00\\x00\\xff\\xff\\xff";
|
||||
magicOrExtension = "\\x7fELF....AI\\x02";
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,31 +5,29 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
user = "matt";
|
||||
password = "$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
||||
password =
|
||||
"$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
||||
hostname = "matt-nixos";
|
||||
# discover-wrapper is needed as of 1/24/24 since PackageKit does not work correctly so this removes error messages.
|
||||
discover-wrapped = pkgs.symlinkJoin
|
||||
{
|
||||
name = "discover-flatpak-backend";
|
||||
paths = [ pkgs.libsForQt5.discover ];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/plasma-discover --add-flags "--backends flatpak"
|
||||
'';
|
||||
};
|
||||
in
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
# ../../cachix/cachix.nix
|
||||
../default.nix
|
||||
];
|
||||
discover-wrapped = pkgs.symlinkJoin {
|
||||
name = "discover-flatpak-backend";
|
||||
paths = [ pkgs.libsForQt5.discover ];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/plasma-discover --add-flags "--backends flatpak"
|
||||
'';
|
||||
};
|
||||
in {
|
||||
imports = [ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
# ../../cachix/cachix.nix
|
||||
../default.nix
|
||||
];
|
||||
|
||||
share.hardware.amd = {
|
||||
enable = true;
|
||||
corectrl.enable = true;
|
||||
corectrl.enablePolkit = true;
|
||||
corectrl.enablePolkit = true;
|
||||
};
|
||||
|
||||
# Configure bootloader with lanzaboot and secureboot
|
||||
@@ -55,13 +53,11 @@ in
|
||||
};
|
||||
configurationLimit = 2;
|
||||
};
|
||||
|
||||
|
||||
# Override kernel to latest
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
|
||||
kernelParams = [
|
||||
"quiet"
|
||||
];
|
||||
kernelParams = [ "quiet" ];
|
||||
|
||||
consoleLogLevel = 3;
|
||||
bootspec.enable = true;
|
||||
@@ -77,7 +73,7 @@ in
|
||||
|
||||
# Steam udev rules for remote play
|
||||
steam-hardware.enable = true;
|
||||
|
||||
|
||||
# opengl.enable = true;
|
||||
# # Enables support for 32bit libs that steam uses
|
||||
# opengl.driSupport32Bit = true;
|
||||
@@ -88,7 +84,7 @@ in
|
||||
# Enable the X11 windowing system.
|
||||
xserver = {
|
||||
enable = true;
|
||||
|
||||
|
||||
# Enable the Plasma 6 Desktop Environment.
|
||||
displayManager = {
|
||||
sddm.enable = true;
|
||||
@@ -147,10 +143,8 @@ in
|
||||
};
|
||||
|
||||
# Time config
|
||||
time = {
|
||||
hardwareClockInLocalTime = true;
|
||||
};
|
||||
|
||||
time = { hardwareClockInLocalTime = true; };
|
||||
|
||||
# xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-kde ];
|
||||
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||
|
||||
@@ -218,8 +212,10 @@ in
|
||||
# Steam
|
||||
steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||||
remotePlay.openFirewall =
|
||||
true; # Open ports in the firewall for Steam Remote Play
|
||||
dedicatedServer.openFirewall =
|
||||
true; # Open ports in the firewall for Source Dedicated Server
|
||||
};
|
||||
};
|
||||
|
||||
@@ -236,18 +232,19 @@ in
|
||||
|
||||
packageOverrides = pkgs: {
|
||||
steam = pkgs.steam.override {
|
||||
extraPkgs = pkgs: with pkgs; [
|
||||
xorg.libXcursor
|
||||
xorg.libXi
|
||||
xorg.libXinerama
|
||||
xorg.libXScrnSaver
|
||||
libpng
|
||||
libpulseaudio
|
||||
libvorbis
|
||||
stdenv.cc.cc.lib
|
||||
libkrb5
|
||||
keyutils
|
||||
];
|
||||
extraPkgs = pkgs:
|
||||
with pkgs; [
|
||||
xorg.libXcursor
|
||||
xorg.libXi
|
||||
xorg.libXinerama
|
||||
xorg.libXScrnSaver
|
||||
libpng
|
||||
libpulseaudio
|
||||
libvorbis
|
||||
stdenv.cc.cc.lib
|
||||
libkrb5
|
||||
keyutils
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -4,67 +4,65 @@
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "ahci" "usbhid" "uas" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "nvme" "ahci" "usbhid" "uas" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "none";
|
||||
fsType = "tmpfs";
|
||||
};
|
||||
fileSystems."/" = {
|
||||
device = "none";
|
||||
fsType = "tmpfs";
|
||||
};
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" "compress=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/nix" = {
|
||||
device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" "compress=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/etc" =
|
||||
{ device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=etc" "compress=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/etc" = {
|
||||
device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=etc" "compress=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/root" =
|
||||
{ device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" "compress=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/root" = {
|
||||
device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" "compress=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/var/log" =
|
||||
{ device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=log" "compress=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/var/log" = {
|
||||
device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=log" "compress=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/home" =
|
||||
{ device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=home" "compress=zstd" ];
|
||||
};
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/c6cf43cb-d0d2-4111-bc81-994e41b2632d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=home" "compress=zstd" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/1058-F967";
|
||||
fsType = "vfat";
|
||||
};
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/1058-F967";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/1db92c49-aa8d-4ca2-b453-83bfcd1d36dd"; }
|
||||
];
|
||||
[{ device = "/dev/disk/by-uuid/1db92c49-aa8d-4ca2-b453-83bfcd1d36dd"; }];
|
||||
|
||||
fileSystems."/home/matt/Games" =
|
||||
{ device = "/dev/disk/by-uuid/1adb3161-ef9e-45d9-be5f-dd718186f1b3";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/home/matt/1TB" =
|
||||
{ device = "/dev/disk/by-uuid/7f9c2d1e-64ee-d901-2084-2d1e64eed901";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/home/matt/Games" = {
|
||||
device = "/dev/disk/by-uuid/1adb3161-ef9e-45d9-be5f-dd718186f1b3";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/home/matt/1TB" = {
|
||||
device = "/dev/disk/by-uuid/7f9c2d1e-64ee-d901-2084-2d1e64eed901";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
# 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
|
||||
@@ -75,5 +73,6 @@
|
||||
# networking.interfaces.wlp9s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.amd.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
||||
@@ -1,8 +1,14 @@
|
||||
{ pkgs, ... }:
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
vulkan-hdr-layer = import ./vulkan-hdr-layer.nix { inherit (pkgs) lib stdenv fetchFromGitHub meson pkg-config vulkan-loader ninja writeText vulkan-headers vulkan-utility-libraries jq wayland; libX11 = pkgs.xorg.libX11; libXrandr = pkgs.xorg.libXrandr; libxcb = pkgs.xorg.libxcb; };
|
||||
in
|
||||
{
|
||||
vulkan-hdr-layer = import ./vulkan-hdr-layer.nix {
|
||||
inherit (pkgs)
|
||||
lib stdenv fetchFromGitHub meson pkg-config vulkan-loader ninja writeText
|
||||
vulkan-headers vulkan-utility-libraries jq wayland;
|
||||
libX11 = pkgs.xorg.libX11;
|
||||
libXrandr = pkgs.xorg.libXrandr;
|
||||
libxcb = pkgs.xorg.libxcb;
|
||||
};
|
||||
in {
|
||||
|
||||
home.username = "matt";
|
||||
home.homeDirectory = "/home/matt";
|
||||
@@ -30,7 +36,7 @@ in
|
||||
|
||||
programs.command-not-found.enable = true;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
home.packages = with pkgs; [
|
||||
firefox
|
||||
tree
|
||||
lm_sensors
|
||||
@@ -46,6 +52,8 @@ in
|
||||
python3
|
||||
virt-manager
|
||||
orca-slicer
|
||||
nixfmt
|
||||
deadnix
|
||||
# Other packages
|
||||
vulkan-hdr-layer
|
||||
];
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
{ lib, stdenv, fetchFromGitHub, meson, pkg-config, vulkan-loader, ninja, writeText, vulkan-headers, vulkan-utility-libraries, jq, libX11, libXrandr, libxcb, wayland }:
|
||||
{ lib, stdenv, fetchFromGitHub, meson, pkg-config, vulkan-loader, ninja
|
||||
, writeText, vulkan-headers, vulkan-utility-libraries, jq, libX11, libXrandr
|
||||
, libxcb, wayland }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "vulkan-hdr-layer";
|
||||
@@ -18,7 +20,15 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ vulkan-headers meson ninja pkg-config jq ];
|
||||
|
||||
buildInputs = [ vulkan-headers vulkan-loader vulkan-utility-libraries libX11 libXrandr libxcb wayland ];
|
||||
buildInputs = [
|
||||
vulkan-headers
|
||||
vulkan-loader
|
||||
vulkan-utility-libraries
|
||||
libX11
|
||||
libXrandr
|
||||
libxcb
|
||||
wayland
|
||||
];
|
||||
|
||||
# Help vulkan-loader find the validation layers
|
||||
setupHook = writeText "setup-hook" ''
|
||||
@@ -31,4 +41,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = platforms.linux;
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,21 +5,20 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
user = "admin";
|
||||
password = "$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
||||
password =
|
||||
"$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
||||
hostname = "jallen-nas";
|
||||
in
|
||||
{
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
../default.nix
|
||||
];
|
||||
in {
|
||||
imports = [ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
../default.nix
|
||||
];
|
||||
|
||||
nas-apps = {
|
||||
jellyfin.enable = true;
|
||||
|
||||
jellyseerr.enable = true;
|
||||
|
||||
|
||||
sabnzbd.enable = true;
|
||||
|
||||
radarr.enable = true;
|
||||
@@ -82,7 +81,6 @@ in
|
||||
dataDir = "/mnt/ssd/nix-app-data/grafana";
|
||||
};
|
||||
|
||||
|
||||
services.prometheus = {
|
||||
enable = true;
|
||||
port = 9001;
|
||||
@@ -95,19 +93,33 @@ in
|
||||
smartctl = {
|
||||
enable = true;
|
||||
group = "disk";
|
||||
devices = [ "/dev/sda" "/dev/sdb" "/dev/sdc" "/dev/sdd" "/dev/sde" "/dev/sdf" "/dev/sdg" "/dev/sdh" "/dev/sdi" "/dev/nvme0n1" "/dev/nvme1n1" ];
|
||||
devices = [
|
||||
"/dev/sda"
|
||||
"/dev/sdb"
|
||||
"/dev/sdc"
|
||||
"/dev/sdd"
|
||||
"/dev/sde"
|
||||
"/dev/sdf"
|
||||
"/dev/sdg"
|
||||
"/dev/sdh"
|
||||
"/dev/sdi"
|
||||
"/dev/nvme0n1"
|
||||
"/dev/nvme1n1"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
scrapeConfigs = [
|
||||
{
|
||||
job_name = hostname;
|
||||
static_configs = [{
|
||||
targets = [ "127.0.0.1:${toString config.services.prometheus.exporters.node.port}"
|
||||
"127.0.0.1:${toString config.services.prometheus.exporters.smartctl.port}"];
|
||||
}];
|
||||
}
|
||||
];
|
||||
|
||||
scrapeConfigs = [{
|
||||
job_name = hostname;
|
||||
static_configs = [{
|
||||
targets = [
|
||||
"127.0.0.1:${toString config.services.prometheus.exporters.node.port}"
|
||||
"127.0.0.1:${
|
||||
toString config.services.prometheus.exporters.smartctl.port
|
||||
}"
|
||||
];
|
||||
}];
|
||||
}];
|
||||
};
|
||||
|
||||
share.hardware.nvidia = {
|
||||
@@ -130,13 +142,11 @@ in
|
||||
efiSysMountPoint = "/boot";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
# Override kernel to latest
|
||||
kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
|
||||
|
||||
kernelParams = [
|
||||
"nohibernate"
|
||||
];
|
||||
kernelParams = [ "nohibernate" ];
|
||||
|
||||
consoleLogLevel = 3;
|
||||
bootspec.enable = true;
|
||||
@@ -152,7 +162,7 @@ in
|
||||
# # Nvidia
|
||||
# nvidia = {
|
||||
# package = config.boot.kernelPackages.nvidiaPackages.beta;
|
||||
|
||||
|
||||
# # Modesetting is required.
|
||||
# modesetting.enable = true;
|
||||
|
||||
@@ -176,7 +186,7 @@ in
|
||||
# # accessible via `nvidia-settings`.
|
||||
# nvidiaSettings = true;
|
||||
# };
|
||||
|
||||
|
||||
# # Enable OpenGL
|
||||
# opengl = {
|
||||
# enable = true;
|
||||
@@ -193,7 +203,7 @@ in
|
||||
|
||||
# # Load nvidia driver for Xorg and Wayland
|
||||
# videoDrivers = ["nvidia"];
|
||||
|
||||
|
||||
# Enable the Plasma 6 Desktop Environment.
|
||||
displayManager = {
|
||||
sddm.enable = true;
|
||||
@@ -279,7 +289,8 @@ in
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowPing = true;
|
||||
extraCommands = ''iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns''; # TODO is this needed?
|
||||
extraCommands =
|
||||
"iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns"; # TODO is this needed?
|
||||
allowedTCPPorts = [ 2342 61208 ];
|
||||
allowedUDPPorts = [ 2342 61208 ];
|
||||
};
|
||||
@@ -335,7 +346,15 @@ in
|
||||
# Admin account
|
||||
users."${user}" = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "networkmanager" "docker" "podman" "libvirtd" "nas-apps" "jallen-nas" ]; # Enable ‘sudo’ for the user.
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
"networkmanager"
|
||||
"docker"
|
||||
"podman"
|
||||
"libvirtd"
|
||||
"nas-apps"
|
||||
"jallen-nas"
|
||||
]; # Enable ‘sudo’ for the user.
|
||||
initialHashedPassword = password;
|
||||
shell = pkgs.fish;
|
||||
openssh.authorizedKeys.keys = [
|
||||
@@ -367,7 +386,7 @@ in
|
||||
group = "jallen-nas";
|
||||
extraGroups = [ "jallen-nas" ]; # Enable ‘sudo’ for the user.
|
||||
hashedPassword = password;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Virtualisation
|
||||
|
||||
@@ -4,58 +4,56 @@
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "nvme" "mpt3sas" "xhci_pci" "ahci" "uas" "sd_mod" ];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "nvme" "mpt3sas" "xhci_pci" "ahci" "uas" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "none";
|
||||
fsType = "tmpfs";
|
||||
};
|
||||
fileSystems."/" = {
|
||||
device = "none";
|
||||
fsType = "tmpfs";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/C6E9-7371";
|
||||
fsType = "vfat";
|
||||
};
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/C6E9-7371";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/nix" = {
|
||||
device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/etc" =
|
||||
{ device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=etc" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/etc" = {
|
||||
device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=etc" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/root" =
|
||||
{ device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/root" = {
|
||||
device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/var/log" =
|
||||
{ device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=log" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
fileSystems."/var/log" = {
|
||||
device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=log" "compress-force=zstd" "noatime" ];
|
||||
};
|
||||
|
||||
fileSystems."/home" =
|
||||
{ device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=home" "compress-force=zstd"];
|
||||
};
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/85e2fa30-816f-4457-80a1-9f88b9ab77b3";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=home" "compress-force=zstd" ];
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/c08ba901-a8a9-4006-9688-002bb24da1b6"; }
|
||||
];
|
||||
[{ device = "/dev/disk/by-uuid/c08ba901-a8a9-4006-9688-002bb24da1b6"; }];
|
||||
|
||||
# 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
|
||||
@@ -77,5 +75,6 @@
|
||||
# networking.interfaces.wlp6s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.amd.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
||||
@@ -6,18 +6,18 @@
|
||||
|
||||
let
|
||||
user = "matt";
|
||||
password = "$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
||||
password =
|
||||
"$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
||||
SSID = "Joey’s Jungle";
|
||||
SSIDpassword = "kR8v&3Qd";
|
||||
interface = "wlan0";
|
||||
timezone = "America/Chicago";
|
||||
hostname = "nixos-pi4";
|
||||
in {
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
./docker-pi4.nix
|
||||
];
|
||||
imports = [ # Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
./docker-pi4.nix
|
||||
];
|
||||
|
||||
# Enable nix flakes and nix-command tools
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
@@ -43,12 +43,7 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
vim
|
||||
raspberrypi-eeprom
|
||||
htop
|
||||
git
|
||||
];
|
||||
environment.systemPackages = with pkgs; [ vim raspberrypi-eeprom htop git ];
|
||||
|
||||
services.openssh.enable = true;
|
||||
|
||||
|
||||
@@ -25,9 +25,7 @@
|
||||
"/media/T5/tv:/tv"
|
||||
];
|
||||
ports = [ "8096:8096" ];
|
||||
environment = {
|
||||
JELLYFIN_LOG_DIR = "/log";
|
||||
};
|
||||
environment = { JELLYFIN_LOG_DIR = "/log"; };
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -4,33 +4,30 @@
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/ec969af6-d557-408a-a149-ba23d31fd8a2";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/ec969af6-d557-408a-a149-ba23d31fd8a2";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/media/T5" =
|
||||
{ device = "/dev/disk/by-uuid/191ce486-899d-4718-81e3-5c9b3ea860e4";
|
||||
fsType = "ext4";
|
||||
};
|
||||
fileSystems."/media/T5" = {
|
||||
device = "/dev/disk/by-uuid/191ce486-899d-4718-81e3-5c9b3ea860e4";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/FIRMWARE" =
|
||||
{ device = "/dev/disk/by-uuid/5A9F-FC90";
|
||||
fsType = "vfat";
|
||||
};
|
||||
fileSystems."/FIRMWARE" = {
|
||||
device = "/dev/disk/by-uuid/5A9F-FC90";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/d9909ef7-c345-48f7-b210-ad7cbe72224b"; }
|
||||
];
|
||||
[{ device = "/dev/disk/by-uuid/d9909ef7-c345-48f7-b210-ad7cbe72224b"; }];
|
||||
|
||||
# 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
|
||||
|
||||
Reference in New Issue
Block a user