Files
TeleportFling/todo.md
T
petere 5f5a2d8650 feat: add Nix flake package, AppImage and .deb packaging
- 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/
2026-09-19 10:31:35 +01:00

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).
  • --config flag — 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 daemoncontrib/install-daemon.sh installs 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-streamflinger.SetConfig for 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 .deb for Debian/Ubuntu (in progress: flake package, AppImage and .deb scripts added under packaging/; verify on a real Debian/Ubuntu machine).