From 2b4dfd663b577b69ea020bd1cfd6a23f708e0d94 Mon Sep 17 00:00:00 2001 From: LordGrimmauld Date: Thu, 29 Feb 2024 10:23:21 +0100 Subject: [PATCH] current working state trying to get plasma6 working --- flake.lock | 180 +++--------------------------------- flake.nix | 9 +- modules/nvidia.nix | 2 +- modules/sunshine.nix | 18 ++++ modules/system-packages.nix | 14 +-- modules/toolchains.nix | 45 ++++++++- modules/users.nix | 7 +- modules/xserver.nix | 2 +- 8 files changed, 89 insertions(+), 188 deletions(-) create mode 100644 modules/sunshine.nix diff --git a/flake.lock b/flake.lock index fdb187d..d8ffc06 100644 --- a/flake.lock +++ b/flake.lock @@ -44,22 +44,6 @@ } }, "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { "flake": false, "locked": { "lastModified": 1673956053, @@ -93,46 +77,6 @@ "type": "github" } }, - "flake-utils": { - "inputs": { - "systems": "systems_2" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "plasma6", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1703887061, - "narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, "home-manager": { "inputs": { "nixpkgs": [ @@ -160,11 +104,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1707614138, - "narHash": "sha256-xdmNhDnlDF5H/yT1wLGqwVyphjj03lmA/e3SGXyC3DU=", + "lastModified": 1709168939, + "narHash": "sha256-btWt7NRsA8Hysgin5su77nIdmZZbxsKW5qqyj/bBlF0=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "a5de885438ecce695b4b7a110974c33f0eb507e3", + "rev": "22586cc4910284c9c7306f19dcd63ac0adbcbcc9", "type": "github" }, "original": { @@ -207,29 +151,13 @@ "type": "github" } }, - "nixpkgs-stable": { - "locked": { - "lastModified": 1704874635, - "narHash": "sha256-YWuCrtsty5vVZvu+7BchAxmcYzTMfolSPP5io8+WYCg=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "3dc440faeee9e889fe2d1b4d25ad0f430d449356", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-23.11", - "repo": "nixpkgs", - "type": "github" - } - }, "nixpkgs_2": { "locked": { - "lastModified": 1707451808, - "narHash": "sha256-UwDBUNHNRsYKFJzyTMVMTF5qS4xeJlWoeyJf+6vvamU=", + "lastModified": 1708751719, + "narHash": "sha256-0uWOKSpXJXmXswOvDM5Vk3blB74apFB6rNGWV5IjoN0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "442d407992384ed9c0e6d352de75b69079904e4e", + "rev": "f63ce824cd2f036216eb5f637dfef31e1a03ee89", "type": "github" }, "original": { @@ -241,106 +169,41 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1707934190, - "narHash": "sha256-pheFtJ6eB80oGeehOU8lXkxr6dXWmlggS0sNt/ZOFWs=", - "ref": "nixos-unstable", - "rev": "fd93f45f542133d046ddeaeba13860d2e4a3eef2", - "revCount": 583448, - "type": "git", - "url": "file:///home/grimmauld/nixpkgs" - }, - "original": { - "ref": "nixos-unstable", - "type": "git", - "url": "file:///home/grimmauld/nixpkgs" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1706812040, - "narHash": "sha256-pxgWZApBfqHi4I6Hz7nL/rSt0vGE62HvBwvuVXFXeOk=", + "lastModified": 1709150264, + "narHash": "sha256-HofykKuisObPUfj0E9CJVfaMhawXkYx3G8UIFR/XQ38=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5c5bca5a97c0982ea37a2fcf6d3860349b9f9a35", + "rev": "9099616b93301d5cf84274b184a3a5ec69e94e08", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable-small", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "plasma6": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs_4", - "pre-commit-hooks": "pre-commit-hooks" - }, - "locked": { - "lastModified": 1707218112, - "narHash": "sha256-GXwhrTyeIj38aBi8t6fxasuJ3h2AhvxDypAxQjKrrTY=", - "owner": "nix-community", - "repo": "kde2nix", - "rev": "285ae35495f7a39aacf91598ecf154035bc5d2e8", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "kde2nix", - "type": "github" - } - }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat", - "flake-utils": [ - "plasma6", - "flake-utils" - ], - "gitignore": "gitignore", - "nixpkgs": [ - "plasma6", - "nixpkgs" - ], - "nixpkgs-stable": "nixpkgs-stable" - }, - "locked": { - "lastModified": 1706424699, - "narHash": "sha256-Q3RBuOpZNH2eFA1e+IHgZLAOqDD9SKhJ/sszrL8bQD4=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "7c54e08a689b53c8a1e5d70169f2ec9e2a68ffaf", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "type": "github" - } - }, "root": { "inputs": { "agenix": "agenix", "nix-gaming": "nix-gaming", "nixpkgs": "nixpkgs_3", - "plasma6": "plasma6", "swayfx": "swayfx" } }, "swayfx": { "inputs": { - "flake-compat": "flake-compat_2", + "flake-compat": "flake-compat", "nixpkgs": [ "nixpkgs" ] }, "locked": { - "lastModified": 1704454987, - "narHash": "sha256-vGc23vf8C1WIdaUgEs3XqvCU1ag5soQKZnytUsCRpEw=", + "lastModified": 1707986911, + "narHash": "sha256-kRWXQnUkMm5HjlDX9rBq8lowygvbK9+ScAOhiySR3KY=", "owner": "WillPower3309", "repo": "swayfx", - "rev": "f0ecffe593574593ec99c104fa12e4bfd593b0f2", + "rev": "2bd366f3372d6f94f6633e62b7f7b06fcf316943", "type": "github" }, "original": { @@ -363,21 +226,6 @@ "repo": "default", "type": "github" } - }, - "systems_2": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 9e88747..943a90c 100644 --- a/flake.nix +++ b/flake.nix @@ -3,18 +3,17 @@ inputs = { nixpkgs = { - url = "git+file:///home/grimmauld/nixpkgs?ref=nixos-unstable"; + url = "github:NixOS/nixpkgs/nixos-unstable"; # git+file:///home/grimmauld/nixpkgs?ref=nixos-unstable"; }; agenix.url = "github:ryantm/agenix"; swayfx = { url = "github:WillPower3309/swayfx"; inputs.nixpkgs.follows = "nixpkgs"; }; - plasma6.url = "github:nix-community/kde2nix"; nix-gaming.url = "github:fufexan/nix-gaming"; }; - outputs = inputs @ { self, agenix, nix-gaming, nixpkgs, plasma6, swayfx, ... }: let + outputs = inputs @ { self, agenix, nix-gaming, nixpkgs, swayfx, ... }: let system = "x86_64-linux"; # pkg-overlays = import nixpkgs { @@ -31,13 +30,13 @@ specialArgs = { inherit inputs; }; modules = [ # ({ config, pkgs, ... }: { nixpkgs.overlays = [ (import ./overlay.nix {inherit inputs system;} ) ]; }) - plasma6.nixosModules.default agenix.nixosModules.default nix-gaming.nixosModules.pipewireLowLatency # ./kernel.nix ./configuration.nix # ./modules/accessibility.nix ./modules/sway.nix +# ./modules/sunshine.nix ./modules/localisation.nix ./modules/users.nix ./modules/tlp.nix @@ -54,7 +53,7 @@ ./modules/opengl.nix ./modules/kvm.nix ./modules/toolchains.nix - ./cachix.nix +# ./cachix.nix { environment.systemPackages = [ agenix.packages.${system}.default ]; } ]; }; diff --git a/modules/nvidia.nix b/modules/nvidia.nix index 97d481c..311bb4b 100644 --- a/modules/nvidia.nix +++ b/modules/nvidia.nix @@ -24,7 +24,7 @@ hardware.nvidia = { nvidiaSettings = true; # Optionally, you may need to select the appropriate driver version for your specific GPU. - package = config.boot.kernelPackages.nvidiaPackages.stable; + package = config.boot.kernelPackages.nvidiaPackages.beta; }; hardware.nvidia.prime = { diff --git a/modules/sunshine.nix b/modules/sunshine.nix new file mode 100644 index 0000000..ab9ab21 --- /dev/null +++ b/modules/sunshine.nix @@ -0,0 +1,18 @@ +{pkgs, lib, config, ...} : { + environment.systemPackages = with pkgs; [ + sunshine + ]; + + security.wrappers = { + sunshine = { + owner = "root"; + group = "root"; + capabilities = "cap_sys_admin+p"; + source = "${pkgs.sunshine}/bin/sunshine"; + }; + }; + + services.udev.packages = with pkgs; [ + (writeTextDir "lib/udev/rules.d/85-sunshine.rules" ''KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess"'') + ]; +} diff --git a/modules/system-packages.nix b/modules/system-packages.nix index 57e1aab..9ab6bcc 100644 --- a/modules/system-packages.nix +++ b/modules/system-packages.nix @@ -6,10 +6,7 @@ virtualisation.spiceUSBRedirection.enable = true; # security.wrappers.spice-client-glib-usb-acl-helper.source = "${pkgs.spice_gtk}/bin/spice-client-glib-usb-acl-helper"; programs.droidcam.enable = true; - environment.systemPackages = [ - pkgs.pkgsCross.aarch64-multiplatform.ubootQemuAarch64 -# pkgs.pkgsCross.aarch64-multiplatform.OVMF.fd # AAVMF - ] ++ (with pkgs; [ + environment.systemPackages = with pkgs; [ spice-gtk wget tree @@ -38,11 +35,8 @@ scipy ])) - libsForQt5.audiocd-kio -# libsForQt5.libkcompactdisc -# libsForQt5.kio-extras -# libsForQt5.phonon -# libsForQt5.qt5.qtmultimedia +# libsForQt5. + kdePackages.audiocd-kio (writeShellScriptBin "primerun" '' export __NV_PRIME_RENDER_OFFLOAD=1 @@ -55,5 +49,5 @@ exec "$@" (writeShellScriptBin "rebuild" '' pkexec nixos-rebuild switch --flake /home/grimmauld/grimm-nixos-laptop '') - ]); + ]; } diff --git a/modules/toolchains.nix b/modules/toolchains.nix index aec4a5b..41cc72d 100644 --- a/modules/toolchains.nix +++ b/modules/toolchains.nix @@ -6,6 +6,16 @@ in { (writeShellScriptBin "systemd-owner" "systemctl show -pUser,UID $@") (writeShellScriptBin "nix-referrers" "nix-store --query --referrers $@") mkpasswd + cargo + gcc + rustc + rustfmt + rust-analyzer + jdk17 + python3 + pkg-config + imgui +# nodejs_21 # ugh.... somehow nvim needs node now?!? ]; programs.git = { @@ -39,10 +49,41 @@ in { set hidden set fileencodings=utf-8 set nocompatible - ''; + set clipboard+=unnamedplus + if filereadable($HOME . "/.vimrc") + source ~/.vimrc + endif +''; packages.myVimPackage = with pkgs.vimPlugins; { # loaded on launch - start = [ vim-nix vim-scala fugitive autoclose-nvim ]; + start = [ + vim-nix + vim-scala + fugitive + nvim-lspconfig +# autoclose-nvim +# coc-nvim +# mason-nvim +# mason-lspconfig-nvim +# coc-rust-analyzer + rust-tools-nvim + vim-vsnip + cmp-path + cmp-nvim-lsp-signature-help + cmp-nvim-lua + cmp-buffer + cmp-vsnip + nvim-dap + nvim-treesitter-parsers.rust + nvim-treesitter-parsers.lua + nvim-treesitter-parsers.toml + nvim-treesitter-parsers.c + nvim-treesitter-parsers.vimdoc + nvim-treesitter + vimspector + snippets-nvim + ]; + # manually loadable by calling `:packadd $plugin-name` opt = [ ]; }; diff --git a/modules/users.nix b/modules/users.nix index 9a33719..950a90f 100644 --- a/modules/users.nix +++ b/modules/users.nix @@ -15,19 +15,20 @@ element-desktop nmap ghidra - firefox-esr + firefox kcalc rmview krita + kicad spicetify-cli prusa-slicer freecad openscad - blender + # blender gomuks fbcat wootility - (callPackage ./theseus-modrinth.nix {}) +# (callPackage ./theseus-modrinth.nix {}) # osu-lazer-bin (pkgs.symlinkJoin { name = "osu"; diff --git a/modules/xserver.nix b/modules/xserver.nix index d9620fe..4d1d179 100644 --- a/modules/xserver.nix +++ b/modules/xserver.nix @@ -8,7 +8,7 @@ defaultSession = "plasma"; }; desktopManager = { - plasma5.enable = true; + plasma6.enable = true; # xfce.enable = true; }; };