diff -r ef1c44f741e3 -r 032aaa29f498 snap/snapcraft.yaml --- a/snap/snapcraft.yaml Thu Oct 05 13:16:35 2023 +0200 +++ b/snap/snapcraft.yaml Sat Oct 07 17:37:00 2023 +0200 @@ -34,69 +34,23 @@ grade: devel confinement: strict -base: core20 +base: core22 architectures: [amd64, arm64] parts: - python-deps: - # This part provides all python2 dependencies, including interpreter - # More particularily, it builds latest PIP supporting python2 from git - # and uses it to collect and buid other Beremiz dependencies. - # - # rational: - # - python plugin doesn't support python2 anymore on core20+ - # - attempts to get python2+pip+virtualenv in a core20 based snap failed - - plugin: nil - source: https://github.com/pypa/pip/archive/refs/tags/20.3.4.tar.gz - build-packages: - - libssl-dev - - libgtk-3-dev - - libgl1-mesa-dev - - libglu1-mesa-dev - - python2-dev - - stage-packages: - - python2 - - python-setuptools - - python-lxml - - override-build: | - # For some reasons site-packages needs to be created and - # added to PYTHONPATH during PIP (own) build. - # Apparently not anymore when snap is executed. - mkdir $SNAPCRAFT_PART_INSTALL/usr/lib/python2.7/site-packages - PYTHONPATH=$SNAPCRAFT_PART_INSTALL/usr/lib/python2.7/site-packages \ - $SNAPCRAFT_PART_INSTALL/usr/bin/python2 $SNAPCRAFT_PART_SRC/setup.py \ - install --prefix $SNAPCRAFT_PART_INSTALL/usr - PYTHONPATH=$SNAPCRAFT_PART_INSTALL/usr/lib/python2.7/site-packages \ - $SNAPCRAFT_PART_INSTALL/usr/bin/pip install \ - future \ - matplotlib \ - msgpack_python \ - u-msgpack-python \ - zeroconf2 \ - enum34 \ - pyro \ - sslpsk \ - posix_spawn \ - twisted \ - nevow \ - autobahn \ - click \ - opcua \ - pycountry \ - fonttools \ - Brotli \ - wxPython==4.1.1 - beremiz: - # Beremiz python source + GCC toolchain + # Beremiz python source and dependencies, inc. native GCC # source tree is expected to be just aside snap directory - plugin: nil + plugin: python source: beremiz source-type: local + python-requirements: + - requirements.txt + # native GCC toolchain + # note: GCC toolchain cannot be move to separate part + # otherwise there is a file conflict about lib64 in prime step + # caused apparently by libc6 (needed to have consistent sysroot) stage-packages: - gcc - libc6 @@ -106,8 +60,9 @@ - libgcc-s1 override-pull: | snapcraftctl pull - snapcraftctl set-version `python2 $SNAPCRAFT_PART_SRC/version.py` + snapcraftctl set-version `python3 $SNAPCRAFT_PART_SRC/version.py` override-build: | + snapcraftctl build cp -a $SNAPCRAFT_PART_SRC $SNAPCRAFT_PART_INSTALL/beremiz matiec: @@ -172,8 +127,8 @@ # Launcher for the IDE environment: SYSROOT: $SNAP - command: usr/bin/python2 $SNAP/beremiz/Beremiz.py - extensions: [gnome-3-38] + command: bin/python3 $SNAP/beremiz/Beremiz.py + extensions: [gnome] plugs: - network - network-bind @@ -182,7 +137,7 @@ # Beremiz Command Line interface environment: SYSROOT: $SNAP - command: usr/bin/python2 $SNAP/beremiz/Beremiz_cli.py + command: bin/python3 $SNAP/beremiz/Beremiz_cli.py plugs: - network - network-bind @@ -191,7 +146,7 @@ # Standalone runtime environment: SYSROOT: $SNAP - command: usr/bin/python2 $SNAP/beremiz/Beremiz_service.py + command: bin/python3 $SNAP/beremiz/Beremiz_service.py plugs: - network - network-bind