- flake: build teleportfling and teleportfling-gui as nixpkgs packages (buildGoModule) with a .desktop entry and icon for the GUI - packaging/appimage.sh: bundle the GUI + runtime libs (recursive ldd) into a self-contained AppImage via appimagetool - packaging/deb.sh: build a .deb for Debian/Ubuntu with both binaries, desktop entry, icon and declared runtime dependencies - README: document all three packaging methods - .gitignore: ignore dist/
1.9 KiB
1.9 KiB
TeleportFling TODO
Backlog of deferred / planned work, tracked outside of milestone milestones.
Planned
- Monitor picker in the GUI — monitors are enumerated via hyprctl
(Hyprland) and shown as a dropdown in the settings window; the selected
monitor persists as
stream_index. Falls back to a single indexed option on other compositors. - Surface runtime errors in the GUI — the engine records the most recent capture/encode/packet/audio error and the GUI shows it in the status label and tray tooltip (highlighted as a danger).
--configflag — the CLI and GUI accept a custom config path (teleportfling --config /path/config.json); explicit CLI flags override file values. Used by the systemd daemon unit in contrib/.- Run as a daemon —
contrib/install-daemon.shinstalls a per-user systemd unit (contrib/teleportfling.service) that starts the headless CLI with its own config at~/.config/teleportfling/daemon.json.
Future / Ideas (not yet scoped)
- Live settings changes mid-stream —
flinger.SetConfigfor FPS/quality without a restart. - Bitrate / bandwidth tuning — options beyond the balanced 1080p30 default.
- Screen capture scaling / downsampling — capture a scaled region rather than the monitor's native resolution.
- Multi-monitor verification — the GUI monitor picker enumerates via hyprctl; confirm behaviour on a real multi-monitor setup.
- Non-Hyprland monitor enumeration — portal-based fallback so the picker works on GNOME/KDE etc. (currently falls back to a single indexed option).
- Packaging — Nix flake package, AppImage, and
.debfor Debian/Ubuntu (in progress: flake package, AppImage and .deb scripts added under packaging/; verify on a real Debian/Ubuntu machine).