diff --git a/flake.lock b/flake.lock index a6686dc..6c8ab8c 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1688459062, - "narHash": "sha256-KEG2hGZPn6ulMTVv7Q+QoxtLotd/bJnAmqzZkfJ9i+w=", + "lastModified": 1688507476, + "narHash": "sha256-SgDD+93AmiNGOj5nUfSn2PJI0AXPQ9jwrZB2DZC2kz8=", "ref": "refs/heads/main", - "rev": "18819be419babef8d6e609216f17f407693b6b65", - "revCount": 7, + "rev": "2be84683dd9b6cda4f2c8db91be009adceae7617", + "revCount": 11, "type": "git", "url": "ssh://git@git.tempest.dev/ashe/ashen-earth" }, @@ -303,11 +303,11 @@ "utils": "utils_4" }, "locked": { - "lastModified": 1687029136, - "narHash": "sha256-q8vxnMOb0ccT5Hb7M5V1uNJud8l1wDC0HBsg+EFlNFY=", + "lastModified": 1687155026, + "narHash": "sha256-SD/QCZKJKWcfHyDauqqJDFUwxUZSzuetXYmAMZnEl88=", "ref": "refs/heads/main", - "rev": "007bb2f940951a729202e239de7755a5914d44ae", - "revCount": 9, + "rev": "a3aa29e82697bd2f0bece84192e0b474e6526cea", + "revCount": 10, "type": "git", "url": "ssh://git@git.tempest.dev/ashe/nixos-config-private" }, diff --git a/flake.nix b/flake.nix index 10de810..1142a49 100644 --- a/flake.nix +++ b/flake.nix @@ -9,7 +9,7 @@ tempest-secret.url = "git+ssh://git@git.tempest.dev/ashe/tempest-skycord-secret"; tempest-contact.url = "git+http://git.tempest.dev/ashe/contact-api"; gotosocial.url = "git+http://git.tempest.dev/ashe/nixos-wrapper-gotosocial"; - ashen-earth.url = "git+ssh://git@git.tempest.dev/ashe/ashen-earth"; + ashen-earth.url = "git+ssh://git@git.tempest.dev/ashe/ashen-earth"; }; outputs = { self, nixpkgs, home-manager, private, tmpfiles, tempestdev, tempest-secret, tempest-contact, gotosocial, ashen-earth }: { diff --git a/hosts/hemera/configuration.nix b/hosts/hemera/configuration.nix index 00fc4d0..a9e8ef8 100644 --- a/hosts/hemera/configuration.nix +++ b/hosts/hemera/configuration.nix @@ -10,6 +10,17 @@ nix.settings.experimental-features = [ "nix-command" "flakes" ]; nix.settings.sandbox = "relaxed"; + # Allow unfree + nixpkgs.config.allowUnfree = true; + + # Nvidia drivers + services.xserver.videoDrivers = [ "nvidia" ]; + hardware.opengl.enable = true; + hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable; + + hardware.bluetooth.enable = true; + services.blueman.enable = true; + # Use the systemd-boot EFI boot loader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; @@ -20,11 +31,76 @@ 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"; + }; + + # Enable the X11 windowing system. + services.xserver.enable = true; + services.xserver.xrandrHeads = [ + "HDMI-0" + "DP-0" + ]; + + # Enable the LightDM and BSPWM + services.xserver.displayManager.lightdm.enable = true; + services.xserver.windowManager.bspwm.enable = true; + + # Configure keymap in X11 + services.xserver = { + layout = "us"; + xkbVariant = ""; + }; + + # Enable CUPS to print documents. + services.printing.enable = true; + + # Enable sound with pipewire. + sound.enable = true; + hardware.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + # If you want to use JACK applications, uncomment this + #jack.enable = true; + + # use the example session manager (no others are packaged yet so this is enabled by default, + # no need to redefine it in your config for now) + #media-session.enable = true; + }; + + # Steam + programs.steam = { + enable = true; + remotePlay.openFirewall = true; + }; + users.users.rose = { isNormalUser = true; - extraGroups = [ "wheel" ]; + description = "Ashelyn Rose"; + extraGroups = [ "networkmanager" "wheel" ]; packages = with pkgs; [ + _1password-gui + firefox zsh + discord + hyfetch + obsidian + alacritty + dmenu + picom + krita ]; }; @@ -35,6 +111,10 @@ wget htop git + ntfs3g + element-desktop + bspwm + sxhkd ]; services.openssh.enable = true; diff --git a/hosts/hemera/hardware-configuration.nix b/hosts/hemera/hardware-configuration.nix index 7a6c490..31b7db7 100644 --- a/hosts/hemera/hardware-configuration.nix +++ b/hosts/hemera/hardware-configuration.nix @@ -4,20 +4,22 @@ { config, lib, pkgs, modulesPath, ... }: { - imports = [ ]; + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; - boot.initrd.availableKernelModules = [ "sd_mod" "sr_mod" ]; + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [ ]; fileSystems."/" = - { device = "/dev/disk/by-label/NIXROOT"; + { device = "/dev/disk/by-uuid/f3299052-38cc-41c5-9f27-ae3e9cfd1b21"; fsType = "ext4"; }; fileSystems."/boot" = - { device = "/dev/disk/by-label/NIXBOOT"; + { device = "/dev/disk/by-uuid/F28A-7EB7"; fsType = "vfat"; }; @@ -28,8 +30,10 @@ # 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.eth0.useDHCP = lib.mkDefault true; + # networking.interfaces.eno2.useDHCP = lib.mkDefault true; + # networking.interfaces.wlo1.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - virtualisation.hypervGuest.enable = true; + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; } diff --git a/hosts/nyx/configuration.nix b/hosts/nyx/configuration.nix index 276d260..2a4c890 100644 --- a/hosts/nyx/configuration.nix +++ b/hosts/nyx/configuration.nix @@ -22,7 +22,7 @@ ]; networking.extraHosts = '' - 100.80.151.66 hemera hemera.tempest.local + 100.104.209.75 hemera hemera.tempest.local ''; ashe.system.hostname = "nyx";