344 lines
13 KiB
Diff
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 = [
|