Skip to content

Latest commit

 

History

History
48 lines (31 loc) · 2.15 KB

File metadata and controls

48 lines (31 loc) · 2.15 KB

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Build Commands

# Compile the binary
make

# Build the Arch package (.pkg.tar.zst)
make pkg

# Install locally (requires root)
sudo make install

# Remove compiled binary
make clean

The binary links against GTK3 via pkg-config. No other build system or dependencies.

Architecture

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.

Packaging

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

Desktop File Notes

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.