diff --git a/system-config/configuration/jesstop/default.nix b/system-config/configuration/jesstop/default.nix new file mode 100644 index 0000000..a440849 --- /dev/null +++ b/system-config/configuration/jesstop/default.nix @@ -0,0 +1,140 @@ +{ config, pkgs, lib, inputs, ... }: + +{ + + imports = [ + ./hardware-configuration.nix + + #inputs.home-manager.nixosModules.default + + inputs.sops-nix.nixosModules.sops + ]; + + + nixpkgs.config = { + allowUnfree = true; + }; + +# Bootloader. + boot = { + loader = { + systemd-boot.enable = true; + efi.canTouchEfiVariables = true; + }; + }; + + systemd.extraConfig = "DefaultLimitNOFILE=2048"; + + hardware = { + graphics.enable = true; + +#enable bluetooth + bluetooth.enable = true; + + }; + + services.pulseaudio.enable = false; + + environment.systemPackages = with pkgs; [ + alsa-utils + ]; + + sysconfig.opts = { + sddm.enable = true; + openssh.enable = false; + steam.enable = true; + pipewire.enable = true; + ags.enable = false; + hyprland.enable = false; + git.enable = false; + nh.enable = true; + + }; + + +# Enable the X11 windowing system. + services.xserver = { + enable = true; + desktopManager.enlightenment.enable = true; + }; + + services.acpid.enable = true; + + services.displayManager.enable = true; + + services.avahi = { + + enable = true; + ipv4 = true; + ipv6 = true; + openFirewall = true; + nssmdns4 = true; + wideArea = true; + + }; + +# Enable CUPS to print documents. + services.printing.enable = true; + + system.stateVersion = "23.05"; # Did you read the comment? + + # Set your time zone. + time.timeZone = "America/Chicago"; + + # Select internationalisation properties. + i18n.defaultLocale = "en_US.UTF-8"; + + i18n.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"; + }; + + networking = { + hostName = "jesstop"; + nameservers = [ "1.1.1.1" "1.0.0.1" ]; + networkmanager.enable = true; + }; + + + users.users."nickelback" = { + isNormalUser = true; + description = "Thomas Jefferson"; + initialPassword = "89453712"; + #hashedPasswordFile = config.sops.secrets."nathan/pass".path; + extraGroups = [ + "wheel" + "networkmanager" + ]; # Enable ‘sudo’ for the user. + openssh.authorizedKeys.keys = []; + + packages = with pkgs; [ + (writeShellScriptBin "beets" '' + bluetoothctl connect A4:16:C0:74:1F:55 + '') + + spotify + gnome-network-displays + discord + krita + rpcs3 + ]; + }; + + nix = { + nixPath = [ "nixpkgs=${inputs.nixpkgs}" ]; + settings = { + experimental-features = [ "nix-command" "flakes" ]; + }; + }; + + fonts.packages = with pkgs; [ nerd-fonts.fira-code ]; + + +} diff --git a/system-config/configuration/jesstop/hardware-configuration.nix b/system-config/configuration/jesstop/hardware-configuration.nix new file mode 100644 index 0000000..621dc1f --- /dev/null +++ b/system-config/configuration/jesstop/hardware-configuration.nix @@ -0,0 +1,39 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "vmd" "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/5218dd64-0ba3-4511-8218-4a72042ff1ff"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/2BD4-DDA0"; + fsType = "vfat"; + options = [ "fmask=0022" "dmask=0022" ]; + }; + + swapDevices = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.eno1.useDHCP = lib.mkDefault true; + # networking.interfaces.wlo1.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/system-config/programs/nh/default.nix b/system-config/programs/nh/default.nix index 7f4805b..0323b9f 100644 --- a/system-config/programs/nh/default.nix +++ b/system-config/programs/nh/default.nix @@ -9,7 +9,7 @@ programs.nh = { enable = true; - flake = "/home/nathan/Projects/System"; + #flake = "/home/nathan/Projects/Olympus"; clean = { enable = true;