about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/window-managers
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2024-05-03 15:14:25 +0200
committerAlyssa Ross <hi@alyssa.is>2024-05-07 11:19:19 +0200
commitd92b2b6a1bbd322dd65a8b6f51019610d350046e (patch)
tree7f7c21927b9cc05676501f297c51eb76b49e326c /nixpkgs/pkgs/applications/window-managers
parent93c9e56b40530cc627d921cfc255c05b495d4017 (diff)
parent49050352f602fe87d16ff7b2b6a05b79eb20dc6f (diff)
downloadnixlib-d92b2b6a1bbd322dd65a8b6f51019610d350046e.tar
nixlib-d92b2b6a1bbd322dd65a8b6f51019610d350046e.tar.gz
nixlib-d92b2b6a1bbd322dd65a8b6f51019610d350046e.tar.bz2
nixlib-d92b2b6a1bbd322dd65a8b6f51019610d350046e.tar.lz
nixlib-d92b2b6a1bbd322dd65a8b6f51019610d350046e.tar.xz
nixlib-d92b2b6a1bbd322dd65a8b6f51019610d350046e.tar.zst
nixlib-d92b2b6a1bbd322dd65a8b6f51019610d350046e.zip
Merge remote-tracking branch 'nixpkgs/nixos-unstable-small'
Conflicts:
	nixpkgs/nixos/modules/services/mail/mailman.nix
	nixpkgs/nixos/modules/services/mail/public-inbox.nix
	nixpkgs/pkgs/build-support/go/module.nix
Diffstat (limited to 'nixpkgs/pkgs/applications/window-managers')
-rw-r--r--nixpkgs/pkgs/applications/window-managers/dwm/default.nix13
-rw-r--r--nixpkgs/pkgs/applications/window-managers/eww/default.nix44
-rw-r--r--nixpkgs/pkgs/applications/window-managers/fvwm/2.6.nix82
-rw-r--r--nixpkgs/pkgs/applications/window-managers/fvwm/3.nix97
-rw-r--r--nixpkgs/pkgs/applications/window-managers/gamescope/default.nix147
-rw-r--r--nixpkgs/pkgs/applications/window-managers/gamescope/shaders-path.patch13
-rw-r--r--nixpkgs/pkgs/applications/window-managers/gamescope/use-pkgconfig.patch9
-rw-r--r--nixpkgs/pkgs/applications/window-managers/hackedbox/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/window-managers/hikari/default.nix64
-rw-r--r--nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix13
-rw-r--r--nixpkgs/pkgs/applications/window-managers/hyprwm/hyprshade/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/jay/default.nix29
-rw-r--r--nixpkgs/pkgs/applications/window-managers/miriway/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/phosh/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/window-managers/phosh/phosh-mobile-settings.nix14
-rw-r--r--nixpkgs/pkgs/applications/window-managers/river/default.nix19
-rw-r--r--nixpkgs/pkgs/applications/window-managers/sommelier/default.nix17
-rw-r--r--nixpkgs/pkgs/applications/window-managers/wayfire/focus-request.nix2
-rw-r--r--nixpkgs/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/weston/default.nix4
23 files changed, 108 insertions, 512 deletions
diff --git a/nixpkgs/pkgs/applications/window-managers/dwm/default.nix b/nixpkgs/pkgs/applications/window-managers/dwm/default.nix
index 24b011040ae4..0905e3f15150 100644
--- a/nixpkgs/pkgs/applications/window-managers/dwm/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/dwm/default.nix
@@ -1,12 +1,15 @@
-{ lib, stdenv, fetchurl, libX11, libXinerama, libXft, writeText, patches ? [ ], conf ? null}:
+{ lib, stdenv, fetchurl, libX11, libXinerama, libXft, writeText, patches ? [ ], conf ? null
+# update script dependencies
+, gitUpdater
+}:
 
 stdenv.mkDerivation rec {
   pname = "dwm";
-  version = "6.4";
+  version = "6.5";
 
   src = fetchurl {
     url = "https://dl.suckless.org/dwm/${pname}-${version}.tar.gz";
-    sha256 = "sha256-+pwNaaWESFB2z8GICf1wXlwggNr7E9XnKaNkbKdwOm4=";
+    sha256 = "sha256-Ideev6ny+5MUGDbCZmy4H0eExp1k5/GyNS+blwuglyk=";
   };
 
   buildInputs = [ libX11 libXinerama libXft ];
@@ -29,6 +32,10 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
 
+  passthru.updateScript = gitUpdater {
+    url = "git://git.suckless.org/dwm";
+  };
+
   meta = with lib; {
     homepage = "https://dwm.suckless.org/";
     description = "An extremely fast, small, and dynamic window manager for X";
diff --git a/nixpkgs/pkgs/applications/window-managers/eww/default.nix b/nixpkgs/pkgs/applications/window-managers/eww/default.nix
deleted file mode 100644
index b245941fc7d4..000000000000
--- a/nixpkgs/pkgs/applications/window-managers/eww/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib
-, rustPlatform
-, fetchFromGitHub
-, pkg-config
-, wrapGAppsHook
-, gtk3
-, librsvg
-, gtk-layer-shell
-, stdenv
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "eww";
-  version = "0.5.0";
-
-  src = fetchFromGitHub {
-    owner = "elkowar";
-    repo = "eww";
-    rev = "v${version}";
-    hash = "sha256-HBBz1NDtj2TnDK5ghDLRrAOwHXDZlzclvVscYnmKGck=";
-  };
-
-  cargoHash = "sha256-IirFE714NZmppLjwbWk6fxcmRXCUFzB4oxOxBvmYu5U=";
-
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
-
-  buildInputs = [ gtk3 librsvg gtk-layer-shell ];
-
-  cargoBuildFlags = [ "--bin" "eww" ];
-
-  cargoTestFlags = cargoBuildFlags;
-
-  # requires unstable rust features
-  RUSTC_BOOTSTRAP = 1;
-
-  meta = with lib; {
-    description = "ElKowars wacky widgets";
-    homepage = "https://github.com/elkowar/eww";
-    license = licenses.mit;
-    maintainers = with maintainers; [ figsoda lom coffeeispower ];
-    mainProgram = "eww";
-    broken = stdenv.isDarwin;
-  };
-}
diff --git a/nixpkgs/pkgs/applications/window-managers/fvwm/2.6.nix b/nixpkgs/pkgs/applications/window-managers/fvwm/2.6.nix
deleted file mode 100644
index e771a170c489..000000000000
--- a/nixpkgs/pkgs/applications/window-managers/fvwm/2.6.nix
+++ /dev/null
@@ -1,82 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, cairo
-, fontconfig
-, freetype
-, fribidi
-, libXcursor
-, libXft
-, libXinerama
-, libXpm
-, libXt
-, libpng
-, librsvg
-, libstroke
-, libxslt
-, perl
-, pkg-config
-, python3Packages
-, readline
-, enableGestures ? false
-}:
-
-stdenv.mkDerivation rec {
-  pname = "fvwm";
-  version = "2.7.0";
-
-  src = fetchFromGitHub {
-    owner = "fvwmorg";
-    repo = pname;
-    rev = version;
-    hash = "sha256-KcuX8las1n8UUE/BOHj7WOeZjva5hxgpFHtATMUk3bg=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-    python3Packages.wrapPython
-  ];
-
-  buildInputs = [
-    cairo
-    fontconfig
-    freetype
-    fribidi
-    libXcursor
-    libXft
-    libXinerama
-    libXpm
-    libXt
-    libpng
-    librsvg
-    libxslt
-    perl
-    python3Packages.python
-    readline
-  ] ++ lib.optional enableGestures libstroke;
-
-  pythonPath = [
-    python3Packages.pyxdg
-  ];
-
-  configureFlags = [
-    "--enable-mandoc"
-    "--disable-htmldoc"
-  ];
-
-  postFixup = ''
-    wrapPythonPrograms
-  '';
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    homepage = "http://fvwm.org";
-    description = "A multiple large virtual desktop window manager";
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ edanaher ];
-  };
-}
diff --git a/nixpkgs/pkgs/applications/window-managers/fvwm/3.nix b/nixpkgs/pkgs/applications/window-managers/fvwm/3.nix
deleted file mode 100644
index 31d29af44d80..000000000000
--- a/nixpkgs/pkgs/applications/window-managers/fvwm/3.nix
+++ /dev/null
@@ -1,97 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, asciidoctor
-, autoreconfHook
-, cairo
-, fontconfig
-, freetype
-, fribidi
-, libSM
-, libX11
-, libXcursor
-, libXft
-, libXi
-, libXinerama
-, libXpm
-, libXrandr
-, libXt
-, libevent
-, libintl
-, libpng
-, librsvg
-, libstroke
-, libxslt
-, perl
-, pkg-config
-, python3Packages
-, readline
-, sharutils
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "fvwm3";
-  version = "1.0.9";
-
-  src = fetchFromGitHub {
-    owner = "fvwmorg";
-    repo = "fvwm3";
-    rev = finalAttrs.version;
-    hash = "sha256-SjAccEAQsrzfVCtesqULONmb9TLD5IF8uIwEX3UhrxU=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    asciidoctor
-    pkg-config
-    python3Packages.wrapPython
-  ];
-
-  buildInputs = [
-    cairo
-    fontconfig
-    freetype
-    fribidi
-    libSM
-    libX11
-    libXcursor
-    libXft
-    libXi
-    libXinerama
-    libXpm
-    libXrandr
-    libXt
-    libevent
-    libintl
-    libpng
-    librsvg
-    libstroke
-    libxslt
-    perl
-    python3Packages.python
-    readline
-    sharutils
-  ];
-
-  pythonPath = [
-    python3Packages.pyxdg
-  ];
-
-  configureFlags = [
-    "--enable-mandoc"
-  ];
-
-  postFixup = ''
-    wrapPythonPrograms
-  '';
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    homepage = "http://fvwm.org";
-    description = "A multiple large virtual desktop window manager - Version 3";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ AndersonTorres ];
-    inherit (libX11.meta) platforms;
-  };
-})
diff --git a/nixpkgs/pkgs/applications/window-managers/gamescope/default.nix b/nixpkgs/pkgs/applications/window-managers/gamescope/default.nix
deleted file mode 100644
index a0dd62ab9494..000000000000
--- a/nixpkgs/pkgs/applications/window-managers/gamescope/default.nix
+++ /dev/null
@@ -1,147 +0,0 @@
-{ stdenv
-, fetchFromGitHub
-, meson
-, pkg-config
-, ninja
-, xorg
-, libdrm
-, vulkan-loader
-, vulkan-headers
-, wayland
-, wayland-protocols
-, libxkbcommon
-, glm
-, gbenchmark
-, libcap
-, libavif
-, SDL2
-, pipewire
-, pixman
-, libinput
-, glslang
-, hwdata
-, openvr
-, stb
-, wlroots
-, libliftoff
-, libdisplay-info
-, lib
-, makeBinaryWrapper
-, nix-update-script
-, enableExecutable ? true
-, enableWsi ? true
-}:
-let
-  joshShaders = fetchFromGitHub {
-    owner = "Joshua-Ashton";
-    repo = "GamescopeShaders";
-    rev = "v0.1";
-    hash = "sha256-gR1AeAHV/Kn4ntiEDUSPxASLMFusV6hgSGrTbMCBUZA=";
-  };
-in
-stdenv.mkDerivation (finalAttrs: {
-  pname = "gamescope";
-  version = "3.14.2";
-
-  src = fetchFromGitHub {
-    owner = "ValveSoftware";
-    repo = "gamescope";
-    rev = "refs/tags/${finalAttrs.version}";
-    fetchSubmodules = true;
-    hash = "sha256-Ym1kl9naAm1MGlxCk32ssvfiOlstHiZPy7Ga8EZegus=";
-  };
-
-  patches = [
-    # Unvendor dependencies
-    ./use-pkgconfig.patch
-
-    # Make it look for shaders in the right place
-    ./shaders-path.patch
-  ];
-
-  # We can't substitute the patch itself because substituteAll is itself a derivation,
-  # so `placeholder "out"` ends up pointing to the wrong place
-  postPatch = ''
-    substituteInPlace src/reshade_effect_manager.cpp --replace "@out@" "$out"
-  '';
-
-  mesonFlags = [
-    (lib.mesonBool "enable_gamescope" enableExecutable)
-    (lib.mesonBool "enable_gamescope_wsi_layer" enableWsi)
-  ];
-
-  # don't install vendored vkroots etc
-  mesonInstallFlags = ["--skip-subprojects"];
-
-  strictDeps = true;
-
-  depsBuildBuild = [
-    pkg-config
-  ];
-
-  nativeBuildInputs = [
-    meson
-    pkg-config
-    ninja
-  ] ++ lib.optionals enableExecutable [
-    makeBinaryWrapper
-    glslang
-  ];
-
-  buildInputs = [
-    pipewire
-    hwdata
-    xorg.libX11
-    wayland
-    wayland-protocols
-    vulkan-loader
-    openvr
-    glm
-  ] ++ lib.optionals enableWsi [
-    vulkan-headers
-  ] ++ lib.optionals enableExecutable [
-    xorg.libXcomposite
-    xorg.libXcursor
-    xorg.libXdamage
-    xorg.libXext
-    xorg.libXi
-    xorg.libXmu
-    xorg.libXrender
-    xorg.libXres
-    xorg.libXtst
-    xorg.libXxf86vm
-    libavif
-    libdrm
-    libliftoff
-    SDL2
-    wlroots
-    libinput
-    libxkbcommon
-    gbenchmark
-    pixman
-    libcap
-    stb
-    libdisplay-info
-  ];
-
-  postInstall = lib.optionalString enableExecutable ''
-    # --debug-layers flag expects these in the path
-    wrapProgram "$out/bin/gamescope" \
-      --prefix PATH : ${with xorg; lib.makeBinPath [xprop xwininfo]}
-
-    # Install ReShade shaders
-    mkdir -p $out/share/gamescope/reshade
-    cp -r ${joshShaders}/* $out/share/gamescope/reshade/
-  '';
-
-  passthru.updateScript = nix-update-script {};
-
-  meta = with lib; {
-    description = "SteamOS session compositing window manager";
-    homepage = "https://github.com/ValveSoftware/gamescope";
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ nrdxp pedrohlc Scrumplex zhaofengli k900 ];
-    platforms = platforms.linux;
-    mainProgram = "gamescope";
-  };
-})
diff --git a/nixpkgs/pkgs/applications/window-managers/gamescope/shaders-path.patch b/nixpkgs/pkgs/applications/window-managers/gamescope/shaders-path.patch
deleted file mode 100644
index bbdaf21a2e6f..000000000000
--- a/nixpkgs/pkgs/applications/window-managers/gamescope/shaders-path.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/reshade_effect_manager.cpp b/src/reshade_effect_manager.cpp
-index 3597ca1..de45250 100644
---- a/src/reshade_effect_manager.cpp
-+++ b/src/reshade_effect_manager.cpp
-@@ -34,7 +34,7 @@ static std::string GetLocalUsrDir()
-
- static std::string GetUsrDir()
- {
--    return "/usr";
-+    return "@out@";
- }
-
- static LogScope reshade_log("gamescope_reshade");
diff --git a/nixpkgs/pkgs/applications/window-managers/gamescope/use-pkgconfig.patch b/nixpkgs/pkgs/applications/window-managers/gamescope/use-pkgconfig.patch
deleted file mode 100644
index 2b4de54ae54d..000000000000
--- a/nixpkgs/pkgs/applications/window-managers/gamescope/use-pkgconfig.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -6,7 +6,6 @@ project(
-   default_options: [
-     'cpp_std=c++20',
-     'warning_level=2',
--    'force_fallback_for=wlroots,libliftoff,vkroots',
-   ],
- )
diff --git a/nixpkgs/pkgs/applications/window-managers/hackedbox/default.nix b/nixpkgs/pkgs/applications/window-managers/hackedbox/default.nix
index f38d0d6beb9b..45f17c0c912e 100644
--- a/nixpkgs/pkgs/applications/window-managers/hackedbox/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/hackedbox/default.nix
@@ -32,6 +32,8 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
   ];
 
+  CXXFLAGS = "-std=c++98";
+
   buildInputs = [
     freetype
     fribidi
diff --git a/nixpkgs/pkgs/applications/window-managers/hikari/default.nix b/nixpkgs/pkgs/applications/window-managers/hikari/default.nix
deleted file mode 100644
index 508f13f985b2..000000000000
--- a/nixpkgs/pkgs/applications/window-managers/hikari/default.nix
+++ /dev/null
@@ -1,64 +0,0 @@
-{ lib, stdenv, fetchzip
-, pkg-config, bmake
-, cairo, glib, libevdev, libinput, libxkbcommon, linux-pam, pango, pixman
-, libucl, wayland, wayland-protocols, wlroots, mesa
-, features ? {
-    gammacontrol = true;
-    layershell   = true;
-    screencopy   = true;
-    xwayland     = true;
-  }
-}:
-
-stdenv.mkDerivation rec {
-  pname = "hikari";
-  version = "2.3.3";
-
-  src = fetchzip {
-    url = "https://hikari.acmelabs.space/releases/${pname}-${version}.tar.gz";
-    sha256 = "sha256-5Ug0U3ESC5F/gj7bahnLYkeY/weSCj0QASwdFuWwdMI=";
-  };
-
-  nativeBuildInputs = [ pkg-config bmake ];
-
-  buildInputs = [
-    cairo
-    glib
-    libevdev
-    libinput
-    libxkbcommon
-    linux-pam
-    pango
-    pixman
-    libucl
-    mesa # for libEGL
-    wayland
-    wayland-protocols
-    wlroots
-  ];
-
-  enableParallelBuilding = true;
-
-  makeFlags = with lib; [ "PREFIX=$(out)" ]
-    ++ optional stdenv.isLinux "WITH_POSIX_C_SOURCE=YES"
-    ++ mapAttrsToList (feat: enabled:
-         optionalString enabled "WITH_${toUpper feat}=YES"
-       ) features;
-
-  postPatch = ''
-    # Can't suid in nix store
-    # Run hikari as root (it will drop privileges as early as possible), or create
-    # a systemd unit to give it the necessary permissions/capabilities.
-    substituteInPlace Makefile --replace '4555' '555'
-
-    sed -i 's@<drm_fourcc.h>@<libdrm/drm_fourcc.h>@' src/*.c
-  '';
-
-  meta = with lib; {
-    description = "Stacking Wayland compositor which is actively developed on FreeBSD but also supports Linux";
-    homepage    = "https://hikari.acmelabs.space";
-    license     = licenses.bsd2;
-    platforms   = platforms.linux ++ platforms.freebsd;
-    maintainers = with maintainers; [ jpotier ];
-  };
-}
diff --git a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/default.nix b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
index a9d1764eaf1f..4d50b39ebeda 100644
--- a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
@@ -49,13 +49,12 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "hyprland" + lib.optionalString debug "-debug";
-  version = "0.37.1";
-
+  version = "0.39.1";
   src = fetchFromGitHub {
     owner = "hyprwm";
     repo = finalAttrs.pname;
     rev = "v${finalAttrs.version}";
-    hash = "sha256-W+34KhCnqscRXN/IkvuJMiVx0Fa64RcYn8H4sZjzceI=";
+    hash = "sha256-Urb/njWiHYUudXpmK8EKl9Z58esTIG0PxXw5LuM2r5g=";
   };
 
   patches = [
@@ -73,11 +72,16 @@ stdenv.mkDerivation (finalAttrs: {
       --replace "@HASH@" '${finalAttrs.src.rev}' \
       --replace "@BRANCH@" "" \
       --replace "@MESSAGE@" "" \
-      --replace "@DATE@" "2024-03-16" \
+      --replace "@DATE@" "2024-04-16" \
       --replace "@TAG@" "" \
       --replace "@DIRTY@" ""
   '';
 
+  depsBuildBuild = [
+    # to find wayland-scanner when cross-compiling
+    pkg-config
+  ];
+
   nativeBuildInputs = [
     jq
     makeWrapper
@@ -94,7 +98,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   buildInputs =
-    [
+    wlr.buildInputs ++ [
       cairo
       git
       hyprcursor
diff --git a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix
index ddbd6d9fb4db..76754dd5f0d8 100644
--- a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix
+++ b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/plugins.nix
@@ -24,13 +24,13 @@ let
     hy3 = { fetchFromGitHub, cmake, hyprland }:
       mkHyprlandPlugin hyprland {
         pluginName = "hy3";
-        version = "0.36.0-unstable-2024-03-06";
+        version = "0.39.1";
 
         src = fetchFromGitHub {
           owner = "outfoxxed";
           repo = "hy3";
-          rev = "a392bfd13caf865ccf6b9df6917b67cc3a054b82";
-          hash = "sha256-QuapQR9DJI9+vt7xqULYIXx2QCCX1I/YB50c+7ReexU=";
+          rev = "hl0.39.1";
+          hash = "sha256-PqVld+oFziSt7VZTNBomPyboaMEAIkerPQFwNJL/Wjw=";
         };
 
         nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
index d5be9f276cf2..b2f4a52126dc 100644
--- a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
+++ b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
@@ -1,4 +1,4 @@
-{ fetchFromGitLab
+{ fetchFromGitHub
 , wlroots
 , enableXWayland ? true
 }:
@@ -7,12 +7,11 @@ wlroots.overrideAttrs
     inherit enableXWayland;
     version = "0.18.0-dev";
 
-    src = fetchFromGitLab {
-      domain = "gitlab.freedesktop.org";
-      owner = "wlroots";
-      repo = "wlroots";
-      rev = "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b";
-      hash = "sha256-wXWIJLd4F2JZeMaihWVDW/yYXCLEC8OpeNJZg9a9ly8=";
+    src = fetchFromGitHub {
+      owner = "hyprwm";
+      repo = "wlroots-hyprland";
+      rev = "611a4f24cd2384378f6e500253983107c6656c64";
+      hash = "sha256-vPeZCY+sdiGsz4fl3AVVujfyZyQBz6+vZdkUE4hQ+HI=";
     };
 
     patches = [ ]; # don't inherit old.patches
diff --git a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprshade/default.nix b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprshade/default.nix
index 229f53ed3de8..0393c6eddd3b 100644
--- a/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprshade/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/hyprwm/hyprshade/default.nix
@@ -4,6 +4,8 @@
 , hatchling
 , more-itertools
 , click
+, hyprland
+, makeWrapper
 }:
 
 buildPythonPackage rec {
@@ -20,10 +22,17 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     hatchling
+    makeWrapper
   ];
 
   propagatedBuildInputs = [ more-itertools click ];
 
+  postFixup = ''
+    wrapProgram $out/bin/hyprshade \
+      --set HYPRSHADE_SHADERS_DIR $out/share/hyprshade/shaders \
+      --prefix PATH : ${lib.makeBinPath [ hyprland ]}
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/loqusion/hyprshade";
     description = "Hyprland shade configuration tool";
diff --git a/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix b/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix
index 74635d158829..b9ced38b5fe4 100644
--- a/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix
@@ -16,16 +16,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "i3status-rust";
-  version = "0.33.0";
+  version = "0.33.1";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-DIEWmXqs4yNIJsBBhH7khOY6RJQ9qRoSTIHN/aeBuA4=";
+    hash = "sha256-9lzzjb6tDfgqjAT9mS/cWfC6ucNXoJ8JJwtZ0FZqlDA=";
   };
 
-  cargoHash = "sha256-5946aMSndBkXCY0jjnhPc5x9wFOC1zjJNkFkMFFOuxo=";
+  cargoHash = "sha256-yeijJl94v+yKMVnU/Fjzapab/nExlvoznrx8Ydz/RvM=";
 
   nativeBuildInputs = [ pkg-config makeWrapper ];
 
diff --git a/nixpkgs/pkgs/applications/window-managers/jay/default.nix b/nixpkgs/pkgs/applications/window-managers/jay/default.nix
index 6718caf1ada2..6b7951c14c37 100644
--- a/nixpkgs/pkgs/applications/window-managers/jay/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/jay/default.nix
@@ -7,20 +7,30 @@
 , mesa
 , pango
 , udev
+, shaderc
+, libglvnd
+, vulkan-loader
+, autoPatchelfHook
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "jay";
-  version = "unstable-2022-11-20";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "mahkoh";
     repo = pname;
-    rev = "09b4668a5363a6e93dfb8ba35b244835f4edb0f2";
-    sha256 = "sha256-0IIzXY7AFTGEe0TzJVKOtTPUZee0Wz40yKgEWLeIYJw=";
+    rev = "v${version}";
+    sha256 = "sha256-9fWwVUqeYADt33HGaJRRFmM20WM7qRWbNGpt3rk9xQM=";
   };
 
-  cargoSha256 = "sha256-zSq6YBlm6gJXGlF9xZ8gWSTMewdNqrJzwP58a0x8QIU=";
+  cargoSha256 = "sha256-oPGY/rVx94BkWgKkwwyDjfASMyGGU32R5IZuNjOv+EM=";
+
+  SHADERC_LIB_DIR = "${lib.getLib shaderc}/lib";
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+  ];
 
   buildInputs = [
     libGL
@@ -29,9 +39,18 @@ rustPlatform.buildRustPackage rec {
     pango
     udev
     libinput
+    shaderc
+  ];
+
+  runtimeDependencies = [
+    libglvnd
+    vulkan-loader
   ];
 
-  RUSTC_BOOTSTRAP = 1;
+  postInstall = ''
+    install -D etc/jay.portal $out/usr/share/xdg-desktop-portal/portals/jay.portal
+    install -D etc/jay-portals.conf $out/usr/share/xdg-desktop-portal/jay-portals.conf
+  '';
 
   meta = with lib; {
     description = "A Wayland compositor written in Rust";
diff --git a/nixpkgs/pkgs/applications/window-managers/miriway/default.nix b/nixpkgs/pkgs/applications/window-managers/miriway/default.nix
index 4c73135c54a4..8575c10a6ad6 100644
--- a/nixpkgs/pkgs/applications/window-managers/miriway/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/miriway/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "miriway";
-  version = "unstable-2024-03-15";
+  version = "0-unstable-2024-04-25";
 
   src = fetchFromGitHub {
     owner = "Miriway";
     repo = "Miriway";
-    rev = "dcc44916d0b25dd06d792947c837cf4cd8c24925";
-    hash = "sha256-LnqhIVmC5F+FAIcYW+oT4t2ovRWeoV4zHpvbNhiY7Kw=";
+    rev = "a3f074be78e77bab378f064452420923b6f9c331";
+    hash = "sha256-D+ClEJL/iCLARaTXe5QpI/uHE61Lajzz5A5EphgHCl8=";
   };
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/applications/window-managers/phosh/default.nix b/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
index 3cdc2ee41db8..853ceb8a083b 100644
--- a/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
@@ -36,12 +36,12 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "phosh";
-  version = "0.37.0";
+  version = "0.37.1";
 
   src = fetchurl {
     # Release tarball which includes subprojects gvc and libcall-ui
     url = with finalAttrs; "https://sources.phosh.mobi/releases/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-kmZX2pPOYSh2hiMrRLH6744Q8rHHhE9jmG+SksepUYk=";
+    hash = "sha256-74H4GLFIIs97iVE8IWPxS9hALkBGkcKmrMe6/uxtPuM=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/window-managers/phosh/phosh-mobile-settings.nix b/nixpkgs/pkgs/applications/window-managers/phosh/phosh-mobile-settings.nix
index 8e85597cc7d3..0635d7a5e407 100644
--- a/nixpkgs/pkgs/applications/window-managers/phosh/phosh-mobile-settings.nix
+++ b/nixpkgs/pkgs/applications/window-managers/phosh/phosh-mobile-settings.nix
@@ -1,11 +1,12 @@
 { lib
 , stdenv
 , fetchurl
+, nixosTests
 , directoryListingUpdater
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook4
 , desktop-file-utils
 , feedbackd
 , gtk4
@@ -20,12 +21,12 @@
 
 stdenv.mkDerivation rec {
   pname = "phosh-mobile-settings";
-  version = "0.37.0";
+  version = "0.38.0";
 
   src = fetchurl {
     # This tarball includes the meson wrapped subproject 'gmobile'.
     url = "https://sources.phosh.mobi/releases/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-HW3wM/lb8pvr+eDoeqa0iHXiKhBQ8ybBIy0wwHPsrOg=";
+    hash = "sha256-WDqgVsJx5y6IlWII9fRBsAeWn/tB8BaXRtlPvA0wmMk=";
   };
 
   nativeBuildInputs = [
@@ -33,7 +34,7 @@ stdenv.mkDerivation rec {
     ninja
     phosh
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
@@ -59,7 +60,10 @@ stdenv.mkDerivation rec {
     ln -s '${phosh}/lib/phosh' "$out/lib/phosh"
   '';
 
-  passthru.updateScript = directoryListingUpdater { };
+  passthru = {
+    tests.phosh = nixosTests.phosh;
+    updateScript = directoryListingUpdater { };
+  };
 
   meta = with lib; {
     description = "A settings app for mobile specific things";
diff --git a/nixpkgs/pkgs/applications/window-managers/river/default.nix b/nixpkgs/pkgs/applications/window-managers/river/default.nix
index 4c59222d31bb..3d3008692922 100644
--- a/nixpkgs/pkgs/applications/window-managers/river/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/river/default.nix
@@ -1,6 +1,6 @@
 { lib
 , stdenv
-, fetchFromGitHub
+, fetchFromGitea
 , libGL
 , libX11
 , libevdev
@@ -12,7 +12,7 @@
 , udev
 , wayland
 , wayland-protocols
-, wlroots_0_16
+, wlroots_0_17
 , xwayland
 , zig_0_11
 , withManpages ? true
@@ -21,16 +21,17 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "river";
-  version = "0.2.6";
+  version = "0.3.0";
 
   outputs = [ "out" ] ++ lib.optionals withManpages [ "man" ];
 
-  src = fetchFromGitHub {
-    owner = "riverwm";
+  src = fetchFromGitea {
+    domain = "codeberg.org";
+    owner = "river";
     repo = "river";
     rev = "refs/tags/v${finalAttrs.version}";
     fetchSubmodules = true;
-    hash = "sha256-JPb8l5ANxYCqinWNoQK5PAyn4CaiSj0e9mAhZwd9HOw=";
+    hash = "sha256-6LZuWx0sC6bW0K7D0PR8hJlVW6i6NIzOOORdMu3Gk5U=";
   };
 
   nativeBuildInputs = [
@@ -49,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
     pixman
     udev
     wayland-protocols
-    wlroots_0_16
+    wlroots_0_17
   ] ++ lib.optional xwaylandSupport libX11;
 
   dontConfigure = true;
@@ -64,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: {
   passthru.providedSessions = [ "river" ];
 
   meta = {
-    homepage = "https://github.com/ifreund/river";
+    homepage = "https://codeberg.org/river/river";
     description = "A dynamic tiling wayland compositor";
     longDescription = ''
       River is a dynamic tiling Wayland compositor with flexible runtime
@@ -79,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
       - Scriptable configuration and control through a custom Wayland protocol
         and separate riverctl binary implementing it.
     '';
-    changelog = "https://github.com/ifreund/river/releases/tag/v${finalAttrs.version}";
+    changelog = "https://codeberg.org/river/river/releases/tag/v${finalAttrs.version}";
     license = lib.licenses.gpl3Plus;
     maintainers = with lib.maintainers; [
       adamcstephens
diff --git a/nixpkgs/pkgs/applications/window-managers/sommelier/default.nix b/nixpkgs/pkgs/applications/window-managers/sommelier/default.nix
index 12c2e5da1b98..f0b940776128 100644
--- a/nixpkgs/pkgs/applications/window-managers/sommelier/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/sommelier/default.nix
@@ -1,21 +1,28 @@
-{ lib, stdenv, fetchzip, meson, ninja, pkg-config, wayland-scanner
+{ lib, stdenv, fetchzip
+, meson, ninja, pkg-config, python3, python3Packages, wayland-scanner
 , libxkbcommon, mesa, pixman, xorg, wayland, gtest
 }:
 
 stdenv.mkDerivation {
   pname = "sommelier";
-  version = "104.0";
+  version = "123.0";
 
   src = fetchzip rec {
     url = "https://chromium.googlesource.com/chromiumos/platform2/+archive/${passthru.rev}/vm_tools/sommelier.tar.gz";
-    passthru.rev = "af5434fd9903936a534e1316cbd22361e67949ec";
+    passthru.rev = "1abc91204f35cde76db37853ff3643c5cdb607e6";
     stripRoot = false;
-    sha256 = "LungQqHQorHIKpye2SDBLuMHPt45C1cPYcs9o5Hc3cw=";
+    sha256 = "Wa30MU7iK1Y7pKNeC+FPFXDwDxFLWOZPG4jkm8cnWeg=";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config wayland-scanner ];
+  nativeBuildInputs = [
+    meson ninja pkg-config python3 python3Packages.jinja2 wayland-scanner
+  ];
   buildInputs = [ libxkbcommon mesa pixman wayland xorg.libxcb ];
 
+  preConfigure = ''
+    patchShebangs gen-shim.py
+  '';
+
   doCheck = true;
   nativeCheckInputs = [ gtest ];
 
diff --git a/nixpkgs/pkgs/applications/window-managers/wayfire/focus-request.nix b/nixpkgs/pkgs/applications/window-managers/wayfire/focus-request.nix
index 1e535e8ba751..41d531417250 100644
--- a/nixpkgs/pkgs/applications/window-managers/wayfire/focus-request.nix
+++ b/nixpkgs/pkgs/applications/window-managers/wayfire/focus-request.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "wayfireplugins";
     repo = "focus-request";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-v0kGT+KrtfFJ/hp1Dr8izKVj6UHhuW6udHFjWt1y9TY=";
+    hash = "sha256-kUYvLC28IPrvnMT/wKFRlOVkc2ohF3k0T/Qrm/zVkpE=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix b/nixpkgs/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix
index 99f11c6fd789..fd91d78285df 100644
--- a/nixpkgs/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix
+++ b/nixpkgs/pkgs/applications/window-managers/wayfire/wayfire-shadows.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "wayfire-shadows";
-  version = "unstable-2023-09-09";
+  version = "unstable-2024-03-28";
 
   src = fetchFromGitHub {
     owner = "timgott";
     repo = "wayfire-shadows";
-    rev = "de3239501fcafd1aa8bd01d703aa9469900004c5";
-    hash = "sha256-oVlSzpddPDk6pbyLFMhAkuRffkYpinP7jRspVmfLfyA=";
+    rev = "81699f6e4be65dcf3f7ad5155dfb4247b37b7997";
+    hash = "sha256-H9pqpHoeDfNBrtVLax57CUXVhU2XT+syAUZTYSJizxw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/window-managers/weston/default.nix b/nixpkgs/pkgs/applications/window-managers/weston/default.nix
index b4472425324e..a4e36c18368e 100644
--- a/nixpkgs/pkgs/applications/window-managers/weston/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/weston/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation rec {
   pname = "weston";
-  version = "13.0.0";
+  version = "13.0.1";
 
   src = fetchurl {
     url = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${version}/downloads/weston-${version}.tar.xz";
-    hash = "sha256-Uv8dSqI5Si5BbIWjOLYnzpf6cdQ+t2L9Sq8UXTb8eVo=";
+    hash = "sha256-6hVmq09f/Ofp/U96H8pbMMquTVACO/RZITmUCU4Cspo=";
   };
 
   postPatch = ''