diff --git a/configuration.nix b/configuration.nix index 7450753..dd3df7f 100644 --- a/configuration.nix +++ b/configuration.nix @@ -12,7 +12,6 @@ # Latest kernel boot.kernelPackages = pkgs.linuxPackages_latest; - boot.kernelParams = [ "vfio-pci.ids=8086:9b41" "qxl" "bochs_drm"]; boot.loader = { systemd-boot.enable = true; @@ -82,12 +81,8 @@ avahi cargo dmidecode - just libcamera lshw - quickemu - spice - spice-gtk nix-index toybox unzip diff --git a/programs.nix b/programs.nix index f812e80..51dede4 100644 --- a/programs.nix +++ b/programs.nix @@ -16,10 +16,13 @@ # Office google-chrome libreoffice-fresh + vscode # Work virt-manager - vscode + quickemu + spice + spice-gtk # Streaming obs-studio diff --git a/shell/COSMIC/shell.nix b/shell/COSMIC/shell.nix index 073e67d..ce61ba5 100644 --- a/shell/COSMIC/shell.nix +++ b/shell/COSMIC/shell.nix @@ -12,7 +12,7 @@ egl-wayland glib gtk4 - just + lld llvm llvmPackages_15.llvm libclang diff --git a/shell/system76-docs/shell.nix b/shell/system76-docs/shell.nix index 0b1ed1b..7060e9e 100644 --- a/shell/system76-docs/shell.nix +++ b/shell/system76-docs/shell.nix @@ -1,7 +1,7 @@ { pkgs ? import {} }: pkgs.mkShell { - nativeBuildInputs = [ - pkgs.buildPackages.nodejs-16_x - pkgs.buildPackages.nodePackages.npm + nativeBuildInputs = with pkgs; [ + nodejs-16_x + nodePackages.npm ]; } diff --git a/systems/vm.nix b/systems/vm.nix new file mode 100644 index 0000000..97c510d --- /dev/null +++ b/systems/vm.nix @@ -0,0 +1,98 @@ +{ config, pkgs, ... }: + +{ + # Import other configuration modules + # (hardware-configuration.nix is autogenerated upon installation) + # paths in nix expressions are always relative the file which defines them + imports = + [ + ./hardware-configuration.nix +# ./programs.nix + ]; + + # Latest kernel + boot.kernelPackages = pkgs.linuxPackages_latest; + boot.kernelParams = [ "vfio-pci.ids=8086:9b41" "qxl" "bochs_drm"]; + + boot.loader = { + systemd-boot.enable = true; + systemd-boot.consoleMode = "0"; + }; + + boot.binfmt.emulatedSystems = [ "aarch64-linux" ]; + + nix.settings.extra-platforms = [ "aarch64-linux" ]; + nix.settings.auto-optimise-store = true; + nix.settings.experimental-features = [ "nix-command" "flakes" ]; + + nix.gc = { + automatic = true; + dates = "weekly"; + options = "--delete-older-than 30d"; + }; + + networking.networkmanager.enable = true; + + # Set your time zone. + time.timeZone = "America/Denver"; + + # Enter keyboard layout + services.xserver.layout = "us"; + + # Define user accounts + users.users.aaronh = { + description = "Aaron Honeycutt"; + home = "/home/aaronh"; + extraGroups = [ "wheel" "networkmanager" "adm"]; + isNormalUser = true; + hashedPassword = "$6$aAcbLtqiqzySifls$jdKMOQjoWITHD/dWNNZVUH/qNc6aoJ7v4zYofi0U7IJSVTbmOfChS3mzaJbp57AodjdPNKPrnrip8Nlh2Qanx."; + + packages = with pkgs; [ + neofetch + ]; + }; + + # Allow Unfree + nixpkgs.config.allowUnfree = true; + + # Install some packages + environment.systemPackages = + with pkgs; + [ + nix-index + toybox + unzip + wget + xz + ]; + + # Enable/Disable hardware + ## Turn off PulseAudio + hardware.pulseaudio.enable = false; + + # Enable Pipewire + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + }; + + # Enable Bluetooth + hardware.bluetooth.enable = true; + + services.printing.enable = true; + services.openssh.enable = true; + + services.avahi = { + enable = true; + nssmdns = true; + openFirewall = true; + }; + + # System + system.stateVersion = "22.11"; + system.autoUpgrade.enable = true; + +} diff --git a/unstable.nix b/unstable.nix index caba350..a739384 100644 --- a/unstable.nix +++ b/unstable.nix @@ -10,5 +10,6 @@ in { environment.systemPackages = with pkgs; [ unstable.rustc + unstable.just ]; }