Skip to main content

Effortlessly build and package your PySide6 apps for Linux and Android apks — no command-line struggles, just a beautiful GUI!

Project description

Cross-Platform PySide6 Deployment Tool

A modern, interactive GUI tool to build and package your PySide6 applications for both Linux and Android, with support for custom icons, project configuration, and real-time build logs. Effortlessly build and package your PySide6 applications for Linux and Android with a single click! No more command-line struggles—just a beautiful, interactive GUI that guides you from project setup to APK and executable creation. Deploy, customize, and monitor your builds in real time, all in one place.


🚀 Features

  • Build for Linux and Android (armv7a, aarch64, x86_64, i686)
  • Custom app icon and project metadata
  • Edit spec file before build (pause/resume)
  • Real-time build log and progress
  • One-click build/cancel/clear log
  • Beautiful dark-themed UI with emoji indicators

🖥️ Requirements

Install dependencies:

pip install PySide6 PyInstaller GitPython
sudo apt install p7zip-full

📦 Project Structure

.
├── main.py                # Main GUI application
├── main.ui                # Qt Designer UI file
├── ui_main.py             # Generated Python UI code
├── build_Linux.py         # Linux build logic
├── build_Android.py       # Android build logic
├── spec_editor.txt        # Script for editing spec files and pausing
└── ReadMe.md

🏁 Getting Started

  1. Clone or download this repository.
  2. Open a terminal in the project directory.
  3. Run the GUI:
    python main.py
    

Or just install it from pip

  1.  pip install PySide6-to-apk
    
  2. Open a terminal.
  3. Run the GUI:
    PySide6-to-apk
    

🛠️ Usage

1. Configure Your Project

  • App Name: Enter your application's name.
  • App Icon: Click 📂 Browse to select an image file for your app icon.
  • Package Name: (Android) Enter your package name (e.g., org.example.myapp).
  • Version: Set your app version.
  • Project Path: Select your PySide6 project directory.

2. Select Target Platforms

  • Check the platforms you want to build for (🐧 Linux, 🤖 Android architectures).

3. (Optional) Edit Spec File

  • Check "✏️ Edit Spec File manually" if you want to pause the build and edit the generated spec file before continuing.

4. Build

  • Click 🚀 Build All Platforms to build for all targets.
  • Or click ▶️ Build Selected to build only the checked platforms.

5. Monitor Progress

  • View real-time logs in the build log area.
  • As each build completes, a ✅ will appear next to the platform.

6. Pause/Resume for Spec Editing

  • If you checked "Edit Spec File manually", the build will pause after generating the spec file.
  • Edit the spec file in your project directory.
  • Click ▶️ Continue to resume the build.

7. Cancel or Clear

  • Click ❌ Cancel All to stop all running builds.
  • Click 🧹 Clear Log to clear the build log area.

📂 Output

  • Linux executables and Android APKs are placed in a dist/ folder inside your project directory.

📝 Notes

  • The tool uses PyInstaller for Linux and pyside6-android-deploy for Android.
  • For Android, the first build will download and set up the NDK, SDK, and wheels automatically.
  • If you encounter permission issues, run the tool with appropriate permissions or adjust your project directory.

💡 Troubleshooting

  • No spec file to edit?
    You must start a build with "Edit Spec File manually" checked for the pause/edit/resume workflow to work.
  • Build fails or hangs?
    Check the build log for errors. Ensure all dependencies are installed and your environment is set up for Android builds.
  • No hover effect on Cancel button?
    Remove any custom/empty stylesheet from the button to inherit the global style.

🤝 Contributing

Pull requests and suggestions are welcome! Please open an issue for bugs or feature requests.


📜 License

MIT License (https://opensource.org/license/mit)


🙏 Acknowledgements

Project details


Download files

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

Source Distribution

pyside6_to_apk-1.0.0.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

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

pyside6_to_apk-1.0.0-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file pyside6_to_apk-1.0.0.tar.gz.

File metadata

  • Download URL: pyside6_to_apk-1.0.0.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for pyside6_to_apk-1.0.0.tar.gz
Algorithm Hash digest
SHA256 4b6d83ebe8d4770e33839d4f2e9147bbc92e1401d566b4b56723c91bb66cadc4
MD5 29f264446908f40e7d8cb013b166ba6a
BLAKE2b-256 7bd1dc4f467396d4115c9b02a70b393b34431578893a1123d36c5fa5744f1b11

See more details on using hashes here.

File details

Details for the file pyside6_to_apk-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pyside6_to_apk-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for pyside6_to_apk-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 405daf308795f76d13edf6a8996f97b5240f61f94f4a8c8624d59a92a8bea137
MD5 827085dab663b3d7d6ec0818c8a1b195
BLAKE2b-256 2f45369784bdb7709f9780f99198df2a6e0657d41eae7f924ca444532f0f30b7

See more details on using hashes here.

Supported by

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