nixos-config/patches/151902.patch
Charlotte Van Petegem 926c22b09b
Add sway 1.7rc3 patch
2022-01-22 08:50:30 +01:00

344 lines
13 KiB
Diff

From 72181a8b55ef51c2ac3fee3a58f7e97b5aa89700 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Thu, 23 Dec 2021 20:19:41 +0100
Subject: [PATCH 1/8] sway: 1.6.1 -> 1.7-rc1
---
pkgs/applications/window-managers/sway/default.nix | 8 ++++----
pkgs/top-level/all-packages.nix | 4 +---
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index ec08568f0589c..0b1f0cd3e0e0e 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, substituteAll, swaybg
-, meson, ninja, pkg-config, wayland-scanner, scdoc
+, meson_0_60, ninja, pkg-config, wayland-scanner, scdoc
, wayland, libxkbcommon, pcre, json_c, dbus, libevdev
, pango, cairo, libinput, libcap, pam, gdk-pixbuf, librsvg
, wlroots, wayland-protocols, libdrm
@@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "sway-unwrapped";
- version = "1.6.1";
+ version = "1.7-rc1";
src = fetchFromGitHub {
owner = "swaywm";
repo = "sway";
rev = version;
- sha256 = "0j4sdbsrlvky1agacc0pcz9bwmaxjmrapjnzscbd2i0cria2fc5j";
+ sha256 = "1c46p2paywwhvjr6iaw5bhm92wxw0njldg6727xdmfnjj27v5603";
};
patches = [
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
];
nativeBuildInputs = [
- meson ninja pkg-config wayland-scanner scdoc
+ meson_0_60 ninja pkg-config wayland-scanner scdoc
];
buildInputs = [
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0627a2fb20021..a6e0b133cd068 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -26143,9 +26143,7 @@ with pkgs;
inherit (xorg) xcbutilrenderutil;
};
- sway-unwrapped = callPackage ../applications/window-managers/sway {
- wlroots = wlroots_0_14;
- };
+ sway-unwrapped = callPackage ../applications/window-managers/sway { };
sway = callPackage ../applications/window-managers/sway/wrapper.nix { };
swaybg = callPackage ../applications/window-managers/sway/bg.nix { };
swayidle = callPackage ../applications/window-managers/sway/idle.nix { };
From ebe0d3b6b730529a476f72e3df66bb15e0caeb87 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Tue, 28 Dec 2021 17:01:06 +0100
Subject: [PATCH 2/8] nixos/sway: alacritty -> foot (WIP)
---
nixos/modules/programs/sway.nix | 4 ++--
nixos/tests/sway.nix | 3 ++-
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/nixos/modules/programs/sway.nix b/nixos/modules/programs/sway.nix
index c64e01a20cb3d..bb9904d195606 100644
--- a/nixos/modules/programs/sway.nix
+++ b/nixos/modules/programs/sway.nix
@@ -90,10 +90,10 @@ in {
extraPackages = mkOption {
type = with types; listOf package;
default = with pkgs; [
- swaylock swayidle alacritty dmenu
+ swaylock swayidle foot dmenu
];
defaultText = literalExpression ''
- with pkgs; [ swaylock swayidle alacritty dmenu ];
+ with pkgs; [ swaylock swayidle foot dmenu ];
'';
example = literalExpression ''
with pkgs; [
diff --git a/nixos/tests/sway.nix b/nixos/tests/sway.nix
index 3476ebab3e26c..63f9099a864f0 100644
--- a/nixos/tests/sway.nix
+++ b/nixos/tests/sway.nix
@@ -13,7 +13,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
environment = {
# For glinfo and wayland-info:
- systemPackages = with pkgs; [ mesa-demos wayland-utils ];
+ systemPackages = with pkgs; [ mesa-demos wayland-utils alacritty ];
# Use a fixed SWAYSOCK path (for swaymsg):
variables = {
"SWAYSOCK" = "/tmp/sway-ipc.sock";
@@ -72,6 +72,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
machine.screenshot("alacritty_glinfo")
machine.succeed("pkill alacritty")
+ # TODO: Switch to foot (or add an additional foot test) and use $mod+Return:
# Start a terminal (Alacritty) on workspace 3:
machine.send_key("alt-3")
machine.succeed(
From 4d2a5a6954d3a380f2298a5704d982e613b74024 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Sun, 2 Jan 2022 13:26:05 +0100
Subject: [PATCH 3/8] nixos/tests/sway: Fix the test by switching to the Pixman
renderer
---
nixos/tests/sway.nix | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/nixos/tests/sway.nix b/nixos/tests/sway.nix
index 63f9099a864f0..bdcbc0ab113e9 100644
--- a/nixos/tests/sway.nix
+++ b/nixos/tests/sway.nix
@@ -17,7 +17,12 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
# Use a fixed SWAYSOCK path (for swaymsg):
variables = {
"SWAYSOCK" = "/tmp/sway-ipc.sock";
- "WLR_RENDERER_ALLOW_SOFTWARE" = "1";
+ # TODO: Investigate if we can get hardware acceleration to work (via
+ # virtio-gpu and Virgil). We currently have to use the Pixman software
+ # renderer since the GLES2 renderer doesn't work inside the VM (even
+ # with WLR_RENDERER_ALLOW_SOFTWARE):
+ # "WLR_RENDERER_ALLOW_SOFTWARE" = "1";
+ "WLR_RENDERER" = "pixman";
};
# For convenience:
shellAliases = {
From 6266655558b22957d079cbec949ef54ed44c8fb7 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Sun, 2 Jan 2022 13:32:49 +0100
Subject: [PATCH 4/8] nixos/tests/sway: Verify if Sway exited successfully
---
nixos/tests/sway.nix | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/nixos/tests/sway.nix b/nixos/tests/sway.nix
index bdcbc0ab113e9..5f27f380ee40e 100644
--- a/nixos/tests/sway.nix
+++ b/nixos/tests/sway.nix
@@ -110,9 +110,6 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
# Exit Sway and verify process exit status 0:
machine.succeed("su - alice -c 'swaymsg exit || true'")
machine.wait_until_fails("pgrep -x sway")
-
- # TODO: Sway currently segfaults after "swaymsg exit" but only in this VM test:
- # machine # [ 104.090032] sway[921]: segfault at 3f800008 ip 00007f7dbdc25f10 sp 00007ffe282182f8 error 4 in libwayland-server.so.0.1.0[7f7dbdc1f000+8000]
- # machine.wait_for_file("/tmp/sway-exit-ok")
+ machine.wait_for_file("/tmp/sway-exit-ok")
'';
})
From db073180b0690401a5cb2abd3a0fb0386cb00382 Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Sun, 2 Jan 2022 21:46:54 +0100
Subject: [PATCH 5/8] nixos/tests/sway: update for sway 1.7
---
nixos/tests/sway.nix | 38 +++++++++++++++++++++++++-------------
1 file changed, 25 insertions(+), 13 deletions(-)
diff --git a/nixos/tests/sway.nix b/nixos/tests/sway.nix
index 5f27f380ee40e..33c1ed66f552d 100644
--- a/nixos/tests/sway.nix
+++ b/nixos/tests/sway.nix
@@ -1,4 +1,4 @@
-import ./make-test-python.nix ({ pkgs, lib, ...} :
+import ./make-test-python.nix ({ pkgs, lib, ... }:
{
name = "sway";
@@ -26,11 +26,25 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
};
# For convenience:
shellAliases = {
- test-x11 = "glinfo | head -n 3 | tee /tmp/test-x11.out && touch /tmp/test-x11-exit-ok";
+ test-x11 = "glinfo | tee /tmp/test-x11.out && touch /tmp/test-x11-exit-ok";
test-wayland = "wayland-info | tee /tmp/test-wayland.out && touch /tmp/test-wayland-exit-ok";
};
+
+ # To help with OCR:
+ etc."xdg/foot/foot.ini".text = lib.generators.toINI { } {
+ main = {
+ font = "inconsolata:size=14";
+ };
+ colors = rec {
+ foreground = "000000";
+ background = "ffffff";
+ regular2 = foreground;
+ };
+ };
};
+ fonts.fonts = [ pkgs.inconsolata ];
+
# Automatically configure and start Sway when logging in on tty1:
programs.bash.loginShellInit = ''
if [ "$(tty)" = "/dev/tty1" ]; then
@@ -66,30 +80,28 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
machine.wait_for_file("/run/user/1000/wayland-1")
machine.wait_for_file("/tmp/sway-ipc.sock")
- # Test XWayland:
+ # Test XWayland (foot does not support X):
machine.succeed(
"su - alice -c 'swaymsg exec WINIT_UNIX_BACKEND=x11 WAYLAND_DISPLAY=invalid alacritty'"
)
machine.wait_for_text("alice@machine")
machine.send_chars("test-x11\n")
machine.wait_for_file("/tmp/test-x11-exit-ok")
- print(machine.succeed("cat /tmp/test-x11.out"))
- machine.screenshot("alacritty_glinfo")
+ machine.copy_from_vm("/tmp/test-x11.out")
+ machine.screenshot("alacrittyglinfo")
machine.succeed("pkill alacritty")
- # TODO: Switch to foot (or add an additional foot test) and use $mod+Return:
- # Start a terminal (Alacritty) on workspace 3:
+ # Start a terminal (foot) on workspace 3:
machine.send_key("alt-3")
- machine.succeed(
- "su - alice -c 'swaymsg exec WINIT_UNIX_BACKEND=wayland DISPLAY=invalid alacritty'"
- )
+ machine.sleep(3)
+ machine.send_key("alt-ret")
machine.wait_for_text("alice@machine")
machine.send_chars("test-wayland\n")
machine.wait_for_file("/tmp/test-wayland-exit-ok")
- print(machine.succeed("cat /tmp/test-wayland.out"))
- machine.screenshot("alacritty_wayland_info")
+ machine.copy_from_vm("/tmp/test-wayland.out")
+ machine.screenshot("foot_wayland_info")
machine.send_key("alt-shift-q")
- machine.wait_until_fails("pgrep alacritty")
+ machine.wait_until_fails("pgrep foot")
# Test gpg-agent starting pinentry-gnome3 via D-Bus (tests if
# $WAYLAND_DISPLAY is correctly imported into the D-Bus user env):
From 7f06407d4f5b37c3f9ce7c22a10a49dd2d406a29 Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Sun, 9 Jan 2022 18:46:16 +0100
Subject: [PATCH 6/8] sway: 1.7-rc1 -> 1.7-rc2
---
pkgs/applications/window-managers/sway/default.nix | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index 0b1f0cd3e0e0e..f96ff9e51c4de 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "sway-unwrapped";
- version = "1.7-rc1";
+ version = "1.7-rc2";
src = fetchFromGitHub {
owner = "swaywm";
repo = "sway";
rev = version;
- sha256 = "1c46p2paywwhvjr6iaw5bhm92wxw0njldg6727xdmfnjj27v5603";
+ sha256 = "1cl1wqh0j9z0i1xqn2cy3r6y6s3awgx1yb5p8nsvy1k58d8805pg";
};
patches = [
From 02a162f479aa17a90212acc613c1117a25170d0e Mon Sep 17 00:00:00 2001
From: Michael Weiss <dev.primeos@gmail.com>
Date: Sun, 9 Jan 2022 18:59:22 +0100
Subject: [PATCH 7/8] nixos/tests/sway: Some optional changes
---
nixos/tests/sway.nix | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/nixos/tests/sway.nix b/nixos/tests/sway.nix
index 33c1ed66f552d..43b8c84730427 100644
--- a/nixos/tests/sway.nix
+++ b/nixos/tests/sway.nix
@@ -87,8 +87,9 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
machine.wait_for_text("alice@machine")
machine.send_chars("test-x11\n")
machine.wait_for_file("/tmp/test-x11-exit-ok")
+ print(machine.succeed("cat /tmp/test-x11.out"))
machine.copy_from_vm("/tmp/test-x11.out")
- machine.screenshot("alacrittyglinfo")
+ machine.screenshot("alacritty_glinfo")
machine.succeed("pkill alacritty")
# Start a terminal (foot) on workspace 3:
@@ -98,6 +99,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
machine.wait_for_text("alice@machine")
machine.send_chars("test-wayland\n")
machine.wait_for_file("/tmp/test-wayland-exit-ok")
+ print(machine.succeed("cat /tmp/test-wayland.out"))
machine.copy_from_vm("/tmp/test-wayland.out")
machine.screenshot("foot_wayland_info")
machine.send_key("alt-shift-q")
From b7808ba8eeda0e6c1810f8cc7754fda25083326f Mon Sep 17 00:00:00 2001
From: Patrick Hilhorst <git@hilhorst.be>
Date: Sun, 16 Jan 2022 20:42:55 +0100
Subject: [PATCH 8/8] sway: 1.7-rc2 -> 1.7-rc3
---
pkgs/applications/window-managers/sway/default.nix | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index f96ff9e51c4de..2c17a1a03ea01 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "sway-unwrapped";
- version = "1.7-rc2";
+ version = "1.7-rc3";
src = fetchFromGitHub {
owner = "swaywm";
repo = "sway";
rev = version;
- sha256 = "1cl1wqh0j9z0i1xqn2cy3r6y6s3awgx1yb5p8nsvy1k58d8805pg";
+ hash = "sha256-kRVWwu6q9PqmXoYO2xrVRYwLaPGVy8CCzR0a9DeFJ8c=";
};
patches = [