WAP Ain’t Perfect
  • TypeScript 70.2%
  • SCSS 24.3%
  • Shell 5.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-07-27 07:33:00 +03:00
assets Merp 2025-12-26 20:31:35 +02:00
docs Initial progress 2025-12-16 22:30:13 +02:00
extra ArchLinux update indicator 2026-04-02 07:32:11 +03:00
scripts Check trust before updateing 2026-07-27 07:32:59 +03:00
scss Sway IPC improvements 2026-07-27 07:33:00 +03:00
src Sway IPC improvements 2026-07-27 07:33:00 +03:00
.gitignore Added setup script 2026-07-26 15:12:48 +02:00
.prettierrc Pretty 2026-01-27 23:06:22 +02:00
app.tsx Pretty 2026-01-27 23:06:22 +02:00
config.toml ArchLinux update indicator 2026-04-02 07:32:11 +03:00
env.d.ts initial commit 2025-10-25 16:41:04 +03:00
package.json Added setup script 2026-07-26 15:12:48 +02:00
pnpm-lock.yaml Added setup script 2026-07-26 15:12:48 +02:00
README.md Added setup script 2026-07-26 15:12:48 +02:00
tsconfig.json Displays a floating tray window 2025-10-26 02:19:12 +02:00

Debugging:

GTK_DEBUG=interactive ags run
ags inspect -i [config name, wam]

Dev env install

git clone https://github.com/LeadSeason/wam-shell.git
cd wam-shell
pnpm run setup
pnpm start

pnpm run setup installs ags and the required astal libraries, links the ags js modules into .sys/, installs node modules, and generates the TypeScript types. It picks the install method automatically:

  • Arch with an AUR helper (paru or yay): installs aylurs-gtk-shell, dart-sass, the libastal-*-git packages, and i3ipc-glib-git (sway IPC) from the AUR and official repos.
  • Everything else: builds the astal libraries and i3ipc-glib from source (build deps installed via pacman/dnf when available). You can force this path with pnpm run setup -- --source.

Notes:

  • The shell talks to sway over IPC using the i3ipc-1.0 typelib from i3ipc-glib — required even for non-sway sessions, since the sway modules are imported at startup.

  • Nix users: get ags via nix shell github:aylur/ags and point the setup at it with AGS_JS_DIR=/path/to/ags/js pnpm run setup.

  • Runtime features need their daemons: battery needs upower, the audio slider needs wireplumber, power profiles need power-profiles-daemon.

  • Upstream ags install docs: https://aylur.github.io/ags/guide/install.html

Archlinux update checker script Install

will show in bar if enough available updates.

mkdir ~/.config/systemd/user/ 
mkdir ~/.local/bin
cp pending-updates-daemon.service ~/.config/systemd/user/pending-updates-daemon.service
cp pending-updates-daemon ~/.local/bin/pending-updates-daemon
systemctl --user daemon-reload
systemctl --user enable --now pending-updates-daemon.service