diff --git a/flake.lock b/flake.lock index ef9df2a..4d45d4b 100644 --- a/flake.lock +++ b/flake.lock @@ -88,6 +88,21 @@ "type": "github" } }, + "blank": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, "brew-src": { "flake": false, "locked": { @@ -139,6 +154,59 @@ "type": "github" } }, + "crane_2": { + "inputs": { + "flake-compat": "flake-compat_4", + "flake-utils": "flake-utils_3", + "nixpkgs": [ + "watershot", + "std", + "paisano-mdbook-preprocessor", + "nixpkgs" + ], + "rust-overlay": "rust-overlay_2" + }, + "locked": { + "lastModified": 1676162383, + "narHash": "sha256-krUCKdz7ebHlFYm/A7IbKDnj2ZmMMm3yIEQcooqm7+E=", + "owner": "ipetkov", + "repo": "crane", + "rev": "6fb400ec631b22ccdbc7090b38207f7fb5cfb5f2", + "type": "github" + }, + "original": { + "owner": "ipetkov", + "repo": "crane", + "type": "github" + } + }, + "devshell": { + "inputs": { + "flake-utils": [ + "watershot", + "std", + "flake-utils" + ], + "nixpkgs": [ + "watershot", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1682700442, + "narHash": "sha256-qjaAAcCYgp1pBBG7mY9z95ODUBZMtUpf0Qp3Gt/Wha0=", + "owner": "numtide", + "repo": "devshell", + "rev": "fb6673fe9fe4409e3f43ca86968261e970918a83", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, "disko": { "inputs": { "nixpkgs": [ @@ -160,6 +228,52 @@ "type": "github" } }, + "dmerge": { + "inputs": { + "nixlib": [ + "watershot", + "std", + "nixpkgs" + ], + "yants": [ + "watershot", + "std", + "yants" + ] + }, + "locked": { + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "data-merge", + "type": "github" + } + }, + "fenix": { + "inputs": { + "nixpkgs": "nixpkgs_3", + "rust-analyzer-src": "rust-analyzer-src" + }, + "locked": { + "lastModified": 1677306201, + "narHash": "sha256-VZ9x7qdTosFvVsrpgFHrtYfT6PU3yMIs7NRYn9ELapI=", + "owner": "nix-community", + "repo": "fenix", + "rev": "0923f0c162f65ae40261ec940406049726cfeab4", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "fenix", + "type": "github" + } + }, "firefox-gnome-theme": { "flake": false, "locked": { @@ -224,6 +338,22 @@ "type": "github" } }, + "flake-compat_4": { + "flake": false, + "locked": { + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -302,6 +432,36 @@ "type": "github" } }, + "flake-utils_2": { + "locked": { + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_3": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "fromYaml": { "flake": false, "locked": { @@ -464,6 +624,28 @@ "type": "github" } }, + "incl": { + "inputs": { + "nixlib": [ + "watershot", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1669263024, + "narHash": "sha256-E/+23NKtxAqYG/0ydYgxlgarKnxmDbg6rCMWnOBqn9Q=", + "owner": "divnix", + "repo": "incl", + "rev": "ce7bebaee048e4cd7ebdb4cee7885e00c4e2abca", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "incl", + "type": "github" + } + }, "lanzaboote": { "inputs": { "crane": "crane", @@ -505,6 +687,33 @@ "type": "github" } }, + "n2c": { + "inputs": { + "flake-utils": [ + "watershot", + "std", + "flake-utils" + ], + "nixpkgs": [ + "watershot", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1677330646, + "narHash": "sha256-hUYCwJneMjnxTvj30Fjow6UMJUITqHlpUGpXMPXUJsU=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "ebca8f58d450cae1a19c07701a5a8ae40afc9efc", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, "nix-darwin": { "inputs": { "nixpkgs": [ @@ -559,6 +768,38 @@ "type": "github" } }, + "nixago": { + "inputs": { + "flake-utils": [ + "watershot", + "std", + "flake-utils" + ], + "nixago-exts": [ + "watershot", + "std", + "blank" + ], + "nixpkgs": [ + "watershot", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1683210100, + "narHash": "sha256-bhGDOlkWtlhVECpoOog4fWiFJmLCpVEg09a40aTjCbw=", + "owner": "nix-community", + "repo": "nixago", + "rev": "1da60ad9412135f9ed7a004669fdcf3d378ec630", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1748162331, @@ -604,6 +845,37 @@ "type": "indirect" } }, + "nixpkgs_3": { + "locked": { + "lastModified": 1677063315, + "narHash": "sha256-qiB4ajTeAOVnVSAwCNEEkoybrAlA+cpeiBxLobHndE8=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "988cc958c57ce4350ec248d2d53087777f9e1949", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nosys": { + "locked": { + "lastModified": 1668010795, + "narHash": "sha256-JBDVBnos8g0toU7EhIIqQ1If5m/nyBqtHhL3sicdPwI=", + "owner": "divnix", + "repo": "nosys", + "rev": "feade0141487801c71ff55623b421ed535dbdefa", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "nosys", + "type": "github" + } + }, "nur": { "inputs": { "flake-parts": [ @@ -654,6 +926,113 @@ "type": "github" } }, + "paisano": { + "inputs": { + "nixpkgs": [ + "watershot", + "std", + "nixpkgs" + ], + "nosys": "nosys", + "yants": [ + "watershot", + "std", + "yants" + ] + }, + "locked": { + "lastModified": 1678949904, + "narHash": "sha256-oAoF66hYYz1RPh3lEwb9/4e4iyBAfTbQKZRRQ8gP0Ds=", + "owner": "paisano-nix", + "repo": "core", + "rev": "88f2aff10a5064551d1d4cb86800d17084489ce3", + "type": "github" + }, + "original": { + "owner": "paisano-nix", + "repo": "core", + "type": "github" + } + }, + "paisano-actions": { + "inputs": { + "nixpkgs": [ + "watershot", + "std", + "paisano-mdbook-preprocessor", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1677306424, + "narHash": "sha256-H9/dI2rGEbKo4KEisqbRPHFG2ajF8Tm111NPdKGIf28=", + "owner": "paisano-nix", + "repo": "actions", + "rev": "65ec4e080b3480167fc1a748c89a05901eea9a9b", + "type": "github" + }, + "original": { + "owner": "paisano-nix", + "repo": "actions", + "type": "github" + } + }, + "paisano-mdbook-preprocessor": { + "inputs": { + "crane": "crane_2", + "fenix": "fenix", + "nixpkgs": [ + "watershot", + "std", + "nixpkgs" + ], + "paisano-actions": "paisano-actions", + "std": [ + "watershot", + "std" + ] + }, + "locked": { + "lastModified": 1680654400, + "narHash": "sha256-Qdpio+ldhUK3zfl22Mhf8HUULdUOJXDWDdO7MIK69OU=", + "owner": "paisano-nix", + "repo": "mdbook-paisano-preprocessor", + "rev": "11a8fc47f574f194a7ae7b8b98001f6143ba4cf1", + "type": "github" + }, + "original": { + "owner": "paisano-nix", + "repo": "mdbook-paisano-preprocessor", + "type": "github" + } + }, + "paisano-tui": { + "inputs": { + "nixpkgs": [ + "watershot", + "std", + "blank" + ], + "std": [ + "watershot", + "std" + ] + }, + "locked": { + "lastModified": 1681847764, + "narHash": "sha256-mdd7PJW1BZvxy0cIKsPfAO+ohVl/V7heE5ZTAHzTdv8=", + "owner": "paisano-nix", + "repo": "tui", + "rev": "3096bad91cae73ab8ab3367d31f8a143d248a244", + "type": "github" + }, + "original": { + "owner": "paisano-nix", + "ref": "0.1.1", + "repo": "tui", + "type": "github" + } + }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ @@ -697,7 +1076,25 @@ "slippi": "slippi", "sops-nix": "sops-nix", "stylix": "stylix", - "vpn-confinement": "vpn-confinement" + "vpn-confinement": "vpn-confinement", + "watershot": "watershot" + } + }, + "rust-analyzer-src": { + "flake": false, + "locked": { + "lastModified": 1677221702, + "narHash": "sha256-1M+58rC4eTCWNmmX0hQVZP20t3tfYNunl9D/PrGUyGE=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "f5401f620699b26ed9d47a1d2e838143a18dbe3b", + "type": "github" + }, + "original": { + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" } }, "rust-overlay": { @@ -721,6 +1118,37 @@ "type": "github" } }, + "rust-overlay_2": { + "inputs": { + "flake-utils": [ + "watershot", + "std", + "paisano-mdbook-preprocessor", + "crane", + "flake-utils" + ], + "nixpkgs": [ + "watershot", + "std", + "paisano-mdbook-preprocessor", + "crane", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1675391458, + "narHash": "sha256-ukDKZw922BnK5ohL9LhwtaDAdCsJL7L6ScNEyF1lO9w=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "383a4acfd11d778d5c2efcf28376cbd845eeaedf", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "slippi": { "inputs": { "git-hooks": "git-hooks", @@ -763,6 +1191,53 @@ "type": "github" } }, + "std": { + "inputs": { + "arion": [ + "watershot", + "std", + "blank" + ], + "blank": "blank", + "devshell": "devshell", + "dmerge": "dmerge", + "flake-utils": "flake-utils_2", + "incl": "incl", + "makes": [ + "watershot", + "std", + "blank" + ], + "microvm": [ + "watershot", + "std", + "blank" + ], + "n2c": "n2c", + "nixago": "nixago", + "nixpkgs": [ + "watershot", + "nixpkgs" + ], + "paisano": "paisano", + "paisano-mdbook-preprocessor": "paisano-mdbook-preprocessor", + "paisano-tui": "paisano-tui", + "yants": "yants" + }, + "locked": { + "lastModified": 1683210511, + "narHash": "sha256-Ag85i6rHubOLB6ChsqGUyZlB2SQCjF7Seo5q12g7jJk=", + "owner": "divnix", + "repo": "std", + "rev": "562310786b998bf52bd02bf7ac6bfcc743e8d45d", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "std", + "type": "github" + } + }, "stylix": { "inputs": { "base16": "base16", @@ -922,6 +1397,49 @@ "repo": "VPN-Confinement", "type": "github" } + }, + "watershot": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ], + "std": "std" + }, + "locked": { + "lastModified": 1719268360, + "narHash": "sha256-mnBBxFwpw4KBnioCF2RG0eHSjtgRnSDxxDuaYt+T5Uk=", + "owner": "Kirottu", + "repo": "watershot", + "rev": "17225900e909a1d499f7534e4056cea7418a60d0", + "type": "github" + }, + "original": { + "owner": "Kirottu", + "repo": "watershot", + "type": "github" + } + }, + "yants": { + "inputs": { + "nixpkgs": [ + "watershot", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1667096281, + "narHash": "sha256-wRRec6ze0gJHmGn6m57/zhz/Kdvp9HS4Nl5fkQ+uIuA=", + "owner": "divnix", + "repo": "yants", + "rev": "d18f356ec25cb94dc9c275870c3a7927a10f8c3c", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 35dc94b..8818d0f 100644 --- a/flake.nix +++ b/flake.nix @@ -32,6 +32,10 @@ url = "github:nix-community/lanzaboote/v0.4.3"; inputs.nixpkgs.follows = "nixpkgs"; }; + watershot = { + url = "github:Kirottu/watershot"; + inputs.nixpkgs.follows = "nixpkgs"; + }; vpn-confinement = { url = "github:Maroka-chan/VPN-Confinement"; }; diff --git a/hosts/nixos/default.nix b/hosts/nixos/default.nix index b20e9f2..8ae186d 100644 --- a/hosts/nixos/default.nix +++ b/hosts/nixos/default.nix @@ -26,10 +26,17 @@ dates = [ "daily" ]; }; # the goats - settings.experimental-features = lib.mkDefault [ - "nix-command" - "flakes" - ]; + settings = { + substituters = [ + "https://cache.nixos.org" + ]; + trusted-public-keys = [ + ]; + experimental-features = lib.mkDefault [ + "nix-command" + "flakes" + ]; + }; }; # allow proprietary packages diff --git a/hosts/nixos/froakie/disko.nix b/hosts/nixos/froakie/disko.nix index 0409697..dd123d3 100644 --- a/hosts/nixos/froakie/disko.nix +++ b/hosts/nixos/froakie/disko.nix @@ -3,7 +3,7 @@ disk = { main = { type = "disk"; - device = "/dev/disk/by-id/nvme-PC_SN530_NVMe_WDC_512GB_210513807733"; # disk id here + device = ""; # disk id here content = { type = "gpt"; partitions = { diff --git a/modules/desktop/gaming/lutris/default.nix b/modules/desktop/gaming/lutris/default.nix index 51b9d0d..27c9dd0 100644 --- a/modules/desktop/gaming/lutris/default.nix +++ b/modules/desktop/gaming/lutris/default.nix @@ -13,6 +13,7 @@ in { config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ lutris + wine ]; }; } diff --git a/modules/desktop/gaming/steam/default.nix b/modules/desktop/gaming/steam/default.nix index 7d2f6cf..7f59b05 100644 --- a/modules/desktop/gaming/steam/default.nix +++ b/modules/desktop/gaming/steam/default.nix @@ -16,6 +16,7 @@ in { gamescopeSession.enable = true; # requires setting launch option `gamescope -- %command%` remotePlay.openFirewall = true; # open ports for remote play #dedicatedServer.openFirewall = true; # open ports for source dedicated server + protontricks.enable = true; }; }; } diff --git a/modules/system/yubikey/default.nix b/modules/system/yubikey/default.nix index e3a1523..27abd3d 100644 --- a/modules/system/yubikey/default.nix +++ b/modules/system/yubikey/default.nix @@ -43,6 +43,9 @@ in { yubikey-manager ]; + # enable smartcard + services.pcscd.enable = true; + security.pam.services = lib.mkIf (cfg.mode == "u2f") { login.u2fAuth = true; sudo.u2fAuth = true; diff --git a/users/blake/default.nix b/users/blake/default.nix index da3d0b5..f426b80 100644 --- a/users/blake/default.nix +++ b/users/blake/default.nix @@ -30,7 +30,7 @@ extraSpecialArgs = {inherit inputs;}; backupFileExtension = "bak"; useUserPackages = true; - useGlobalPkgs = true; + useGlobalPkgs = false; users = { "blake" = import ./home.nix; }; diff --git a/users/blake/dots/core/xdg/default.nix b/users/blake/dots/core/xdg/default.nix index 0b8b61f..0fc866a 100644 --- a/users/blake/dots/core/xdg/default.nix +++ b/users/blake/dots/core/xdg/default.nix @@ -45,12 +45,9 @@ in { }; # misc env variables to get things out of ~ (<3 xdg-ninja) - home.sessionVariables = - if pkgs.system == "x86_64-darwin" - then {} - else { - GOPATH = "$XDG_DATA_HOME/go"; - _JAVA_OPTIONS = ''-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java''; - }; + home.sessionVariables = { + GOPATH = "$XDG_DATA_HOME/go"; + _JAVA_OPTIONS = ''-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java''; + }; }; } diff --git a/users/blake/dots/desktop/hypr/default.nix b/users/blake/dots/desktop/hypr/default.nix index 7dd8b15..c142fb1 100644 --- a/users/blake/dots/desktop/hypr/default.nix +++ b/users/blake/dots/desktop/hypr/default.nix @@ -1,6 +1,7 @@ { pkgs, lib, + inputs, config, ... }: let @@ -17,6 +18,7 @@ in { nwg-displays posy-cursors hyprpicker + hyprshot ]; wayland.windowManager.hyprland = { @@ -134,6 +136,7 @@ in { # screenshots "$mainMod SHIFT, C, exec, hyprshot --mode region --output-folder ${home_dir}/pictures/screenshots" + ", Print, exec, hyprshot --mode output --output-folder ${home_dir}/pictures/screenshots" # multimedia ", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" @@ -285,7 +288,7 @@ in { { monitor = ""; path = "${home_dir}/.nix/users/blake/assets/pfps/pikacig.jpg"; - size = 350; + size = 325; border_color = lib.mkDefault "rgb(0047ab)"; rounding = -1; position = "0, 85"; diff --git a/users/blake/home.nix b/users/blake/home.nix index 7eb9ece..714eb96 100644 --- a/users/blake/home.nix +++ b/users/blake/home.nix @@ -40,6 +40,10 @@ in # needed for macos, linux don't mind programs.home-manager.enable = true; + nixpkgs.config = { + allowUnfree = true; + }; + # set up seperate key file just for me sops = { defaultSopsFile = ./secrets/secrets.yaml;