Skip to content

Latest commit

History

History
70 lines (58 loc) 路 3.69 KB

File metadata and controls

70 lines (58 loc) 路 3.69 KB

This project has been generated using 'A-Python-Template' (APT).

Metadata

Lots of information regarding AppImage building process and specifications can be found under the AppImage project's GitHub Wiki

A detailed comparison of AppImage types is available at the official AppImageSpec repository.

Setup

Dependencies:

馃毀 "The python-appimage utility can only package applications that can be installed directly with pip. For more advanced usage, it is necessary to extract and edit the Python AppImage."

馃毀 "Fuse is not supported on Windows Subsystem for Linux v1 (WSL1), which prevents the direct execution of AppImages. However, it is still possible to extract the contents of Python AppImages and use them, as explained in the Advanced installation section."

AppDir

AppDir directory description can be found at the AppImage project's documentation.

The attached python-appimage (Python-based packaging tool) template contains:

  • entrypoint.sh
    • it defines the main executable to run within the AppImage
  • requirements.txt
    • it defines the (minimum) required packages to build AppImage with
  • {project-acronym}.appdata.xml
    • this file can be generated with AppStream generator from the AppImage's official documentation.
      It defines the basic metadata.
  • {project-acronym}.desktop
    • an AppImage integration details, keywords can be found at the official FreeDesktop's project specification
  • {project-acronym}.svg

AppImage Artifact

The final package can be extracted for debugging purposes using ./{project-acronym}-x86_64.AppImage --appimage-extract command in the CLI.

The artifact's internal directory structure should resemble the following:

  • AppRun
    • the entrypoint
  • opt
    • Python dependencies
  • other files
    • assets and other files

Installation:

python-appimage based project examples may be found at project's github

  • Windows
    • cd "C:\Users\{User}\AppData\Local\Programs\Python\Launcher"
    • .\py.exe -3.14 -m venv "{path}/{project-name}/venv-3.14" suggested
    • everything below
  • Linux
    • python3.14 -m venv {path}/{project-name}/venv-3.14 suggested
    • everything below
  1. cd {path}/{project-name}
  2. source venv-3.14/bin/activate
  3. pip install --upgrade pip
  4. pip install .
  5. double check with which python (Linux)
  6. Update files in AppImage/Recipe directory
  7. Build with python-appimage build app -p 3.14 AppImage/Recipe -x {project-name}
  8. It is important that all dependencies of the app are within one folder. Best practices are covered by the AppImage project's documentation.

Example

CD Build