diff --git a/flake.lock b/flake.lock index f2f2313..dcbcbdc 100644 --- a/flake.lock +++ b/flake.lock @@ -176,8 +176,12 @@ }, "hyprland": { "inputs": { - "hyprland-protocols": "hyprland-protocols", - "nixpkgs": "nixpkgs_2", + "hyprland-protocols": [ + "hyprland-protocols" + ], + "nixpkgs": [ + "nixpkgs" + ], "wlroots": "wlroots", "xdph": "xdph" }, @@ -197,7 +201,7 @@ }, "hyprland-contrib": { "inputs": { - "nixpkgs": "nixpkgs_3" + "nixpkgs": "nixpkgs_2" }, "locked": { "lastModified": 1687033460, @@ -216,7 +220,6 @@ "hyprland-protocols": { "inputs": { "nixpkgs": [ - "hyprland", "nixpkgs" ] }, @@ -480,22 +483,6 @@ } }, "nixpkgs_2": { - "locked": { - "lastModified": 1688500189, - "narHash": "sha256-djYYiY4lzJOlXOnTHytH6BUugrxHDZjuGxTSrU4gt4M=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "78419edadf0fabbe5618643bd850b2f2198ed060", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { "locked": { "lastModified": 1658161305, "narHash": "sha256-X/nhnMCa1Wx4YapsspyAs6QYz6T/85FofrI6NpdPDHg=", @@ -511,7 +498,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_3": { "locked": { "lastModified": 1688566749, "narHash": "sha256-3Og5xbNk1qncLWl2zrrL/k80UqRI/nEGPEbzz306Izk=", @@ -527,7 +514,7 @@ "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_4": { "locked": { "lastModified": 1667292599, "narHash": "sha256-7ISOUI1aj6UKMPIL+wwthENL22L3+A9V+jS8Is3QsRo=", @@ -543,7 +530,7 @@ "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_5": { "locked": { "lastModified": 1667085676, "narHash": "sha256-jPHYYoSdrV3ypWG4oi9SUeI2MU6dLjxM88+9io5Rrx0=", @@ -636,23 +623,25 @@ "home-manager": "home-manager", "hyprland": "hyprland", "hyprland-contrib": "hyprland-contrib", + "hyprland-protocols": "hyprland-protocols", "idris2": "idris2", "java": "java", "nix-on-droid": "nix-on-droid", "nixos-generators": "nixos-generators", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_3", "nixpkgs-unstable": "nixpkgs-unstable", "quilt-server": "quilt-server", "scripts": "scripts", "sops-nix": "sops-nix", - "wsl": "wsl" + "wsl": "wsl", + "xdph": "xdph_2" } }, "scripts": { "inputs": { "flake-utils": "flake-utils_4", - "nixpkgs": "nixpkgs_5", + "nixpkgs": "nixpkgs_4", "swaywm-toggler": "swaywm-toggler" }, "locked": { @@ -694,7 +683,7 @@ "swaywm-toggler": { "inputs": { "flake-utils": "flake-utils_5", - "nixpkgs": "nixpkgs_6" + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1667366374, @@ -835,6 +824,29 @@ "repo": "xdg-desktop-portal-hyprland", "type": "github" } + }, + "xdph_2": { + "inputs": { + "hyprland-protocols": [ + "hyprland-protocols" + ], + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1685385764, + "narHash": "sha256-r+XMyOoRXq+hlfjayb+fyi9kq2JK48TrwuNIAXqlj7U=", + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "rev": "4d9ff0c17716936e0b5ca577a39e263633901ed1", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index bed6547..b346f0b 100644 --- a/flake.nix +++ b/flake.nix @@ -9,7 +9,20 @@ url = "github:nix-community/home-manager/release-23.05"; inputs.nixpkgs.follows = "nixpkgs"; }; - hyprland.url = "github:hyprwm/Hyprland"; + hyprland-protocols = { + url = "github:hyprwm/hyprland-protocols"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + hyprland = { + url = "github:hyprwm/Hyprland"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.hyprland-protocols.follows = "hyprland-protocols"; + }; + xdph = { + url = "github:hyprwm/xdg-desktop-portal-hyprland"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.hyprland-protocols.follows = "hyprland-protocols"; + }; hyprland-contrib.url = "github:hyprwm/contrib"; nix-on-droid = { url = "github:t184256/nix-on-droid"; diff --git a/home-manager/linux/programs/hyprland.nix b/home-manager/linux/programs/hyprland.nix index 86e9220..b66fc63 100644 --- a/home-manager/linux/programs/hyprland.nix +++ b/home-manager/linux/programs/hyprland.nix @@ -1,5 +1,13 @@ { config, lib, pkgs, inputs, ... }@args: -let nathan = config.nathan; +let + nathan = config.nathan; + portal = + inputs.xdph.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland.override { + hyprland-share-picker = + inputs.xdph.packages.${pkgs.stdenv.hostPlatform.system}.hyprland-share-picker.override { + hyprland = config.wayland.windowManager.hyprland.package; + }; + }; in with lib; { imports = [ ./desktop/waybar.nix @@ -49,6 +57,9 @@ in with lib; { env = SDL_VIDEODRIVER,wayland env = CLUTTER_BACKEND,wayland + # Make sure only the hyprland desktop portal is available + env = XDG_DESKTOP_PORTAL_DIR,${portal}/share/xdg-desktop-portal/portals + input { kb_layout = us kb_variant =