pushing for review

This commit is contained in:
specCon18 2024-04-11 01:21:49 -04:00
parent 786ca732aa
commit dd67b2592c
72 changed files with 1142 additions and 1447 deletions

View file

@ -1,27 +0,0 @@
{ modulesPath, config, pkgs, lib, self, ... }:
{
# Sets the default version to track for system-pkgs
system.stateVersion = "22.11";
# Set the default timezone
time.timeZone = lib.mkDefault "America/Detroit";
# Allow non opensource software to be installed
nixpkgs.config.allowUnfree = true;
# NixOS Settings
nix = {
# Sets flakes to unstable track instead of stable #
package = pkgs.nixUnstable; # or versioned attributes like nix_2_4
# Enable flakes and nix-command
extraOptions = ''experimental-features = nix-command flakes'';
# Auto maintainence
settings.auto-optimise-store = lib.mkDefault true;
# Prevent tampering of the pkgstore
readOnlyStore = true;
# Garbage collection
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 7d";
};
};
}

View file

@ -1,13 +0,0 @@
{ modulesPath, config, pkgs, lib, self, ... }:
{
networking = {
hostName = "creatorforge"; # Define your hostname.
useDHCP = lib.mkForce true;
firewall = {
enable = true;
allowedTCPPorts = [];
allowedUDPPorts = [];
checkReversePath = "loose";
};
};
}

View file

@ -1,29 +0,0 @@
{ modulesPath, config, pkgs, lib, self, ... }:
{
environment.systemPackages = with pkgs; [
ripgrep
tree
cargo
feh
unrar
unzip
gzip
p7zip
bzip2
dconf2nix
rustc
bat
exa
mdbook
uutils-coreutils
htop
zsh
tailscale
dig #dns lookup
rage #file encryption
age-plugin-yubikey #plugin for rage to manage yubi-2fa
sops #file based secrets operations
direnv #used for development environments
python39
];
}

145
hosts/katana.nix Normal file
View file

@ -0,0 +1,145 @@
{ modulesPath, config, pkgs, lib, self, ... }:
{
system.stateVersion = "23.05";
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
# Hardware
hardware = {
cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
pulseaudio.enable = false;
bluetooth = {
enable = true; # enables support for Bluetooth
powerOnBoot = true; # powers up the default Bluetooth controller on boot
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
};
};
};
};
# Boot
boot = {
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
initrd = {
availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" ];
kernelModules = [ ];
};
kernelModules = [ "kvm-intel" ];
extraModulePackages = [ ];
# Prevent tampering of the pkgstore
readOnlyNixStore = true;
};
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/55c746b3-b9dc-4c9b-ab56-de68a561f9a3";
fsType = "ext4";
};
"/boot" = {
device = "/dev/disk/by-uuid/0C59-9996";
fsType = "vfat";
};
};
swapDevices = [ ];
# Networking
networking = {
hostName = "katana"; # Define your hostname.
networkmanager.enable = true; #Enable Network Manager
firewall = {
checkReversePath = "loose";
allowedTCPPorts = [ ];
allowedUDPPorts = [ ];
};
};
# Sound
sound.enable = true;
# Localization
time.timeZone = "America/Detroit";
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
};
# Services.
services = {
blueman.enable = true;
printing.enable = true;
xserver = {
layout = "us";
xkbVariant = "";
};
};
# Package Manager
nixpkgs = {
config.allowUnfree = true;
hostPlatform = lib.mkDefault "x86_64-linux";
};
nix = {
# Sets flakes to unstable track instead of stable #
package = pkgs.nixUnstable; # or versioned attributes like nix_2_4
# Enable flakes and nix-command
extraOptions = ''experimental-features = nix-command flakes'';
# Auto maintainence
settings.auto-optimise-store = lib.mkDefault true;
# Garbage collection
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 7d";
};
};
environment.systemPackages = with pkgs; [
gparted
bluez
blueman
nerdfonts
home-manager
pkg-config
ripgrep
openssl
tree
eza
htop
zsh
dig #dns lookup
rage #file encryption
age-plugin-yubikey #plugin for rage to manage yubi-2fa
sops #file based secrets operations
direnv #used for development environments
gcc
bottom
felix-fm
zulip
vscode
];
# Fonts
fonts.packages = with pkgs; [
(nerdfonts.override { fonts = [ "SourceCodePro" "DroidSansMono" ]; })
];
}

View file

@ -1,13 +0,0 @@
{config, pkgs, ... }:
{
hardware.bluetooth = {
enable = true; # enables support for Bluetooth
powerOnBoot = true; # powers up the default Bluetooth controller on boot
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
};
};
};
services.blueman.enable = true;
}

View file

@ -1,72 +0,0 @@
{ modulesPath, config, pkgs, lib, self, ... }:
{
system.stateVersion = "23.05";
# Allow the use of unfree packages
nixpkgs.config.allowUnfree = true;
# Sound
sound.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
# Localization
time.timeZone = "America/Detroit";
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
};
# Enable Services.
services = {
printing.enable = true;
xserver = {
layout = "us";
xkbVariant = "";
};
pipewire = {
enable = true;
alsa = {
enable = true;
support32Bit = true;
};
pulse.enable = true;
jack.enable = true;
};
};
nix = {
# Sets flakes to unstable track instead of stable #
package = pkgs.nixUnstable; # or versioned attributes like nix_2_4
# Enable flakes and nix-command
extraOptions = ''experimental-features = nix-command flakes'';
# Auto maintainence
settings.auto-optimise-store = lib.mkDefault true;
# Garbage collection
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 7d";
};
};
speccon18 = {
desktop = {
hyprland.enable = false;
gnome.enable = false;
budgie.enable = true;
displayManager.tuigreet.enable = false;
};
};
fonts.packages = with pkgs; [
(nerdfonts.override { fonts = [ "SourceCodePro" "DroidSansMono" ]; })
];
}

View file

@ -1,17 +0,0 @@
{ modulesPath, config, pkgs, lib, self, ... }:
{
networking = {
hostName = "katana"; # Define your hostname.
networkmanager.enable = true; #Enable Network Manager
firewall = {
checkReversePath = "loose";
allowedTCPPorts = [8081];
allowedUDPPorts = [
8081
2053
];
};
};
}

View file

@ -1,33 +0,0 @@
{ modulesPath, config, pkgs, lib, self, ... }:
{
environment.systemPackages = with pkgs; [
gparted
bluez
blueman
nerdfonts
home-manager
pkg-config
ripgrep
openssl
tree
eza
htop
zsh
dig #dns lookup
rage #file encryption
age-plugin-yubikey #plugin for rage to manage yubi-2fa
sops #file based secrets operations
direnv #used for development environments
python311Packages.pip
python311
python311Packages.pygithub
gcc
bottom
felix-fm
gitui
spotify
zulip
vscode
pkgs.python311Packages.python-kasa
];
}