Commit graph

172 commits

Author SHA1 Message Date
spearzificial
6c9b8a8d82 feat(ipc): implement ShowOverlay and drop settings that never worked
ShowOverlay was declared in the Command enum but the daemon dispatcher had
no arm for it, so it fell through to `_ => {}`. Nothing could open the HUD
once it was closed except the --menu toggle path.

- daemon: spawn_overlay_once() checks the overlay pid file for a live
  process and launches `scythe --menu` only when none is running, so
  repeated requests cannot stack overlays
- cli: `scythe --show-overlay` sends the command, falling back to a direct
  launch when the daemon is unreachable

Fourteen config keys were persisted and shown in the settings UI while no
capture, encoder, muxer or daemon path ever read them. Removed from
ScytheConfig, from the overlay state, and from their UI panels:
capture_source, replay_storage, change_resolution, resolution_w/h,
container_format, show_scroll_lock_led, autostart_on_game,
save_folder_by_game, name_by_game, language, ui_color_theme, record_enabled.
Unknown JSON keys are ignored by serde, so existing configs still load.

The e2e script also unlinked a live daemon's socket: it ran rm -f on the
socket path unconditionally and only stopped the systemd unit, so a daemon
started by execs.lua or by hand kept its flock while losing its path entry,
leaving the session broken until the process died. It now sends StopDaemon,
waits for the socket to disappear, and aborts without unlinking if the
daemon will not stop.
2026-10-20 16:33:41 +05:30
spearzificial
d01cdcb449 fix(ci): package the unified scythe binary instead of removed targets
The multicall consolidation removed the scythe-daemon and scythe-ui crate
targets, but every packaging path still copied them, so a tag push failed
at the first packaging step and no release could be produced.

- release.yml: tarball, .deb and AppImage ship scythe plus daemon/ui/vrec
  symlinks; AppRun execs scythe; Windows bundle copies scythe.exe only
- gitlab-ci.yml: artifacts publish target/release/scythe; Windows job
  builds --bin scythe
- rpm spec and flatpak manifest install one binary and link the aliases
- NSIS installers target scythe.exe for shortcuts, finish page,
  DisplayIcon and forwarded args, keeping legacy taskkill lines so old
  installs shut down cleanly

Also make the gitlab fmt job advisory: it reported drift across 20 files
and build-linux hard-depended on it, blocking every build. A whole-tree
reformat belongs in its own commit.
2026-10-20 16:31:46 +05:30
spearzificial
16edf3c693 docs: overhaul PROJECT_GUIDE.md with v0.2.18 unified binary architecture and features 2026-10-20 14:59:47 +05:30
db7cbf93bb fix(ui): truly borderless toast, 1s power poller with resume and alerts 2026-10-11 18:45:32 +05:30
e7a83ba472 fix(ui): borderless toast, effective power-gated replay with drain 2026-10-11 18:33:55 +05:30
c3459bee4d fix(ui): mp4-only output, cursor truth, working autostart/power, flat notifications, live audio tests 2026-10-11 18:17:34 +05:30
3cc718fa69 feat(arch): consolidate daemon and UI into singular multicall binary scythe 2026-10-11 14:28:14 +05:30
425a9b1003 docs: document gray screen fix, compile time optimization, and Forgejo release in checklist 2026-10-11 12:44:51 +05:30
836bf0bf76 chore(release): v0.2.18 - Windows cross-compile support, Forgejo updater, hardware capture startup resilience, and GTK3 retirement 2026-10-11 12:41:18 +05:30
71e95e656c Update README.md 2026-10-11 04:47:35 +00:00
b201561442 docs: add pipeline architecture flow diagram 2026-10-11 10:15:28 +05:30
343032cef6 docs: document screenshot resolution presets and low-end hardware optimizations 2026-10-09 07:48:09 +05:30
f41b827b41 feat(ui): screenshot resolution presets, low-end hardware optimizations, and all 8 keybind tests 2026-10-09 07:47:38 +05:30
cc6512edb7 docs: record dropdown animation, replay audio, QoL keybinds, and monospace font in checklist 2026-10-08 23:10:23 +05:30
20f9773080 feat(ui): dropdown rolldown animation, sound in replay, square buttons, full QoL keybinds, and monospace font support 2026-10-08 23:09:52 +05:30
6e114cb3ff docs: document square button refinement and all functional option tests 2026-10-05 21:26:22 +05:30
e2c5350770 fix(ui): square buttons, sharp drop-shadow dropdowns, and persistent functional settings across all options 2026-10-05 21:25:51 +05:30
78261af1be docs: update checklist with performance optimizations 2026-10-05 07:24:14 +05:30
82b16caa2e perf: optimize PipeWire DRM format negotiation and sharpen Gallery modal with drop shadows 2026-10-05 07:23:49 +05:30
3753d0c6e5 docs: document Opus audio and encoder quality/color/power mode hookups in checklist 2026-10-05 06:55:38 +05:30
7230e50135 feat(engine): wire Opus audio encoding, quality mode (CBR/VBR), color range, and low power mode 2026-10-05 06:55:15 +05:30
634703827e docs: record sharp slate redesign and screenshot panel in checklist 2026-10-04 17:06:47 +05:30
f9c7ab772e feat(ui): complete overhaul matching GPU Screen Recorder UI screenshots with screenshot feature 2026-10-04 17:06:12 +05:30
8831c501a1 docs: update checklist with smoothed modal, 4 menus, card dropdowns, and fluid notification haste exit 2026-10-04 15:46:44 +05:30
adc27e3190 feat(ui): smooth rounded settings modal, pinned footer, 4 menus, floating card dropdowns, and fluid toast haste exit 2026-10-04 15:46:05 +05:30
4d28bb7ed5 feat(ui): complete overhaul of settings modal and notification engine 2026-10-04 12:15:58 +05:30
0925b65d63 chore: update maintainer checklist with settings modal and notification overhaul 2026-10-04 12:15:22 +05:30
a14902dcb0 feat(ui): implement in-overlay toast animation engine and overhaul standalone toasts 2026-10-04 12:12:29 +05:30
605c1792c8 feat(ui): implement centered ShadowPlay settings modal and tab panels with numeric inputs 2026-10-04 12:08:40 +05:30
8caf54fbcf feat(ui): add SettingsTab enum, InOverlayToast struct, and numeric input component 2026-10-04 11:56:17 +05:30
9058cc3f5d docs: add implementation plan for settings UI and notification overhaul 2026-10-04 11:30:17 +05:30
31ee97503e docs: add design specification for settings UI and notification redesign 2026-10-04 11:18:11 +05:30
db77fb986b Add LICENSE
MIT OR Apache-2.0 — the license already claimed in the README, just missing from disk.
2026-09-27 20:52:52 +05:30
9e1d6250cb Fix Windows video encoding, DWM overlay transparency, and settings layout alignment
Some checks are pending
Release & Packaging / Build Linux Packages (.tar.gz, .deb, .rpm, .AppImage) (push) Waiting to run
Release & Packaging / Build Windows Binaries (.exe) (push) Waiting to run
Release & Packaging / Publish GitHub Release (push) Blocked by required conditions
2026-09-22 22:12:46 +05:30
79d64321f2 Fix instant replay frame pacing, SIMD color scaling, and active bitrate
Some checks are pending
Release & Packaging / Build Linux Packages (.tar.gz, .deb, .rpm, .AppImage) (push) Waiting to run
Release & Packaging / Build Windows Binaries (.exe) (push) Waiting to run
Release & Packaging / Publish GitHub Release (push) Blocked by required conditions
2026-09-20 16:01:42 +05:30
91f603918d feat(updater): implement cross-platform in-app automatic software update 2026-09-18 20:44:12 +05:30
b2d18297da fix(windows): resolve capture freeze, duplicate hotkey saves, overlay transparency, and settings UI alignment
Some checks are pending
Release & Packaging / Build Linux Packages (.tar.gz, .deb, .rpm, .AppImage) (push) Waiting to run
Release & Packaging / Build Windows Binaries (.exe) (push) Waiting to run
Release & Packaging / Publish GitHub Release (push) Blocked by required conditions
2026-09-18 19:48:43 +05:30
aa1c6643b8 chore(release): bump version to v0.2.14 for RTMP livestream network broadcaster
Some checks are pending
Release & Packaging / Build Linux Packages (.tar.gz, .deb, .rpm, .AppImage) (push) Waiting to run
Release & Packaging / Build Windows Binaries (.exe) (push) Waiting to run
Release & Packaging / Publish GitHub Release (push) Blocked by required conditions
2026-09-18 17:50:35 +05:30
67178a636f feat(stream): implement RTMP livestream network broadcaster and worker pipeline 2026-09-18 17:40:18 +05:30
f34116ec02 fix(encoder): replace SwsFlags with universal bitflags and bump version to v0.2.13
Some checks are pending
Release & Packaging / Build Linux Packages (.tar.gz, .deb, .rpm, .AppImage) (push) Waiting to run
Release & Packaging / Build Windows Binaries (.exe) (push) Waiting to run
Release & Packaging / Publish GitHub Release (push) Blocked by required conditions
2026-09-18 17:29:26 +05:30
21c7405993 Release v0.2.12: GPU Screen Recorder update modal, top bar alignment, livestream integration, and codebase polish
Some checks are pending
Release & Packaging / Build Linux Packages (.tar.gz, .deb, .rpm, .AppImage) (push) Waiting to run
Release & Packaging / Build Windows Binaries (.exe) (push) Waiting to run
Release & Packaging / Publish GitHub Release (push) Blocked by required conditions
2026-09-18 08:03:45 +05:30
837e7cae73 test: add unit tests for gsr 3-column layout geometry and settings 2026-09-17 11:51:12 +05:30
f469cf550e ui: replicate 1:1 gpu screen recorder 3-column freestanding settings layout 2026-09-17 06:42:14 +05:30
9d12c1ae58 ui: apply scythe styling to notifications, replace top bar logo with scythe vector icon, and fix top bar positioning 2026-09-16 23:42:58 +05:30
7dd1769524 ui: recreate 1:1 replica of gpu-screen-recorder-ui 2026-09-16 05:12:13 +05:30
1e224edceb encoder: fix color space to bt709, improve text sharpness, eliminate mmap thrashing, and enhance notification bar vibrancy 2026-09-12 11:25:14 +05:30
5a1e503508 ui: enhance notification countdown bar visibility and optimize daemon memory 2026-09-12 10:45:45 +05:30
0e620e2658 ui: add countdown progress bar, arrival bloom, fade transitions, and icon animations to notifications 2026-09-12 10:34:26 +05:30
a341565c5a ui: align notifications flush to screen edge with translucent cards and modern icons 2026-09-12 10:31:33 +05:30
f0117451e7 ui: only render accent outline on active cards 2026-09-12 10:25:54 +05:30