How I Automating Python-to-MSIX Publishing for the Microsoft Store using GitHub Actions
Source: Dev.to
The Problem: Python on the Windows Store? 🤔
The challenge is converting a Python script into a signed, store‑ready MSIX package without having to do it manually each time.
The Stack 🛠️
- Build: PyInstaller (to create the EXE)
- Packaging: MSIX (MakeAppx.exe)
- CI/CD: GitHub Actions (the magic sauce)
The “Aha!” Moment: Automating the Build
Here is the logic used in .github/workflows/build.yml:
- Setup: Install Python and system dependencies (e.g., Tesseract).
- Build EXE: Run
pyinstaller --onefile. - Layout: Create the MSIX directory structure and copy assets.
- Pack: Dynamically locate
MakeAppx.exeon the runner and pack the MSIX. - Artifact: Upload the final package, ready for the Partner Center.
The process involved overcoming issues with runFullTrust capabilities and manifest validation errors, but the green checkmark and “In Certification” status on the Partner Center made it worthwhile.
Introducing: DotScramble
A quick teaser was uploaded to demonstrate the app in action. (The app is currently in certification and will be live on the Store soon!)
Key Takeaway
Let me know in the comments if you’d like a detailed tutorial on the AppxManifest.xml configuration.