Add linting, formatting, and CI

- Add deadnix, nixfmt, and statix to flake inputs
- Add formatter output to flake for nix fmt support
- Add deadnix, nixfmt, statix to Home Manager packages
- Format all nix files with nixfmt
- Add GitHub Actions workflow for CI validation
- Support x86_64-darwin in formatter
This commit is contained in:
Gene Liverman 2026-03-14 01:04:02 -04:00
parent 1312755c4b
commit c1a53997ce
No known key found for this signature in database
75 changed files with 1417 additions and 767 deletions

View file

@ -1,4 +1,11 @@
{ inputs, config, pkgs, username, ... }: {
{
inputs,
config,
pkgs,
username,
...
}:
{
imports = [
./hardware-configuration.nix
../../../shared/nixos/flatpaks.nix
@ -14,7 +21,7 @@
};
loader = {
efi.canTouchEfiVariables = true;
systemd-boot= {
systemd-boot = {
enable = true;
consoleMode = "1";
};
@ -179,7 +186,15 @@
users.users.${username} = {
isNormalUser = true;
description = "Gene Liverman";
extraGroups = [ "adbusers" "dialout" "docker" "input" "networkmanager" "podman" "wheel" ];
extraGroups = [
"adbusers"
"dialout"
"docker"
"input"
"networkmanager"
"podman"
"wheel"
];
packages = with pkgs; [
tailscale-systray
];

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: {
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
gnome.gnome-tweaks
gnome.nautilus
@ -15,7 +16,7 @@
gnome.gnome-keyring.enable = true; # Provides secret storage
gvfs.enable = true; # Used by Nautilus
xserver = {
enable = true; # Enable the X11 windowing system.
enable = true; # Enable the X11 windowing system.
# Configure keymap in X11
xkb = {
@ -33,4 +34,3 @@
};
};
}

View file

@ -1,36 +1,51 @@
# 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, modulesPath, pkgs, ... }:
{
config,
lib,
modulesPath,
pkgs,
...
}:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [
(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.kernelPackages = pkgs.linuxPackages_zen;
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" "sg" ];
boot.kernelModules = [
"kvm-intel"
"sg"
];
boot.kernelParams = [
"i915.enable_fbc=1"
"i915.enable_psr=2"
];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/eb9a2c7e-ae61-4d06-9464-49b98d576f7c";
fsType = "ext4";
};
fileSystems."/" = {
device = "/dev/disk/by-uuid/eb9a2c7e-ae61-4d06-9464-49b98d576f7c";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/924D-E7A4";
fsType = "vfat";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/924D-E7A4";
fsType = "vfat";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/166d24ca-401c-492e-845d-bb1d0d6d7d86"; }
];
swapDevices = [
{ device = "/dev/disk/by-uuid/166d24ca-401c-492e-845d-bb1d0d6d7d86"; }
];
# 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

View file

@ -1,4 +1,5 @@
{ pkgs, ... }: {
{ pkgs, ... }:
{
home.stateVersion = "23.11";
imports = [
../../../shared/home/general/all-gui.nix
@ -10,12 +11,15 @@
];
home.file = {
".config/hypr/frappe.conf".source = (pkgs.fetchFromGitHub {
owner = "catppuccin";
repo = "hyprland";
rev = "99a88fd21fac270bd999d4a26cf0f4a4222c58be";
hash = "sha256-07B5QmQmsUKYf38oWU3+2C6KO4JvinuTwmW1Pfk8CT8=";
} + "/themes/frappe.conf");
".config/hypr/frappe.conf".source = (
pkgs.fetchFromGitHub {
owner = "catppuccin";
repo = "hyprland";
rev = "99a88fd21fac270bd999d4a26cf0f4a4222c58be";
hash = "sha256-07B5QmQmsUKYf38oWU3+2C6KO4JvinuTwmW1Pfk8CT8=";
}
+ "/themes/frappe.conf"
);
};
programs = {
@ -32,7 +36,7 @@
settings = {
global = {
frame_color = "#8CAAEE";
separator_color= "frame";
separator_color = "frame";
};
urgency_low = {