Release: Wombat

Version Wombat is actively laying the foundation for ecosystems Documentation.

Read the Roadmap

Install SchedPlus packages

Standard is the recommended SchedPlus edition. It launches the advanced PyQt desktop workspace directly and also accepts the shared CLI commands. Lite bundles the lightweight Tkinter interface, Full bundles both desktop interfaces and opens an interface selector, and CLI provides only command parsing without a graphical interface. These editions use the same scheduler and data format; they differ in which interfaces are bundled and which launcher opens by default.

Download non-Store packages from the SchedPlus releases page. Match every downloaded file with its published SHA-256 checksum before use.

Platform Recommended edition Available format
Debian/Ubuntu Standard schedplus .deb
Debian/Ubuntu Lite or CLI schedplus-lite or schedplus-cli .deb
Linux portable Standard AppImage
Windows Standard User-scoped installer EXE
Windows portable Any edition ZIP
Microsoft Store Standard Pending Store approval
Snap Standard Pending Snap publication

Debian and Ubuntu

Download the release matching your CPU architecture, then install one edition:

sudo apt install ./schedplus_<version>_<architecture>.deb
# Lite: sudo apt install ./schedplus-lite_<version>_<architecture>.deb
# CLI:  sudo apt install ./schedplus-cli_<version>_<architecture>.deb

The three Debian packages are alternative installation profiles and are mutually exclusive. Do not install schedplus, schedplus-lite, and schedplus-cli beside one another. The Standard schedplus package already supports both its PyQt desktop interface and CLI commands, so a separate CLI package is unnecessary when Standard is installed.

To switch profiles, remove the installed package with sudo apt remove schedplus, sudo apt remove schedplus-lite, or sudo apt remove schedplus-cli, then install the replacement package. Switching packages does not remove the shared task data.

AppImage

The Standard AppImage is portable and does not need installation:

chmod +x SchedPlus-<version>-x86_64.AppImage
./SchedPlus-<version>-x86_64.AppImage

With no FUSE support, run --appimage-extract and launch squashfs-root/AppRun. The AppImage never writes into its own directory.

Windows

Run SchedPlus-Setup-<version>-windows-x86_64.exe for the recommended per-user Standard installation. It adds Start Menu shortcuts and a standard uninstaller. Use Windows Settings to uninstall it; task data remains.

Portable ZIPs are available for Standard, Lite, Full, and CLI. Extract SchedPlus-<Edition>-<version>-windows-x86_64.zip and launch its executable. You can move or delete the extracted folder without deleting tasks.

Release portable ZIPs use a managed layout with the application under current/ and an independent updater beside it. Updates activate with an atomic directory swap followed by a startup health check; SchedPlus restores the last-known-good version if that check fails. The standalone Standard installer remains outside internal updates until public Authenticode signing is configured. Microsoft signs and updates the Store MSIX through the Store.

Microsoft Store and Snap

The Standard Microsoft Store listing and strict-confinement Snap are being prepared. After publication, use the Store listing for Store-managed updates, or install Snap with:

snap install schedplus

Source installs

For development or the Full source edition, clone the repository, create a virtual environment, and install .[full]. See the repository README for current commands.

Package-aware updates

Every release package embeds its version, edition, platform, architecture, format, update channel, manifest URL, and public verification key. Stable and preview release feeds are signed separately. SchedPlus verifies the Ed25519 manifest signature, artifact SHA-256, and exact byte size before any handoff.

Debian and AppImage builds download the verified matching package and open its location; installation remains an explicit user action using normal platform tools. Snap and Microsoft Store packages remain externally managed, and source installations remain opted out.

Data, upgrades, and removal

Environment Data path
Windows installer, portable, and Store %APPDATA%\ZFordDev\SchedPlus\tasks.db
Debian and AppImage ~/.local/share/ZFordDev/SchedPlus/tasks.db
Strict Snap $SNAP_USER_COMMON/SchedPlus/tasks.db

Upgrades retain this SQLite database. Uninstalling a package does not delete it. Back up tasks.db while SchedPlus is closed before a major upgrade. Databases from releases through 0.7.3 are automatically moved out of the application directory when possible.

After relocation, application startup applies ordered SQLite schema migrations. An existing database is backed up as tasks_pre_migration_v<old>_to_v<new>_*.db before its schema changes. Migration failure rolls back the database, while application downgrades that cannot read a newer schema are refused without modifying user data.

Release installation and upgrade gates

Every tagged candidate is assembled as a draft. The post-release smoke workflow downloads those exact draft assets and independently checks fresh installation, a populated v0.8.0 database upgrade, task and schema preservation, and removal behavior for:

Snap and Microsoft Store policy tests require their embedded identity to keep updates externally managed. Each job uploads only a sanitized application log; home, temporary, workspace, and secret-like values are redacted, and databases or private task content are never uploaded.

The stable-promotion job depends on every mandatory Linux, Windows, and Store policy job. It accepts only a release-* tag and cannot publish the draft when any dependency fails. Native Microsoft Store flighting, Snap refresh and confinement, Authenticode and SmartScreen, FUSE across distributions, and visual desktop behavior remain documented manual release checks because hosted runners cannot reproduce them reliably. Record those results and the workflow run in the release tracking issue before promotion.

Licensing and source

The distributed desktop application is GPL-3.0-only. The reusable scheduler, validation, task model, and storage modules in src/logic are also available under Apache-2.0. Every binary package includes its license and NOTICE files; the corresponding source is available from the SchedPlus repository and its release tags. The historical MIT notice is retained for releases through 0.7.3; see the repository NOTICE for the licensing boundary.