This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
# Compile the binary
make
# Build the Arch package (.pkg.tar.zst)
make pkg
# Install locally (requires root)
sudo make install
# Remove compiled binary
make cleanThe binary links against GTK3 via pkg-config. No other build system or dependencies.
This is a single-file GTK3 C application (welcome.c) — all logic lives there. There are no libraries, modules, or header files to split across.
Autostart design — two-layer system:
/etc/xdg/autostart/acreetionos-welcome.desktop— installed by the package, runs the app for every user on every login. This file is never modified at runtime.~/.config/autostart/acreetionos-welcome.desktop— user-level override. Written only when the user unchecks the autostart checkbox (Hidden=true+X-GNOME-Autostart-enabled=false). Deleted when re-checked. If this file does not exist, autostart is considered enabled (system file takes effect).
Checkbox state (autostart_enabled()): returns TRUE when no user override exists, reads the user file for Hidden=true / X-GNOME-Autostart-enabled=false otherwise.
set_autostart(FALSE): creates the user-level suppression file.
set_autostart(TRUE): calls remove() on the user file — does not write anything.
PKGBUILD builds from the local source directory (${startdir}/welcome.c) — there is no upstream tarball and source=() is empty. make pkg wraps makepkg -f.
Installed paths:
/usr/bin/acreetionos-welcome— binary/usr/share/pixmaps/acreetionos-welcome.png— icon/usr/share/applications/acreetionos-welcome.desktop— app launcher/etc/xdg/autostart/acreetionos-welcome.desktop— system autostart
acreetionos-welcome.desktop is used for both the app launcher (/usr/share/applications/) and the system autostart (/etc/xdg/autostart/). It includes X-GNOME-Autostart-delay=3 to let Cinnamon fully initialize before the window appears, and X-GNOME-Autostart-enabled=true so Cinnamon picks it up explicitly.