{ description = "A Flake lol"; inputs = { nixpkgs.url = "nixpkgs/nixos-23.11"; nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager/release-23.11"; inputs.nixpkgs.follows = "nixpkgs"; }; hyprland = { url = "github:hyprwm/Hyprland"; # inputs.nixpkgs.follows = "nixpkgs"; }; hyprland-plugins = { url = "github:hyprwm/hyprland-plugins"; inputs.hyprland.follows = "hyprland"; }; Hyprspace = { url = "github:KZDKM/Hyprspace"; inputs.hyprland.follows = "hyprland"; }; }; outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, ... }@inputs: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; pkgs-unstable = nixpkgs-unstable.legacyPackages.${system}; overlays = [ inputs.nix-rice.overlays.default ]; user = "nx2"; nvidia = rec { enable = true; prime = true; # unfree = if enable then [ unfree = [ "nvidia-x11" "nvidia-settings" "nvidia-persistenced" "cudatoolkit" "cudatoolkit-11.8.0" "cudatoolkit-12.2.2" ]; # ] else []; }; allowed = { unfree-packages = [ "spotify" "cudatoolkit-12.2.2" "discord" "obsidian" "zoom-us" "zoom" "vscode-extension-MS-python-vscode-pylance" ] ++ nvidia.unfree; inecure-packages = [ "electron-25.9.0" ]; }; secrets = import ./secrets/passwords-and-certificates.nix; rice = rec { lib = import ./nxlib/ricelib.nix { lib = nixpkgs.lib; }; transparency = 0.9; rounding = 0; gap-size = 0; border-width = 2; color = rec { background = "#000000"; foreground = "#dddddd"; black = "#282B35"; bright-black = "#686A71"; blue = "#9d00ff"; bright-blue = "#c76eff"; cyan = "#00ddff"; bright-cyan = "#33f9ff"; green = "#0048ff"; bright-green = "#1166ff"; magenta = "#B21889"; bright-magenta = "#ff75f6"; red = "#ff0044"; bright-red = "#ff4576"; white = "#939599"; bright-white = "#ffffff"; yellow = "#ff4000"; bright-yellow = "#ff8454"; border = red; }; font = { code = { name = "JetBrainsMono-NF"; name2 = "JetBrainsMono Nerd Font"; package = (pkgs.nerdfonts.override { fonts = [ "JetBrainsMono" ]; }); # name = "CascadiaCove-NF"; # package = (pkgs.nerdfonts.override { fonts = [ "CascadiaCode" ]; }); }; base = { name = "Atkinson Hyperlegible"; package = pkgs.atkinson-hyperlegible; }; }; }; in { nixosConfigurations = { NxXPS = let host = "NxXPS"; in nixpkgs.lib.nixosSystem { inherit system; modules = [ ./configuration.nix ]; specialArgs = { inherit inputs user host pkgs-unstable allowed secrets rice nvidia; }; }; NxNORTH = let host = "NxNORTH"; in nixpkgs.lib.nixosSystem { inherit system; modules = [ ./configuration.nix ]; specialArgs = { inherit inputs user host pkgs-unstable allowed secrets rice nvidia; }; }; }; homeConfigurations = { "${user}@NxXPS" = let host = "NxXPS"; in home-manager.lib.homeManagerConfiguration { inherit pkgs; modules = [ ./home.nix ]; extraSpecialArgs = { inherit inputs system user host allowed secrets pkgs-unstable rice nvidia; }; }; "${user}@NxNORTH" = let host = "NxNORTH"; in home-manager.lib.homeManagerConfiguration { inherit pkgs; modules = [ ./home.nix ]; extraSpecialArgs = { inherit inputs system user host allowed secrets pkgs-unstable rice nvidia; }; }; }; }; }