updated flake inputs, fixed evaluation warnings

removed the neon configuration from the flake
This commit is contained in:
2025-07-14 12:30:10 -04:00
parent c12ae3a9e9
commit 54d1c15823
19 changed files with 273 additions and 850 deletions

689
flake.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -30,14 +30,12 @@
url = "github:gerg-l/spicetify-nix"; url = "github:gerg-l/spicetify-nix";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
lash_flake.url = "github:pagedMov/slash";
}; };
outputs = { self, home-manager, disko, lash_flake, nixpkgs, impermanence, nixvim, stylix, ... }@inputs: outputs = { self, home-manager, disko, nixpkgs, impermanence, nixvim, stylix, ... }@inputs:
let let
system = "x86_64-linux"; system = "x86_64-linux";
username = "pagedmov"; username = "pagedmov";
slash = lash_flake.packages.${system}.default;
nixpkgsConfig = { nixpkgsConfig = {
allowUnfree = true; allowUnfree = true;
}; };
@@ -58,7 +56,7 @@
modules = [ modules = [
./hosts/desktop/home.nix ./hosts/desktop/home.nix
./modules/home ./modules/home
stylix.homeManagerModules.stylix stylix.homeModules.stylix
nixvim.homeManagerModules.nixvim nixvim.homeManagerModules.nixvim
]; ];
}; };
@@ -78,7 +76,7 @@
modules = [ modules = [
./hosts/laptop/home.nix ./hosts/laptop/home.nix
./modules/home ./modules/home
stylix.homeManagerModules.stylix stylix.homeModules.stylix
nixvim.homeManagerModules.nixvim nixvim.homeManagerModules.nixvim
]; ];
}; };
@@ -98,52 +96,16 @@
modules = [ modules = [
./hosts/server/home.nix ./hosts/server/home.nix
./modules/home ./modules/home
stylix.homeManagerModules.stylix stylix.homeModules.stylix
nixvim.homeManagerModules.nixvim nixvim.homeManagerModules.nixvim
]; ];
}; };
neonImpermanenceHome = let host = "neonImpermanence"; in home-manager.lib.homeManagerConfiguration { # Live Environment
pkgs = import nixpkgs {
inherit system;
config = nixpkgsConfig;
overlays = [
(import ./overlay/overlay.nix { inherit host; root = self; })
];
};
extraSpecialArgs = {
inherit host self username inputs;
};
modules = [
./modules/home
(import ./hosts/live-env/home.nix { username = "impermanence"; })
nixvim.homeManagerModules.nixvim
stylix.homeManagerModules.stylix
];
};
neonPersistenceHome = let host = "neonPersistence"; in home-manager.lib.homeManagerConfiguration { # Live Environment
pkgs = import nixpkgs {
inherit system;
config = nixpkgsConfig;
overlays = [
(import ./overlay/overlay.nix { inherit host; root = self; })
];
};
extraSpecialArgs = {
inherit host self username inputs;
};
modules = [
./modules/home
(import ./hosts/live-env/home.nix { username = "persistence"; })
nixvim.homeManagerModules.nixvim
stylix.homeManagerModules.stylix
];
};
}; };
nixosConfigurations = { nixosConfigurations = {
oganesson = nixpkgs.lib.nixosSystem { # Desktop oganesson = nixpkgs.lib.nixosSystem { # Desktop
specialArgs = { specialArgs = {
inherit self inputs username slash; inherit self inputs username;
host = "oganesson"; host = "oganesson";
overlays = [ overlays = [
(import ./overlay/overlay.nix { root = self; }) (import ./overlay/overlay.nix { root = self; })
@@ -198,27 +160,6 @@
stylix.nixosModules.stylix stylix.nixosModules.stylix
]; ];
}; };
neon = nixpkgs.lib.nixosSystem { # Live environment
specialArgs = {
host = "neon";
inherit self inputs;
};
inherit system;
pkgs = import nixpkgs {
inherit system;
config = nixpkgsConfig;
overlays = [];
};
modules = [
./hosts/live-env/config.nix
(import ./hosts/live-env/disko.nix { device = "/dev/sdd"; })
./modules/sys
disko.nixosModules.default
nixvim.nixosModules.nixvim
impermanence.nixosModules.impermanence
stylix.nixosModules.stylix
];
};
}; };
}; };
} }

View File

@@ -14,6 +14,7 @@
}; };
hardwareCfg = { hardwareCfg = {
networkModule.enable = true; networkModule.enable = true;
kernelModule.enable = true;
bootLoader.enable = true; bootLoader.enable = true;
}; };
softwareCfg = { softwareCfg = {

View File

@@ -1,35 +1,28 @@
# 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 = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = {
[ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; imports =
[ (modulesPath + "/profiles/qemu-guest.nix")
];
boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "virtio_pci" "virtio_scsi" "sr_mod" "virtio_blk" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" =
device = "/dev/disk/by-partlabel/disk-main-root"; { device = "/dev/disk/by-uuid/5d8dd8ba-6c4c-4227-adc5-f33bf0022fff";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/nix" = { fileSystems."/boot" =
device = "/dev/disk/by-partlabel/disk-main-nix"; { device = "/dev/disk/by-uuid/6A3C-0A12";
fsType = "ext4"; fsType = "vfat";
}; options = [ "fmask=0022" "dmask=0022" ];
};
fileSystems."/boot" = {
device = "/dev/disk/by-partlabel/disk-main-ESP";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
fileSystems."/home" = {
device = "/dev/disk/by-partlabel/disk-main-home";
fsType = "ext4";
};
swapDevices = [ ]; swapDevices = [ ];
@@ -38,12 +31,7 @@
# still possible to use this option, but it's recommended to use it in conjunction # 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`. # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true; networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp14s0.useDHCP = lib.mkDefault true; # networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp15s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware = {
keyboard.uhk.enable = true;
cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
};
} }

View File

@@ -1,105 +0,0 @@
{ lib, pkgs, modulesPath, inputs, ... }:
let
userConfig = {
isNormalUser = true;
hashedPassword = "$y$j9T$OobgblSbriz8BMgqKXk8Q/$FlTKe918WI3e5m3sj0dDGO.R/rmJOqcscVZMtN5a/DD";
shell = pkgs.zsh;
extraGroups = [ "wheel" ];
};
in
{
imports = [ ./hardware.nix ];
boot.initrd.postDeviceCommands = lib.mkAfter ''
mkdir /btrfs_tmp
mount /dev/root_vg/root /btrfs_tmp
if [[ -e /btrfs_tmp/root ]]; then
mkdir -p /btrfs_tmp/old_roots
timestamp=$(date --date="@$(stat -c %Y /btrfs_tmp/root)" "+%Y-%m-%-d_%H:%M:%S")
mv /btrfs_tmp/root "/btrfs_tmp/old_roots/$timestamp"
fi
delete_subvolume_recursively() {
IFS=$'\n'
for i in $(btrfs subvolume list -o "$1" | cut -f 9- -d ' '); do
delete_subvolume_recursively "/btrfs_tmp/$i"
done
btrfs subvolume delete "$1"
}
for i in $(find /btrfs_tmp/old_roots/ -maxdepth 1 -mtime +30); do
delete_subvolume_recursively "$i"
done
btrfs subvolume create /btrfs_tmp/root
umount /btrfs_tmp
'';
environment.persistence."/home" = {
enable = true;
hideMounts = true;
directories = [
"persistence"
];
};
movOpts = {
sysEnv = {
issue.enable = true;
stylixConfig.enable = true;
nixSettings.enable = true;
};
hardwareCfg = {
networkModule.enable = true;
bootLoader.enable = true;
};
softwareCfg = {
sysProgs.enable = true;
sysServices.enable = true;
};
};
environment.systemPackages = with pkgs;[
alsa-lib
xwayland
wayland
alsa-utils
bc
cliphist
git
hyprpaper
hyprpicker
inetutils
kitty
lsof
neofetch
nh
nix-output-monitor
nix-prefetch-scripts
nixos-option
nix-search-cli
nix-template
nixfmt
nvd
pamixer
pavucontrol
playerctl
usbutils
vim
jq
wl-clipboard
libnotify
file
];
users = {
groups.persist = { };
users = {
impermanence = userConfig;
persistence = userConfig // {
extraGroups = userConfig.extraGroups ++ [ "persist" ];
};
root.hashedPassword = "$y$j9T$tjpyEif7XNctN0twWipqc/$hfVGMaVYVP7.gjqG.2eV34j2AoWp2AFBxox7B5QyQy3";
};
};
}

View File

@@ -1,76 +0,0 @@
{
device ? throw "Set this to your disk device, e.g. /dev/sda",
...
}: {
disko.devices = {
disk.main = {
inherit device;
type = "disk";
content = {
type = "gpt";
partitions = {
boot = {
name = "boot";
size = "1M";
type = "EF02";
};
esp = {
name = "ESP";
size = "750M";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
};
};
swap = {
size = "4G";
content = {
type = "swap";
resumeDevice = true;
};
};
root = {
name = "root";
size = "100%";
content = {
type = "lvm_pv";
vg = "root_vg";
};
};
};
};
};
lvm_vg = {
root_vg = {
type = "lvm_vg";
lvs = {
root = {
size = "100%FREE";
content = {
type = "btrfs";
extraArgs = ["-f"];
subvolumes = {
"/root" = {
mountpoint = "/";
};
"/home/persistence" = {
mountOptions = ["subvol=persist" "noatime"];
mountpoint = "/home/persistence";
};
"/nix" = {
mountOptions = ["subvol=nix" "noatime"];
mountpoint = "/nix";
};
};
};
};
};
};
};
};
}

View File

@@ -1,89 +0,0 @@
{ pkgs, username, ... }:
let
scripts = with pkgs; [
myScripts.icanhazip
myScripts.invoke
myScripts.runbg
myScripts.splash
myScripts.toolbelt
myScripts.viconf
myScripts.vipkg
myScripts.fetchfromgh
myScripts.garbage-collect
myScripts.nsp
myScripts.rebuild
myScripts.chpaper
myScripts.chscheme
myScripts.keyring
myScripts.mkscreenshots
myScripts.moveonscreen
myScripts.s_check
myScripts.switchmon
myScripts.git-compose
myScripts.playshellsound
myScripts.color-commit
];
in
{
home.username = "${username}";
home.homeDirectory = "/home/${username}";
home.stateVersion = "25.05";
programs.home-manager.enable = true;
home.packages = with pkgs; [
nemo
feh
gtk3
sqlite
gimp
imagemagick
lolcat
vesktop
zsh
zsh-syntax-highlighting
zsh-history-substring-search
zsh-autosuggestions
libreoffice
gtrash
ripgrep
toilet-extrafonts
chafa
] ++ scripts;
movOpts = {
homeFiles.enable = true;
envConfig = {
hyprlandConfig = {
enable = true;
monitorNames = [ "eDP-1" ];
workspaceLayout = "singlemonitor";
};
userPkgs.enable = false;
stylixHomeConfig.enable = true;
gtkConfig.enable = true;
starshipConfig.enable = true;
swayncConfig.enable = true;
zshConfig = {
shellAliases.enable = true;
envVariables.enable = true;
shellOptions.enable = true;
extraConfig.enable = true;
};
};
programConfigs = {
autojumpConfig.enable = true;
btopConfig.enable = true;
ezaConfig.enable = true;
firefoxConfig.enable = true;
fuzzelConfig.enable = true;
fzfConfig.enable = true;
gitConfig.enable = true;
kittyConfig.enable = true;
yaziConfig.enable = true;
passConfig.enable = true;
batConfig.enable = true;
};
};
}

View File

@@ -96,7 +96,6 @@ in {
"XDG_CACHE_HOME,$HOME/.cache" "XDG_CACHE_HOME,$HOME/.cache"
]; ];
layerrule = [ "blur,waybar" "ignorezero,waybar" "blur,launcher" ]; layerrule = [ "blur,waybar" "ignorezero,waybar" "blur,launcher" ];
windowrule = [ "opacity 0.8,nemo" ];
input = { input = {
kb_layout = "us"; kb_layout = "us";
@@ -113,7 +112,6 @@ in {
border_size = 3; border_size = 3;
#"col.inactive_border" = "0xff${scheme.base01}"; #"col.inactive_border" = "0xff${scheme.base01}";
"col.active_border" = lib.mkForce "0xff${scheme.base04}"; "col.active_border" = lib.mkForce "0xff${scheme.base04}";
border_part_of_window = false;
no_border_on_floating = false; no_border_on_floating = false;
}; };
misc = { misc = {
@@ -191,7 +189,7 @@ in {
"super, up, exec, pactl set-sink-volume @default_sink@ +10%" "super, up, exec, pactl set-sink-volume @default_sink@ +10%"
"super, down, exec, pactl set-sink-volume @default_sink@ -10%" "super, down, exec, pactl set-sink-volume @default_sink@ -10%"
"super, t, exec, swaync-client -t -sw" "super, t, exec, swaync-client -t -sw"
"super, a, exec, librewolf" "super, a, exec, firefox"
"super, q, exec, kitty" "super, q, exec, kitty"
"super shift, q, exec, [float;size 40% 30%;move onscreen cursor -50% -50%] kitty" "super shift, q, exec, [float;size 40% 30%;move onscreen cursor -50% -50%] kitty"
"super, c, killactive," "super, c, killactive,"

View File

@@ -30,6 +30,7 @@ in {
cursor = { cursor = {
package = pkgs.bibata-cursors; package = pkgs.bibata-cursors;
name = "Bibata-Modern-Ice"; name = "Bibata-Modern-Ice";
size = 24;
}; };
fonts = { fonts = {
monospace = { monospace = {

View File

@@ -62,6 +62,7 @@ in {
neovide neovide
python3 python3
ghostty ghostty
firefox
fd fd
delta delta
glfw glfw

View File

@@ -12,7 +12,7 @@ in
}; };
config = lib.mkIf config.movOpts.envConfig.zshConfig.extraConfig.enable { config = lib.mkIf config.movOpts.envConfig.zshConfig.extraConfig.enable {
programs.zsh = { programs.zsh = {
initExtra = '' initContent = ''
build-drv() { # Put the derivation path in $RESULT instead of making a 'result' symlink build-drv() { # Put the derivation path in $RESULT instead of making a 'result' symlink
RESULT=$(nix-build "$@" --no-link) RESULT=$(nix-build "$@" --no-link)
if [ -z "$RESULT" ]; then if [ -z "$RESULT" ]; then

View File

@@ -7,8 +7,8 @@
programs.git = { programs.git = {
enable = true; enable = true;
signing = { signing = {
gpgPath = "${pkgs.gnupg}/bin/gpg"; signer = "${pkgs.gnupg}/bin/gpg";
key = "0DA69D51BA4B2D2B58FC9CB574ED6528A37CA99A"; key = "2453DF4EF63B92D5D8FE8C9DC741C9DFD8156540";
signByDefault = true; signByDefault = true;
}; };
userEmail = "kylerclay@proton.me"; userEmail = "kylerclay@proton.me";

View File

@@ -26,7 +26,7 @@ in {
#}; #};
}; };
enable = true; enable = true;
diagnostics.signs = false; diagnostic.settings.signs = false;
extraConfigLua = '' extraConfigLua = ''
if vim.g.started_by_firenvim == true then if vim.g.started_by_firenvim == true then
vim.o.laststatus = 0 vim.o.laststatus = 0

View File

@@ -1,9 +1,11 @@
{ {
programs.nixvim.plugins.fidget = { programs.nixvim.plugins.fidget = {
enable = true; enable = true;
notification = { settings = {
overrideVimNotify = true; notification = {
window = { border = "rounded"; }; overrideVimNotify = true;
window = { border = "rounded"; };
};
}; };
}; };
} }

View File

@@ -1,4 +1,5 @@
{ inputs, nixpkgs, nixvim, config, self, username, host, ... }: { { inputs, nixpkgs, nixvim, config, self, username, host, ... }: {
imports = [ (import ./bootloader.nix) ] ++ [ (import ./network.nix) ] imports = [ (import ./bootloader.nix) ] ++ [ (import ./network.nix) ]
++ [ (import ./powerprofiles.nix) ]; ++ [ (import ./powerprofiles.nix) ]
++ [ (import ./kernel.nix) ];
} }

View File

@@ -0,0 +1,15 @@
{ lib, config, pkgs, ... }: {
options = {
movOpts.hardwareCfg.kernelModule.enable = lib.mkEnableOption "enables kernel module configuration";
};
config = lib.mkIf config.movOpts.hardwareCfg.kernelModule.enable {
hardware.enableAllFirmware = true;
environment.systemPackages = [
pkgs.linux-firmware
];
boot.kernelModules = [
"amdgpu"
"rtw89_8852ce"
];
};
}

View File

@@ -31,7 +31,7 @@
nixos-option nixos-option
nix-search-cli nix-search-cli
nix-template nix-template
nixfmt nixfmt-classic
sshfs sshfs
nvd nvd
pamixer pamixer
@@ -48,9 +48,6 @@
file file
pkg-config pkg-config
openssl openssl
openssl_3
openssl_3_0
openssl_3_3
libvirt-glib libvirt-glib
man-pages man-pages
man-pages-posix man-pages-posix

View File

@@ -30,6 +30,7 @@ in {
cursor = { cursor = {
package = pkgs.bibata-cursors; package = pkgs.bibata-cursors;
name = "Bibata-Modern-Ice"; name = "Bibata-Modern-Ice";
size = 24;
}; };
fonts = { fonts = {
monospace = { monospace = {

View File

@@ -5,7 +5,7 @@ let
owner = "xero"; owner = "xero";
repo = "figlet-fonts"; repo = "figlet-fonts";
rev = "master"; rev = "master";
sha256 = "sha256-dAs7N66D2Fpy4/UB5Za1r2qb1iSAJR6TMmau1asxgtY="; sha256 = "sha256-/Qj8CWqn7w1R83enixxgC5ijUrHvqN3C7ZvRCs/AzBI=";
}; };
in in
{ {