From 8655459e46beac253062a96efde595a9531f529f Mon Sep 17 00:00:00 2001 From: chayleaf Date: Wed, 10 May 2023 16:42:56 +0700 Subject: [PATCH] update inputs sway doesn't work with vulkan anymore, so make vulkan sway an option --- home/_sources/generated.json | 6 ++-- home/_sources/generated.nix | 6 ++-- home/common/i3-sway.nix | 4 ++- home/common/nvim.nix | 12 ++++--- home/common/options.nix | 7 +++- home/common/terminal.nix | 4 +-- home/common/waybar.css | 2 +- home/flake.lock | 50 ++++++++++------------------- home/flake.nix | 2 +- home/pkgs/default.nix | 4 +-- system/flake.lock | 54 ++++++++++++++++++++----------- system/hosts/nixmsi.nix | 57 +++++++++++++++++++++------------ system/modules/impermanence.nix | 2 +- 13 files changed, 118 insertions(+), 92 deletions(-) diff --git a/home/_sources/generated.json b/home/_sources/generated.json index 8669b74..cd5a27a 100644 --- a/home/_sources/generated.json +++ b/home/_sources/generated.json @@ -23,11 +23,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-tPL8d5fJzT428UJImJgzW9ECI+ENkvbD1fCPmjU7Yhk=", + "sha256": "sha256-gof4yL5sHPKXDC4mDfPyBIvPtWxxxVy6gHx58yoTEbQ=", "type": "url", - "url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton7-54/GE-Proton7-54.tar.gz" + "url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-2/GE-Proton8-2.tar.gz" }, - "version": "GE-Proton7-54" + "version": "GE-Proton8-2" }, "yomichan": { "cargoLocks": null, diff --git a/home/_sources/generated.nix b/home/_sources/generated.nix index fe92d8f..b983fca 100644 --- a/home/_sources/generated.nix +++ b/home/_sources/generated.nix @@ -11,10 +11,10 @@ }; proton-ge = { pname = "proton-ge"; - version = "GE-Proton7-54"; + version = "GE-Proton8-2"; src = fetchurl { - url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton7-54/GE-Proton7-54.tar.gz"; - sha256 = "sha256-tPL8d5fJzT428UJImJgzW9ECI+ENkvbD1fCPmjU7Yhk="; + url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-2/GE-Proton8-2.tar.gz"; + sha256 = "sha256-gof4yL5sHPKXDC4mDfPyBIvPtWxxxVy6gHx58yoTEbQ="; }; }; yomichan = { diff --git a/home/common/i3-sway.nix b/home/common/i3-sway.nix index 0e7cfae..4882c59 100644 --- a/home/common/i3-sway.nix +++ b/home/common/i3-sway.nix @@ -324,8 +324,10 @@ in }; menu = "${rofiSway}/bin/rofi -show drun"; }; in commonConfig // swayConfig; - extraSessionCommands = '' + # export WLR_RENDERER=vulkan + extraSessionCommands = (lib.optionalString config.wayland.windowManager.sway.vulkan '' export WLR_RENDERER=vulkan + '') + '' export SDL_VIDEODRIVER=wayland,x11,kmsdrm,windows,directx # SDL3 export SDL_VIDEO_DRIVER=wayland,x11,kmsdrm,windows diff --git a/home/common/nvim.nix b/home/common/nvim.nix index e22c5e7..7c37d88 100644 --- a/home/common/nvim.nix +++ b/home/common/nvim.nix @@ -1,4 +1,4 @@ -{ config, pkgs, lib, ... }: +{ config, pkgs, lib, notlua, ... }: { imports = [ ./options.nix ]; /* @@ -14,9 +14,8 @@ # welcome to my cursed DSL programs.neovim = let - notlua = config.notlua; notlua-nvim = notlua.neovim { inherit (config.programs.neovim) plugins extraLuaPackages; }; - inherit (notlua.keywords) CALL PROP SET LET DEFUN IF APPLY OR EQ RETURN ELSE IDX MCALL LETREC; + inherit (notlua.keywords) CALL PROP SET LET DEFUN IF APPLY OR EQ RETURN ELSE IDX LETREC; inherit (notlua.utils) compile; inherit (notlua-nvim.stdlib) vim string require print; inherit (notlua-nvim.keywords) REQ REQ'; @@ -294,11 +293,14 @@ ps.cmp_luasnip ps.cmp-nvim-lsp { plugin = ps.nvim-autopairs; - config = compile "nvim_autopairs" (LET (REQ "nvim-autopairs.completion.cmp") (REQ "nvim-autopairs") (cmp-autopairs: nvim-autopairs: L [ + config = compile "nvim_autopairs" (LET + (REQ "cmp") (REQ "nvim-autopairs.completion.cmp") (REQ "nvim-autopairs") + (cmp: cmp-autopairs: nvim-autopairs: + L [ nvim-autopairs.setup { disable_filetype = [ "TelescopePrompt" "vim" ]; } _ - MCALL cmp.event "on" "confirm_done" (cmp-autopairs.on_confirm_done {}) _ + cmp.event.on cmp.event "confirm_done" (cmp-autopairs.on_confirm_done {}) _ ])); } { plugin = ps.comment-nvim; config = compile' "comment_nvim" [ diff --git a/home/common/options.nix b/home/common/options.nix index 388ae4a..1c3f132 100644 --- a/home/common/options.nix +++ b/home/common/options.nix @@ -10,10 +10,15 @@ with lib; { }; }; }; + options.wayland.windowManager.sway.vulkan = mkOption { + type = types.bool; + default = false; + description = "set WLR_RENDERER to vulkan"; + }; options.terminals = mkOption { type = with types; listOf str; description = "terminal kinds (possible values are alacritty, urxvt, kitty, foot)"; - default = ["alacritty"]; + default = [ "alacritty" ]; }; options.terminalBin = mkOption { type = types.str; diff --git a/home/common/terminal.nix b/home/common/terminal.nix index b02bed3..a4141ae 100644 --- a/home/common/terminal.nix +++ b/home/common/terminal.nix @@ -15,6 +15,7 @@ in { terminalBin = getTerminalBin (builtins.head config.terminals); terminalBinX = getTerminalBin (lib.lists.findFirst (term: term != "foot") null config.terminals); colors = { + # dont forget to change waybar.css (yes I'm lazy like that) base = [ "523b3f" # black "e66e6e" # red @@ -35,8 +36,7 @@ in { ]; foreground = "ebdadd"; background = "24101a"; - # 0.75 with opengl sway - alpha = 0.95; + alpha = if config.wayland.windowManager.sway.vulkan then 0.97 else 0.85; }; programs.tmux.shell = shell; programs.alacritty = { diff --git a/home/common/waybar.css b/home/common/waybar.css index 06e5c4c..f9efb66 100644 --- a/home/common/waybar.css +++ b/home/common/waybar.css @@ -1,4 +1,4 @@ -@define-color bg rgba(36, 16, 26, /*.75*/ .95); /*#24101ac0;*/ +@define-color bg rgba(36, 16, 26, .75); /*#24101ac0;*/ @define-color blue #87e5cf; @define-color green #8cbf73; @define-color yellow #ebbe5f; diff --git a/home/flake.lock b/home/flake.lock index df57398..5363d97 100644 --- a/home/flake.lock +++ b/home/flake.lock @@ -4,15 +4,14 @@ "inputs": { "nixpkgs": [ "nixpkgs" - ], - "utils": "utils" + ] }, "locked": { - "lastModified": 1680597706, - "narHash": "sha256-ZqJ3T+BxzjPH9TnmeUwS4Uu9ZQPeBXAFC9sUWlharT4=", + "lastModified": 1683651229, + "narHash": "sha256-HN0Mw8g1XQIrcdyzqT00YW0Uqi/V/BUUUAgvcK1pcSM=", "owner": "nix-community", "repo": "home-manager", - "rev": "ec06f419af79207b33d797064dfb3fc9dbe1df4a", + "rev": "983f8a1bb965b261492123cd8e2d07da46d4d50a", "type": "github" }, "original": { @@ -28,11 +27,11 @@ ] }, "locked": { - "lastModified": 1680655986, - "narHash": "sha256-u6gs9B6ckuL3dXjI/LdATeXltEh04DYxCk6vZtF/WEs=", + "lastModified": 1683465499, + "narHash": "sha256-7dufJBJ/AY4vd5x+2kR9Xj39ydmFf9JhzoDAF/NxeLM=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "9ba4a24198646582e208ec8cdf5e8324be23e2d7", + "rev": "6e2819c51586b34106360e261bad1e1c4d4f783b", "type": "github" }, "original": { @@ -43,10 +42,10 @@ }, "nixpkgs": { "locked": { - "lastModified": 1680669251, - "narHash": "sha256-AVNE+0u4HlI3v96KCXE9risH7NKqj0QDLLfSckYXIbA=", - "path": "/nix/store/qw9nnl2wmvx0ad0f9aqvdbw5cl5mirvc-source", - "rev": "9c8ff8b426a8b07b9e0a131ac3218740dc85ba1e", + "lastModified": 1683408522, + "narHash": "sha256-9kcPh6Uxo17a3kK3XCHhcWiV1Yu1kYj22RHiymUhMkU=", + "path": "/nix/store/zjpd6dn9kza8zl3l17cwgyifsxbvi3nb-source", + "rev": "897876e4c484f1e8f92009fd11b7d988a121a4e7", "type": "path" }, "original": { @@ -61,11 +60,11 @@ ] }, "locked": { - "lastModified": 1682122379, - "narHash": "sha256-AxO/KWnMuxTA/WrRitIwUJzc7F90BPjxdej6jLJi0So=", + "lastModified": 1682202201, + "narHash": "sha256-3r5izcrgfO2RxV1gU7aWQnGAky5Ek3wyzM+9eQtG4M4=", "owner": "chayleaf", "repo": "notlua", - "rev": "5b8280bc82fd0b4624af9256388f0f7804a1bb4d", + "rev": "cd89a08083cc43a07ac1f6ced0594fa7f49c5cf2", "type": "github" }, "original": { @@ -77,11 +76,11 @@ }, "nur": { "locked": { - "lastModified": 1680758135, - "narHash": "sha256-gmTwQ6VHbXAfXbBgeqXZyyuEb0Hhroi8IOM/nokBOwM=", + "lastModified": 1683707801, + "narHash": "sha256-fEoovtx4OXwftUoiRTnPP+dCDJKUE3KXO/rKxNqueQ8=", "owner": "nix-community", "repo": "NUR", - "rev": "9570cfc60f7ca32fdcdc4292f1e24ea5c62977bd", + "rev": "c524842d10fe65f19e0bb544b39d805e0b5d6d8e", "type": "github" }, "original": { @@ -98,21 +97,6 @@ "notlua": "notlua", "nur": "nur" } - }, - "utils": { - "locked": { - "lastModified": 1678901627, - "narHash": "sha256-U02riOqrKKzwjsxc/400XnElV+UtPUQWpANPlyazjH0=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "93a2b84fc4b70d9e089d029deacc3583435c2ed6", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } } }, "root": "root", diff --git a/home/flake.nix b/home/flake.nix index f3c9b7b..69a9dc1 100644 --- a/home/flake.nix +++ b/home/flake.nix @@ -51,10 +51,10 @@ ]; }; extraSpecialArgs = { + notlua = notlua.lib.${system}; # pkgs-wayland = nixpkgs-wayland.packages.${system}; }; modules = [ - notlua.nixosModules.default nur.nixosModules.nur ./hosts/nixmsi.nix (getPriv "nixmsi") diff --git a/home/pkgs/default.nix b/home/pkgs/default.nix index a29c07c..aa52d03 100644 --- a/home/pkgs/default.nix +++ b/home/pkgs/default.nix @@ -13,9 +13,9 @@ in clang-tools_latest = pkgs.clang-tools_15; clang_latest = pkgs.clang_15; home-daemon = callPackage ./home-daemon { }; - ghidra = pkgs.ghidra.overrideAttrs (old: { + /*ghidra = pkgs.ghidra.overrideAttrs (old: { patches = old.patches ++ [ ./ghidra-stdcall.patch ]; - }); + });*/ lalrpop = callPackage ./lalrpop { }; # pin version looking-glass-client = pkgs.looking-glass-client.overrideAttrs (old: { diff --git a/system/flake.lock b/system/flake.lock index 98a9b60..a5aac98 100644 --- a/system/flake.lock +++ b/system/flake.lock @@ -1,12 +1,15 @@ { "nodes": { "flake-utils": { + "inputs": { + "systems": "systems" + }, "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "lastModified": 1681202837, + "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", "owner": "numtide", "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "rev": "cfacdce06f30d2b68473a46042957675eebb3401", "type": "github" }, "original": { @@ -32,11 +35,11 @@ }, "impermanence": { "locked": { - "lastModified": 1675359654, - "narHash": "sha256-FPxzuvJkcO49g4zkWLSeuZkln54bLoTtrggZDJBH90I=", + "lastModified": 1682268411, + "narHash": "sha256-ICDKQ7tournRVtfM8C2II0qHiOZOH1b3dXVOCsgr11o=", "owner": "nix-community", "repo": "impermanence", - "rev": "6138eb8e737bffabd4c8fc78ae015d4fd6a7e2fd", + "rev": "df1692e2d9f1efc4300b1ea9201831730e0b817d", "type": "github" }, "original": { @@ -52,11 +55,11 @@ ] }, "locked": { - "lastModified": 1680655986, - "narHash": "sha256-u6gs9B6ckuL3dXjI/LdATeXltEh04DYxCk6vZtF/WEs=", + "lastModified": 1683465499, + "narHash": "sha256-7dufJBJ/AY4vd5x+2kR9Xj39ydmFf9JhzoDAF/NxeLM=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "9ba4a24198646582e208ec8cdf5e8324be23e2d7", + "rev": "6e2819c51586b34106360e261bad1e1c4d4f783b", "type": "github" }, "original": { @@ -67,11 +70,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1680070330, - "narHash": "sha256-aoT2YZCd9LEtiEULFLIF0ykKydgE72X8gw/k9/pRS5I=", + "lastModified": 1683269598, + "narHash": "sha256-KNsb+nBbB1Fmxd07dt4E0KXMT4YeKJB7gQaA6Xfk+mo=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "a6aa8174fa61e55bd7e62d35464d3092aefe0421", + "rev": "51559e691f1493a26f94f1df1aaf516bb507e78b", "type": "github" }, "original": { @@ -82,11 +85,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1680669251, - "narHash": "sha256-AVNE+0u4HlI3v96KCXE9risH7NKqj0QDLLfSckYXIbA=", + "lastModified": 1683408522, + "narHash": "sha256-9kcPh6Uxo17a3kK3XCHhcWiV1Yu1kYj22RHiymUhMkU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9c8ff8b426a8b07b9e0a131ac3218740dc85ba1e", + "rev": "897876e4c484f1e8f92009fd11b7d988a121a4e7", "type": "github" }, "original": { @@ -114,11 +117,11 @@ ] }, "locked": { - "lastModified": 1680747499, - "narHash": "sha256-E9rcxSTsqRqNd4SD+D/4aqm3qfFyVw0S9YseCks7h+c=", + "lastModified": 1683685144, + "narHash": "sha256-HZBieMZj9Rp+WtbGiK5JaUciZwJ/2YX6LRe5z8jkfow=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "8ad3b5ee01a2074b54274216ff2cf0ab844a7426", + "rev": "74e44edb87aeed50798f5b81795ebad250d4a0c0", "type": "github" }, "original": { @@ -127,6 +130,21 @@ "type": "github" } }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "utils": { "inputs": { "flake-utils": "flake-utils_2" diff --git a/system/hosts/nixmsi.nix b/system/hosts/nixmsi.nix index a15ae93..5936db7 100644 --- a/system/hosts/nixmsi.nix +++ b/system/hosts/nixmsi.nix @@ -9,6 +9,27 @@ let dataPart = "/dev/disk/by-uuid/f1447692-fa7c-4bd6-9cb5-e44c13fddfe3"; datarootUuid = "fa754b1e-ac83-4851-bf16-88efcd40b657"; dataroot = "/dev/disk/by-uuid/${datarootUuid}"; + /* + # for old kernel versions + zenKernels = pkgs.callPackage "${nixpkgs}/pkgs/os-specific/linux/kernel/zen-kernels.nix"; + zenKernel = (version: sha256: (zenKernels { + kernelPatches = [ + pkgs.linuxKernel.kernelPatches.bridge_stp_helper + pkgs.linuxKernel.kernelPatches.request_key_helper + ]; + argsOverride = { + src = pkgs.fetchFromGitHub { + owner = "zen-kernel"; + repo = "zen-kernel"; + rev = "v${version}-zen1"; + inherit sha256; + }; + inherit version; + modDirVersion = lib.versions.pad 3 "${version}-zen1"; + }; + }).zen); + zenKernelPackages = version: sha256: pkgs.linuxPackagesFor (zenKernel version sha256); + */ in { system.stateVersion = "22.11"; @@ -45,6 +66,11 @@ in { "resume_offset=533760" "fbcon=font:TER16x32" "consoleblank=60" + # disable PSR to *hopefully* avoid random hangs + # this one didnt help + "amdgpu.dcdebugmask=0x10" + # maybe this one will? + "amdgpu.noretry=0" ]; loader = { grub = { @@ -65,29 +91,12 @@ in { "vm.swappiness" = 40; }; kernelPackages = lib.mkDefault pkgs.linuxPackages_zen; + /*kernelPackages = zenKernelPackages "6.1.9" "0fsmcjsawxr32fxhpp6sgwfwwj8kqymy0rc6vh4qli42fqmwdjgv";*/ }; # for testing different zen kernel versions: - # specialisation = let - # zenKernels = pkgs.callPackage "${nixpkgs}/pkgs/os-specific/linux/kernel/zen-kernels.nix"; - # zenKernel = (version: sha256: (zenKernels { - # kernelPatches = [ - # pkgs.linuxKernel.kernelPatches.bridge_stp_helper - # pkgs.linuxKernel.kernelPatches.request_key_helper - # ]; - # argsOverride = { - # src = pkgs.fetchFromGitHub { - # owner = "zen-kernel"; - # repo = "zen-kernel"; - # rev = "v${version}-zen1"; - # inherit sha256; - # }; - # inherit version; - # modDirVersion = lib.versions.pad 3 "${version}-zen1"; - # }; - # }).zen); - # in { - # zen619.configuration.boot.kernelPackages = pkgs.linuxPackagesFor (zenKernel "6.1.9" "0fsmcjsawxr32fxhpp6sgwfwwj8kqymy0rc6vh4qli42fqmwdjgv"); + # specialisation = { + # zen619.configuration.boot.kernelPackages = zenKernelPackages "6.1.9" "0fsmcjsawxr32fxhpp6sgwfwwj8kqymy0rc6vh4qli42fqmwdjgv"; # }; nixpkgs.config.allowUnfreePredicate = pkg: (lib.getName pkg) == "steam-original"; @@ -99,6 +108,7 @@ in { opengl.extraPackages = with pkgs; [ vulkan-validation-layers ]; }; + services.tlp.enable = true; services.tlp.settings = { USB_EXCLUDE_PHONE = 1; START_CHARGE_THRESH_BAT0 = 75; @@ -235,9 +245,14 @@ in { # I couldn't get lightdm to start sway, so let's just do this displayManager.startx.enable = true; windowManager.i3.enable = true; - };*/ + }; + */ + programs.sway.enable = true; programs.firejail.enable = true; + # doesn't work: + # programs.wireshark.enable = true; + # users.groups.wireshark.members = [ "user "]; environment.systemPackages = with pkgs; [ vim wget diff --git a/system/modules/impermanence.nix b/system/modules/impermanence.nix index e4a59dd..3f4ead7 100644 --- a/system/modules/impermanence.nix +++ b/system/modules/impermanence.nix @@ -37,7 +37,7 @@ in { }; config = lib.mkIf cfg.enable { # as weird as it sounds, I won't use tmpfs for /tmp in case I'll have to put files over 2GB there - boot.cleanTmpDir = lib.mkIf cfg.persistTmp true; + boot.tmp.cleanOnBoot = lib.mkIf cfg.persistTmp true; environment.persistence.${toString cfg.path} = { hideMounts = true; directories = map toString ([