Commit graph

112 commits

Author SHA1 Message Date
Albert Armea
d3cd4a9015 Always pass --unsupported-gpu to Sway
On NVIDIA GPUs, this allows the launcher to come up at all. If it is not
provided, Sway will exit immediately after printing a warning to the
journal. This can be very hard to debug if you don't know what you're
looking for.

On other GPUs, including those that play nice with Linux like Intel and
AMD, the option is completely harmless.
2026-02-14 22:26:10 -05:00
Albert Armea
af10a1ca19
Merge pull request #28 from aarmea/u/aarmea/20/keyboard-gamepad-2
Add keyboard and gamepad launch support
2026-02-08 14:24:25 -05:00
Albert Armea
becb091612 Update packages for gamepad support 2026-02-08 14:20:35 -05:00
Albert Armea
fbb01127fa Fix rustfmt in CI
Just use --check, don't call git
2026-02-08 14:12:49 -05:00
Albert Armea
3861092d3d Run rustfmt 2026-02-08 14:01:49 -05:00
Albert Armea
c8675be472 Make CI and agents run rustfmt 2026-02-08 14:01:15 -05:00
Albert Armea
b840a7d694 Implement Ctrl+w and Alt+F4 to close the current activity
Mouse not required

This is done by sending StopCommand to shepherdd, not by natively
closing the window. Sway initiates this to avoid any issues with
shepherd-launcher not having focus (as it won't when an activity is
running).
2026-02-08 13:54:17 -05:00
Albert Armea
64ee1d7bc6 Implement controller exit
Use the "Home" button (or Xbox or PlayStation, depending on the controller)
2026-02-08 13:43:17 -05:00
Albert Armea
b12b42b13d Fix analog stick up/down
It's not inverted anymore
2026-02-08 12:45:12 -05:00
Albert Armea
2538403acd Fix up/down moves 2026-02-08 12:11:20 -05:00
Albert Armea
e5a4dbdce7 WIP: keyboard and controller support 2026-02-08 11:14:09 -05:00
Albert Armea
8bba628d98
Merge pull request #26 from aarmea/u/aarmea/9/connectivity-check-new
Internet connectivity check
2026-02-07 17:53:35 -05:00
Albert Armea
ffa8d7f07a Implement connection check 2026-02-07 17:47:16 -05:00
Albert Armea
8659b11450 Add AGENTS.md 2026-02-07 17:47:16 -05:00
Albert Armea
6e64e8e69d
Merge pull request #25 from aarmea/u/aarmea/4/steam-type
Add "steam"-specific type
2026-02-07 16:55:09 -05:00
Albert Armea
02ba2965d5 lint 2026-02-07 16:51:17 -05:00
Albert Armea
9da95a27b3 Add "steam"-specific type
This implementation allows each platform to choose how to launch Steam (on Linux, we use the snap as the examples suggested before), and keeps Steam alive after an activity exits so that save sync, game updates, etc. can continue to run.

Change written by Codex 5.2 on medium:

Consider this GitHub issue https://github.com/aarmea/shepherd-launcher/issues/4. On Linux, an activity that uses the "steam" type should launch Steam via the snap as shown in the example configuration in this repository.

Go ahead and implement the feature. I'm expecting one of the tricky bits to be killing the activity while keeping Steam alive, as we can no longer just kill the Steam snap cgroup.
2026-02-07 16:22:55 -05:00
Albert Armea
4446f518a7
Update README with new Minecraft usage
I recommend Prism Launcher now
2026-01-09 23:02:25 -05:00
Albert Armea
b7f2294a81
Merge pull request #22 from aarmea/u/aarmea/18/flatpak-type
Implement first-class Flatpak support
2026-01-09 22:32:04 -05:00
Albert Armea
d823ed0a19 Implement Flatpak application type 2026-01-09 22:26:26 -05:00
Albert Armea
b98fbc598f Add --force argument to install scripts
This overwrites the existing configuration
2026-01-09 22:14:15 -05:00
Albert Armea
dc58817aea
Merge pull request #19 from aarmea/u/aarmea/fix/graceful-config
Add configuration validation
2026-01-04 21:11:28 -05:00
Albert Armea
9c955e5d66 Make sway log out on config failure
If you don't, it becomes impossible to reconfigure without restarting the machine completely
2026-01-04 21:05:08 -05:00
Albert Armea
7abd61f09a Add config validation binary and scripts 2026-01-04 21:00:44 -05:00
Albert Armea
65292566f2 Standardize on ~/.config/shepherd/config.toml 2026-01-04 20:53:31 -05:00
Albert Armea
51b81c2a5b
Merge pull request #17 from aarmea/u/aarmea/fix/mc-launcher-snap
Merging now, Minecraft specific issue is tracked in #18
2026-01-04 18:38:16 -05:00
Albert Armea
5ace934882 Fix secrets management 2026-01-04 18:22:04 -05:00
Albert Armea
18e9df9d83 %s/launcher/desktop environment alternative/g
When running "properly", there's no DE at all -- so it completely
replaces it.
2026-01-04 14:23:26 -05:00
Albert Armea
619de4fd5e Add terminal activity example (for debugging) 2026-01-04 14:22:44 -05:00
Albert Armea
c0af5b430a Add more Wayland dependencies 2026-01-04 14:22:20 -05:00
Albert Armea
a8a61813b8 Make environment behave more like a real session 2026-01-04 14:21:02 -05:00
Albert Armea
15697465c5 Capture logs for snap apps as well 2026-01-02 19:26:26 -05:00
Albert Armea
1e584f2907 Add optional child process logging 2026-01-02 19:00:27 -05:00
Albert Armea
3453e656a5
Merge pull request #15 from aarmea/u/aarmea/fix/no-clobber-config
Don't clober user configs on install
2026-01-01 23:20:24 -05:00
Albert Armea
047878ee7f Don't clober user configs on install 2026-01-01 23:16:31 -05:00
Albert Armea
6e63a4da1b
Merge pull request #14 from aarmea/u/aarmea/fix/runtime-fixes
Fix multi-user scenarios
2026-01-01 23:11:04 -05:00
Albert Armea
60d5d9f1f1 lint 2026-01-01 22:55:53 -05:00
Albert Armea
66cfcce29d Make Sway/systemd call shepherdd's graceful shutdown on logout 2026-01-01 22:48:47 -05:00
Albert Armea
5c6f50b673 Implement graceful shepherdd shutdown 2026-01-01 22:40:57 -05:00
Albert Armea
439a97d488 Only use user configs
Also having a system config was getting too confusing
2026-01-01 22:29:48 -05:00
Albert Armea
540a546945
Merge pull request #13 from aarmea/u/aarmea/fix/dev-run
Fix dev-run
2026-01-01 18:13:12 -05:00
Albert Armea
fcd9baf067 Fix dev-run 2026-01-01 18:07:11 -05:00
Albert Armea
73203b3458
Merge pull request #12 from aarmea/u/aarmea/2/setup-scripts
Add setup scripts and documentation
2026-01-01 16:15:46 -05:00
Albert Armea
39d956a753 Add curl as a build dependency
It seems Ubuntu stopped shipping this with desktop releases relatively recently
2026-01-01 15:57:55 -05:00
Albert Armea
9c14fe5ccd Update documentation to reflect setup scripts 2026-01-01 13:50:48 -05:00
Albert Armea
fc0c1ce51d Add setup scripts 2026-01-01 13:48:17 -05:00
Albert Armea
3b1a2fb166 shepherdd shouldn't require root to run 2025-12-31 22:33:44 -05:00
Albert Armea
91e1547902
Add schema link to CONTRIBUTING 2025-12-31 15:35:41 -05:00
Albert Armea
93260c6bde
Add issue links to README 2025-12-31 15:33:39 -05:00
Albert Armea
9151562b6b Fix CI 2025-12-31 00:59:21 -05:00