linux observer
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix install docs: install-from-source, missing packages, GNOME note

Packages aren't on PyPI — document clone + pipx install from source.
Add Arch section with all required packages. Add gstreamer1-plugin-
pipewire to Fedora packages. Add note that activity detection (idle,
lock, power save) requires GNOME desktop — other desktops get capture
but no activity-based segment boundaries.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

+13 -2
+13 -2
README.md
··· 2 2 3 3 Standalone Linux desktop observer for [solstone](https://solpbc.org). Captures screen and audio from a GNOME Wayland session, stores segments locally, and syncs to a solstone server. 4 4 5 + **Note:** Activity detection (idle timeout, screen lock, power save) currently requires a GNOME desktop. On other desktops (KDE, Sway, Hyprland, XFCE), screen and audio capture works but activity-based segment boundaries won't trigger. 6 + 5 7 ## System Dependencies 6 8 7 9 **Fedora:** 8 10 ```bash 9 - dnf install python3-gobject gtk4 gstreamer1-plugins-base pipewire-gstreamer alsa-lib-devel pulseaudio-utils pipewire-pulseaudio 11 + dnf install python3-gobject gtk4 gstreamer1-plugins-base gstreamer1-plugin-pipewire pipewire-gstreamer alsa-lib-devel pulseaudio-utils pipewire-pulseaudio 10 12 ``` 11 13 12 14 **Debian/Ubuntu:** ··· 14 16 apt install python3-gi gir1.2-gdk-4.0 gir1.2-gtk-4.0 gstreamer1.0-pipewire libasound2-dev pulseaudio-utils pipewire-pulse 15 17 ``` 16 18 19 + **Arch:** 20 + ```bash 21 + pacman -S python-gobject gtk4 gstreamer gst-plugin-pipewire libpulse alsa-lib 22 + ``` 23 + 17 24 ## Install 18 25 26 + Packages are not yet on PyPI. Install from source: 27 + 19 28 ```bash 20 - pipx install --system-site-packages solstone-linux 29 + git clone https://github.com/solpbc/solstone-linux.git 30 + cd solstone-linux 31 + pipx install --system-site-packages . 21 32 ``` 22 33 23 34 `--system-site-packages` is required for PyGObject/GStreamer access.