Commit graph

734 commits

Author SHA1 Message Date
AnErrupTion
d10df78886
auth: Add password reset prerequisites
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-25 23:10:37 +02:00
AnErrupTion
95641008fe
setup.sh: Set STARTUP, late load Xsession (closes #1049)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-25 20:32:36 +02:00
AnErrupTion
00440cca2e
crawler: remove any trailing colon for XDG_CURRENT_DESKTOP
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-25 19:55:54 +02:00
AnErrupTion
39ea43c3cb
ui: Let the info line render after empty password error
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-25 19:54:34 +02:00
urly3
432560a1cd fix: freebsd still requires 1-indexed tty (#1048)
## What are the changes about?

I thought it was working as intended but appears I just got lucky when testing.
VT_ACTIVATE still wants them 1-indexed, so increase the parsed value respectively.

My apologies!

## What existing issue(s) does this resolve?

N/A

## Pre-requisites

- [ x ] I have tested & confirmed the changes work locally
- [ x ] I have read and fully adhere to the rules set in the contributing guidelines found in `CONTRIBUTING.md`

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1048
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-08-25 11:29:52 +02:00
AnErrupTion
c7591a15eb
auth: Simplify PAM appdata
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 22:47:10 +02:00
AnErrupTion
32dd0967ba
config: Add grab_focus_tty (closes #1039)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 21:32:11 +02:00
AnErrupTion
95a1bca7de
config: Fix dur file comment
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 17:58:21 +02:00
AnErrupTion
0a0d6704c8
Delete config.ini
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 16:51:01 +02:00
AnErrupTion
1117ef5a3b
Reference Lua config + fix install bug
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 16:50:29 +02:00
AnErrupTion
6ef332d73e
config: Add getRandomColor(), fix crash (closes #791)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 16:41:28 +02:00
AnErrupTion
b68a41b1ea
sysvinit: Use $PREFIX_DIRECTORY
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 16:12:48 +02:00
AnErrupTion
5618446377
systemd: Use agetty from sbin (closes #1045)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 16:11:57 +02:00
AnErrupTion
76a5f73ee5
config: Update config.lua
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 16:09:10 +02:00
AnErrupTion
4e7a599c8a
config: Rename dur_file to dur (closes #1032)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 15:44:21 +02:00
Titanium Brain
b9742203ee Use Lua as a config file language (#1010)
## What are the changes about?

Adds zlua for running Lua code as the configuration file.
Missing as of this time:
- ~~Parsing custom binds and labels~~
- ~~Fix memory leaks~~
- ~~Investigate issue with animation colours~~
- ~~Add examples and default config~~

## What existing issue does this resolve?

[#976](https://codeberg.org/fairyglade/ly/issues/976)

## Pre-requisites

- [ ] I have tested & confirmed the changes work locally
- [ ] I have run `zig fmt` throughout my changes

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1010
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-08-24 15:35:01 +02:00
urly3
882815343f feat: per tty last user caching (closes #1040) (#1044)
An update to #1042

## What are the changes about?

This no longer creates a new file and instead appends the new save data to the existing file in a backwards compatible way.
It can differentiate by using a prefix to the string (which would usually be the username) of "ly/tty".
Usernames on supported systems aren't able to include a forward slash, and if they could, the chances of those colliding..

The rest follows the last PR:
Fix using saved user list where it shouldn't
Now saves users that weren't previously in the save file (fixes TODO)
Since we save only valid state, the save file is self-cleaning of bad/outdated data

## What existing issue(s) does this resolve?

#1040

## Pre-requisites

- [ x ] I have tested & confirmed the changes work locally (freebsd, void linux)
- [ x ] I have read and fully adhere to the rules set in the contributing guidelines found in `CONTRIBUTING.md`

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1044
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-08-24 15:32:41 +02:00
RadsammyT
0a29dc2fef feat(gameoflife): allow for variations to game of life (closes #1023) (#1041)
## What are the changes about?

Allows the game of life animation to be ran with configurable rules, specifically: the neighbors required for birth and survival.
### Example: [B3/S12345 (Maze)](https://conwaylife.com/wiki/OCA:Maze)
(where numbers after B are neighbors required for birth, and S for survival)
<video src="/attachments/49120c5e-ce21-4025-852e-924befbc2621" title="Screencast_20260814_233338" controls></video>

Introduces two keys to the config:
```ini
# Sets the multiple amounts of neighbors needed for a cell to survive.
# Each numerical digit from 0 to 8 inclusive in this string becomes
# one of the targets required for this cell to survive.
# Example: a string of "23" makes the cell survive on 2 or 3 neighbors
gameoflife_param_survival = "23"

# Sets the multiple amounts of neighbors needed for a cell to be born.
# Each numerical digit from 0 to 8 inclusive in this string becomes
# one of the targets required for this cell to be born.
# Example: a string of "3" makes the cell be born on 3 neighbors
gameoflife_param_birth = "3"
```

## What existing issue(s) does this resolve?

Solves !1023

## Pre-requisites

- [x] I have tested & confirmed the changes work locally
- [x] I have read and fully adhere to the rules set in the contributing guidelines found in `CONTRIBUTING.md`

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1041
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-08-24 15:32:16 +02:00
jR4dh3y
bd28c0e679 Add optional bigclock digit outline (closes #1030) (#1031)
## What are the changes about?

Add optional `bigclock_outline_fg`. When set, each big-clock digit gets a 1-cell outline drawn under the glyph so it stays readable over busy animations. Default is `null` (previous behavior).

When the outline is enabled, the gap under the clock is slightly larger so the stroke is not glued to the login box.

## What existing issue(s) does this resolve?

Fixes #1030

## Pre-requisites

- [x] I have tested & confirmed the changes work locally
- [x] I have read and fully adhere to the rules set in the contributing guidelines found in `CONTRIBUTING.md`

### Testing

- `zig build -Doptimize=ReleaseSafe` (zig 0.16.0)
- Greeter with `bigclock = en` and `bigclock_outline_fg = 0x20000000` over a `dur_file` animation
- Default `null` leaves stock look unchanged

### AI usage (per contributing.md)

Assisted by an LLM (xAI Grok) for exploration and drafting. I directed the design (optional outline only, no panel/box, stock layout otherwise), reviewed the Zig, fixed an `i2` overflow in the outline loop, verified the build/local greeter, and wrote this PR text.

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1031
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-08-24 15:31:52 +02:00
urly3
fa8332dddd feature: getActiveTerminal for FreeBSD (#1047)
## What are the changes about?

Implements getActiveTerminal for FreeBSD via fstat

## What existing issue(s) does this resolve?

#1046

## Pre-requisites

- [ x ] I have tested & confirmed the changes work locally
- [ x ] I have read and fully adhere to the rules set in the contributing guidelines found in `CONTRIBUTING.md`

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1047
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-08-24 15:30:46 +02:00
AnErrupTion
f17ccf9ea7
build.zig: Support rc build descriptions
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 15:29:17 +02:00
AnErrupTion
11da43d7d9
Start Ly v1.6.0 development cycle
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-24 15:20:13 +02:00
AnErrupTion
1d071223ab
README: Remove runtime shutdown dependency v1.5.0-rc1
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-08-23 15:35:38 +02:00
dragsbruh
db7f8ac5d3 [Docs] Fix instructions to disable agetty-tty2 for runit in readme (#1043)
## What are the changes about?

updated instructions in readme.md for runit to properly disable `agetty-tty2` and unlink services

## What existing issue(s) does this resolve?

on void linux, when `runit-void` package is upgraded it re-adds the symlinks for agetty, including `agetty-tty2`, if its not properly disabled (`down` file in svdir)

https://github.com/void-linux/void-packages/blob/master/srcpkgs/runit-void/INSTALL

so everytime that package is updated, both `agetty-tty2` and `ly` start making `ly` unusable until you manually unlink it

## Pre-requisites

- [x] I have tested & confirmed the changes work locally
- [x] I have read and fully adhere to the rules set in the contributing guidelines found in `CONTRIBUTING.md`

Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1043
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-08-21 19:10:29 +02:00
AnErrupTion
a22805d44b
Auth: Handle symlinks for session log
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-31 23:52:19 +02:00
AnErrupTion
b6fba46b08
GPA: Add more tracking in Debug
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-28 01:38:48 +02:00
AnErrupTion
7c2ae2738c
positionSingleWidget: Resist integer overflows
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-10 13:02:58 +02:00
AnErrupTion
84950136c9
positionWidgets: Less integer overflows possible
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-10 00:15:07 +02:00
AnErrupTion
d00780d6ce
zig: Remove usage of [*c]
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-08 01:29:57 +02:00
AnErrupTion
014a00d33e
Improve templates
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-07 22:35:06 +02:00
AnErrupTion
fb544b3357
Change default box_position_v to 0.5
This can potentially be confusing to users.

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-07 12:22:43 +02:00
AnErrupTion
5ccd91c132
Prepare for Zig 0.17.0
Still requires Zig 0.16.x for now.

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-07 11:51:05 +02:00
AnErrupTion
78c7c2e2e8
Decouple save file path from config directory (closes #1025)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 22:11:52 +02:00
AnErrupTion
a41ebe8f6f
Remove cornersContain()
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 21:33:30 +02:00
AnErrupTion
e4e399cd07
Allow toggling visibility of shutdown, restart & show password keybinds
(closes #993)

Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 21:18:49 +02:00
AnErrupTion
018d797ed6
Brother what am I doing
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 20:19:40 +02:00
AnErrupTion
54f1ff14ee
corners: Break up "keys" into individual keys
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 20:17:46 +02:00
AnErrupTion
7e6474924c
config: Order battery_id alphabetically
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 19:57:29 +02:00
AnErrupTion
26377fd319
FreeBSD: Fix compilation
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 19:56:24 +02:00
AnErrupTion
5fc5fd62a0
Remove shutdown_cmd & restart_cmd + sleep & hibernate
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 19:44:10 +02:00
AnErrupTion
acb532b5d4
migrator: Free old save path later
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 18:33:13 +02:00
AnErrupTion
e1696a4e73
config: Better document corner customisation
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 17:32:49 +02:00
AnErrupTion
954e90b3bd
Remove options superseded by corner customisation
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 17:20:05 +02:00
AnErrupTion
7eae544418
systemd: Add more conflicts, better kmscon service
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 12:43:10 +02:00
AnErrupTion
32f11cdbe5
Modify link to black hole animation (closes #1006)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 11:47:37 +02:00
AnErrupTion
9b8046e37c
auth: chown & chmod TTY (closes #944)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 11:10:26 +02:00
AnErrupTion
4513033bcb
ly@.service: Use agetty
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 02:22:40 +02:00
AnErrupTion
102d1c9a9b
Unset Shift and Ctrl for arrow keys (closes #1015)
Signed-off-by: AnErrupTion <anerruption@disroot.org>
2026-07-06 00:22:51 +02:00
Luna
e0c287306e feature: add corner customization (closes #961) (#963)
## What are the changes about?

Add corner customization (what is in which corner of the screen)

## What existing issue does this resolve?

Issue #961

## Pre-requisites

- [x] I have tested & confirmed the changes work locally
- [x] I have run `zig fmt` throughout my changes

Co-authored-by: AnErrupTion <anerruption@disroot.org>
Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/963
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-07-05 23:22:03 +02:00
HigherOrderLogic
25fad28c34 Add type_username option (closes #891) (#1012)
## What are the changes about?

Add an option to allow user manually input username, instead of selecting from a list of discovered users.

I have not tested the changes yet since I wasnt able to get it build locally. Will try to resolve this asap.

## What existing issue does this resolve?

#891

## Pre-requisites

- [ ] I have tested & confirmed the changes work locally
- [x] I have run `zig fmt` throughout my changes

Co-authored-by: HigherOrderLogic <73709188+HigherOrderLogic@users.noreply.github.com>
Co-authored-by: AnErrupTion <anerruption@disroot.org>
Reviewed-on: https://codeberg.org/fairyglade/ly/pulls/1012
Reviewed-by: AnErrupTion <anerruption+codeberg@disroot.org>
2026-07-05 22:43:15 +02:00