Compare commits

...

5 Commits

8 changed files with 361 additions and 36 deletions

View File

@ -1,5 +1,135 @@
{ {
"nodes": { "nodes": {
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1708890466,
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "665b3c6748534eb766c777298721cece9453fdae",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"type": "github"
}
},
"base16-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "base16-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1720809814,
"narHash": "sha256-numb3xigRGnr/deF7wdjBwVg7fpbTH7reFDkJ75AJkY=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "34f41987bec14c0f3f6b2155c19787b1f6489625",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-kitty": {
"flake": false,
"locked": {
"lastModified": 1665001328,
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
"owner": "kdrag0n",
"repo": "base16-kitty",
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
"type": "github"
},
"original": {
"owner": "kdrag0n",
"repo": "base16-kitty",
"type": "github"
}
},
"base16-schemes": {
"flake": false,
"locked": {
"lastModified": 1696158499,
"narHash": "sha256-5yIHgDTPjoX/3oDEfLSQ0eJZdFL1SaCfb9d6M0RmOTM=",
"owner": "tinted-theming",
"repo": "base16-schemes",
"rev": "a9112eaae86d9dd8ee6bb9445b664fba2f94037a",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-schemes",
"type": "github"
}
},
"base16-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "base16-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-tmux",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1716150083,
"narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=",
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-vim",
"type": "github"
}
},
"devshell": { "devshell": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
@ -72,6 +202,22 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat_3": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": { "flake-parts": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
@ -111,6 +257,22 @@
"type": "github" "type": "github"
} }
}, },
"fromYaml": {
"flake": false,
"locked": {
"lastModified": 1689549921,
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"type": "github"
}
},
"git-hooks": { "git-hooks": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_2", "flake-compat": "flake-compat_2",
@ -160,6 +322,23 @@
"type": "github" "type": "github"
} }
}, },
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1713702291,
"narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "46.1",
"repo": "gnome-shell",
"type": "github"
}
},
"hardware": { "hardware": {
"locked": { "locked": {
"lastModified": 1718429294, "lastModified": 1718429294,
@ -217,6 +396,46 @@
"type": "github" "type": "github"
} }
}, },
"home-manager_3": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715930644,
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"nix-colors": {
"inputs": {
"base16-schemes": "base16-schemes",
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1707825078,
"narHash": "sha256-hTfge2J2W+42SZ7VHXkf4kjU+qzFqPeC9k66jAUBMHk=",
"owner": "misterio77",
"repo": "nix-colors",
"rev": "b01f024090d2c4fc3152cd0cf12027a7b8453ba1",
"type": "github"
},
"original": {
"owner": "misterio77",
"repo": "nix-colors",
"type": "github"
}
},
"nix-darwin": { "nix-darwin": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -254,6 +473,21 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-lib": {
"locked": {
"lastModified": 1697935651,
"narHash": "sha256-qOfWjQ2JQSQL15KLh6D7xQhx0qgZlYZTYlcEiRuAMMw=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "e1e11fdbb01113d85c7f41cada9d2847660e3902",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1718530797, "lastModified": 1718530797,
@ -270,6 +504,22 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": {
"locked": {
"lastModified": 1714912032,
"narHash": "sha256-clkcOIkg8G4xuJh+1onLG4HPMpbtzdLv4rHxFzgsH9c=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ee4a6e0f566fe5ec79968c57a9c2c3c25f2cf41d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixvim": { "nixvim": {
"inputs": { "inputs": {
"devshell": "devshell", "devshell": "devshell",
@ -303,9 +553,39 @@
"disko": "disko", "disko": "disko",
"hardware": "hardware", "hardware": "hardware",
"home-manager": "home-manager", "home-manager": "home-manager",
"nix-colors": "nix-colors",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"nixvim": "nixvim" "nixvim": "nixvim",
"stylix": "stylix"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
"base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat_3",
"gnome-shell": "gnome-shell",
"home-manager": "home-manager_3",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1720818679,
"narHash": "sha256-u9PqY7O6TN42SLeb0e6mnYAgQOoQmclaVSHfLKMpmu0=",
"owner": "danth",
"repo": "stylix",
"rev": "29148118cc33f08b71058e1cda7ca017f5300b51",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"type": "github"
} }
}, },
"systems": { "systems": {

View File

@ -67,7 +67,6 @@
# https://github.com/Misterio77/nix-colors # https://github.com/Misterio77/nix-colors
nix-colors = { nix-colors = {
url = "github:misterio77/nix-colors"; url = "github:misterio77/nix-colors";
inputs.nixpkgs.follows = "nixpkgs";
}; };
# ---------------------------- Stylix ----------------------------- # # ---------------------------- Stylix ----------------------------- #

View File

@ -7,7 +7,7 @@
config = { config = {
# Show line numbers, Git modifications and file header (but no grid) # Show line numbers, Git modifications and file header (but no grid)
style = "numbers,changes,header"; style = "numbers,changes,header";
theme = "gruvbox-dark"; # theme = "gruvbox-dark";
}; };
extraPackages = builtins.attrValues { extraPackages = builtins.attrValues {
inherit (pkgs.bat-extras) inherit (pkgs.bat-extras)

View File

@ -1,5 +1,6 @@
{ {
pkgs, pkgs,
lib,
config, config,
... ...
}: { }: {
@ -16,15 +17,16 @@
title = "foot"; title = "foot";
locked-title = "no"; locked-title = "no";
term = "xterm-256color"; term = "xterm-256color";
font = "monospace:size=10.5"; # Stylix overrides these
vertical-letter-offset = "-0.75"; # font = "monospace:size=10.5";
# vertical-letter-offset = "-0.75";
# bold-text-in-bright = "no";
pad = "12x21 center"; pad = "12x21 center";
resize-delay-ms = 100; resize-delay-ms = 100;
notify = "notify-send -a \${app-id} -i \${app-id} \${title} \${body}"; notify = "notify-send -a \${app-id} -i \${app-id} \${title} \${body}";
selection-target = "primary"; selection-target = "primary";
# box-drawings-uses-font-glyphs = "yes"; # box-drawings-uses-font-glyphs = "yes";
dpi-aware = "yes"; # dpi-aware = "yes";
bold-text-in-bright = "no";
word-delimiters = ",`|:\"'()[]{}<>"; word-delimiters = ",`|:\"'()[]{}<>";
}; };
cursor = { cursor = {

View File

@ -1,4 +1,4 @@
{ configVars, ... }: { inputs, configVars, ... }:
{ {
imports = [ imports = [
# ======================= Hardware Configs ========================= # # ======================= Hardware Configs ========================= #
@ -10,9 +10,12 @@
common/optional/utilities common/optional/utilities
common/optional/dev/foot.nix common/optional/dev/foot.nix
common/optional/office common/optional/office
];
# ============================= Themeing =========================== #
inputs.nix-colors.homeManagerModules.default
];
colorScheme = inputs.nix-colors.colorSchemes.atelier-dune;
home = { home = {
username = configVars.username; username = configVars.username;
homeDirectory = "/home/${configVars.username}"; homeDirectory = "/home/${configVars.username}";

View File

@ -1,9 +1,10 @@
{ pkgs, inputs, configLib, ... }: { pkgs, inputs, configLib, config,... }:
{ {
stylix = { stylix = {
enable = true; enable = true;
polarity = "dark"; # TODO: light polarity = "dark"; # TODO: light
image = ( configLib.relativeToRoot "assets/worm.png" ); image = config.lib.stylix.pixel "base0A";
# image = ( configLib.relativeToRoot "assets/worm.jpeg" );
base16Scheme = inputs.nix-colors.colorSchemes.atelier-dune; #TODO: atelier-dune-light base16Scheme = inputs.nix-colors.colorSchemes.atelier-dune; #TODO: atelier-dune-light
cursor = { cursor = {
package = pkgs.bibata-cursors; package = pkgs.bibata-cursors;

View File

@ -8,7 +8,7 @@ let
# isMinimal is true in the nixos-installer/flake.nix # isMinimal is true in the nixos-installer/flake.nix
fullUserConfig = lib.optionalAttrs (!configVars.isMinimal) fullUserConfig = lib.optionalAttrs (!configVars.isMinimal)
{ {
users.users.${configVars.username} = { users.users.${configVars.username} = {
# hashedPasswordFile = sopsHashedPasswordFile; # hashedPasswordFile = sopsHashedPasswordFile;
packages = [ pkgs.home-manager ]; packages = [ pkgs.home-manager ];
}; };
@ -24,8 +24,8 @@ in
users.mutableUsers = false; # Only allow declarative credentials; Required for sops users.mutableUsers = false; # Only allow declarative credentials; Required for sops
users.users.${configVars.username} = { users.users.${configVars.username} = {
isNormalUser = true; isNormalUser = true;
# password = "nixos"; # Overridden if sops is working # Default password
hashedPassword = "$6$gqmjBcKTV.mEEFHT$00sEfU1PmYpteavq3ihu5GfxWjnG3wKB56TlyhC3f/XTDg2W/SGH1d78eNRdazHR0/5wiCJmHRNgRaRAP1mpP/"; # Overridden if sops is working
extraGroups = [ extraGroups = [
"wheel" "wheel"
] ++ ifTheyExist [ ] ++ ifTheyExist [

View File

@ -1,5 +1,3 @@
############################################################# #############################################################
# =========================================================== # ===========================================================
# Rehoboam - LT1 # Rehoboam - LT1
@ -7,7 +5,7 @@
# =========================================================== # ===========================================================
############################################################# #############################################################
{ inputs, configLib, ... }: { inputs, pkgs, lib, configLib, ... }:
{ {
imports = [ imports = [
# ================= Every Host Needs This ==================== # # ================= Every Host Needs This ==================== #
@ -15,8 +13,8 @@
# ==================== Hardware Modules ====================== # # ==================== Hardware Modules ====================== #
inputs.hardware.nixosModules.common-cpu-amd inputs.hardware.nixosModules.common-cpu-amd
inputs.hardware.nixosModules.common-gpu-amd # inputs.hardware.nixosModules.common-gpu-amd
inputs.hardware.nixosModules.common-pc-ssd inputs.hardware.nixosModules.common-pc-laptop
# ====================== Disk Layout ========================= # # ====================== Disk Layout ========================= #
inputs.disko.nixosModules.disko inputs.disko.nixosModules.disko
@ -41,10 +39,8 @@
#"systems/common/optional/msmtp.nix" # required for emailing clamav alerts #"systems/common/optional/msmtp.nix" # required for emailing clamav alerts
#"systems/common/optional/services/openssh.nix" # allow remote ssh #"systems/common/optional/services/openssh.nix" # allow remote ssh
"systems/common/optional/pipewire.nix" # audio "systems/common/optional/pipewire.nix" # audio
"systems/common/optional/boot/systemd_boot.nix" # systemd boot on
"systems/common/optional/boot/loud_boot.nix" # for testing, otherwise quiet_boot.nix "systems/common/optional/boot/loud_boot.nix" # for testing, otherwise quiet_boot.nix
#"systems/common/optional/boot/quiet_boot.nix" # with plymouth pretty custom load sequence #"systems/common/optional/boot/quiet_boot.nix" # with plymouth pretty custom load sequence
"systems/common/optional/boot/initrd_luks.nix" # luks encryption with pass only
# ------------------------ Desktop --------------------------- # # ------------------------ Desktop --------------------------- #
#"systems/common/optional/services/greetd.nix" # display manager #"systems/common/optional/services/greetd.nix" # display manager
@ -86,24 +82,68 @@
}; };
# TODO Hyprland # TODO Hyprland
#programs.hyprland = { #programs.hyprland = {
#enable = true; #enable = true;
#nvidiaPatches = false; #nvidiaPatches = false;
#xwayland.enable = true; #xwayland.enable = true;
#}; #};
hardware = { # ============== Systemd Boot ============== #
# Opengl
opengl.enable = true; boot.loader = {
systemd-boot = {
enable = true;
consoleMode = "max";
};
efi.canTouchEfiVariables = true;
};
# Most wayland compositors need this # ============ Initrd Luks ================ #
nvidia.modesetting.enable = false;
};
# Fix to enable VSCode to successfully remote SSH on a client to a NixOS host boot = {
# https://nixos.wiki/wiki/Visual_Studio_Code # Remote_SSH kernelPackages = pkgs.linuxPackages_latest;
# programs.nix-ld.enable = true; supportedFilesystems = [ "btrfs" ];
initrd = {
kernelModules = [ "uas" "usbcore" "usb_storage" "vfat" "nls_cp437" "nls_iso8859_1" ];
luks.devices."crypted" = {
bypassWorkqueues = true;
# ~~~> Define this in system configuration <~~~ search by uuid, partuuid, id, or other stable identification ~> lsblk, blkid or ls -l
device = lib.mkDefault "/dev/disk/by-partuuid/5e65cc4c-eb35-4d62-8fcd-387d6a87c067";
# crypttabExtraOpts = [ "tpm2-device=auto" ]; # tpm2 unlock
preLVM = true;
allowDiscards = true;
# If using a USB or SD Card :
# keyFileSize = 4096;
# keyFile = "/key/hdd.key";
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion # Use this if you want to fallback to the encryption password when the drive can't be found. HIGHLY RECCOMENDED!!!!
system.stateVersion = "24.05"; # fallbackToPassword = true;
};
};
resumeDevice = "/dev/nvme0n1"; # should be pointing to disk/dev where swap resides, for some reason my disk does not have uuid
kernelParams = [
# hibernation
"resume_offset=533760"
];
};
hardware = {
# Opengl
#opengl.enable = true;
# Most wayland compositors need this
nvidia.modesetting.enable = false;
};
passthru = {
requiredLv2Packages = {};
};
# Fix to enable VSCode to successfully remote SSH on a client to a NixOS host
# https://nixos.wiki/wiki/Visual_Studio_Code # Remote_SSH
# programs.nix-ld.enable = true;
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
system.stateVersion = "24.05";
} }