formatting

This commit is contained in:
Henri Dohmen 2025-03-22 12:28:50 +01:00
parent e3e370c893
commit 43860609e1
22 changed files with 230 additions and 154 deletions

View file

@ -3,25 +3,28 @@
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
}; };
outputs = { self, nixpkgs } @ inputs: outputs =
let lib = nixpkgs.lib; in { self, nixpkgs }@inputs:
let mod = import ./mod { inherit lib; }; in let
let specialArgs = { inherit inputs mod; }; in lib = nixpkgs.lib;
mod = import ./mod { inherit lib; };
specialArgs = { inherit inputs mod; };
in
{ {
nixosConfigurations = { nixosConfigurations = {
"solo" = nixpkgs.lib.nixosSystem "solo" = nixpkgs.lib.nixosSystem {
{
system = "x86_64-linux"; system = "x86_64-linux";
inherit specialArgs; inherit specialArgs;
modules = [ ./host/solo ]; modules = [ ./host/solo ];
}; };
"c2" = nixpkgs.lib.nixosSystem "c2" = nixpkgs.lib.nixosSystem {
{
system = "x86_64-linux"; system = "x86_64-linux";
inherit specialArgs; inherit specialArgs;
modules = [ ./host/c2 ]; modules = [ ./host/c2 ];
}; };
}; };
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt-rfc-style;
}; };
} }

View file

@ -1,4 +1,5 @@
{ mod, ... }: { { mod, ... }:
{
networking.hostName = "c2"; networking.hostName = "c2";
imports = with mod; [ imports = with mod; [

View file

@ -1,41 +1,68 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: {
config,
lib,
pkgs,
modulesPath,
...
}:
{ {
imports = imports = [
[ (modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.availableKernelModules = [
"xhci_pci"
"nvme"
"usb_storage"
"sd_mod"
"rtsx_pci_sdmmc"
];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/0aa43f8a-a6e8-47aa-800d-b02d98f2cb8a"; device = "/dev/disk/by-uuid/0aa43f8a-a6e8-47aa-800d-b02d98f2cb8a";
fsType = "btrfs"; fsType = "btrfs";
options = [ "noatime" "compress=zstd:1" "subvol=@" ]; options = [
}; "noatime"
"compress=zstd:1"
"subvol=@"
];
};
fileSystems."/nix" = fileSystems."/nix" = {
{ device = "/dev/disk/by-uuid/0aa43f8a-a6e8-47aa-800d-b02d98f2cb8a"; device = "/dev/disk/by-uuid/0aa43f8a-a6e8-47aa-800d-b02d98f2cb8a";
fsType = "btrfs"; fsType = "btrfs";
options = [ "noatime" "compress=zstd:1" "subvol=@nix" ]; options = [
}; "noatime"
"compress=zstd:1"
"subvol=@nix"
];
};
fileSystems."/home" = fileSystems."/home" = {
{ device = "/dev/disk/by-uuid/0aa43f8a-a6e8-47aa-800d-b02d98f2cb8a"; device = "/dev/disk/by-uuid/0aa43f8a-a6e8-47aa-800d-b02d98f2cb8a";
fsType = "btrfs"; fsType = "btrfs";
options = [ "noatime" "compress=zstd:1" "subvol=@home" ]; options = [
}; "noatime"
"compress=zstd:1"
"subvol=@home"
];
};
fileSystems."/boot/efi" = fileSystems."/boot/efi" = {
{ device = "/dev/disk/by-uuid/829B-BDFC"; device = "/dev/disk/by-uuid/829B-BDFC";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ]; options = [
}; "fmask=0022"
"dmask=0022"
];
};
swapDevices = [ ]; swapDevices = [ ];

View file

@ -1,4 +1,5 @@
{ mod, ... }: { { mod, ... }:
{
networking.hostName = "solo"; networking.hostName = "solo";
services.xserver.enable = true; services.xserver.enable = true;

View file

@ -1,32 +1,47 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: {
config,
lib,
pkgs,
modulesPath,
...
}:
{ {
imports = imports = [
[ (modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "sd_mod" ]; boot.initrd.availableKernelModules = [
"xhci_pci"
"ahci"
"nvme"
"usbhid"
"sd_mod"
];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/7554858a-648d-47d9-839a-6b66ef2b99d9"; device = "/dev/disk/by-uuid/7554858a-648d-47d9-839a-6b66ef2b99d9";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = fileSystems."/boot" = {
{ device = "/dev/disk/by-uuid/8040-8FF4"; device = "/dev/disk/by-uuid/8040-8FF4";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ]; options = [
}; "fmask=0077"
"dmask=0077"
swapDevices =
[ { device = "/dev/disk/by-uuid/9569220a-c151-44ca-a4db-037e63d314be"; }
]; ];
};
swapDevices = [
{ device = "/dev/disk/by-uuid/9569220a-c151-44ca-a4db-037e63d314be"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # 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 # (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: { { pkgs, ... }:
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
pavucontrol pavucontrol
alsa-utils alsa-utils

View file

@ -1,4 +1,5 @@
{ ... }: { { ... }:
{
boot.loader = { boot.loader = {
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;
grub = { grub = {

View file

@ -1,4 +1,5 @@
{ mod, ... }: { { mod, ... }:
{
imports = with mod; [ imports = with mod; [
audio audio
boot boot

View file

@ -1,16 +1,21 @@
{ lib, ... }: { lib, ... }:
let let
walk = path: walk =
let dir = builtins.readDir path; path:
in lib.mapAttrs' (name: value: { let
dir = builtins.readDir path;
in
lib.mapAttrs' (name: value: {
name = lib.removeSuffix ".nix" name; name = lib.removeSuffix ".nix" name;
value = if value == "regular" then value =
import (path + "/${name}") if value == "regular" then
else if value == "directory" then import (path + "/${name}")
walk (path + "/${name}") else if value == "directory" then
else walk (path + "/${name}")
builtins.throw "Cannot handle item of type ${value}"; else
builtins.throw "Cannot handle item of type ${value}";
}) dir; }) dir;
in walk ./. in
walk ./.

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: { { pkgs, ... }:
{
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [
noto-fonts noto-fonts
noto-fonts-cjk-sans noto-fonts-cjk-sans

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: { { pkgs, ... }:
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
runelite runelite
]; ];

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: { { pkgs, ... }:
{
# hardware.keyboard.qmk.enable = true; # hardware.keyboard.qmk.enable = true;
environment.systemPackages = with pkgs; [ vial ]; environment.systemPackages = with pkgs; [ vial ];
services.udev.packages = with pkgs; [ vial ]; services.udev.packages = with pkgs; [ vial ];

View file

@ -1,4 +1,5 @@
{ ... }: { { ... }:
{
time.timeZone = "Europe/Berlin"; time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";

View file

@ -1,4 +1,5 @@
{ ... }: { { ... }:
{
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
networking.networkmanager.wifi.macAddress = "random"; networking.networkmanager.wifi.macAddress = "random";
@ -10,7 +11,7 @@
useRoutingFeatures = "client"; useRoutingFeatures = "client";
}; };
networking.networkmanager.ensureProfiles.profiles = { networking.networkmanager.ensureProfiles.profiles = {
"tuda-vpn" = { "tuda-vpn" = {
connection = { connection = {
autoconnect = "false"; autoconnect = "false";

View file

@ -1,24 +1,33 @@
{ lib, ... }: { { lib, ... }:
{
nix.settings = { nix.settings = {
experimental-features = [ "nix-command" "flakes" ]; experimental-features = [
trusted-users = [ "root" "@wheel" ]; "nix-command"
"flakes"
];
trusted-users = [
"root"
"@wheel"
];
auto-optimise-store = true; auto-optimise-store = true;
}; };
programs.nix-ld.enable = true; programs.nix-ld.enable = true;
nixpkgs.config.allowUnfree = false; nixpkgs.config.allowUnfree = false;
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ nixpkgs.config.allowUnfreePredicate =
"nvidia-x11" pkg:
"nvidia-settings" builtins.elem (lib.getName pkg) [
"vscode" "nvidia-x11"
"obsidian" "nvidia-settings"
"steam" "vscode"
"steam-unwrapped" "obsidian"
"gateway" # jetbrains "steam"
"spotify" "steam-unwrapped"
"rust-rover" "gateway" # jetbrains
]; "spotify"
"rust-rover"
];
# TODO this is for zulip 5.11.1 # TODO this is for zulip 5.11.1
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [

View file

@ -1,4 +1,5 @@
{ config, ... }: { { config, ... }:
{
services.xserver.videoDrivers = [ "nvidia" ]; services.xserver.videoDrivers = [ "nvidia" ];
hardware.graphics = { hardware.graphics = {

View file

@ -1,3 +1,4 @@
{ ... }: { { ... }:
{
security.rtkit.enable = true; security.rtkit.enable = true;
} }

View file

@ -1,4 +1,5 @@
{ ... }: { { ... }:
{
systemd.services.NetworkManager-wait-online.enable = false; systemd.services.NetworkManager-wait-online.enable = false;
services.printing.enable = true; services.printing.enable = true;
services.avahi = { services.avahi = {

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: { { pkgs, ... }:
{
environment.shells = with pkgs; [ environment.shells = with pkgs; [
fish fish
bashInteractive bashInteractive

View file

@ -1,52 +1,50 @@
{ pkgs, ... }: { { pkgs, ... }:
{
environment.systemPackages = let environment.systemPackages =
editors = with pkgs; [ let
vscode editors = with pkgs; [
emacs vscode
jetbrains.gateway emacs
jetbrains.rust-rover jetbrains.gateway
]; jetbrains.rust-rover
];
messengers = with pkgs; [ messengers = with pkgs; [
signal-desktop signal-desktop
element-desktop element-desktop
zulip zulip
vesktop vesktop
]; ];
util = with pkgs; [ util = with pkgs; [
wireguard-tools wireguard-tools
bitwarden bitwarden
kitty kitty
nixfmt-rfc-style nixfmt-rfc-style
nil nil
]; ];
media = with pkgs; [ media = with pkgs; [
vlc vlc
spotify spotify
calibre calibre
]; ];
productivity = with pkgs; [ productivity = with pkgs; [
zotero zotero
obsidian obsidian
]; ];
dev = with pkgs; [ dev = with pkgs; [
rustup rustup
python313 python313
gcc gcc
binutils binutils
]; ];
in editors in
++ messengers editors ++ messengers ++ util ++ media ++ productivity ++ dev;
++ util
++ media
++ productivity
++ dev;
virtualisation = { virtualisation = {
docker.enable = true; docker.enable = true;

View file

@ -1,9 +1,13 @@
{ pkgs, ... }: { { pkgs, ... }:
{
users.users.hd = { users.users.hd = {
description = "Henri"; description = "Henri";
isNormalUser = true; isNormalUser = true;
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = [
"networkmanager"
"wheel"
];
shell = pkgs.fish; shell = pkgs.fish;
packages = []; packages = [ ];
}; };
} }

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: { { pkgs, ... }:
{
# Enable the KDE Plasma Desktop Environment. # Enable the KDE Plasma Desktop Environment.
services.displayManager.sddm = { services.displayManager.sddm = {
enable = true; enable = true;