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
AnErrupTion
26e7585b0b
Don't forget to allocate :D
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-30 17:43:00 +01:00
AnErrupTion
b1cb576f67
Check for session file name in autologin ( closes #895 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-30 17:38:22 +01:00
AnErrupTion
add7f25f0d
Create session log directory if non-existent ( closes #896 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-30 17:20:04 +01:00
AnErrupTion
ced8f9bee3
Fix session not being saved correctly
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-17 17:32:16 +01:00
AnErrupTion
c6446db3e2
Start Ly v1.4.0 development cycle
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-06 15:58:39 +01:00
AnErrupTion
e0692885c5
Make delay floating point in dur format
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-06 14:34:47 +01:00
AnErrupTion
b6d3aa0e1c
Merge changes
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-06 14:25:57 +01:00
AnErrupTion
e6966a628c
Fix wrong session index + save file corruption
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-06 14:25:01 +01:00
AnErrupTion
a9ff0a6d07
Only support dur format v7, set -1 color to black
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-06 10:05:41 +01:00
AnErrupTion
92beb24c80
Fix save file initialisation & incorrect saved session index
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-05 19:49:27 +01:00
AnErrupTion
3bfdc75a70
Add option to run command after inactivity delay ( closes #747 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-03 20:39:27 +01:00
AnErrupTion
6cce221cbf
Improve issue template
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-02 22:37:03 +01:00
AnErrupTion
1c99574f73
Add option to run command before UI is initialised ( closes #798 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-02 22:23:10 +01:00
AnErrupTion
b249dba092
Support multiple TTYs with systemd service ( closes #102 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-02 22:11:39 +01:00
AnErrupTion
3365b33d6d
Fix zig-clap dependency URL
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-12-01 22:09:41 +01:00
AnErrupTion
d82fa82a87
Always add hostname last in the info line
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 23:50:39 +01:00
AnErrupTion
c2b3d794e8
Fix fallback UID range + add error if UID range not found
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 23:36:47 +01:00
AnErrupTion
e29bda3250
Add systemd-homed UID range
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 23:02:23 +01:00
AnErrupTion
4df2382698
Add possibility to disable auth_fails animation ( closes #835 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 22:19:38 +01:00
AnErrupTion
3dfb86fe69
Merge changes
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 21:59:09 +01:00
AnErrupTion
f9a001b160
Update zigini dependency & use same Git URL format everywhere
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 21:57:42 +01:00
AnErrupTion
a94abf2e69
Improve bug report template & add PR template
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 12:08:10 +01:00
AnErrupTion
fe354a4809
Add fallback UID range options at compile-time
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 09:47:50 +01:00
AnErrupTion
8c964d9ce5
Don't crash when failing to crawl a session directory ( closes #870 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 09:30:33 +01:00
AnErrupTion
392ea6ea63
Update French locale
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 09:18:29 +01:00
AnErrupTion
10854e643a
Don't crash when failing to parse arguments
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-30 09:14:10 +01:00
AnErrupTion
816be7449f
Update Repology URL
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-19 22:19:12 +01:00
AnErrupTion
f0758d812e
Fix potential out of bounds issue when automatically changing session
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-11-19 22:15:07 +01:00
AnErrupTion
3c0c84d067
Fix build error
...
I really should test PRs before merging them, shouldn't I?
2025-11-15 20:02:59 +01:00
AnErrupTion
15c78c838a
Update screenshot (for real this time)
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-25 20:51:51 +02:00
AnErrupTion
4a486bd876
Update screenshot
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-25 20:49:56 +02:00
AnErrupTion
38173d8557
Add edge margin to numlock & capslock
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-25 20:39:34 +02:00
AnErrupTion
95d1d9378c
Add edge margin to top-right clock
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-23 22:53:58 +02:00
AnErrupTion
6f62106fcc
Merge changes
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-23 22:16:24 +02:00
AnErrupTion
4171e29995
Fix build error when runit service symlink already exists
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-23 22:15:43 +02:00
AnErrupTion
80c27224e9
Create xauth directory if it doesn't exist
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-23 22:15:16 +02:00
AnErrupTion
ec16ad5dfc
Remove mention of config.tty option in README ( fixes #854 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-21 17:36:42 +02:00
AnErrupTion
5f22173b91
Mention only Ly v1.2.0 and above are supported in issue template
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 19:10:44 +02:00
AnErrupTion
4bc405f239
Start Ly v1.3.0 development cycle
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 18:12:16 +02:00
AnErrupTion
c4b68364ef
Add FreeBSD-specific PAM file
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 17:34:44 +02:00
AnErrupTion
1c05664c85
Fix xauth file name UB
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 16:18:05 +02:00
AnErrupTion
1fbcb10110
Open new log file after every fork() where necessary
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 15:29:47 +02:00
AnErrupTion
bfb3f925d9
Use shutdown -p now on FreeBSD, update instructions
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 13:47:52 +02:00
AnErrupTion
44c8acff16
Open new log file handle after fork()
...
This would also need to be done in the
nested fork() calls.
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 12:03:48 +02:00
AnErrupTion
541eae5311
Update init service for FreeBSD
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 11:23:57 +02:00
AnErrupTion
3faf3dec42
Fix login issue
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 08:41:36 +02:00
AnErrupTion
52d29bbd47
Fix FreeBSD installation in README
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 00:46:56 +02:00
AnErrupTion
a3a8f11575
Add basic FreeBSD service, change default fallback TTY to 2
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 00:46:09 +02:00
AnErrupTion
02f5aa702d
Implement /etc/login.defs in interop, TODO for FreeBSD
...
We should be able to parse the "minuid" and "maxuid"
values in /etc/rc.conf to get the UID range of the
system, with default values of 1000 to 32000 (as
they don't seem to be present by default).
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 00:28:12 +02:00
AnErrupTion
ed88458efd
Fix platform-specific bugs for FreeBSD compilation
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-18 00:05:53 +02:00
AnErrupTion
8df9603188
Install SysVinit service as an executable
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-17 23:12:21 +02:00
AnErrupTion
412994775b
Add SysVinit service ( closes #224 )
...
Signed-off-by: AnErrupTion <anerruption@disroot.org >
2025-10-17 23:10:52 +02:00