From 3b95e2700d96f1bfdbfbdd8dea2eb932e72057b7 Mon Sep 17 00:00:00 2001 From: Amneesh Singh Date: Sat, 5 Nov 2022 17:49:27 +0530 Subject: [PATCH] hosts/satori: random stuff Signed-off-by: Amneesh Singh --- hosts/satori/boot.nix | 5 +-- hosts/satori/default.nix | 2 ++ hosts/satori/graphics.nix | 37 ++++++++++----------- hosts/satori/hardware.nix | 20 ++++++------ hosts/satori/networking.nix | 16 +++------- hosts/satori/pkgs.nix | 29 ++--------------- hosts/satori/stuff.nix | 1 + modules/colemak-dh | 64 ------------------------------------- modules/graphics.nix | 61 ----------------------------------- modules/xorg.nix | 45 -------------------------- 10 files changed, 42 insertions(+), 238 deletions(-) delete mode 100644 modules/colemak-dh delete mode 100644 modules/graphics.nix delete mode 100644 modules/xorg.nix diff --git a/hosts/satori/boot.nix b/hosts/satori/boot.nix index 0f46fb4..4b6d470 100644 --- a/hosts/satori/boot.nix +++ b/hosts/satori/boot.nix @@ -2,8 +2,8 @@ { boot = { - zfs.forceImportAll = false; supportedFilesystems = [ "zfs" ]; + kernelPackages = pkgs.unstable.linuxPackages_latest; initrd = { availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "vfio-pci" ]; @@ -18,7 +18,7 @@ }; kernelParams = [ "intel_pstate=active" "intel_iommu=on" ]; kernelModules = [ "kvm-intel" "snd-seq" "snd-rawmidi" "joydev" ]; - extraModulePackages = with config.boot.kernelPackages; [ nvidia_x11 v4l2loopback ]; + extraModulePackages = with config.boot.kernelPackages; [ nvidia_x11_vulkan_beta v4l2loopback ]; loader = { efi = { canTouchEfiVariables = true; @@ -35,5 +35,6 @@ }; }; binfmt.emulatedSystems = [ "aarch64-linux" ]; + zfs.extraPools = [ "stuff" ]; }; } diff --git a/hosts/satori/default.nix b/hosts/satori/default.nix index db9d955..3832965 100644 --- a/hosts/satori/default.nix +++ b/hosts/satori/default.nix @@ -8,6 +8,8 @@ ./networking.nix ./boot.nix ./services.nix + ./graphics.nix + ./xorg.nix ./nix.nix ]; system.stateVersion = "21.05"; diff --git a/hosts/satori/graphics.nix b/hosts/satori/graphics.nix index c8842cd..0c8a5fc 100644 --- a/hosts/satori/graphics.nix +++ b/hosts/satori/graphics.nix @@ -15,32 +15,33 @@ in hardware = { /*opengl = let - fn = oa: with lib; { - nativeBuildInputs = oa.nativeBuildInputs ++ singleton pkgs.glslang; - mesonFlags = oa.mesonFlags ++ singleton "-Dvulkan-layers=device-select,overlay"; - patches = oa.patches ++ singleton ./mesa-vulkan-layer-nvidia.patch; - postInstall = oa.postInstall + '' - mv $out/lib/libVkLayer* $drivers/lib - layer=VkLayer_MESA_device_select - substituteInPlace $drivers/share/vulkan/implicit_layer.d/''${layer}.json \ - --replace "lib''${layer}" "$drivers/lib/lib''${layer}" - layer=VkLayer_MESA_overlay - substituteInPlace $drivers/share/vulkan/explicit_layer.d/''${layer}.json \ - --replace "lib''${layer}" "$drivers/lib/lib''${layer}" - ''; - }; + fn = oa: with lib; { + nativeBuildInputs = oa.nativeBuildInputs ++ singleton pkgs.glslang; + mesonFlags = oa.mesonFlags ++ singleton "-Dvulkan-layers=device-select,overlay"; + patches = oa.patches ++ singleton ./mesa-vulkan-layer-nvidia.patch; + postInstall = oa.postInstall + '' + mv $out/lib/libVkLayer* $drivers/lib + layer=VkLayer_MESA_device_select + substituteInPlace $drivers/share/vulkan/implicit_layer.d/''${layer}.json \ + --replace "lib''${layer}" "$drivers/lib/lib''${layer}" + layer=VkLayer_MESA_overlay + substituteInPlace $drivers/share/vulkan/explicit_layer.d/''${layer}.json \ + --replace "lib''${layer}" "$drivers/lib/lib''${layer}" + ''; + }; in with pkgs; { - driSupport32Bit = true; - enable = true; - package = (mesa.overrideAttrs fn).drivers; - package32 = (pkgsi686Linux.mesa.overrideAttrs fn).drivers; + driSupport32Bit = true; + enable = true; + package = (mesa.overrideAttrs fn).drivers; + package32 = (pkgsi686Linux.mesa.overrideAttrs fn).drivers; };*/ opengl = { driSupport32Bit = true; enable = true; }; nvidia = { + package = config.boot.kernelPackages.nvidia_x11_vulkan_beta; prime = { # sync.enable = true; offload = { enable = true; }; diff --git a/hosts/satori/hardware.nix b/hosts/satori/hardware.nix index da4187e..b517c9b 100644 --- a/hosts/satori/hardware.nix +++ b/hosts/satori/hardware.nix @@ -7,44 +7,44 @@ ]; fileSystems."/" = - { device = "/dev/disk/by-uuid/4c02ddf5-d00e-4d84-856f-c327ae44d047"; + { + device = "/dev/disk/by-uuid/4c02ddf5-d00e-4d84-856f-c327ae44d047"; fsType = "btrfs"; options = [ "compress-force=zstd:3" ]; }; fileSystems."/boot/efi" = - { device = "/dev/disk/by-uuid/2424-5639"; + { + device = "/dev/disk/by-uuid/2424-5639"; fsType = "vfat"; }; fileSystems."/mnt/ntfs" = - { device = "/dev/disk/by-uuid/A4CC66B6CC668282"; + { + device = "/dev/disk/by-uuid/A4CC66B6CC668282"; fsType = "ntfs"; options = [ "uid=natto" "gid=users" "umask=0022" "rw" ]; }; fileSystems."/mnt/real" = - { device = "/dev/disk/by-uuid/6372bc0c-0917-469d-a845-2ce65513e306"; + { + device = "/dev/disk/by-uuid/6372bc0c-0917-469d-a845-2ce65513e306"; fsType = "ext4"; options = [ "rw" ]; }; - fileSystems."/mnt/stuff" = - { device = "stuff"; - fsType = "zfs"; - neededForBoot = false; - }; - zramSwap = { enable = true; algorithm = "lz4"; memoryPercent = 30; priority = -1; }; + powerManagement = { enable = true; cpuFreqGovernor = "schedutil"; }; + hardware = { bluetooth.enable = true; }; diff --git a/hosts/satori/networking.nix b/hosts/satori/networking.nix index 12eefab..03f4e81 100644 --- a/hosts/satori/networking.nix +++ b/hosts/satori/networking.nix @@ -2,32 +2,24 @@ { networking = { - hostName = "Satori"; + hostName = "satori"; hostId = "beca3df0"; wireless.enable = true; wireless.interfaces = [ "wlp0s20f3" ]; firewall = { allowedTCPPorts = [ 22 18172 6600 8001 ]; allowedUDPPorts = [ 22 17840 18172 ]; + trustedInterfaces = [ "docker0" ]; }; - defaultGateway = { - address = "192.168.0.1"; - }; + defaultGateway = "192.168.1.1"; interfaces = { enp7s0 = { useDHCP = true; ipv4.addresses = [{ prefixLength = 24; - address = "192.168.0.109"; - }]; - }; - wlp0s20f3 = { - useDHCP = true; - ipv4.addresses = [{ - prefixLength = 24; - address = "192.168.0.109"; + address = "192.168.1.109"; }]; }; }; diff --git a/hosts/satori/pkgs.nix b/hosts/satori/pkgs.nix index b66a547..cd5b585 100644 --- a/hosts/satori/pkgs.nix +++ b/hosts/satori/pkgs.nix @@ -28,8 +28,8 @@ rnix-lsp vulkan-tools vulkan-headers - msr-tools - steam + msr-tools + steam igrep ]; @@ -50,29 +50,6 @@ }; zsh = { enable = true; - promptInit = '' - RPROMPT='%B%F{cyan}%n%f@%F{red}%m%b' - function preexec() { - timer=$(date +%s%3N) - } - function precmd() { - if [ $timer ]; then - now=$(date +%s%3N) - elapsed=$(($now-$timer)) - unset timer - unit="ms" - if [ $elapsed -gt 1000 ]; then - elapsed=$(echo "scale=1; $elapsed/1000" | ${pkgs.bc}/bin/bc -l) - unit="s" - fi - if (( $(echo "$elapsed > 60" | ${pkgs.bc}/bin/bc -l) )) then - elapsed=$(echo "scale=2; $elapsed/60" | ${pkgs.bc}/bin/bc -l) - unit="m" - fi - RPROMPT='%B%F{cyan}%n%f@%F{red}%m %F{yellow}~%f %F{magenta}$elapsed $unit%f%b ' - fi - } - ''; histSize = 30000; enableCompletion = true; enableBashCompletion = true; @@ -82,8 +59,8 @@ highlightStyle = "fg=yellow,bold"; }; ohMyZsh = { + plugins = [ "git" ]; enable = true; - theme = "awesomepanda"; }; }; dconf.enable = true; diff --git a/hosts/satori/stuff.nix b/hosts/satori/stuff.nix index 75c4656..2d4e9d6 100644 --- a/hosts/satori/stuff.nix +++ b/hosts/satori/stuff.nix @@ -19,6 +19,7 @@ shellAliases = rec { ec = "emacsclient"; ecc = ec + " -c"; + ecnw = ec + " -nw"; }; }; security = { diff --git a/modules/colemak-dh b/modules/colemak-dh deleted file mode 100644 index fe29f72..0000000 --- a/modules/colemak-dh +++ /dev/null @@ -1,64 +0,0 @@ -default partial alphanumeric_keys modifier_keys -xkb_symbols "basic" { - name[Group1] = "English (US Colemak-DH)"; - - key { [ grave, asciitilde, dead_tilde, asciitilde ] }; - key { [ 1, exclam, exclamdown, onesuperior ] }; - key { [ 2, at, masculine, twosuperior ] }; - key { [ 3, numbersign, ordfeminine, threesuperior ] }; - key { [ 4, dollar, cent, sterling ] }; - key { [ 5, percent, EuroSign, yen ] }; - key { [ 6, asciicircum, hstroke, Hstroke ] }; - key { [ 7, ampersand, eth, ETH ] }; - key { [ 8, asterisk, thorn, THORN ] }; - key { [ 9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; - key { [ 0, parenright, rightsinglequotemark, rightdoublequotemark ] }; - key { [ minus, underscore, endash, emdash ] }; - key { [ equal, plus, multiply, division ] }; - key { [ q, Q, adiaeresis, Adiaeresis ] }; - key { [ w, W, aring, Aring ] }; - key { [ f, F, atilde, Atilde ] }; - key { [ p, P, oslash, Ooblique ] }; - key { [ b, B, dead_breve, asciitilde ] }; - key { [ j, J, dstroke, Dstroke ] }; - key { [ l, L, lstroke, Lstroke ] }; - key { [ u, U, uacute, Uacute ] }; - key { [ y, Y, udiaeresis, Udiaeresis ] }; - key { [ semicolon, colon, odiaeresis, Odiaeresis ] }; - key { [ bracketleft, braceleft, guillemotleft, 0x1002039 ] }; - key { [ bracketright, braceright, guillemotright, 0x100203a ] }; - key { [ backslash, bar, asciitilde, asciitilde ] }; - key { [ a, A, aacute, Aacute ] }; - key { [ r, R, dead_grave, asciitilde ] }; - key { [ s, S, ssharp, asciitilde ] }; - key { [ t, T, dead_acute, dead_doubleacute ] }; - key { [ g, G, dead_ogonek, asciitilde ] }; - key { [ m, M, dead_macron, asciitilde ] }; - key { [ n, N, ntilde, Ntilde ] }; - key { [ e, E, eacute, Eacute ] }; - key { [ i, I, iacute, Iacute ] }; - key { [ o, O, oacute, Oacute ] }; - key { [ apostrophe, quotedbl, otilde, Otilde ] }; - key { [ z, Z, ae, AE ] }; - key { [ x, X, dead_circumflex, asciitilde ] }; - key { [ c, C, ccedilla, Ccedilla ] }; - key { [ d, D, dead_diaeresis, asciitilde ] }; - key { [ v, V, oe, OE ] }; - key { [ k, K, dead_abovering, asciitilde ] }; - key { [ h, H, dead_caron, asciitilde ] }; - key { [ comma, less, dead_cedilla, asciitilde ] }; - key { [ period, greater, dead_abovedot, asciitilde ] }; - key { [ slash, question, questiondown, asciitilde ] }; - key { [ Caps_Lock, Caps_Lock, Caps_Lock, Caps_Lock ] }; - key { [ minus, underscore, endash, emdash ] }; - key { [ space, space, space, nobreakspace ] }; - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "ganda-dh" { - include "us-colemak(basic)" - name[Group1] = "English (US Ganda-DH)"; - key { [ BackSpace, BackSpace, BackSpace, BackSpace ] }; - include "level3(ralt_switch)" -}; diff --git a/modules/graphics.nix b/modules/graphics.nix deleted file mode 100644 index 347549f..0000000 --- a/modules/graphics.nix +++ /dev/null @@ -1,61 +0,0 @@ -{ config, pkgs, lib, ... }: -let - nvidia-offload = pkgs.writeShellScriptBin "nvi" '' - export __NV_PRIME_RENDER_OFFLOAD=1 - export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0 - export __GLX_VENDOR_LIBRARY_NAME=nvidia - export __VK_LAYER_NV_optimus=NVIDIA_only - exec "$@" - ''; -in -{ - environment.systemPackages = with pkgs; [ - nvidia-offload - ]; - hardware = { - /* opengl = - let - fn = oa: with lib; { - nativeBuildInputs = oa.nativeBuildInputs ++ singleton pkgs.glslang; - mesonFlags = oa.mesonFlags ++ singleton "-Dvulkan-layers=device-select,overlay"; - patches = oa.patches ++ singleton ./mesa-vulkan-layer-nvidia.patch; - postInstall = oa.postInstall + '' - mv $out/lib/libVkLayer* $drivers/lib - layer=VkLayer_MESA_device_select - substituteInPlace $drivers/share/vulkan/implicit_layer.d/''${layer}.json \ - --replace "lib''${layer}" "$drivers/lib/lib''${layer}" - layer=VkLayer_MESA_overlay - substituteInPlace $drivers/share/vulkan/explicit_layer.d/''${layer}.json \ - --replace "lib''${layer}" "$drivers/lib/lib''${layer}" - ''; - }; - in - with pkgs; { - driSupport32Bit = true; - enable = true; - package = (mesa.overrideAttrs fn).drivers; - package32 = (pkgsi686Linux.mesa.overrideAttrs fn).drivers; - };*/ - opengl = { - driSupport32Bit = true; - enable = true; - }; - nvidia = { - prime = { - # sync.enable = true; - offload = { enable = true; }; - intelBusId = "PCI:0:2:0"; - nvidiaBusId = "PCI:1:0:0"; - }; - modesetting = { enable = true; }; - powerManagement = { - enable = true; - finegrained = true; - }; - }; - }; - services.xserver = { - videoDrivers = [ "nvidia" ]; - dpi = 96; - }; -} diff --git a/modules/xorg.nix b/modules/xorg.nix deleted file mode 100644 index ecf61ab..0000000 --- a/modules/xorg.nix +++ /dev/null @@ -1,45 +0,0 @@ - -{ config, lib, ... }: - -#let -# compiledLayout = pkgs.runCommand "keyboard-layout" {} '' -# ${pkgs.xorg.xkbcomp}/bin/xkbcomp ${./colemak-dh.xkb} $out -# ''; -#in -{ - console.useXkbConfig = true; - services = { - xserver = { - enable = true; - libinput= { - enable = true; - mouse = { - accelSpeed = "0"; - # accelProfile = "flat"; - }; - touchpad = { - middleEmulation = false; - clickMethod = "buttonareas"; - tapping = true; - naturalScrolling =true; - }; - }; - displayManager = { - startx = { - enable = true; - }; - }; - extraLayouts = { - us-colemak = { - description = "Colemak with MOD-dh"; - languages = [ "eng" ]; - symbolsFile = ./colemak-dh; - }; - }; - layout = "us-colemak"; - xkbVariant = "basic"; - autoRepeatDelay = 320; - autoRepeatInterval = 30; - }; - }; -}