Commit Graph
100 Commits
Author SHA1 Message Date
AnErrupTion 0cee1c039a ly-kmsconvt: Remove usage of gone --seats argument
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-22 17:15:17 +02:00
AnErrupTion 0cd8b2ebfc README: Add section for testing config changes (closes #994)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-18 19:46:28 +02:00
AnErrupTion 4c066ce564 Handle termbox2 errors
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-17 13:26:46 +02:00
AnErrupTion 05c1d4bece Improve errors for lock state
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-16 10:33:06 +02:00
AnErrupTion 78794b3e10 Stream dur reading instead of reading all at once
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-15 23:22:50 +02:00
AnErrupTion afee1d9194 Remove TODO and stop forcing LLVM usage (again)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-15 21:46:20 +02:00
AnErrupTion 9b1965a3d8 Always build translate-c in Debug
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-15 21:42:13 +02:00
AnErrupTion 741e9e0345 Use correct naming convention for functions in DurFile.zig
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-12 20:35:17 +02:00
AnErrupTion de8579854c Use $EXECUTABLE_NAME in kmscon service
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-11 21:03:01 +02:00
AnErrupTion ee3196bab8 Fix labels_max_length calculation (closes #984)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-11 21:00:52 +02:00
AnErrupTion 9ff4ddd129 Improve keyboard handling (closes #982)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-10 13:55:19 +02:00
AnErrupTion 4db9295102 Fix building without X11
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-03 20:05:44 +02:00
AnErrupTion 864f5f2892 Implement syslog functionality (closes #
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-01 21:51:27 +02:00
AnErrupTion c50af66407 Fix log file race condition
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-01 20:54:54 +02:00
AnErrupTion 79eebd8ee0 Prefer std.log instead of stderr directly
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-01 17:43:28 +02:00
AnErrupTion 3869bfd2f9 Add config validation argument (closes #969)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-01 17:40:04 +02:00
AnErrupTion 5905e054c5 Start Ly v1.5.0 development cycle
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-05-01 07:47:48 +02:00
AnErrupTion 807f6d249a Remove further & all @cImport() usage in interop
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-04-30 22:48:29 +02:00
AnErrupTion 15cd0c4779 Use SIGINT instead of SIGCHILD for TTY control transfer
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-04-30 14:38:56 +02:00
AnErrupTion 51c5c3ee0b Fix waitpid() being interrupted by SIGCHLD
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-04-29 22:52:58 +02:00
AnErrupTion 59c07aa3ba Fix xauth log not being flushed
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-04-28 19:35:21 +02:00
AnErrupTion 80d4b114f3 Fix 32-bit issues on Ly's side
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-04-26 18:37:33 +02:00
AnErrupTion 5edf5251f6 Update to Zig 0.16.0 (#962)
Signed-off-by: AnErrupTion <anerruption@disroot.org>

## What are the changes about?

Ports the code base to Zig 0.16.0.

## 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

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/962
2026-04-25 17:37:34 +02:00
AnErrupTion 142476041d Update French translation
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-28 12:09:41 +01:00
AnErrupTion e882eea22a Improve bug report template
Notably, don't make the issue reproduction on a fresh install required.
This'll likely filter out the honest people who have actually done it
from the others who haven't.

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-27 23:18:16 +01:00
AnErrupTion 5b7c7dfdf5 migrator.zig: Run zig fmt
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-27 21:34:32 +01:00
AnErrupTion 074bb0a68a Improve custom command sample config readability (closes #949)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-27 20:34:39 +01:00
AnErrupTion e0a3364169 Merge branch 'master' of codeberg.org:fairyglade/ly
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-27 17:17:18 +01:00
AnErrupTion 984ac596af Group for loops in event loop
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-26 21:55:35 +01:00
AnErrupTion ed486c29d2 Add xauth file as X server argument
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-26 21:10:50 +01:00
AnErrupTion a6fc5d67e8 Use upstream zigini library
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-25 22:43:05 +01:00
AnErrupTion 549576aa3e Make box widget not position-dependent
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-25 22:06:57 +01:00
AnErrupTion 3758b5da1b Mention -quiet argument for X11 server (closes #722)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-25 21:10:09 +01:00
AnErrupTion 5e1c681385 Update screenshot (closes #948)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-25 20:49:53 +01:00
AnErrupTion ac78ccc398 Update Kawaii-Ash's GitHub username
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-25 20:06:59 +01:00
AnErrupTion 60e3380375 Switch to single-instance Widget model
And make widget() functions return pointers to widgets instead of just
widgets

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-21 16:19:33 +01:00
AnErrupTion aa392837bc Require "zig fmt" to be run in a PR
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-21 16:01:03 +01:00
AnErrupTion abe72c74ff Optimise event loop initialisation
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-18 20:26:00 +01:00
AnErrupTion 9c50297059 Fix insert mode hack + fix bugs
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 23:58:06 +01:00
AnErrupTion acac884cfe Add support for local keybinds
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 22:58:39 +01:00
AnErrupTion a89c918c5d Move back custom widgets into main project
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 21:59:24 +01:00
AnErrupTion 64539f4342 Split UI code into ly-ui library
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 21:44:33 +01:00
AnErrupTion 93696a6b30 Remove unused import + add TODO
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 21:03:59 +01:00
AnErrupTion 4f26eeada0 Fix double spacing issue in labels
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 20:10:47 +01:00
AnErrupTion 83e98a185f Add TODO in main.zig
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 20:01:47 +01:00
AnErrupTion 128dcb16f8 Merge branch 'master' of codeberg.org:fairyglade/ly
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-03-17 19:58:58 +01:00
AnErrupTion 9cde291ac7 Remove unused termbox alias
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-27 22:19:09 +01:00
AnErrupTion 03d976171a Fix battery level overlapping shutdown label (fixes #935)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-27 20:28:11 +01:00
AnErrupTion b01e4afc79 Make default startup script more compatible
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-12 17:10:52 +01:00
AnErrupTion 5a4605ffb6 Add layering system for widgets
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-12 11:29:14 +01:00
AnErrupTion 01dcfa207e Show UI errors in info line again
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-12 11:20:54 +01:00
AnErrupTion 32d5330efb Move the event loop to a separate function
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-12 01:19:19 +01:00
AnErrupTion 5564fed664 Add Widget.calculateTimeout function
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-12 00:27:07 +01:00
AnErrupTion 7c7aed9cb2 Make animation timeout independent of event loop
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-11 23:51:32 +01:00
AnErrupTion 57c96a3478 Fix animation timeout bug + remove redundant check
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-11 22:55:10 +01:00
AnErrupTion 6773f74788 Add widget display name to improve logging
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-11 21:51:07 +01:00
AnErrupTion b389e379fa Make handling inputs widget-independent
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-11 21:00:00 +01:00
AnErrupTion d268d5bb45 Add the cascade animation as a separate widget
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-10 17:43:55 +01:00
AnErrupTion 70e95f094a Fix incorrect key parsing
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-10 10:41:08 +01:00
AnErrupTion 207b352888 Add central Widget struct + clean up code
In particular, move all termbox2 usage to TerminalBuffer.zig &
keyboard.zig

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-10 00:22:27 +01:00
AnErrupTion 99dba44e46 Rename min_refresh_delta option to animation_frame_delay (closes #925)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-09 11:38:56 +01:00
AnErrupTion d1810d8c98 Fix numlock & capslock positioning
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-09 11:20:27 +01:00
AnErrupTion 852a602032 Support more configurable keybindings (closes #679)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-09 11:11:00 +01:00
AnErrupTion cf5f62661c Remove resolution_changed bool
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 22:23:07 +01:00
AnErrupTion 1db780c7a7 Better handle screen resizes
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 22:18:00 +01:00
AnErrupTion 941b7e0dae Properly calculate string lengths
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 22:04:09 +01:00
AnErrupTion e9e2d51261 Better bigclock positioning
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 21:36:18 +01:00
AnErrupTion 769aefd6e9 Add separate big label widget for bigclock
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 21:14:49 +01:00
AnErrupTion f678e3bb28 Add update function for Label
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 19:50:32 +01:00
AnErrupTion f22593f828 Add Label component & make colors custom
This commit also makes Ly more resilient to (impossible) screen
resolutions.

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 17:40:50 +01:00
AnErrupTion 7bbdebe58b Fix center offset error
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 15:09:55 +01:00
AnErrupTion bca38856b1 Completely refactor widget placement code
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-08 14:53:36 +01:00
AnErrupTion fd81da7cbd Organise imports
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-07 17:01:11 +01:00
AnErrupTion 950eeed3ee Log which VT is used
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-07 10:48:05 +01:00
AnErrupTion ce0d00771d Use the unifont engine for KMSCON
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-07 10:43:08 +01:00
AnErrupTion 7744745f09 Don't try to switch TTY with KMSCON
It can do it automatically (see the corresponding service file).

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-05 19:55:40 +01:00
AnErrupTion 11735290b8 Fix active TTY detection for KMSCON
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-05 19:50:48 +01:00
AnErrupTion 21fca058e7 Don't install startup.sh with installnoconf
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-05 15:03:05 +01:00
AnErrupTion 2b46a81796 Add basic KMSCON support (closes #886)
It's not perfect yet, but at least it works!

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-05 15:01:45 +01:00
AnErrupTion b00d6899e5 Fix buffer not resizing with no animation
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-04 20:16:53 +01:00
AnErrupTion 7ce8ff61fe Unify ini parsing logic
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-02-01 10:41:06 +01:00
AnErrupTion 1a04a608a1 Remove dummy animation
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-31 22:51:44 +01:00
AnErrupTion b0dcc12785 Move UI drawing to separate function
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-31 22:35:28 +01:00
AnErrupTion b672d04dc6 Improve authentication logging
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-31 11:46:55 +01:00
AnErrupTion 2e04ea4d79 Add time, severity & category in logs
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-31 11:17:36 +01:00
AnErrupTion 0c12008327 Move more termbox usage into TerminalBuffer
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-31 10:36:08 +01:00
AnErrupTion 7934060d3b Credit Kawaii-Ash in the README
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-29 21:31:45 +01:00
AnErrupTion a158098df0 Add config.x_vt option (fixes #910)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-26 20:45:33 +01:00
AnErrupTion 5bfa1670cc Better systemd-homed user detection (fixes #913)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-26 20:36:44 +01:00
AnErrupTion 2eea683078 Fix wrong session being chosen in autologin (closes #911)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-18 21:35:49 +01:00
AnErrupTion d7f64676ee Split core code into ly-core library
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-18 21:07:53 +01:00
AnErrupTion 456916f059 Remove unused import in auth.zig
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-18 20:49:32 +01:00
AnErrupTion 2b1e4dc6c9 Fix undefined value in XCB connection check
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-18 18:03:21 +01:00
AnErrupTion 94c306758a Update Matrix space link (envs.net migration)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-17 16:58:05 +01:00
AnErrupTion 82d24d7725 Add donation links
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-17 10:48:12 +01:00
AnErrupTion 5a51d5ced5 Fix building on musl (closes #760)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-06 22:27:36 +01:00
AnErrupTion 135d1e40f6 Update termbox2
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-01-06 22:18:31 +01:00
AnErrupTion c0c400e0b6 Recursively create xauth file directory if non-existent
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2025-12-30 19:35:40 +01:00
AnErrupTion 9e4147bfb4 Fix invalid XDG_RUNTIME_DIR if D-Bus isn't used
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2025-12-30 19:29:47 +01:00
AnErrupTion 8e893932f2 Clamp user session index if invalid
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2025-12-30 18:09:46 +01:00