Releases: GustavoBelo/OpenCouch
Releases · GustavoBelo/OpenCouch
Release list
Open Couch v1.7.0
Highlights
- Auto-return on controller disconnect: Couch Mode now closes Big Picture and restores the desktop layout when all controllers are turned off (10s debounce, requires 60s of controller use in session, via
/dev/input/js*) - Resource Control: Optionally close selected apps when entering Couch Mode — with protected processes safeguard and configurable delay
- Enhanced diagnostics: Structured logging of missing host components (
ERROR/WARNING), persistentappend-logfor app events, and clearer log view highlighting - Native app cleanup engine: Fast, async scanning of installed and running apps without blocking the UI
Features
Controller Management (EXIT_ON_ALL_CONTROLLERS_OFF)
- New config
EXIT_ON_ALL_CONTROLLERS_OFF(Settings → Game Controllers) —app/src/displaysettingsmodel.{h,cpp},backend/open-couch-engine - Detection via
/dev/input/js*withCONTROLLER_DEBOUNCE_SECS=10andCONTROLLER_MIN_USAGE_SECS=60 - Integration in both
playandwatchflows; warns ifwmctrlis missing - 7 languages: en, pt_BR, de_DE, es_ES, fr_FR, en_GB, zh_CN
Resource Control (CLOSE_APPS_*)
- New config keys:
CLOSE_APPS_ENABLED,CLOSE_APPS_WAIT_SECONDS(default 5s),APPS_TO_CLOSE(comma-separated) —app/src/configstore.*,backend/open-couch-engine:44-46 PROTECTED_PROCESSESlist (plasmashell,kwin_*,ksmserver,steam*,open-couch,Xwayland, etc.) — never closed or listed- Engine:
is_protected_process(),close_tracked_apps()viapkill -x, invoked async after Big Picture appears —backend/open-couch-engine:612-646,1125-1131 - Legacy engine helpers
desktop_process_names(),list_apps(),list_running_apps()kept for CLI/host fallback (GUI no longer useslist-running/list-apps)
Logging & Diagnostics
log_missing_host_components()reports missingREQUIRED_HOST_COMMANDS(jq,kscreen-doctor,pgrep) asERRORandOPTIONAL_HOST_COMMANDS(wmctrl) asWARNING—backend/open-couch-engine:159-179, logged onstatus- New engine command
append-log <message>(sanitized, 500 chars) used by app to persist events —backend/open-couch-engine:1283-1294 print_status()now logs full config includingEXIT_ON_ALL_CONTROLLERS_OFFandCLOSE_APPS_*+ engine version checkBackend::startWatchernow handlesCrashExitand persistsERROR: Big Picture watcher exited unexpectedlyviaappend-log—app/src/backend.cppDashboardPage.qmlnow highlightsWARN/WARNINGin red, callsbackend.clearLog()on enter
App Models & UI
- New
AppCleanupModel(C++17, native): Scans.desktopfiles viaQStandardPaths/QDir/QFile/QDirIterator(depth 2, follows flatpak symlinks) +/proc(exe/comm/cmdline), filtersPROTECTED_PROCESSES, deduplicates lower-case, caches in-memory per session (QMap), async viaQThread::create—app/src/appcleanupmodel.{h,cpp}(677 LOC)- Properties:
installedApps,runningApps,loadingInstalled,loadingRunning; methodsrequestInstalledApplications()/requestRunningApplications()+BusyIndicator - Flatpak sandbox support via
/run/hostandflatpak-spawn --host open-couch-enginefallback - Registered as
appCleanupModelQML context property (app/src/main.cpp)
- Properties:
- New UI:
AppRowDelegate.qml,ChooseAppDialog.qml,RunningAppsDialog.qmlwithKirigami.SearchField,BusyIndicator,filteredApps - SetupPage: New Resource Control section (enable checkbox, warning label, apps list, choose/running buttons, wait
SpinBox) —app/qml/SetupPage.qml(refactored to rectangles, consistent spacing) - Other QML:
OnboardingSheet.qmlspacing improved,RunningAppsDialogcentered,main.qmllarger window dimensions,DashboardPage.qmllayout polish —99b6049
Fixes
fix: ScrollBarreference inDashboardPage.qml—a05b6d9- Move
QQmlApplicationEnginedeclaration after translator installation —9615735 - Refactor Dashboard/SetupPage config logic in
main.qml—b9e1dc6
Translations
- New keys
resource_control.*(heading, description, enable_cleanup, warning_terminate, apps_to_close, choose_app, running_apps, picker titles/empty) added toopencouch_en.ts(base) andpt_BR,de_DE,es_ES,fr_FR,en_GB,zh_CN—31f8e85
Packaging & Docs
- New
packaging/build-appimage.sh(replicatesrelease.yml, run viadistrobox enter fedora -- bash -c "packaging/build-appimage.sh") +.gitignoreappimage-dist/—46cd3a2 - Updated
AGENTS.mdwithAppCleanupModelnative scanning, async behavior, engine1.7.0commands and options —4c779fa,ccd2b55
Engine & Versioning
- Engine 1.7.0 (
backend/open-couch-engine:5-6):ENGINE_VERSION="1.7.0"/MIN_VERSION="1.7.0"(bumped viakMinEngineVersioninapp/src/engineclient.cpp:13) - Action required: Users on older engine will be prompted to reinstall. Reinstall via app onboarding (Refresh Status → Install) or
~/.local/bin/open-couch-engine --update/packaging/host/install.sh --update
Full Changelog: v1.6.20...v1.7.0
Open Couch v1.6.20
Full Changelog: v1.6.19...v1.6.20
Open Couch v1.5.1
Full Changelog: v1.5.0...v1.5.1
Open Couch v1.5.0
Full Changelog: v1.4.0...v1.5.0
Open Couch v1.4.0
Full Changelog: v1.3.0...v1.4.0
Open Couch v1.3.0
Full Changelog: v1.2.0...v1.3.0
Open Couch v1.2.0
Full Changelog: v1.1.2...v1.2.0
Open Couch v1.1.2
Full Changelog: v1.1.1...v1.1.2
Open Couch v1.1.1
Full Changelog: v1.1.0...v1.1.1
Open Couch v1.1.0
Full Changelog: v1.0.1...v1.1.0