diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..8c6b43f --- /dev/null +++ b/flake.lock @@ -0,0 +1,249 @@ +{ + "nodes": { + "dotfiles": { + "flake": false, + "locked": { + "lastModified": 1778966846, + "narHash": "sha256-N7HUWD3dliyPDXA5qXhuma5segnnopgPo2nv5iFaeXc=", + "ref": "refs/heads/main", + "rev": "c0706258b1ff22c70f6c0e51c4b812e63703f620", + "revCount": 6244, + "submodules": true, + "type": "git", + "url": "https://github.com/end-4/dots-hyprland" + }, + "original": { + "submodules": true, + "type": "git", + "url": "https://github.com/end-4/dots-hyprland" + } + }, + "firefox-addons": { + "flake": false, + "locked": { + "lastModified": 1784402804, + "narHash": "sha256-NKjHErNuyO2x+YBUNOJy/8uKXfuMX60SLFuvZiMYdA8=", + "owner": "rycee", + "repo": "nur-expressions", + "rev": "775bd8e526823ab58efe5d1fc269f2a60c3de2c1", + "type": "gitlab" + }, + "original": { + "owner": "rycee", + "repo": "nur-expressions", + "type": "gitlab" + } + }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "illogical-flake", + "nur", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "google-sans-flex": { + "flake": false, + "locked": { + "lastModified": 1763459024, + "narHash": "sha256-HMAS0L/Tsqyl1xI16cyIzg9LEb6Dyq91JY4wqFQV9Vs=", + "owner": "end-4", + "repo": "google-sans-flex", + "rev": "251aa5abd30496368f634e54ce2a508fe5a2fdfa", + "type": "github" + }, + "original": { + "owner": "end-4", + "repo": "google-sans-flex", + "type": "github" + } + }, + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1784407317, + "narHash": "sha256-iZrxHToDJWnvt+5LGAtvuQMTy1NZYlNEKbKaVtBJNcc=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "39411a8e12a5526d992e65bc7e3dc9a4414d6713", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "hyprland-preview-share-picker": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1782052593, + "narHash": "sha256-XE6RD/4Mhw/ZRBj0v94kLOERElat5V+e/X0L9eUGf7M=", + "ref": "refs/heads/master", + "rev": "e2f30ff85486e557018523da45ccbc846e3a499c", + "revCount": 55, + "submodules": true, + "type": "git", + "url": "https://github.com/WhySoBad/hyprland-preview-share-picker" + }, + "original": { + "submodules": true, + "type": "git", + "url": "https://github.com/WhySoBad/hyprland-preview-share-picker" + } + }, + "illogical-flake": { + "inputs": { + "dotfiles": "dotfiles", + "nixpkgs": [ + "nixpkgs" + ], + "nur": "nur", + "quickshell": "quickshell" + }, + "locked": { + "lastModified": 1779068758, + "narHash": "sha256-7osZ24TmUVDWZDxQ8Bi/P6GYiqTWw5azNWaVd+GfohY=", + "owner": "soymou", + "repo": "illogical-flake", + "rev": "8629ef302b956cf6ab0089338a867dbe844156fd", + "type": "github" + }, + "original": { + "owner": "soymou", + "repo": "illogical-flake", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1784796856, + "narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e2587caef70cea85dd97d7daab492899902dbf5d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nur": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": [ + "illogical-flake", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1779066378, + "narHash": "sha256-GqKhLVZTmZa68mLlCat57m54aeYPhrNAPVTLd2pGKYk=", + "owner": "nix-community", + "repo": "NUR", + "rev": "ab477ab3a75a85a68a80d9d26a572f9de9742808", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NUR", + "type": "github" + } + }, + "quickshell": { + "inputs": { + "nixpkgs": [ + "illogical-flake", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1778488696, + "narHash": "sha256-QSWgYuZUCNUJ/cxmaq83WkcT7lHQDDfsPVgH+96kIl0=", + "ref": "refs/heads/master", + "rev": "7d1c9a9c6721606b129829134d6f614f015621e2", + "revCount": 818, + "type": "git", + "url": "https://git.outfoxxed.me/outfoxxed/quickshell" + }, + "original": { + "type": "git", + "url": "https://git.outfoxxed.me/outfoxxed/quickshell" + } + }, + "root": { + "inputs": { + "firefox-addons": "firefox-addons", + "google-sans-flex": "google-sans-flex", + "home-manager": "home-manager", + "hyprland-preview-share-picker": "hyprland-preview-share-picker", + "illogical-flake": "illogical-flake", + "nixpkgs": "nixpkgs", + "spicetify-nix": "spicetify-nix" + } + }, + "spicetify-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ], + "systems": "systems" + }, + "locked": { + "lastModified": 1785048222, + "narHash": "sha256-LjFVfwxensz76SjnvofF1Jsw+xTLd8Qp31W0J6nh2XI=", + "owner": "Gerg-L", + "repo": "spicetify-nix", + "rev": "17e524f330c282d31c32dfe076222d4a12277886", + "type": "github" + }, + "original": { + "owner": "Gerg-L", + "repo": "spicetify-nix", + "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" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix index 32655f5..3297c90 100644 --- a/flake.nix +++ b/flake.nix @@ -17,6 +17,37 @@ # `dotfiles` input (this is the only source-override mechanism): # inputs.dotfiles.url = "git+https://github.com/end-4/dots-hyprland?submodules=1&rev="; }; + + # GTK4 screenshare picker with live window/monitor previews — replaces the + # bare Qt hyprland-share-picker bundled with XDPH. Needs submodules. + hyprland-preview-share-picker = { + url = "git+https://github.com/WhySoBad/hyprland-preview-share-picker?submodules=1"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + # Declarative Firefox extensions (rycee's firefox-addons, the set behind + # nur.repos.rycee.firefox-addons — avoids importing all of NUR). Imported + # as a source tree via callPackage rather than its flake output so the + # addons evaluate under the system nixpkgs (needed for allowUnfree, e.g. + # the 1Password extension). + firefox-addons = { + url = "gitlab:rycee/nur-expressions"; + flake = false; + }; + + # Main UI font of the current end-4 dots. Their installer clones this repo + # directly (the font is Google-proprietary, so no distro packages it). + google-sans-flex = { + url = "github:end-4/google-sans-flex"; + flake = false; + }; + + # Declarative Spicetify (Spotify client mods). The home-manager module + # installs its own wrapped Spotify — pkgs.spotify must NOT be added anywhere. + spicetify-nix = { + url = "github:Gerg-L/spicetify-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = { nixpkgs, home-manager, ... }@inputs: {