From 90bdddcabc782cbd495e620d6a115f23c8aa0614 Mon Sep 17 00:00:00 2001 From: Amneesh Singh Date: Sat, 5 Nov 2022 17:45:11 +0530 Subject: [PATCH] hosts/satori: random stuff, move modules Signed-off-by: Amneesh Singh --- flake.lock | 110 ++++++++++++++++----------------- flake.nix | 2 - hosts/satori/colemak-dh | 64 +++++++++++++++++++ hosts/satori/graphics.nix | 61 ++++++++++++++++++ hosts/satori/xorg.nix | 45 ++++++++++++++ overlays/customscripts/src/upl | 5 ++ 6 files changed, 230 insertions(+), 57 deletions(-) create mode 100644 hosts/satori/colemak-dh create mode 100644 hosts/satori/graphics.nix create mode 100644 hosts/satori/xorg.nix create mode 100644 overlays/customscripts/src/upl diff --git a/flake.lock b/flake.lock index 283a65e..dfb942a 100644 --- a/flake.lock +++ b/flake.lock @@ -22,11 +22,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1666471010, - "narHash": "sha256-Ehq7DB68ue5YHJ8sUNJXZhhW4fcT1oc2NkpQPVvrB2c=", + "lastModified": 1663268366, + "narHash": "sha256-nQL25OVRJNxT5xdNjuz0W0HCZ4abd9gn96nJEYq1Fl8=", "owner": "nix-community", "repo": "emacs-overlay", - "rev": "ef5d67c561a8b6ce001dbc555814fdb21c7bd5dd", + "rev": "19952866828a8d8a08e0e264ad1842e585eadc23", "type": "github" }, "original": { @@ -83,11 +83,11 @@ }, "flake-utils_3": { "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "lastModified": 1656928814, + "narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=", "owner": "numtide", "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249", "type": "github" }, "original": { @@ -102,11 +102,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1666463764, - "narHash": "sha256-NmayV9S0s7CgNEA2QbIxDU0VCIiX6bIHu8PCQPnYHDM=", + "lastModified": 1663227421, + "narHash": "sha256-8M2ZQPLQw0CUylKbF8pgDMQ5vxOH4i0rxwUhtPIsf7Q=", "owner": "nix-community", "repo": "home-manager", - "rev": "69d19b9839638fc487b370e0600a03577a559081", + "rev": "5408e27961599b1350b651f88715daf6e67244a7", "type": "github" }, "original": { @@ -157,11 +157,11 @@ }, "master": { "locked": { - "lastModified": 1666486259, - "narHash": "sha256-9G1mE2tz9BRpO7rdkDtnkLYUQ0H2fhWWNdJ2EIXDDt8=", + "lastModified": 1663270227, + "narHash": "sha256-HWnPdlG+48f5Vgmco2Iij/20AjQuKjaNUJhh/VgbV5Q=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e14c21ee3c0ee09f805b30fe17d39fced6e81fba", + "rev": "c2e7745b08a303b468fcaced4bf0774900aba9bc", "type": "github" }, "original": { @@ -177,11 +177,11 @@ "utils": "utils_3" }, "locked": { - "lastModified": 1663533210, - "narHash": "sha256-it24pt41yHYhcpfqnEaws7utoNxFFrH/HwBCD/9omkY=", + "lastModified": 1662138272, + "narHash": "sha256-qklVL7qFzyiIIm00AKRLE+uCYppTQ/S5C6exg0j2fSY=", "owner": "nbfc-linux", "repo": "nbfc-linux", - "rev": "0396c35b2afc02a705bb53c2fadb7b4f54915d97", + "rev": "c6abef1b9f4ec4bb8a2eb4d7e70c1fccbb320677", "type": "github" }, "original": { @@ -200,11 +200,11 @@ }, "locked": { "dir": "contrib", - "lastModified": 1666396419, - "narHash": "sha256-jCFc/dTsDfyyenzmtOm9u3MSZQHsHo46xZ7T+2HiY7c=", + "lastModified": 1663212973, + "narHash": "sha256-d0dhVnwoWZEsEdtRIZiiadOcCNcddkdk4QHKg2Vnt9E=", "owner": "neovim", "repo": "neovim", - "rev": "2f9b94a26836ecb081c717e23913f5b6576cce99", + "rev": "89b9eab638d5e6467156c25f0d54df48d861ca16", "type": "github" }, "original": { @@ -219,11 +219,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1665951041, - "narHash": "sha256-YK4cWVHsP/OhMWhO/n9s7QkziAVetPkNHtIEhwlBmGc=", + "lastModified": 1662742160, + "narHash": "sha256-zamqdHF0Pp0AkgfDnZdLnAZTfgrTV11dYO9rDsfqfW8=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "05534322548e7bd6b2318bad0fbf2ae904a30c11", + "rev": "a37f98a7a81d5ffac328fac06c3f6ad17f90c7d7", "type": "github" }, "original": { @@ -234,11 +234,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1650970888, - "narHash": "sha256-K0Qk6YbkyxBbszkBKCxsLA+jrQpaecf0X8iIO8frS48=", + "lastModified": 1663235518, + "narHash": "sha256-q8zLK6rK/CLXEguaPgm9yQJcY0VQtOBhAT9EV2UFK/A=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "27a62a9c603d0d832141682cb4f34964d7b48ebb", + "rev": "2277e4c9010b0f27585eb0bed0a86d7cbc079354", "type": "github" }, "original": { @@ -279,11 +279,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1650970888, - "narHash": "sha256-K0Qk6YbkyxBbszkBKCxsLA+jrQpaecf0X8iIO8frS48=", + "lastModified": 1663235518, + "narHash": "sha256-q8zLK6rK/CLXEguaPgm9yQJcY0VQtOBhAT9EV2UFK/A=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "27a62a9c603d0d832141682cb4f34964d7b48ebb", + "rev": "2277e4c9010b0f27585eb0bed0a86d7cbc079354", "type": "github" }, "original": { @@ -323,11 +323,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1663491030, - "narHash": "sha256-MVsfBhE9US5DvLtBAaTRjwYdv1tLO8xjahM8qLXTgTo=", + "lastModified": 1656401090, + "narHash": "sha256-bUS2nfQsvTQW2z8SK7oEFSElbmoBahOPtbXPm0AL3I4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "767542707d394ff15ac1981e903e005ba69528b5", + "rev": "16de63fcc54e88b9a106a603038dd5dd2feb21eb", "type": "github" }, "original": { @@ -339,11 +339,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1666424192, - "narHash": "sha256-rb/a7Kg9s31jqkvdOQHFrUc5ig5kB+O2ZKB8mjU2kW8=", + "lastModified": 1663235518, + "narHash": "sha256-q8zLK6rK/CLXEguaPgm9yQJcY0VQtOBhAT9EV2UFK/A=", "owner": "nixos", "repo": "nixpkgs", - "rev": "4f8287f3d597c73b0d706cfad028c2d51821f64d", + "rev": "2277e4c9010b0f27585eb0bed0a86d7cbc079354", "type": "github" }, "original": { @@ -355,27 +355,27 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1666333455, - "narHash": "sha256-oHXIeLB/sPWxKNcSdV1DQi1ddNVoJ17T1yDiMMeygL4=", + "lastModified": 1663087123, + "narHash": "sha256-cNIRkF/J4mRxDtNYw+9/fBNq/NOA2nCuPOa3EdIyeDs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "93e0ac196106dce51878469c9a763c6233af5c57", + "rev": "9608ace7009ce5bc3aeb940095e01553e635cbc7", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixpkgs-unstable", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_9": { "locked": { - "lastModified": 1665296151, - "narHash": "sha256-uOB0oxqxN9K7XGF1hcnY+PQnlQJ+3bP2vCn/+Ru/bbc=", + "lastModified": 1659102345, + "narHash": "sha256-Vbzlz254EMZvn28BhpN8JOi5EuKqnHZ3ujFYgFcSGvk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "14ccaaedd95a488dd7ae142757884d8e125b3363", + "rev": "11b60e4f80d87794a2a4a8a256391b37c59a1ea7", "type": "github" }, "original": { @@ -387,11 +387,11 @@ }, "nur": { "locked": { - "lastModified": 1666483270, - "narHash": "sha256-eqrah9Jf+Wk28mpT2OsqwkWcnxKHltmRt/N3U4gUx1I=", + "lastModified": 1663266400, + "narHash": "sha256-6A/5qljK1pauDxSrHS8IR8ZS0raFB4UFwL7e+TjM3qU=", "owner": "nix-community", "repo": "NUR", - "rev": "1970f883e139b06ae109ad2ca2c45b7fa987afb9", + "rev": "e77ed0cd9190592525937030c68fa487ce79e0e0", "type": "github" }, "original": { @@ -407,11 +407,11 @@ "nixpkgs": "nixpkgs_8" }, "locked": { - "lastModified": 1666426819, - "narHash": "sha256-28rlBhbY+ZX2uUze5HVR4a5y6fVuyPuU9+NWtxmg6dk=", + "lastModified": 1663230013, + "narHash": "sha256-te3ZzGAWGoWhbUmk8KTO+Tidn5nShRVcStpDAV167Fg=", "owner": "nix-community", "repo": "neovim-nightly-overlay", - "rev": "72ceb9a0def71a405c97a2b86bc08096c3c49157", + "rev": "a11980308a32ec895bdc8a2ea3d6ed022d7a615d", "type": "github" }, "original": { @@ -461,11 +461,11 @@ "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1666407365, - "narHash": "sha256-eD1hN+Uez7oOKl9BgvfBydQOCEqfoLuezoGfR6t0nzI=", + "lastModified": 1663210994, + "narHash": "sha256-CvuR+v3FClg/En4LDdLOhLQApAZ9xZZaxeDadfwIBkw=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "8ffc63427df1dc7e53fb96cb13b130028c258202", + "rev": "f34d44aef4ca7c11e66ed30ef46a93058a578c0f", "type": "github" }, "original": { @@ -476,11 +476,11 @@ }, "stable": { "locked": { - "lastModified": 1666401273, - "narHash": "sha256-AG3MoIjcWwz1SPjJ2nymWu4NmeVj9P40OpB1lsmxFtg=", + "lastModified": 1663067291, + "narHash": "sha256-1BTrqhLMamWf53sJobtMiUDI91PEw6xF8YEwg2VE8w4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3933d8bb9120573c0d8d49dc5e890cb211681490", + "rev": "d86a4619b7e80bddb6c01bc01a954f368c56d1df", "type": "github" }, "original": { @@ -492,11 +492,11 @@ }, "stable-small": { "locked": { - "lastModified": 1666401273, - "narHash": "sha256-AG3MoIjcWwz1SPjJ2nymWu4NmeVj9P40OpB1lsmxFtg=", + "lastModified": 1663209136, + "narHash": "sha256-camNbaOhv/AD6vDr51H9xNjA7ytPvo8uKVlH5Bc+ZWQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3933d8bb9120573c0d8d49dc5e890cb211681490", + "rev": "01ec6cc8e9064f51f538428fdb7311bcc44927ea", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index f88b702..90ce0f4 100644 --- a/flake.nix +++ b/flake.nix @@ -61,9 +61,7 @@ ( let personalModules = [ - ./modules/graphics.nix ./modules/sound.nix - ./modules/xorg.nix ]; commonModules = [ ./modules/nvim diff --git a/hosts/satori/colemak-dh b/hosts/satori/colemak-dh new file mode 100644 index 0000000..fe29f72 --- /dev/null +++ b/hosts/satori/colemak-dh @@ -0,0 +1,64 @@ +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/hosts/satori/graphics.nix b/hosts/satori/graphics.nix new file mode 100644 index 0000000..c8842cd --- /dev/null +++ b/hosts/satori/graphics.nix @@ -0,0 +1,61 @@ +{ 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/hosts/satori/xorg.nix b/hosts/satori/xorg.nix new file mode 100644 index 0000000..ecf61ab --- /dev/null +++ b/hosts/satori/xorg.nix @@ -0,0 +1,45 @@ + +{ 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; + }; + }; +} diff --git a/overlays/customscripts/src/upl b/overlays/customscripts/src/upl new file mode 100644 index 0000000..d27740d --- /dev/null +++ b/overlays/customscripts/src/upl @@ -0,0 +1,5 @@ +#!/usr/bin/env sh +for x in "$@"; do + curl -F "file=@\"$x\"" -F "key=$FILEHOST_KEY" $FILEHOST_URL + echo " " +done