Version Wombat is actively laying the foundation for ecosystems Documentation.
Read the RoadmapInstall 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:
- Debian Standard, Lite, and CLI packages;
- the Standard AppImage;
- Standard, Lite, Full, and CLI Windows portable ZIPs; and
- the installed Windows Standard build.
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.