Skip to main content

Launcher

Launcher is a small stable executable that starts and updates a Python desktop app.

You package and sign Launcher when the executable, bundled config, icon, or launcher tooling changes. Your app code ships separately as signed GitHub or GitLab release assets.

That split keeps normal app releases small:

  • the launcher executable is the durable file users install;
  • the app release archive is the versioned source bundle Launcher downloads, verifies, installs, and runs;
  • the signed manifest tells Launcher which archive belongs to each app release.

Minimal Workflow

Initialize an app repository:

uv add --dev wetlands-launcher
uv run launcher init --name MyApp --repository https://github.com/my-org/myapp.git
uv run launcher config check
uv run launcher release keygen

Build the launcher executable when it changes:

uv run launcher build
# sign/notarize the built launcher here
uv run launcher build package --version v1.2.3
uv run launcher release create v1.2.3 --notes-text "Release v1.2.3"
uv run launcher build upload --version v1.2.3

Use one provider release per version and upload each macOS, Windows, or Linux launcher package as a separate platform-named asset. Each successful launcher build upload updates packaging/launcher/distribution.yml; commit and push that file before building on the next machine. After the final platform upload, update the existing release with links for every recorded platform:

uv run launcher release update-notes v1.2.3 --notes-text "Release v1.2.3"

Publish a normal app-only release:

uv run launcher release create v1.2.3 --notes-text "Release v1.2.3"
uv run launcher release archive v1.2.3
uv run launcher release sign
uv run launcher release verify
uv run launcher release upload

Only run launcher build package and launcher build upload for releases where the launcher executable changed. For ordinary app changes, publish the app archive, manifest, and signature.

Learn More

Development

uv sync
uv run pytest
uv run ruff check .

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wetlands_launcher-0.3.1.tar.gz (407.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wetlands_launcher-0.3.1-py3-none-any.whl (86.9 kB view details)

Uploaded Python 3

File details

Details for the file wetlands_launcher-0.3.1.tar.gz.

File metadata

  • Download URL: wetlands_launcher-0.3.1.tar.gz
  • Upload date:
  • Size: 407.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wetlands_launcher-0.3.1.tar.gz
Algorithm Hash digest
SHA256 4c258589779866d6d733815b4bff405afb7443d699e4d8830837e60712ab1fab
MD5 7ddc7bda9ac6c5316c5a3749f36e4ca4
BLAKE2b-256 5245a6f66afc2f176d1b1f25c9022c72a061f719293620b17bb5fd0356bfbe82

See more details on using hashes here.

File details

Details for the file wetlands_launcher-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: wetlands_launcher-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 86.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wetlands_launcher-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8606e92bb650b9d5738a35b00b533cc1df634f39eca24104505993dad60e0dc4
MD5 4a1d5f93bb1ec40268efbe3804c4d2ef
BLAKE2b-256 7b20688d1dbd34c757d21890bb17e9cca386b91bae363b5c4181945b20f0ba1e

See more details on using hashes here.

Release history Release notifications | RSS feed

0.3.9

2 files

0.3.7

2 files

0.3.6

2 files

0.3.5

2 files

0.3.4

2 files

0.3.3

2 files

This release

0.3.1 This release

2 files

0.3.0

2 files

0.2.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page