From 0cd8b2ebfc564427f7bb90c9e8e3dd672cec99cc Mon Sep 17 00:00:00 2001 From: AnErrupTion Date: Mon, 18 May 2026 19:46:28 +0200 Subject: [PATCH 1/4] README: Add section for testing config changes (closes #994) Signed-off-by: AnErrupTion --- readme.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/readme.md b/readme.md index 78ebffc..5cbe81d 100644 --- a/readme.md +++ b/readme.md @@ -95,6 +95,9 @@ $ zig build run > [!IMPORTANT] > While you can run Ly in a terminal emulator as root, it is **not** recommended. If you want to test Ly, please enable its service (as described below) and reboot your machine. +> [!NOTE] +> You can, however, test your configuration file changes like that. Note that you must do Ctrl+C in order to exit Ly. + The next sections will explain how to use Ly with a variety of init systems. Detailed explanation is only given for systemd, but should be applicable for all. > [!NOTE] From f03aca037952e9be481caefc989f97545a5e345f Mon Sep 17 00:00:00 2001 From: Louis Pate Date: Wed, 20 May 2026 20:17:11 +0200 Subject: [PATCH 2/4] Be specific about zig version in readme (#996) ## What are the changes about? There have been quite a few issues about the required zig version which have appeared on codeberg recently. Largely these issues are opened (like mine, #995) because individuals attempt to build using development versions of zig and not the tagged releases. The lack of a locked version (only a minimum) creates these issues. Barring a locking mechanism, which I do not feel is my place to implement, we should be clear to newer developers in Zig that you need this specific version, not a development/master versioned release. This is WIP mainly because I feel that a version file would be a better solution than a README note, and I don't have enough zig experience or knowledge of this repo to make a guess at what is best for this scenario. ## What existing issue does this resolve? N/A ## Pre-requisites - [x] I have tested & confirmed the changes work locally - [x] I have run `zig fmt` throughout my changes Co-authored-by: Louis Pate Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/996 Reviewed-by: AnErrupTion --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 5cbe81d..79c3a63 100644 --- a/readme.md +++ b/readme.md @@ -14,7 +14,7 @@ Join us on Matrix over at [#ly-dm:matrix.org](https://matrix.to/#/#ly-dm:matrix. ## Dependencies - Compile-time: - - zig 0.16.x + - zig 0.16.x (you must use a __release version__ of zig; check that `zig version` does not have a `-dev*` suffix) - libc From 0cee1c039a3a8ecaeb2868f44e91b9c3baedfd76 Mon Sep 17 00:00:00 2001 From: AnErrupTion Date: Fri, 22 May 2026 17:15:17 +0200 Subject: [PATCH 3/4] ly-kmsconvt: Remove usage of gone --seats argument Signed-off-by: AnErrupTion --- res/ly-kmsconvt@.service | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/res/ly-kmsconvt@.service b/res/ly-kmsconvt@.service index 80eb1da..6e50b8a 100644 --- a/res/ly-kmsconvt@.service +++ b/res/ly-kmsconvt@.service @@ -5,7 +5,7 @@ After=kmsconvt@%i.service Conflicts=kmsconvt@%i.service [Service] -ExecStart=$PREFIX_DIRECTORY/bin/kmscon --font-engine unifont --vt=%I --seats=seat0 --login -- $PREFIX_DIRECTORY/bin/$EXECUTABLE_NAME --use-kmscon-vt +ExecStart=$PREFIX_DIRECTORY/bin/kmscon --font-engine unifont --vt=%I --login -- $PREFIX_DIRECTORY/bin/$EXECUTABLE_NAME --use-kmscon-vt StandardInput=tty UtmpIdentifier=%I TTYPath=/dev/%I From 9d8ccf6709f61266ad8d181c13d922770b773f57 Mon Sep 17 00:00:00 2001 From: AnErrupTion Date: Sat, 23 May 2026 12:31:05 +0200 Subject: [PATCH 4/4] Fix termbox already being initialised when reclaiming Signed-off-by: AnErrupTion --- ly-ui/src/TerminalBuffer.zig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ly-ui/src/TerminalBuffer.zig b/ly-ui/src/TerminalBuffer.zig index d0b3e3d..7d115eb 100644 --- a/ly-ui/src/TerminalBuffer.zig +++ b/ly-ui/src/TerminalBuffer.zig @@ -411,7 +411,8 @@ pub fn setCellBoundsChecked(self: *TerminalBuffer, x: isize, y: isize, cell: Cel pub fn reclaim(self: TerminalBuffer) !void { if (self.termios) |termios| { // Take back control of the TTY - if (termbox.tb_init() != 0) return error.TermboxReinitFailed; + const err = termbox.tb_init(); + if (err != 0 and err != termbox.TB_ERR_INIT_ALREADY) return error.TermboxReinitFailed; if (self.full_color and termbox.tb_set_output_mode(termbox.TB_OUTPUT_TRUECOLOR) != 0) { return error.TermboxSetOutputModeFailed;