Call for testing cqtdeployer v1.1.0

Hi, I know that many people have problems with packing their qt applications in a snap package, especially when you need to use the latest version qt, and not everyone gets to collect qt from source. Especially for such people, the cqtdeployer utility was prepared,

This utility collects all the necessary dependencies of the application from your system, after which you just need to use the dump plugin to pack your application in a snap package.

I packed cqtdeployer in a snap to simplify the installation of this utility,
but unfortunately at the moment I could not solve all the problems associated with the robot application in an isolated container, and now it needs to be installed as a classic application

` snap install cqtdeployer --classic `

I ask all who may be interested or useful this utility to help with its testing
snapstore page
github page

1 Like

Packing qt applications has always been a huge pain in the a$$ so thank you very much for this effort. Now would it be possible for you to provide a real example of using this, e.g. an actual working snapcraft.yaml for a qt-based app that uses cqtdeployer?

Many thanks in any case!

1 Like

Unfortunately now I can not do this, an example I will prepare today or tomorrow evening

my application first of all is used for deploy qt library then the Snap is packaging this way:

    snap install cqtdeployer --classic
    git clone https://github.com/QuasarApp/Console-QtDeployer.git
    cd Console-QtDeployer/examples/TestQMLWidgets
    /path/to/your/qmake/bin/qmake TestQMLWidgets.pro
    make 
    cqtdeployer -bin ./build/TestQMLWidgets -qmake /path/to/your/qmake/bin/qmake -qmlDir ./ -targetDir ./distro
    snapcraft
    snap install cqtdeployerexample_0.1_amd64.snap --dangerous
    cqtdeployerexample

Done!

snapcraft

name: cqtdeployerexample # you probably want to 'snapcraft register <name>'
base: core18 # the base snap is the execution environment for this snap
version: '0.1' # just for humans, typically '1.2+git' or '1.3.2'
summary: simple example for packing with cqtdeployer # 79 char long summary
description: |
  simple example for packing with cqtdeployer

grade: stable # must be 'stable' to release into candidate/stable channels
confinement: strict # use 'strict' once you have the right plugs and slots


apps:
  cqtdeployerexample:
    command: desktop-launch $SNAP/TestQMLWidgets.sh

    plugs: [desktop, unity7, home, opengl, x11, wayland]


parts:
  cqtdeployerexample:
    # See 'snapcraft plugins'
    plugin: dump
    source: distro
    after: [wrapper, libsgl]
    
  wrapper:
    plugin: dump
    source: wrapper
    
  libsgl:
    plugin: nil
    stage-packages:
      # Here for the plugins-- they're not linked in automatically.
      - libx11-xcb1
      - libglu1-mesa
      - libxrender1
      - libxi6
      - libegl1-mesa
      - fontconfig
      - libgl1-mesa-dri
      - libxkbcommon0
      - ttf-ubuntu-font-family
      - dmz-cursor-theme
      - adwaita-icon-theme
      - gnome-themes-standard
      - shared-mime-info
      - libgdk-pixbuf2.0-0
      - libgtk2.0-0
      - xdg-user-dirs
      - libxrandr2
      - libwayland-cursor0
      - libwayland-egl1
      - libpq5

see an example on github

1 Like