diff --git a/etc/nixos/configuration.nix b/etc/nixos/configuration.nix index 15405ab..8a6503f 100644 --- a/etc/nixos/configuration.nix +++ b/etc/nixos/configuration.nix @@ -43,6 +43,11 @@ in { hardware.bluetooth.powerOnBoot = true; services.blueman.enable = true; + + virtualisation.virtualbox.host.enable = true; + users.extraGroups.vboxusers.members = [ "coast" ]; + virtualisation.virtualbox.host.enableExtensionPack = true; + security.sudo.enable = false; security.doas = { enable = true; @@ -53,11 +58,15 @@ in { neovim wget adwaita-icon-theme + qemu (pkgs.runCommand "vim-wrapper" { } '' mkdir -p $out/bin ln -s ${pkgs.neovim}/bin/nvim $out/bin/vim '') - (import ./prism.nix { stdenv = pkgs.stdenv; }) + ]; + + boot.kernelModules = [ + "kvm-intel" ]; programs.zsh.enable = true; diff --git a/etc/nixos/hardware-configuration.nix b/etc/nixos/hardware-configuration.nix new file mode 100644 index 0000000..bee3e96 --- /dev/null +++ b/etc/nixos/hardware-configuration.nix @@ -0,0 +1,33 @@ +# 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 = [ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/8a574ece-d362-484c-b72a-bd17ce935986"; + fsType = "ext4"; + }; + + 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/etc/nixos/home.nix b/etc/nixos/home.nix index 1d1d52c..81f51e5 100644 --- a/etc/nixos/home.nix +++ b/etc/nixos/home.nix @@ -1,9 +1,18 @@ -{ config, pkgs, ... }: { +{ config, pkgs, ... }: let + dotDir = "${config.home.homeDirectory}/.local/src/config/"; + mkSymlink = path: config.lib.file.mkOutOfStoreSymlink path; + configs = { + sway = "sway"; + kitty = "kitty"; + foot = "foot"; + mako = "mako"; + }; in { home.username = "coast"; home.homeDirectory = "/home/coast"; home.stateVersion = "25.05"; - - home.file.".config/sway/config".source = "/home/coast/.local/src/config/sway/config"; - home.file.".config/mako/config".source = "/home/coast/.local/src/config/mako/config"; - home.file.".config/kitty/kitty.conf".source = "/home/coast/.local/src/config/kitty/kitty.conf"; + + xdg.configFile = builtins.mapAttrs (name: subpath: { + source = mkSymlink "${dotDir}/${subpath}"; + recursive = true; + }) configs; } diff --git a/etc/nixos/packages.nix b/etc/nixos/packages.nix index 881bbf9..ce93bef 100644 --- a/etc/nixos/packages.nix +++ b/etc/nixos/packages.nix @@ -1,15 +1,19 @@ { config, pkgs, lib, ... }: { home-manager.users.coast = { home.packages = with pkgs; [ + smartmontools + autotiling + nsxiv + nodejs tree + zig nwg-look mate.caja htop alsa-utils wl-clipboard dysk - ranger - kitty + yazi nix-search-cli neofetch mako diff --git a/etc/nixos/prism.nix b/etc/nixos/prism.nix deleted file mode 100644 index 4cebd10..0000000 --- a/etc/nixos/prism.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv }: - -stdenv.mkDerivation rec { - pname = "prismlauncher"; - version = "1.0"; - - src = null; - unpackPhase = ":"; - - installPhase = '' - mkdir -p $out/bin - cat > $out/bin/prismlauncher <<'EOF' -#!/bin/sh -appimage-run /home/coast/AppImages/PrismLauncher-Linux-x86_64.AppImage -EOF - chmod +x $out/bin/prismlauncher - ''; -} diff --git a/etc/nixos/zsh.nix b/etc/nixos/zsh.nix index 68462ff..886eb9a 100644 --- a/etc/nixos/zsh.nix +++ b/etc/nixos/zsh.nix @@ -29,6 +29,8 @@ mian = "man"; mna = "man"; dias = "doas"; + delgen = "doas nix-env --delete-generations old --profile /nix/var/nix/profiles/system"; + alsamixer = "alsamixer -c 0 --no-color"; }; initContent = '' @@ -40,7 +42,7 @@ zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}' ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=12" autoload -U colors && colors && setopt prompt_subst - PROMPT="[%n@%m %~]%% " + PROMPT="[%n@%m %~]$ " export LIBCLANG_PATH=/usr/lib/llvm/20/lib64 export PATH=$PATH:/home/coast/.spicetify source ~/.local/src/zsh.d/zsh-autosuggestions.zsh