125 lines
3.7 KiB
Nix
125 lines
3.7 KiB
Nix
{
|
|
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";
|
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, ... }:
|
|
let
|
|
system = "x86_64-linux";
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
pkgs-unstable = nixpkgs-unstable.legacyPackages.${system};
|
|
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 = {
|
|
transparency = "0.9";
|
|
color = rec {
|
|
background = "000000"; # #000000
|
|
foreground = "dddddd"; # #dddddd
|
|
black = "282B35"; # #282B35
|
|
bright-black = "686A71"; # #686A71
|
|
blue = "9d00ff"; # #9d00ff
|
|
bright-blue = "c76eff"; # #c76eff
|
|
cyan = "00ddff"; # #00ddff
|
|
bright-cyan = "33f9ff"; # #33f9ff
|
|
green = "0048ff"; # #0048ff
|
|
bright-green = "1166ff"; # #1166ff
|
|
magenta = "B21889"; # #B21889
|
|
bright-magenta = "ff75f6"; # #ff75f6
|
|
red = "ff0044"; # #ff0044
|
|
bright-red = "ff4576"; # #ff4576
|
|
white = "939599"; # #939599
|
|
bright-white = "ffffff"; # #ffffff
|
|
yellow = "ff4000"; # #ff4000
|
|
bright-yellow = "ff8454"; # #ff8454
|
|
border = red;
|
|
};
|
|
font = {
|
|
code = {
|
|
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 user host pkgs-unstable allowed secrets rice nvidia; };
|
|
};
|
|
NxNORTH =
|
|
let
|
|
host = "NxNORTH";
|
|
in
|
|
nixpkgs.lib.nixosSystem {
|
|
inherit system;
|
|
modules = [
|
|
./configuration.nix
|
|
];
|
|
specialArgs = { inherit user host pkgs-unstable allowed secrets rice nvidia; };
|
|
};
|
|
};
|
|
|
|
homeConfigurations = {
|
|
NxXPS = home-manager.lib.homeManagerConfiguration {
|
|
inherit pkgs;
|
|
modules = [ ./home.nix ];
|
|
extraSpecialArgs = let host = "NxXPS"; in { inherit system user host allowed secrets pkgs-unstable rice nvidia; };
|
|
};
|
|
NxNORTH = home-manager.lib.homeManagerConfiguration {
|
|
inherit pkgs;
|
|
modules = [ ./home.nix ];
|
|
extraSpecialArgs = let host = "NxNORTH"; in { inherit system user host allowed secrets pkgs-unstable rice nvidia; };
|
|
};
|
|
};
|
|
};
|
|
}
|