nwjs-support: description: nwjs-support is a part which pulls in the necessary pieces to support an nwjs application as snaps filesets: cruft_compilers_and_debuggers: - -usr/bin/pdb3* - -usr/bin cruft_debhelper: - -usr/bin/dh_* - -usr/share/debhelper - -usr/share/dh-python - -usr/share/perl5/Debian cruft_docs: - -usr/share/doc - -usr/share/doc-base cruft_lintian: - -usr/share/lintian cruft_man_pages: - -usr/share/man - -share/man cruft_meta: - -usr/share/applications - -usr/share/pixmaps - -usr/share/icons - -usr/share/bash-completion cruft_packaging: - -usr/bin/dpkg* cruft_python: - -usr/lib/python* - -usr/bin/python* cruft_python_2to3: - -usr/bin/2to3* - -usr/lib/python*/lib2to3 cruft_python_idle: - -usr/lib/python*/idlelib - -usr/lib/python*/tkinter cruft_python_pip: - -lib/python*/site-packages/pip cruft_python_setuptools: - -lib/python*/site-packages/setuptools* cruft_python_tests: - -lib/python*/site-packages/tests cruft_python_venv: - -usr/lib/python*/venv cruft_python_wheel: - -lib/python*/site-packages/wheel* cruft_x11: - -usr/share/X11/XErrorDB maintainer: Alan Pope plugin: nil prime: - $cruft_compilers_and_debuggers - $cruft_debhelper - $cruft_docs - $cruft_lintian - $cruft_man_pages - $cruft_meta - $cruft_python - $cruft_python_2to3 - $cruft_python_idle - $cruft_python_pip - $cruft_python_setuptools - $cruft_python_tests - $cruft_python_venv - $cruft_python_wheel - $cruft_packaging stage-packages: - gconf2 - libasound2 - libcurl3 - libexif12 - libgl1-mesa-glx - libglu1-mesa - libnotify4 - libnss3 - libpulse0 - libssl1.0.0 - libxss1 - libxtst6 - libmirclient9 - xdg-utils patchelf: description: PatchELF is a simple utility for modifying existing ELF executables and libraries. In particular, it can do the following, * Change the dynamic loader ("ELF interpreter") of executables. * Change the RPATH of executables and libraries. * Shrink the RPATH of executables and libraries. * Remove declared dependencies on dynamic libraries (DT_NEEDED entries). * Add a declared dependency on a dynamic library (DT_NEEDED). * Replace a declared dependency on a dynamic library with another one (DT_NEEDED). install: install .version $SNAPCRAFT_STAGE/.version maintainer: Sergio Schvezov plugin: autotools prepare: 'git describe --tags --dirty --always >> .version ' source: https://github.com/NixOS/patchelf.git openssh: description: OpenSSH is the premier connectivity tool for remote login with the SSH protocol. It encrypts all traffic to eliminate eavesdropping, connection hijacking, and other attacks. In addition, OpenSSH provides a large suite of secure tunneling capabilities, several authentication methods, and sophisticated configuration options. maintainer: Marius Gripsgard plugin: autotools source: https://github.com/mariogrip/openssh-portable.git qt5conf: build-packages: - dpkg-dev description: This sets up qt5.conf for projects using qml and other qt5 components that need an Ubuntu standard internal path setup by default like the Ubuntu Core Apps. maintainer: David Planella plugin: make source: https://github.com/dplanella/qt5conf.git qt4conf: build-packages: - dpkg-dev description: This sets up qt4.conf for projects using qml and other qt4 components that need an Ubuntu standard internal path setup by default like the Ubuntu Core Apps. maintainer: Kyle Fazzari plugin: make source: https://github.com/kyrofa/qt4conf.git gtkconf: build-packages: - dpkg-dev description: This sets up the GTK environment for GTK-based projects maintainer: David Planella plugin: make source: https://github.com/dplanella/gtkconf.git curl: configflags: - --enable-static - --enable-shared - --disable-manual description: A tool and a library (usable from many languages) for client side URL transfers, supporting FTP, FTPS, HTTP, HTTPS, TELNET, DICT, FILE and LDAP. maintainer: Sergio Schvezov plugin: autotools snap: - -bin - -lib/*.a - -lib/pkgconfig - -lib/*.la - -include - -share source: http://curl.haxx.se/download/curl-7.44.0.tar.bz2 source-type: tar mqtt-paho-python2: description: mqtt-paho for python. maintainer: Leo Arias plugin: python2 source: https://github.com/eclipse/paho.mqtt.python source-tag: v1.1 source-type: git mqtt-paho-python3: description: mqtt-paho for python. maintainer: Leo Arias plugin: python3 source: https://github.com/eclipse/paho.mqtt.python source-tag: v1.1 source-type: git mqtt-paho/python2: description: mqtt-paho for python. maintainer: Leo Arias plugin: python2 source: https://github.com/eclipse/paho.mqtt.python source-tag: v1.1 source-type: git mqtt-paho/python3: description: mqtt-paho for python. maintainer: Leo Arias plugin: python3 source: https://github.com/eclipse/paho.mqtt.python source-tag: v1.1 source-type: git ffmpeg: build-packages: - libass-dev - libfreetype6-dev - libmp3lame-dev - libopus-dev - libsdl1.2-dev - libtheora-dev - libva-dev - libvdpau-dev - libvorbis-dev - libvpx-dev - libx264-dev - libx265-dev - libxcb1-dev - libxcb-shm0-dev - libxcb-xfixes0-dev - pkg-config - texinfo - yasm - zlib1g-dev configflags: - --prefix=/usr - --enable-gpl - --enable-libass - --enable-libfreetype - --enable-libmp3lame - --enable-libopus - --enable-libtheora - --enable-libvorbis - --enable-libvpx - --enable-libx264 - --enable-libx265 - --enable-nonfree description: This sets up ffmpeg for projects. maintainer: Winael plugin: autotools source: git://source.ffmpeg.org/ffmpeg.git source-branch: release/3.4 source-depth: 1 source-type: git stage-packages: - libasound2 - libass5 - libdrm2 - libfontconfig1 - libfribidi0 - libgraphite2-3 - libharfbuzz0b - libmp3lame0 - libnuma1 - libogg0 - libopus0 - libtheora0 - libva-drm1 - libva-x11-1 - libva1 - libvdpau1 - libvorbis0a - libvorbisenc2 - libvpx3 - libx11-6 - libx264-148 - libx265-79 - libxau6 - libxcb-shape0 - libxcb-shm0 - libxcb-xfixes0 - libxdmcp6 - libxext6 - libxfixes3 fwts: build-packages: - gcc - make - autoconf - automake - libtool - flex - bison - dh-autoreconf - libglib2.0-dev - libfdt-dev - libbsd-dev description: This sets up fwts for projects. maintainer: Firmware Testing Team plugin: autotools source: git://kernel.ubuntu.com/hwe/fwts stage-packages: - libfdt1 - libbsd0 - libpci3 stress-ng: build-packages: - gcc - make - zlib1g-dev - libbsd-dev - libgcrypt20-dev - libkeyutils-dev - libapparmor-dev - libaio-dev - libcap-dev - libsctp-dev - libatomic1 - libjudy-dev - libjpeg-dev - libkmod-dev - libattr1-dev - libxxhash-dev - libmd-dev - libxxhash-dev - on amd64: - libipsec-mb-dev description: This sets up stress-ng for projects. maintainer: Sylvain Pineau make-parameters: - STATIC=1 VERBOSE=1 override-pull: | snapcraftctl pull description="$(git describe HEAD --tags)" sha=$(echo $description | tr '-' ' ' | awk '{print $NF}') version=${description%$sha} commits=$(git log --oneline | wc -l) date=$(date +'%Y%m%d') if test "$description" = "$sha" then version="$description" else version=$(echo $version$date-$commits-$sha | cut -c1-32) fi snapcraftctl set-version "$version" plugin: make source: https://github.com/ColinIanKing/stress-ng source-type: git desktop-glib-only: build-packages: - libglib2.0-dev description: | Helpers for gtk2, gtk3, qt4 and qt5 or gnome-platform and glib minimal launchers. It brings the necessary code and exports for binding and using those desktop technologies in a relocatable fashion, enabling binding with global desktop theme, icon theme, image caching, fonts, mimetype handlers application global menu and gsettings integration. It also brings basics ubuntu dependency packages. . Usage: 1. add "after: [desktop-]" to your launcher: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit main dependencies and default choices. - gnome-platform is similar to gtk3 without the extra depends, it's meant to be used with the gnome platform which already includes those. - glib-only enables to compile mime types and gsettings infos. If you added your own graphical drivers, it will link them as well. 2. prepend your command with "desktop-launch", like: commands: "desktop-launch foo" if foo is in $PATH. You can as well specify: "desktop-launch $SNAP/foo". 3. add needed plugs to your application: - for graphical application: plugs: [x11 (or unity7 for appmenu integration)]. Think about adding opengl if you need hw acceleration. - if your application needs access to sound: plugs: [pulseaudio] - accessing to user's home directory: plugs: [home] - read/write to gsettings: plugs: [gsettings] - use of the shared platform snap content, first define the plug: plugs: gnome-3-26-1604: interface: content target: gnome-platform default-provider: gnome-3-26-1604:gnome-3-26-1604 and then make your apps use it: plugs: [gnome-3-26-1604] Note that an empty "gnome-platform" directory will be created for you in your snap. maintainer: Snapcraft community (https//forum.snapcraft.io) plugin: make source: https://github.com/ubuntu/snapcraft-desktop-helpers.git source-subdir: glib-only stage-packages: - libglib2.0-bin desktop-gnome-platform: build-packages: - gcc description: | Helpers for gtk2, gtk3, qt4 and qt5 or gnome-platform and glib minimal launchers. It brings the necessary code and exports for binding and using those desktop technologies in a relocatable fashion, enabling binding with global desktop theme, icon theme, image caching, fonts, mimetype handlers application global menu and gsettings integration. It also brings basics ubuntu dependency packages. . Usage: 1. add "after: [desktop-]" to your launcher: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit main dependencies and default choices. - gnome-platform is similar to gtk3 without the extra depends, it's meant to be used with the gnome platform which already includes those. - glib-only enables to compile mime types and gsettings infos. If you added your own graphical drivers, it will link them as well. 2. prepend your command with "desktop-launch", like: commands: "desktop-launch foo" if foo is in $PATH. You can as well specify: "desktop-launch $SNAP/foo". 3. add needed plugs to your application: - for graphical application: plugs: [x11 (or unity7 for appmenu integration)]. Think about adding opengl if you need hw acceleration. - if your application needs access to sound: plugs: [pulseaudio] - accessing to user's home directory: plugs: [home] - read/write to gsettings: plugs: [gsettings] - use of the shared platform snap content, first define the plug: plugs: gnome-3-26-1604: interface: content target: gnome-platform default-provider: gnome-3-26-1604:gnome-3-26-1604 and then make your apps use it: plugs: [gnome-3-26-1604] Note that an empty "gnome-platform" directory will be created for you in your snap. maintainer: Snapcraft community (https//forum.snapcraft.io) make-parameters: - FLAVOR=gtk3 override-build: | snapcraftctl build mkdir -pv $SNAPCRAFT_PART_INSTALL/gnome-platform plugin: make source: https://github.com/ubuntu/snapcraft-desktop-helpers.git source-subdir: gtk desktop-gtk3: build-packages: - build-essential - libgtk-3-dev description: | Helpers for gtk2, gtk3, qt4 and qt5 or gnome-platform and glib minimal launchers. It brings the necessary code and exports for binding and using those desktop technologies in a relocatable fashion, enabling binding with global desktop theme, icon theme, image caching, fonts, mimetype handlers application global menu and gsettings integration. It also brings basics ubuntu dependency packages. . Usage: 1. add "after: [desktop-]" to your launcher: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit main dependencies and default choices. - gnome-platform is similar to gtk3 without the extra depends, it's meant to be used with the gnome platform which already includes those. - glib-only enables to compile mime types and gsettings infos. If you added your own graphical drivers, it will link them as well. 2. prepend your command with "desktop-launch", like: commands: "desktop-launch foo" if foo is in $PATH. You can as well specify: "desktop-launch $SNAP/foo". 3. add needed plugs to your application: - for graphical application: plugs: [x11 (or unity7 for appmenu integration)]. Think about adding opengl if you need hw acceleration. - if your application needs access to sound: plugs: [pulseaudio] - accessing to user's home directory: plugs: [home] - read/write to gsettings: plugs: [gsettings] - use of the shared platform snap content, first define the plug: plugs: gnome-3-26-1604: interface: content target: gnome-platform default-provider: gnome-3-26-1604:gnome-3-26-1604 and then make your apps use it: plugs: [gnome-3-26-1604] Note that an empty "gnome-platform" directory will be created for you in your snap. maintainer: Snapcraft community (https//forum.snapcraft.io) make-parameters: - FLAVOR=gtk3 plugin: make source: https://github.com/ubuntu/snapcraft-desktop-helpers.git source-subdir: gtk stage-packages: - libxkbcommon0 - ttf-ubuntu-font-family - dmz-cursor-theme - light-themes - adwaita-icon-theme - gnome-themes-standard - shared-mime-info - libgtk-3-0 - libgdk-pixbuf2.0-0 - libglib2.0-bin - libgtk-3-bin - unity-gtk3-module - libappindicator3-1 - locales-all - xdg-user-dirs - ibus-gtk3 - libibus-1.0-5 - fcitx-frontend-gtk3 desktop-gtk2: build-packages: - build-essential - libgtk2.0-dev description: | Helpers for gtk2, gtk3, qt4 and qt5 or gnome-platform and glib minimal launchers. It brings the necessary code and exports for binding and using those desktop technologies in a relocatable fashion, enabling binding with global desktop theme, icon theme, image caching, fonts, mimetype handlers application global menu and gsettings integration. It also brings basics ubuntu dependency packages. . Usage: 1. add "after: [desktop-]" to your launcher: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit main dependencies and default choices. - gnome-platform is similar to gtk3 without the extra depends, it's meant to be used with the gnome platform which already includes those. - glib-only enables to compile mime types and gsettings infos. If you added your own graphical drivers, it will link them as well. 2. prepend your command with "desktop-launch", like: commands: "desktop-launch foo" if foo is in $PATH. You can as well specify: "desktop-launch $SNAP/foo". 3. add needed plugs to your application: - for graphical application: plugs: [x11 (or unity7 for appmenu integration)]. Think about adding opengl if you need hw acceleration. - if your application needs access to sound: plugs: [pulseaudio] - accessing to user's home directory: plugs: [home] - read/write to gsettings: plugs: [gsettings] - use of the shared platform snap content, first define the plug: plugs: gnome-3-26-1604: interface: content target: gnome-platform default-provider: gnome-3-26-1604:gnome-3-26-1604 and then make your apps use it: plugs: [gnome-3-26-1604] Note that an empty "gnome-platform" directory will be created for you in your snap. maintainer: Snapcraft community (https//forum.snapcraft.io) make-parameters: - FLAVOR=gtk2 plugin: make source: https://github.com/ubuntu/snapcraft-desktop-helpers.git source-subdir: gtk stage-packages: - libxkbcommon0 - ttf-ubuntu-font-family - dmz-cursor-theme - light-themes - adwaita-icon-theme - gnome-themes-standard - shared-mime-info - libgtk2.0-0 - libgdk-pixbuf2.0-0 - libglib2.0-bin - libgtk2.0-bin - unity-gtk2-module - locales-all - libappindicator1 - xdg-user-dirs - ibus-gtk - libibus-1.0-5 desktop-qt5: build-packages: - build-essential - qtbase5-dev - dpkg-dev description: | Helpers for gtk2, gtk3, qt4 and qt5 or gnome-platform and glib minimal launchers. It brings the necessary code and exports for binding and using those desktop technologies in a relocatable fashion, enabling binding with global desktop theme, icon theme, image caching, fonts, mimetype handlers application global menu and gsettings integration. It also brings basics ubuntu dependency packages. . Usage: 1. add "after: [desktop-]" to your launcher: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit main dependencies and default choices. - gnome-platform is similar to gtk3 without the extra depends, it's meant to be used with the gnome platform which already includes those. - glib-only enables to compile mime types and gsettings infos. If you added your own graphical drivers, it will link them as well. 2. prepend your command with "desktop-launch", like: commands: "desktop-launch foo" if foo is in $PATH. You can as well specify: "desktop-launch $SNAP/foo". 3. add needed plugs to your application: - for graphical application: plugs: [x11 (or unity7 for appmenu integration)]. Think about adding opengl if you need hw acceleration. - if your application needs access to sound: plugs: [pulseaudio] - accessing to user's home directory: plugs: [home] - read/write to gsettings: plugs: [gsettings] - use of the shared platform snap content, first define the plug: plugs: gnome-3-26-1604: interface: content target: gnome-platform default-provider: gnome-3-26-1604:gnome-3-26-1604 and then make your apps use it: plugs: [gnome-3-26-1604] Note that an empty "gnome-platform" directory will be created for you in your snap. maintainer: Snapcraft community (https//forum.snapcraft.io) make-parameters: - FLAVOR=qt5 plugin: make source: https://github.com/ubuntu/snapcraft-desktop-helpers.git source-subdir: qt stage-packages: - libxkbcommon0 - ttf-ubuntu-font-family - dmz-cursor-theme - light-themes - adwaita-icon-theme - gnome-themes-standard - shared-mime-info - libqt5gui5 - libgdk-pixbuf2.0-0 - libqt5svg5 - try: - appmenu-qt5 - locales-all - xdg-user-dirs - fcitx-frontend-qt5 desktop-qt4: build-packages: - build-essential - libqt4-dev - dpkg-dev description: | Helpers for gtk2, gtk3, qt4 and qt5 or gnome-platform and glib minimal launchers. It brings the necessary code and exports for binding and using those desktop technologies in a relocatable fashion, enabling binding with global desktop theme, icon theme, image caching, fonts, mimetype handlers application global menu and gsettings integration. It also brings basics ubuntu dependency packages. . Usage: 1. add "after: [desktop-]" to your launcher: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit main dependencies and default choices. - gnome-platform is similar to gtk3 without the extra depends, it's meant to be used with the gnome platform which already includes those. - glib-only enables to compile mime types and gsettings infos. If you added your own graphical drivers, it will link them as well. 2. prepend your command with "desktop-launch", like: commands: "desktop-launch foo" if foo is in $PATH. You can as well specify: "desktop-launch $SNAP/foo". 3. add needed plugs to your application: - for graphical application: plugs: [x11 (or unity7 for appmenu integration)]. Think about adding opengl if you need hw acceleration. - if your application needs access to sound: plugs: [pulseaudio] - accessing to user's home directory: plugs: [home] - read/write to gsettings: plugs: [gsettings] - use of the shared platform snap content, first define the plug: plugs: gnome-3-26-1604: interface: content target: gnome-platform default-provider: gnome-3-26-1604:gnome-3-26-1604 and then make your apps use it: plugs: [gnome-3-26-1604] Note that an empty "gnome-platform" directory will be created for you in your snap. maintainer: Snapcraft community (https//forum.snapcraft.io) make-parameters: - FLAVOR=qt4 plugin: make source: https://github.com/ubuntu/snapcraft-desktop-helpers.git source-subdir: qt stage-packages: - libxkbcommon0 - ttf-ubuntu-font-family - dmz-cursor-theme - light-themes - adwaita-icon-theme - gnome-themes-standard - shared-mime-info - libqtgui4 - libgdk-pixbuf2.0-0 - libqt4-svg - appmenu-qt - locales-all - sni-qt - xdg-user-dirs tpm2-tss: build-packages: - autoconf - autoconf-archive - libtool - gcc - g++ - libc6-dev configflags: - --enable-unit description: Implementation of the TPM 2.0 Software Stack (TSS). See https://github.com/01org/TPM2.0-TSS for the upstream project provided by this part and https://code.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/tpm2/ for the actual source code of this part. install: | # Run all tests shipped by default make check maintainer: Canonical System Enablement plugin: autotools prime: - -include source: https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/tpm2 source-branch: tpm2-tss/1.0 source-type: git tpm2-tss-1.4: build-packages: - autoconf - autoconf-archive - libtool - gcc - g++ - libc6-dev configflags: - --enable-unit description: Implementation of the TPM 2.0 Software Stack (TSS). See https://github.com/tpm2-software/tpm2-tss/tree/1.x for the upstream project provided by this part. maintainer: Sylvain Pineau plugin: autotools prime: - -include source: https://github.com/tpm2-software/tpm2-tss source-tag: 1.4.0 source-type: git checkbox: build-packages: - libxml2-dev - libxslt1-dev - zlib1g-dev - build-essential description: Part that supplies the latest stable version of the Checkbox tools for certifying devices. Fetches packages from PyPI. maintainer: Checkbox Developers plugin: python3 python-packages: - plainbox - checkbox-ng - checkbox-support - requests-oauthlib - XlsxWriter checkbox-support-dev: description: Part that supplies the latest stable version of the Checkbox tools for certifying devices. Fetches sources from git repositories. maintainer: Checkbox Developers plugin: python python-packages: - pynmea2 source: git://git.launchpad.net/checkbox-support source-type: git stage-packages: - python3-requests-unixsocket - python3-systemd checkbox-dev: after: - checkbox-ng-dev - checkbox-support-dev description: Part that supplies the latest stable version of the Checkbox tools for certifying devices. Fetches sources from git repositories. maintainer: Checkbox Developers plugin: nil checkbox-ng-dev: build-packages: - zlib1g-dev - build-essential description: Part that supplies the latest stable version of the Checkbox tools for certifying devices. Fetches sources from git repositories. maintainer: Checkbox Developers plugin: python python-packages: - guacamole - Jinja2 - padme - requests-oauthlib - urwid - XlsxWriter source: git://git.launchpad.net/checkbox-ng source-type: git plainbox-provider-snappy: build-packages: - linux-headers-generic - libcap-dev - libasound2-dev description: Tests to certify the correct functioning of devices running releases of snappy Ubuntu Core maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-snappy source-type: git stage-packages: - python3-yaml - usbutils - lshw - bluez-tests - python3-dbus - bonnie++ - hdparm - python3-gi - gir1.2-gudev-1.0 - wget - iw - iperf3 - libasound2 - libcap2-bin plainbox-provider-checkbox: description: This part contains the CheckBox jobs collection, i.e the hardware test definitions and scripts originally included with CheckBox maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-checkbox source-type: git stage-packages: - bc - bonnie++ - cryptsetup-bin - dmidecode - dmsetup - ethtool - fswebcam - gir1.2-cheese-3.0 - gir1.2-clutter-1.0 - gir1.2-gst-plugins-base-1.0 - gir1.2-gudev-1.0 - gstreamer1.0-pulseaudio - try: - hdapsd - hdparm - ipmitool - iperf - iperf3 - iw - jq - kmod - libfdt1 - lshw - mesa-utils - mokutil - net-tools - nmap - nux-tools - nvme-cli - obexftp - parted - pciutils - pulseaudio-utils - pyotherside - python3-dbus - python3-gi - python3-yaml - qml-module-qtquick-controls - qml-module-qtquick-layouts - qmlscene - smartmontools - usbutils - util-linux - uuid-runtime - wmctrl plainbox-provider-resource: build-packages: - autoconf - automake - libnl-3-dev - libnl-genl-3-dev - pkg-config description: Resource jobs are that are used to gather information about a system prior to running to the running plainbox-provider-snappy test suite maintainer: Checkbox Developers override-build: | cd src && autoreconf -i snapcraftctl build plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-resource source-type: git stage-packages: - cpu-checker - dpkg - dmidecode - libjson-xs-perl - pciutils - python3-requests-unixsocket - smartmontools plainbox-provider-certification-server: description: Test plans that are used as part of the Server Certification programme maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-certification-server source-type: git plainbox-provider-certification-client: description: Test plans that are used as part of the Client Certification programme maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-certification-client source-type: git checkbox-provider-edgex: description: EdgeX tests maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/checkbox-provider-edgex source-type: git stage-packages: - curl plainbox-provider-sru: description: Test plans that are executed as part of kernel SRU cycles maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-sru source-type: git networkmanager: build-packages: - intltool - gtk-doc-tools - libdbus-glib-1-dev - libdbus-1-dev - libiw-dev - libglib2.0-dev - libnl-3-dev - libnl-route-3-dev - libnl-genl-3-dev - libnss3-dev - libgnutls28-dev - libgcrypt11-dev - uuid-dev - systemd - libsystemd-dev - libudev-dev - libgudev-1.0-dev - libgirepository1.0-dev - gobject-introspection - libglib2.0-doc - libmm-glib-dev - libndp-dev - libreadline-dev - libnewt-dev - dbus-test-runner - isc-dhcp-client - python-dbus - python-gi - iptables - ppp-dev configflags: - --prefix=/usr - --libdir=/usr/lib - --libexecdir=/usr/lib/NetworkManager - --disable-qt - --disable-teamdctl - --disable-polkit - --disable-vala - --disable-config-plugin-ibft - --with-dhcpcd=no - --with-dhclient=no - --with-dnsmasq=no - --with-systemd-journal=no - --with-session-tracking=no - --with-suspend-resume=systemd - --with-libsoup=no - --with-modem-manager-1=yes - --enable-tests=yes - CFLAGS=-O2 description: | Part providing access to the NetworkManager client utilities namely nmcli but this part also provides the NetworkManager service binary as well. filesets: binaries: - usr/bin/arping - usr/bin/nmcli - usr/lib/*/NetworkManager - usr/lib/pppd/2.4.5/nm-pppd-plugin.so - usr/lib/NetworkManager - usr/sbin/NetworkManager - usr/lib/*/libnm-* configs: - etc/NetworkManager/* docs: - usr/share/doc/inotify-tools/* - usr/share/doc/iputils-arping/* - usr/share/doc/libdbus-glib-1-2/* - usr/share/doc/libgudev-1.0-0/* - usr/share/doc/libinotifytools0/* - usr/share/doc/libmm-glib0/* - usr/share/doc/libndp0/* - usr/share/doc/libnspr4/* - usr/share/doc/libnss3/* - usr/share/doc/network-manager/* rdepends: - usr/lib/libnm* - usr/lib/*/libdbus-glib* - usr/lib/*/libgudev* - usr/lib/*/libmm-glib* - usr/lib/*/libndp* - usr/lib/*/libnspr4* - usr/lib/*/libnss3* - usr/lib/*/libnssutil3* - usr/lib/*/libplc4* - usr/lib/*/libplds4* - usr/lib/*/libsmime3* - usr/lib/*/nss/* unwanted: - -usr/lib/NetworkManager/nm-dhcp-helper - -usr/lib/NetworkManager/libnm-device-plugin-adsl.so - -usr/lib/NetworkManager/libnm-device-plugin-bluetooth.so - -usr/lib/NetworkManager/libnm-settings-plugin-ibft.so - -usr/lib/pkgconfig/ maintainer: Canonical System Enablement override-build: | snapcraftctl build # Run all tests NetworkManager ships by default make check # Strip binaries find ../install -executable -type f | xargs file -Ni | grep 'application/x-executable\|application/x-sharedlib' | cut -d: -f1 | xargs strip plugin: autotools prime: - $binaries - $configs - $docs - $rdepends - $unwanted source: https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/network-manager source-branch: network-manager/xenial/1.2.2 source-type: git stage-packages: - iputils-arping - libdbus-glib-1-2 - libgudev-1.0-0 - libmm-glib0 - libndp0 - libnspr4 - libnss3 modemmanager: after: - libmbim - libqmi build-packages: - intltool - gtk-doc-tools - libdbus-glib-1-dev - libdbus-1-dev - libiw-dev - libglib2.0-dev - libnl-3-dev - libnl-route-3-dev - libnl-genl-3-dev - libnss3-dev - libgnutls28-dev - libgcrypt11-dev - libxml-parser-perl - uuid-dev - libsystemd-dev - libudev-dev - libgudev-1.0-dev - libgirepository1.0-dev - gobject-introspection - libsoup2.4-dev - libglib2.0-doc - libmm-glib-dev - libndp-dev - libreadline-dev - libnewt-dev - dbus-test-runner - python-dbus - python-gi configflags: - --prefix=/usr - --libdir=/usr/lib - --libexecdir=/usr/lib/ModemManager - --sysconfdir=/etc - --enable-gtk-doc=no - --with-polkit=no - --enable-vala=no - --enable-tests=yes - CFLAGS=-O2 -I$SNAPCRAFT_PART_INSTALL/usr/include -I$SNAPCRAFT_PART_INSTALL/usr/include/x86_64-linux-gnu -I$SNAPCRAFT_STAGE/include description: | Part providing access to the ModemManager client utilities namely mmcli but this part also provides the ModemManager service binary as well. filesets: wanted: - usr/bin/mmcli - usr/sbin/ModemManager - usr/lib/ModemManager/ - usr/lib/*/libgudev-1.0.so* - usr/lib/libmm-glib.so* - usr/share/doc/libgudev-1.0-0/ maintainer: Canonical System Enablement override-build: | snapcraftctl build # Run all tests ModemManager ships by default make check # Strip binaries find $SNAPCRAFT_PART_INSTALL/ -executable -type f | xargs file -Ni | grep 'application/x-executable\|application/x-sharedlib' | cut -d: -f1 | xargs strip plugin: autotools prime: - $wanted source: https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/modem-manager source-branch: modem-manager/1.8.0 source-type: git stage-packages: - libgudev-1.0-0 libqmi: after: - libmbim build-packages: - intltool - libglib2.0-dev configflags: - --enable-mbim-qmux - --libexecdir=/usr/lib/libqmi - CFLAGS=-O2 -I$SNAPCRAFT_STAGE/include description: | Part providing access to the ModemManager client utilities namely mmcli but this part also provides the ModemManager service binary as well. filesets: wanted: - lib/libqmi-glib.so* - usr/lib/libqmi/qmi-proxy - bin/qmicli - bin/qmi-network maintainer: Canonical System Enablement override-build: | snapcraftctl build # Strip binaries find $SNAPCRAFT_PART_INSTALL/ -executable -type f | xargs file -Ni | grep 'application/x-executable\|application/x-sharedlib' | cut -d: -f1 | xargs strip plugin: autotools prime: - $wanted source: https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/modem-manager source-branch: libqmi/xenial/1.20.0 source-type: git libmbim: build-packages: - libglib2.0-dev - libgudev-1.0-dev configflags: - --with-udev - --libexecdir=/usr/lib/libmbim - CFLAGS=-O2 description: | Part providing access to the ModemManager client utilities namely mmcli but this part also provides the ModemManager service binary as well. filesets: wanted: - lib/libmbim-glib.so* - usr/lib/libmbim/mbim-proxy - bin/mbimcli - bin/mbim-network maintainer: Canonical System Enablement override-build: | snapcraftctl build # Strip binaries find $SNAPCRAFT_PART_INSTALL/ -executable -type f | xargs file -Ni | grep 'application/x-executable\|application/x-sharedlib' | cut -d: -f1 | xargs strip plugin: autotools prime: - $wanted source: https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/modem-manager source-branch: libmbim/xenial/1.16.0 source-type: git plainbox-provider-ipdt: description: Tests to certify the correct functioning of devices running releases of snappy Ubuntu Core with Intel Processors maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-ipdt source-subdir: plainbox-provider-ipdt source-type: git stage-packages: - util-linux plainbox-provider-docker: description: Tests to certify the correct functioning of Docker containers running on releases of snappy Ubuntu Core maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-docker source-type: git plainbox-provider-tpm2: description: Tests to certify the correct functioning of TPM2 devices maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/plainbox-provider-tpm2 source-type: git parts-meta-info: description: This part if included in the snap will generate 'parts_meta_info' file in the snaps root directory containing information about the revisions used in each part of the snap. maintainer: Checkbox Developers override-build: | snapcraftctl build for p in `ls -d ../../*`; do (cd $p/src if [ -d $p/src/.git ]; then (echo `basename $p`\: && git show --pretty=format:"%h%d %aN %ci%n%s%n" -q ; echo ) >> $SNAPCRAFT_PART_INSTALL/parts_meta_info fi # for additional `source-type` support, elif them here ) done plugin: nil plainbox-provider-engineering-tests: description: Plainbox provider with Engineering Tests maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/engineering-tests source-subdir: com.canonical.se:engineering-tests source-type: git checkbox-provider-mcp2210: build-packages: - cmake description: Job collection for MCP2210 chips maintainer: Checkbox Developers plugin: plainbox-provider source: git://git.launchpad.net/checkbox-provider-mcp2210 source-type: git simple-make-filesets: description: The filesets test from the integration test suite. filesets: files: - share/file1 - share/file2 maintainer: Jonathan Cave organize: dir1: new/dir1 dir2: new/dir2 file1: share/file1 file2: share/file2 plugin: make snap: - -new/dir1 source: https://github.com/jocave/simple-make-filesets.git stage: - $files - new/dir1 - new/dir2 mongodb: description: A document-oriented database maintainer: Evan plugin: dump source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-3.2.7.tgz stage-packages: - libssl1.0.0 dnsmasq: description: Network infrastructure swiss-army knife maintainer: "Lo\xEFc Minier " organize: usr/local/sbin/dnsmasq: bin/dnsmasq plugin: make snap: - bin/dnsmasq source: https://github.com/lool/dnsmasq.git source-tag: v2.76 wafdemo: configflags: - --progress - --verbose description: Waf c Demo maintainer: Christian Ehrhardt plugin: waf source: https://github.com/cpaelzer/waf-snapcraft.git qt57: build-packages: - g++ - freetds-dev - gdb - libasound2-dev - libatspi2.0-dev - libcups2-dev - libdbus-1-dev - libfontconfig1-dev - libfreetype6-dev - libgbm-dev - libgl1-mesa-dev - libgles2-mesa-dev - libglib2.0-dev - libglu1-mesa-dev - libgstreamer-plugins-base1.0-dev - libgstreamer1.0-dev - libgtk2.0-dev - libharfbuzz-dev - libicu-dev - libinput-dev - libjpeg-dev - libmtdev-dev - libmysqlclient-dev - libpcre3-dev - libpng12-dev - libpq-dev - libproxy-dev - libpulse-dev - libsqlite3-dev - libssl-dev - libudev-dev - libx11-dev - libx11-xcb-dev - libxcb-icccm4-dev - libxcb-image0-dev - libxcb-keysyms1-dev - libxcb-randr0-dev - libxcb-render-util0-dev - libxcb-render0-dev - libxcb-shape0-dev - libxcb-shm0-dev - libxcb-sync-dev - libxcb-xfixes0-dev - libxcb-xinerama0-dev - libxcb-xkb-dev - libxcb1-dev - libxext-dev - libxi-dev - libxkbcommon-dev - libxkbcommon-x11-dev - libxrender-dev - pkg-kde-tools - publicsuffix - unixodbc-dev - xvfb - zlib1g-dev configflags: - -release - -confirm-license - -opensource - -plugin-sql-mysql - -plugin-sql-odbc - -plugin-sql-psql - -plugin-sql-sqlite - -no-sql-sqlite2 - -plugin-sql-tds - -system-sqlite - -platform - linux-g++-64 - -system-harfbuzz - -system-zlib - -system-libpng - -system-libjpeg - -openssl - -no-rpath - -verbose - -optimized-qmake - -dbus-linked - -strip - -qpa - xcb - -xcb - -glib - -icu - -accessibility - -no-compile-examples - -no-directfb - -gstreamer - '1.0' - -opengl - desktop - -nomake - examples - -nomake - tests - -skip - qtquick1 - -skip - qtwayland - -skip - qtwebengine - -skip - qtwebview - -skip - qtwebkit - -skip - qtwebkit-examples description: "Qt 5.7 part (upstream). Lets you use newer Qt than what is available\ \ in Ubuntu, \nalthough by compiling it as a part before your application. This\ \ takes \na lot of time.\n\nWIP. See use example at: https://github.com/tjyrinki/timostestapp2\ \ or \ninstall \"timostestapp2\" from Snap store edge channel. You will need the\ \ plugins,\nand the launcher and modify it and snapcraft.yaml as needed.\n" maintainer: Timo Jyrinki plugin: autotools source: https://code.qt.io/qt/qt5.git source-branch: 5.7.1 source-type: git stage-packages: - etc1tool - fontconfig - icu-devtools - libc6 - libcups2 - libdbus-1-3 - libdrm2 - libegl1-mesa - libfontconfig1 - libfreetype6 - libgbm1 - libgcc1 - libgl1-mesa-dev - libgl1-mesa-glx - libgles2-mesa-dev - libglib2.0-0 - libglu1-mesa-dev - libharfbuzz0b - libice6 - libinput10 - libjpeg8 - libmtdev1 - libpcre16-3 - libproxy1v5 - libsm6 - libsqlite3-0 - libstdc++6 - libudev1 - libx11-6 - libx11-xcb1 - libxcb1 - libxcb-glx0 - libxcb-icccm4 - libxcb-image0 - libxcb-keysyms1 - libxcb-randr0 - libxcb-render0 - libxcb-render-util0 - libxcb-shape0 - libxcb-shm0 - libxcb-sync1 - libxcb-xfixes0 - libxcb-xkb1 - libxext-dev - libxi6 - libxkbcommon0 - libxkbcommon-x11-0 - libxrender1 - perl - zlib1g - libdouble-conversion1v5 - libpulse0 qt58: build-packages: - g++ - freetds-dev - gdb - libasound2-dev - libatspi2.0-dev - libcups2-dev - libdbus-1-dev - libfontconfig1-dev - libfreetype6-dev - libgbm-dev - libgl1-mesa-dev - libgles2-mesa-dev - libglib2.0-dev - libglu1-mesa-dev - libgstreamer-plugins-base1.0-dev - libgstreamer1.0-dev - libgtk2.0-dev - libharfbuzz-dev - libicu-dev - libinput-dev - libjpeg-dev - libmtdev-dev - libmysqlclient-dev - libpcre3-dev - libpng12-dev - libpq-dev - libproxy-dev - libpulse-dev - libsqlite3-dev - libssl-dev - libudev-dev - libx11-dev - libx11-xcb-dev - libxcb-icccm4-dev - libxcb-image0-dev - libxcb-keysyms1-dev - libxcb-randr0-dev - libxcb-render-util0-dev - libxcb-render0-dev - libxcb-shape0-dev - libxcb-shm0-dev - libxcb-sync-dev - libxcb-xfixes0-dev - libxcb-xinerama0-dev - libxcb-xkb-dev - libxcb1-dev - libxext-dev - libxi-dev - libxkbcommon-dev - libxkbcommon-x11-dev - libxrender-dev - pkg-kde-tools - publicsuffix - unixodbc-dev - xvfb - zlib1g-dev configflags: - -release - -confirm-license - -opensource - -plugin-sql-mysql - -plugin-sql-odbc - -plugin-sql-psql - -plugin-sql-sqlite - -no-sql-sqlite2 - -plugin-sql-tds - -system-sqlite - -platform - linux-g++-64 - -system-harfbuzz - -system-zlib - -system-libpng - -system-libjpeg - -openssl - -no-rpath - -verbose - -optimized-qmake - -dbus-linked - -strip - -qpa - xcb - -xcb - -glib - -icu - -accessibility - -no-compile-examples - -no-directfb - -gstreamer - '1.0' - -opengl - desktop - -nomake - examples - -nomake - tests - -skip - qtquick1 - -skip - qtwayland - -skip - qtwebengine - -skip - qtwebview - -skip - qtwebkit - -skip - qtwebkit-examples description: "Qt 5.8 part (upstream). Lets you use newer Qt than what is available\ \ in Ubuntu, \nalthough by compiling it as a part before your application. This\ \ takes \na lot of time.\n\nWIP. See also the use example of qt57 part, you'll\ \ need the overriding plugins.\n" maintainer: Timo Jyrinki plugin: autotools source: https://code.qt.io/qt/qt5.git source-branch: '5.8' source-type: git stage-packages: - etc1tool - fontconfig - icu-devtools - libc6 - libcups2 - libdbus-1-3 - libdrm2 - libegl1-mesa - libfontconfig1 - libfreetype6 - libgbm1 - libgcc1 - libgl1-mesa-dev - libgl1-mesa-glx - libgles2-mesa-dev - libglib2.0-0 - libglu1-mesa-dev - libharfbuzz0b - libice6 - libinput10 - libjpeg8 - libmtdev1 - libpcre16-3 - libproxy1v5 - libsm6 - libsqlite3-0 - libstdc++6 - libudev1 - libx11-6 - libx11-xcb1 - libxcb1 - libxcb-glx0 - libxcb-icccm4 - libxcb-image0 - libxcb-keysyms1 - libxcb-randr0 - libxcb-render0 - libxcb-render-util0 - libxcb-shape0 - libxcb-shm0 - libxcb-sync1 - libxcb-xfixes0 - libxcb-xkb1 - libxext-dev - libxi6 - libxkbcommon0 - libxkbcommon-x11-0 - libxrender1 - perl - zlib1g - libdouble-conversion1v5 - libpulse0 librealsense: build-packages: - pkg-config - libglfw3-dev - libusb-1.0-0-dev configflags: - -DCMAKE_INSTALL_INCLUDEDIR=/usr/include/ description: "Intel\xAE RealSense\u2122 Cross Platform API" maintainer: Chen-Han Hsiao (Stanley) plugin: cmake source: https://github.com/IntelRealSense/librealsense.git source-tag: v1.12.1 source-type: git indicator-gtk2: description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: nil stage-packages: - libappindicator1 indicator-gtk3-from-src: build-packages: - at-spi2-core - gnome-common - gobject-introspection - gtk-doc-tools - intltool - libdbus-glib-1-dev - libdbusmenu-glib-dev - libdbusmenu-gtk3-dev - libgirepository1.0-dev - libglib2.0-dev - libgtk-3-dev - libindicator3-dev - python-all-dev - python-gtk2-dev - valac configflags: - --prefix=/usr - --with-gtk=3 - --enable-gtk-doc=no - --enable-gtk-doc-html=no - --disable-tests - --disable-mono-test description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: autotools prime: - ./**/lib*.so.* - ./**/*.typelib - ./**/lib/cli - ./**/lib/mono source: lp:libappindicator indicator-qt4: description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: nil stage-packages: - sni-qt indicator-qt4-from-src: build-packages: - libdbusmenu-qt-dev - libqt4-dev - pkg-config - qt4-qmake description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: cmake source: lp:sni-qt indicator-gtk2-from-src: build-packages: - at-spi2-core - gnome-common - gobject-introspection - gtk-doc-tools - intltool - libdbus-glib-1-dev - libdbusmenu-glib-dev - libdbusmenu-gtk-dev - libgirepository1.0-dev - libglib2.0-dev - libgtk2.0-dev - libindicator-dev - python-all-dev - python-gtk2-dev - valac configflags: - --prefix=/usr - --with-gtk=2 - --enable-gtk-doc=no - --enable-gtk-doc-html=no - --disable-tests - --disable-mono-test description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: autotools prime: - ./**/lib*.so.* - ./**/*.typelib - ./**/python2.7/**/appindicator - ./**/lib/cli - ./**/lib/mono source: lp:libappindicator indicator-gtk3: description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: nil stage-packages: - libappindicator3-1 indicator-qt5: description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: nil stage-packages: - appmenu-qt5 indicator-qt5-from-src: build-packages: - libdbusmenu-qt5-dev - libfontconfig1-dev - libfreetype6-dev - libgles2-mesa-dev - libglib2.0-dev - libgtk2.0-dev - libinput-dev - libmtdev-dev - libqt5x11extras5-dev - libudev-dev - libxrender-dev - pkg-config - qtbase5-dev - qtbase5-private-dev description: | Parts to show app-indicators for gtk2, gtk3, qt4 and qt5. . Usage: 1. add "after: [indicator-]" to your part: - gtk2, gtk3, qt4 and qt5 corresponds to their respective toolkit. main dependencies and default choices. 2. add 'unity7' plug to your application maintainer: Marco Trevisan plugin: qmake qt-version: qt5 source: lp:appmenu-qt5 preload: after: - snapcraft-preload description: | Tired of dealing with hardcoded paths and code just being antiquated? This is the part for you. While still in experimental stages it is useful already. All you need to do is add this part to your snapcraft project and prepend `command` entries in `apps` with `snapcraft-preload`. install: | mkdir -p $SNAPCRAFT_PART_INSTALL/bin ln -sv snapcraft-preload $SNAPCRAFT_PART_INSTALL/bin/preload maintainer: Sergio Schvezov plugin: nil snapcraft-preload: build-packages: - on amd64: - gcc-multilib - g++-multilib description: | Tired of dealing with hardcoded paths and code just being antiquated? This is the part for you. While still in experimental stages it is useful already. All you need to do is add this part to your snapcraft project and prepend `command` entries in `apps` with `snapcraft-preload`. maintainer: Sergio Schvezov plugin: cmake source: https://github.com/sergiusens/snapcraft-preload.git simple-webserver: description: | Simple webserver part In your snapcraft.yaml, just have one of your snapcraft part defining: `after: [simple-webserver]` Then, spawn a service with it, with the part relative to your snap to serve: apps: my-server: command: webserver www daemon: simple restart-condition: always plugs: [network-bind] Here, `www` is relative to $SNAP from your own snap. You can change the default port (8080) with the -p option, for instance: go-importpath: github.com/ubuntu/simple-webserver-part maintainer: Didier Roche plugin: go source: https://github.com/ubuntu/simple-webserver-part.git go: build-packages: - golang-go - g++ description: | Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. This snapcraft part allows to build programs written in go. Usage: Add "after: [go]" to your part written in go. This will use the latest go from the master branch to compile your program. . If you want to specify a go version, also add a go part with the version as the source-tag value. For example, to use go 1.11.6, use: parts: my-go-program: ... after: [go] go: source-tag: go1.11.6 maintainer: Ian Johnson override-build: | cd src && env GOROOT_BOOTSTRAP=$(go env GOROOT | tr -d '\n') GO111MODULE=off ./make.bash cd .. cp -R bin $SNAPCRAFT_PART_INSTALL plugin: nil prime: - -* source: https://go.googlesource.com/go source-depth: 1 source-type: git stage: - bin tomcat: description: "Makes it easy to build a snap for a Java/J2EE webapp running on top\ \ of Apache Tomcat\nUsage:\nTo use this part, include the following in your snapcraft.yaml:\n\ \ apps:\n my-app:\n command: tomcat-launch\n daemon: simple\n \ \ plugs: [network-bind]\n parts:\n my-webapp:\n source: http://example.com/my-webapp.tar.gz\n\ \ plugin: dump\n organize:\n my.war: webapps/my.war\n \ \ after: [tomcat]\nAll you need is to put your war file into the ./webapps/ directory,\ \ and the \nTomcat part will take care of the rest, starting a daemon on port\ \ 8080 running\nyour app.\n" install: | cp -r output/build/* $SNAPCRAFT_PART_INSTALL cat < $SNAPCRAFT_PART_INSTALL/tomcat-launch #!/bin/sh export JRE_HOME=\${SNAP}/usr/lib/jvm/default-java/jre export JAVA_HOME=\${SNAP}/usr/lib/jvm/default-java/jre export CATALINA_HOME=\${SNAP} export CATALINA_BASE=\${SNAP_DATA} export CATALINA_TMPDIR=/tmp cp -rn \${CATALINA_HOME}/conf \${CATALINA_BASE}/ cp -rn \${CATALINA_HOME}/webapps \${CATALINA_BASE}/ exec \${CATALINA_HOME}/bin/catalina.sh run EOF chmod +x $SNAPCRAFT_PART_INSTALL/tomcat-launch maintainer: Michael Hall plugin: ant prepare: 'cp build.properties.default build.properties ' source: https://svn.apache.org/repos/asf/tomcat/tc8.5.x/trunk/ source-type: svn setup-repo: description: | Intended to use as a part for tomcat-with-ssl. Gets the an SSL certificate using certbot (Lets Encrypt) including automatic renewals. Note: currently if a certificate renewal occurs tomcat will be restarted without warning. Usage: To use this part, include the following in your snapcraft.yaml: apps: tomcat: command: tomcat-launch daemon: simple plugs: [network, network-bind] # used to ran the certbot renewal process. cron: command: cron daemon: simple plugs: [network, network-bind] getcert: command: getcert plugs: [network, network-bind] parts: # build the web app your-webapp: plugin: maven source: git@github.org:yourusername/yourwebapp.git maven-options: [-DskipTests=true] organize: war/yourwebapp-1.0-SNAPSHOT.war : webapps/yourwebapp.war after: [setup-repos,getcert,tomcat-with-ssl] maintainer: Brett Sutton override-build: | apt-get update --yes apt-get install --yes software-properties-common add-apt-repository --yes ppa:certbot/certbot apt-get update --yes apt-get install --yes certbot snapcraftctl build plugin: nil getcert: after: - setup-repo description: | Intended to use as a part for tomcat-with-ssl. Gets the an SSL certificate using certbot (Lets Encrypt) including automatic renewals. Note: currently if a certificate renewal occurs tomcat will be restarted without warning. Usage: To use this part, include the following in your snapcraft.yaml: apps: tomcat: command: tomcat-launch daemon: simple plugs: [network, network-bind] # used to ran the certbot renewal process. cron: command: cron daemon: simple plugs: [network, network-bind] getcert: command: getcert plugs: [network, network-bind] parts: # build the web app your-webapp: plugin: maven source: git@github.org:yourusername/yourwebapp.git maven-options: [-DskipTests=true] organize: war/yourwebapp-1.0-SNAPSHOT.war : webapps/yourwebapp.war after: [setup-repos,getcert,tomcat-with-ssl] maintainer: Brett Sutton plugin: dump source: https://github.com/bsutton/getcert.git source-subdir: src stage-packages: - certbot - libc6 - libdb5.3 liri-platform-0-9: build-packages: - build-essential - mesa-common-dev - libgl1-mesa-dev - g++ build-snaps: - liri-platform-0-9/latest/edge description: | Cloud parts for snap packages depending on the Liri Platform snap. The Liri Platform cloud parts contain a specific launcher and Snapcraft configuration to deduplicate build configurations. install: | mkdir $SNAPCRAFT_PART_INSTALL/liri-platform mkdir $SNAPCRAFT_PART_INSTALL/meta echo 'liri-platform-0-9' >> $SNAPCRAFT_PART_INSTALL/meta/platform mkdir $SNAPCRAFT_PART_INSTALL/bin echo '[Paths]' >> $SNAPCRAFT_PART_INSTALL/bin/qt.conf echo 'Prefix = /snap/liri-platform-0-9/current/usr/lib/x86_64-linux-gnu/qt5' >> $SNAPCRAFT_PART_INSTALL/bin/qt.conf echo 'Data = /snap/liri-platform-0-9/current/usr/share/qt5' >> $SNAPCRAFT_PART_INSTALL/bin/qt.conf maintainer: "Tim S\xFCberkr\xFCb " organize: launcher.sh: bin/liri-app-launch plugin: dump source: https://github.com/lirios/snapcraft-parts.git source-subdir: src stage: - meta/ - liri-platform/ - bin/liri-app-launch - bin/qt.conf moos-ivp: after: - desktop-gtk3 build: | ./build-moos.sh ./build-ivp.sh build-packages: - g++ - libfltk1.3-dev - freeglut3-dev - libpng12-dev - libjpeg-dev - libxft-dev - libxinerama-dev - libtiff5-dev description: 'MOOS-IvP Marine Autonomy suite ' install: | cp -r bin $SNAPCRAFT_PART_INSTALL/ mkdir -p $SNAPCRAFT_PART_INSTALL/lib cp build/MOOS/MOOSGeodesy/lib/libMOOSGeodesy.so $SNAPCRAFT_PART_INSTALL/lib cp lib/libhenrik_anneal.so $SNAPCRAFT_PART_INSTALL/lib maintainer: Mohamed Saad Ibn Seddik plugin: cmake source: https://oceanai.mit.edu/svn/moos-ivp-aro/releases/moos-ivp-17.7 source-type: svn snap-arch-triplet-generator: description: 'Turn $SNAP_ARCH into $SNAP_ARCH_TRIPLET. Simply launch your app with with_snap_arch_triplet . ' maintainer: Kyle Fazzari plugin: dump source: https://github.com/kyrofa/snap-arch-triplet-generator.git source-subdir: src/ xwayland-kiosk-helper: build-packages: - build-essential description: | Helper to run X11 applications on a Wayland kiosk, using Xwayland and a basic window manager to enforce fullscreen kiosk behaviour. maintainer: Gerry Boland plugin: cmake source: https://github.com/MirServer/xwayland-kiosk-helper.git source-subdir: xwayland-preload stage-packages: - xwayland - i3 - libegl1-mesa - libgl1-mesa-glx can-utils: description: 'Part to build upstream can-utils package ' maintainer: Jonathan Cave plugin: autotools source: https://github.com/linux-can/can-utils.git ccache: build-packages: - asciidoc - xsltproc - gperf - zlib1g-dev description: | This remote part sets up CCache and symbolic links for `gcc` and `g++` to make it automatically uses it when building. For non default compiler commands you still have to customize the build systems manually via `CC`, `CXX` and other means. Refer the following snapcraft forum topic for more information regarding using this remote part: Speed-up Snap Building - doc - snapcraft.io https://forum.snapcraft.io/t/speed-up-snap-building/7979 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " override-build: | set \ -o errexit \ -o nounset snapcraftctl build install \ --directory \ --verbose \ "${SNAPCRAFT_PART_INSTALL}"/bin for toolchain_command in \ "${SNAPCRAFT_PART_INSTALL}"/bin/gcc \ "${SNAPCRAFT_PART_INSTALL}"/bin/g++; do ln \ --force \ --symbolic \ --verbose \ ./ccache \ "${toolchain_command}" done for gcc_release in $(seq 6 9); do ln \ --force \ --symbolic \ --verbose \ ./ccache \ "${SNAPCRAFT_PART_INSTALL}"/bin/gcc-"${gcc_release}" ln \ --force \ --symbolic \ --verbose \ ./ccache \ "${SNAPCRAFT_PART_INSTALL}"/bin/g++-"${gcc_release}" done plugin: autotools prime: - -* source: https://github.com/ccache/ccache.git source-depth: 1 workaround-snap-arch-triplet: description: 'This remote part sets up the SNAP_ARCH_TRIPLET environment variable at runtime, add `workaround-snap-arch-triplet-launch` to your app command. ' maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: '*-launch': bin/ plugin: dump source: https://github.com/Lin-Buo-Ren/snap-arch-triplet-part.git source-subdir: launchers stage: - -README.* classic-launch: description: | This remote part provide necessary runtime changes to deal with several problems in a snap with classic confinement. Refer the following snapcraft forum topic for more info: The classic-launch Remote Part - doc - snapcraft.io https://forum.snapcraft.io/t/the-classic-launch-remote-part/9053 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: '*': bin/ plugin: dump source: https://github.com/Lin-Buo-Ren/classic-launch-part.git source-subdir: launchers stage: - -README.* locales-launch: description: | This remote part ships the `locales-launch` launcher to your snap, this launcher fixes Glibc locales support and allows GNU Gettext-based internationalization(I18N) to work. Refer the following snapcraft forum topic for more information regarding using this remote part: The `locales-launch` Remote Part - doc - snapcraft.io https://forum.snapcraft.io/t/the-locales-launch-remote-part/8729 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: locales-launch: bin/ plugin: dump source: https://github.com/Lin-Buo-Ren/locales-launch-part.git source-subdir: launchers stage-packages: - libc-bin - locales zenity: build-packages: - gnome-pkg-tools - gnome-common - yelp-tools - gettext - libglib2.0-dev - libgtk-3-dev configflags: - --datarootdir=/snap/zenity-part/current/share - --disable-libnotify - --disable-webkitgtk description: | This remote part features a build of the zenity dialog program, for depending part to display a dialog like snap deprecation, etc. Refer the following forum topic for more info: The Zenity Remote Part - doc - snapcraft.io https://forum.snapcraft.io/t/the-zenity-remote-part/8793 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: snap/zenity-part/current: / override-build: | set \ -o errexit \ -o nounset snapcraftctl build plugin: autotools source: https://gitlab.gnome.org/GNOME/zenity.git source-depth: 1 source-tag: 3.28.1 workaround-snapcraft-confinement-mode: description: 'This remote part provides a launcher that sets the `SNAP_X_CONFINEMENT_MODE` environmental variable to provide confinement mode detection to the depending part. ' maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: '*-launch': bin/ plugin: dump source: https://github.com/Lin-Buo-Ren/workaround-snapcraft-confinement-mode-part.git source-subdir: launchers ncurses-launch: description: | This part provides fixes for ncurses applications to function correctly. Refer the following snapcraft forum post for more info about using this part: The ncurses-launch Remote Part - doc - snapcraft.io https://forum.snapcraft.io/t/the-ncurses-launch-remote-part/8934 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: '*-launch': bin/ plugin: dump source: https://github.com/Lin-Buo-Ren/ncurses-launch-part.git source-subdir: launchers stage-packages: - ncurses-base magic-launch: description: | This remote part fixes libmagic file type autodetection compatibility in snaps, refer the following snapcraft forum post for more info regarding the usage of this remote part: The magic-launch remote part - doc - snapcraft.io https://forum.snapcraft.io/t/the-magic-launch-remote-part/8906 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: '*-launch': bin/ plugin: dump source: https://github.com/Lin-Buo-Ren/magic-launch-part.git source-subdir: launchers stage-packages: - libmagic1 imagemagick: description: | This remote part provides an ImageMagick distribution and a launcher that makes it functional in the snap runtime. Refer the following Snapcraft Forum topic regarding the usage of this remote part: The Imagemagick Remote Part - doc - snapcraft.io https://forum.snapcraft.io/t/the-imagemagick-remote-part/9003 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: '*-launch': bin/ override-prime: | set \ -o errexit \ -o nounset snapcraftctl prime # Create canonical commands for ImageMagick canonical_command= for image_magick_command in usr/bin/*-im?; do canonical_command="$( printf -- \ "${image_magick_command}" \ | sed \ 's/-im.*$//' )" # HACK: Make symbolic link point to symbolic link without using `ln`'s `--relative`, which always dereferences TARGET for some reason :-/ image_magick_command="$( printf -- \ "${image_magick_command}" \ | sed \ 's/^.*\///' )" ln \ --force \ --symbolic \ --verbose \ "${image_magick_command}" \ "${canonical_command}" done plugin: dump source: https://github.com/Lin-Buo-Ren/imagemagick-part.git source-subdir: launchers stage-packages: - imagemagick gettext-launch: description: | This remote part fixes GNU Gettext-based localization by fixing the locale environment variables. Refer the snapcraft forum topic for more info regarding its usage: The gettext-launch remote part - doc - snapcraft.io https://forum.snapcraft.io/t/the-gettext-launch-remote-part/9111 maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " organize: '*': bin/ plugin: dump source: https://github.com/Lin-Buo-Ren/gettext-launch-part.git source-subdir: launchers stage: - -bin/README.* wxwidgets-3-0-gtk2: build-packages: - g++ - pkg-config - libcppunit-dev - libexpat1-dev - libgtk2.0-dev - libjbig-dev - libjpeg-turbo8-dev - liblzma-dev - libnotify-dev - libgl1-mesa-dev - libglu1-mesa-dev - libgstreamer-plugins-base1.0-dev - libgstreamer1.0-dev - libpng12-dev - libwebkitgtk-dev - libtiff5-dev - libxxf86vm-dev configflags: - --with-gtk=2 description: | wxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base. It has popular language bindings for Python, Perl, Ruby and many other languages, and unlike other cross-platform toolkits, wxWidgets gives applications a truly native look and feel because it uses the platform's native API rather than emulating the GUI. It's also extensive, free, open-source and mature. This remote part ships a recent wxWidgets release to your snap, refer the following snapcraft forum topic for more info: The wxWidgets remote part - doc - snapcraft.io https://forum.snapcraft.io/t/the-wxwidgets-remote-part/9398 filesets: autoconf-macros: - share/aclocal bakefiles: - share/bakefile copyright: - usr/share/doc/*/copyright executables: - bin - lib/wx/config library-headers: - include library-shared: - lib/*.so* - lib/*/*.so* - usr/lib/*.so* - usr/lib/*/*.so* library-static: - lib/**.a localizations: - share/locale misc: - usr/bin/*addr2line maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " override-build: | set \ -o errexit \ -o nounset snapcraftctl build # Fix-up wx-config link ln \ --force \ --relative \ --symbolic \ "${SNAPCRAFT_PART_INSTALL}"/lib/wx/config/* \ "${SNAPCRAFT_PART_INSTALL}"/bin/wx-config # Fix-up installation prefix # command line - How to use sed to replace only the first occurrence in a file? - Stack Overflow # https://stackoverflow.com/questions/148451/how-to-use-sed-to-replace-only-the-first-occurrence-in-a-file sed \ --follow-symlinks \ --in-place \ "0,/^prefix=.*\$/ s##prefix=\"${SNAPCRAFT_STAGE}\"#" \ "${SNAPCRAFT_PART_INSTALL}"/bin/wx-config plugin: autotools prime: - $copyright - $library-shared - $localizations - $misc source: https://github.com/wxWidgets/wxWidgets.git source-branch: WX_3_0_BRANCH source-depth: 1 stage-packages: - libatk1.0-0 - libboost-filesystem1.58.0 - libboost-system1.58.0 - libcairo2 - libcapnp-0.5.3 - libdatrie1 - libdbus-glib-1-2 - libdrm2 - libegl1-mesa - libenchant1c2a - libfontconfig1 - libgbm1 - libgdk-pixbuf2.0-0 - libgeoclue0 - libglapi-mesa - libgraphite2-3 - libgstreamer-plugins-base1.0-0 - libgstreamer1.0-0 - libgtk2.0-0 - libharfbuzz-icu0 - libharfbuzz0b - libice6 - libicu55 - libjavascriptcoregtk-1.0-0 - libjbig0 - libjpeg-turbo8 - libmirclient9 - libmircommon7 - libmircore1 - libmirprotobuf3 - libnotify4 - liborc-0.4-0 - libpango-1.0-0 - libpangocairo-1.0-0 - libpangoft2-1.0-0 - libpixman-1-0 - libprotobuf-lite9v5 - libsecret-1-0 - libsm6 - libsoup2.4-1 - libthai0 - libtiff5 - libwayland-client0 - libwayland-server0 - libwebkitgtk-1.0-0 - libwebp5 - libx11-6 - libx11-xcb1 - libxau6 - libxcb-dri2-0 - libxcb-dri3-0 - libxcb-glx0 - libxcb-present0 - libxcb-render0 - libxcb-shm0 - libxcb-sync1 - libxcb-xfixes0 - libxcb1 - libxcomposite1 - libxcursor1 - libxdamage1 - libxdmcp6 - libxext6 - libxfixes3 - libxi6 - libxinerama1 - libxkbcommon0 - libxml2 - libxrandr2 - libxrender1 - libxshmfence1 - libxslt1.1 - libxt6 - libxxf86vm1 wxwidgets-3-0-gtk3: build-packages: - gcc - g++ - gettext - libcairo2-dev - libexpat1-dev - libgl1-mesa-dev - libglu1-mesa-dev - libgstreamer1.0-dev - libgstreamer-plugins-base1.0-dev - libgtk-3-dev - libjpeg-dev - libnotify-dev - libpng-dev - libsecret-1-dev - libtiff5-dev - libwebkit2gtk-4.0-dev - libxtst-dev - zlib1g-dev configflags: - --with-gtk=3 description: | wxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base. It has popular language bindings for Python, Perl, Ruby and many other languages, and unlike other cross-platform toolkits, wxWidgets gives applications a truly native look and feel because it uses the platform's native API rather than emulating the GUI. It's also extensive, free, open-source and mature. This remote part ships a recent wxWidgets release to your snap, refer the following snapcraft forum topic for more info: The wxWidgets remote part - doc - snapcraft.io https://forum.snapcraft.io/t/the-wxwidgets-remote-part/9398 filesets: autoconf-macros: - share/aclocal bakefiles: - share/bakefile copyright: - usr/share/doc/*/copyright executables: - bin - lib/wx/config library-headers: - include library-shared: - lib/*.so* - lib/*/*.so* - usr/lib/*.so* - usr/lib/*/*.so* library-static: - lib/**.a localizations: - share/locale misc: - usr/bin/*addr2line maintainer: "\u6797\u535A\u4EC1(Buo-ren, Lin) " override-build: | set \ -o errexit \ -o nounset snapcraftctl build # Fix-up wx-config link ln \ --force \ --relative \ --symbolic \ "${SNAPCRAFT_PART_INSTALL}"/lib/wx/config/* \ "${SNAPCRAFT_PART_INSTALL}"/bin/wx-config # Fix-up installation prefix # command line - How to use sed to replace only the first occurrence in a file? - Stack Overflow # https://stackoverflow.com/questions/148451/how-to-use-sed-to-replace-only-the-first-occurrence-in-a-file sed \ --follow-symlinks \ --in-place \ "0,/^prefix=.*\$/ s##prefix=\"${SNAPCRAFT_STAGE}\"#" \ "${SNAPCRAFT_PART_INSTALL}"/bin/wx-config plugin: autotools prime: - $copyright - $library-shared - $localizations - $misc source: https://github.com/wxWidgets/wxWidgets.git source-branch: WX_3_0_BRANCH source-depth: 1 stage-packages: - binutils - libatk-bridge2.0-0 - libatk1.0-0 - libatspi2.0-0 - libboost-filesystem1.58.0 - libboost-system1.58.0 - libcairo-gobject2 - libcairo2 - libcapnp-0.5.3 - libdatrie1 - libdrm2 - libegl1-mesa - libenchant1c2a - libepoxy0 - libfontconfig1 - libgbm1 - libgdk-pixbuf2.0-0 - libglapi-mesa - libgraphite2-3 - libgstreamer-plugins-base1.0-0 - libgstreamer1.0-0 - libgtk-3-0 - libharfbuzz-icu0 - libharfbuzz0b - libhyphen0 - libice6 - libicu55 - libjavascriptcoregtk-4.0-18 - libjbig0 - libjpeg-turbo8 - libmirclient9 - libmircommon7 - libmircore1 - libmirprotobuf3 - libnotify4 - liborc-0.4-0 - libpango-1.0-0 - libpangocairo-1.0-0 - libpangoft2-1.0-0 - libpixman-1-0 - libprotobuf-lite9v5 - libsecret-1-0 - libsm6 - libsoup2.4-1 - libthai0 - libtiff5 - libwayland-client0 - libwayland-cursor0 - libwayland-egl1-mesa - libwayland-server0 - libwebkit2gtk-4.0-37 - libwebp5 - libwebpdemux1 - libx11-6 - libx11-xcb1 - libxau6 - libxcb-dri2-0 - libxcb-dri3-0 - libxcb-glx0 - libxcb-present0 - libxcb-render0 - libxcb-shm0 - libxcb-sync1 - libxcb-xfixes0 - libxcb1 - libxcomposite1 - libxcursor1 - libxdamage1 - libxdmcp6 - libxext6 - libxfixes3 - libxi6 - libxinerama1 - libxkbcommon0 - libxml2 - libxrandr2 - libxrender1 - libxshmfence1 - libxslt1.1 - libxxf86vm1 gcc-6: description: "WebKitGTK is a full-featured port of the WebKit rendering engine,\ \ suitable for projects requiring any kind of web integration, from hybrid HTML/CSS\ \ applications to full-fledged web browsers. It offers WebKit\u2019s full functionality\ \ and is useful in a wide range of systems from desktop computers to embedded\ \ systems like phones, tablets, and televisions. WebKitGTK is made by a lively\ \ community of developers and designers, who hope to bring the web platform to\ \ everyone." maintainer: Eugene Ilin override-build: | sudo apt --yes install software-properties-common # Install newer GCC from Toolchain test builds PPA sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test sudo apt update sudo apt --yes install gcc-6 g++-6 plugin: nil webkitgtk: after: - gcc-6 build-packages: - ruby - libgcrypt20-dev - libwebp-dev - libxslt1-dev - libsecret-1-dev - libtasn1-6-dev - libenchant-dev - libhyphen-dev - libjpeg-dev - libsoup2.4-dev - libxkbcommon-dev - libnghttp2-14 - libpixman-1-dev - libsqlite3-dev - libgl1-mesa-dev - freeglut3-dev - libgirepository1.0-dev - libgtk-3-dev - libgtk2.0-dev - libnotify-dev - libgstreamer1.0-dev - libgstreamer-plugins-base1.0-dev configflags: - -DCMAKE_INSTALL_PREFIX=/ - -DCMAKE_BUILD_TYPE=Release - -DPORT=GTK - -DENABLE_WEB_CRYPTO=0 - -DUSE_OPENJPEG=0 - -DUSE_WOFF2=0 - -DUSE_GSTREAMER_GL=0 - -DENABLE_MEDIA_SOURCE=0 - -DCMAKE_C_COMPILER=gcc-6 - -DCMAKE_CXX_COMPILER=g++-6 description: "WebKitGTK is a full-featured port of the WebKit rendering engine,\ \ suitable for projects requiring any kind of web integration, from hybrid HTML/CSS\ \ applications to full-fledged web browsers. It offers WebKit\u2019s full functionality\ \ and is useful in a wide range of systems from desktop computers to embedded\ \ systems like phones, tablets, and televisions. WebKitGTK is made by a lively\ \ community of developers and designers, who hope to bring the web platform to\ \ everyone." maintainer: Eugene Ilin plugin: cmake source: https://www.webkitgtk.org/releases/webkitgtk-2.24.1.tar.xz stage-packages: - libc6 - libstdc++6 - libgl1 - libgles2 - geoclue-2.0 - gperf - gobject-introspection tpm2-tools: after: - tpm2-tss build-packages: - autoconf - autoconf-archive - pkg-config - libcmocka-dev - libcurl4-openssl-dev - libssl-dev - libtool configflags: - --enable-unit description: Part containing utilities to interact with a TPM 2.0 chip being part of a computer system. install: | # Run all tests shipped by default make check maintainer: Canonical System Enablement plugin: autotools prime: - -include source: https://git.launchpad.net/~snappy-hwe-team/snappy-hwe-snaps/+git/tpm2 source-branch: tpm2-tools/v1.1.0 source-type: git tpm2-tools-3: after: - tpm2-tss-1.4 build-packages: - autoconf - autoconf-archive - automake - pkg-config - libcmocka-dev - libcurl4-openssl-dev - libssl-dev - libtool - python-yaml configflags: - --enable-unit - --with-tcti-device description: Part containing utilities to interact with a TPM 2.0 chip being part of a computer system. See https://github.com/tpm2-software/tpm2-tools/tree/3.X for the upstream project provided by this part. maintainer: Sylvain Pineau override-pull: | snapcraftctl pull # https://github.com/tpm2-software/tpm2-tools/issues/908 sed -i 's|LIBMARSHAL_CFLAGS = \\|LIBMARSHAL_CFLAGS = |g' Makefile.am sed -i 's|-DALG_ECMQV=1||g' Makefile.am plugin: autotools prime: - -include source: https://github.com/tpm2-software/tpm2-tools source-tag: 3.0.4 source-type: git stage-packages: - try: - libcurl4 - else: - libcurl3 tomcat-with-ssl: after: - setup-repo - getcert description: | Add tomcat-with-ssl to your snap to enable SSL on port 443 for tomcat (no apache required). Lets Encrypt's 'certbot' is used to obtain a valid certificate. Tomcat exposes port 443 directly so there is no need to add apache or ngnix as a proxy. After installing your snap you need to run .getcert Your server MUST have port 80 exposed when you run get cert and you must have an public DNS entry for the FQDN of your web server. Additional documentation at: https://github.com/bsutton/tomcat-with-ssl-snap Usage: To use this part, include the following in your snapcraft.yaml: apps: tomcat: command: tomcat-launch daemon: simple plugs: [network, network-bind] # automates the certbot certificate renewal process. cron: command: cron daemon: simple plugs: [network, network-bind] getcert: command: getcert plugs: [network, network-bind] parts: # build the web app your-webapp: plugin: maven source: git@github.org:yourusername/yourwebapp.git maven-options: [-DskipTests=true] organize: war/yourwebapp-1.0-SNAPSHOT.war : webapps/yourwebapp.war after: [setup-repos,getcert,tomcat-with-ssl] maintainer: Brett Sutton override-build: | # echo "install java 10 from ppa" # add-apt-repository ppa:linuxuprising/java # apt-get update --yes # apt-get install --yes oracle-java10-installer # apt-get install --yes oracle-java10-set-default echo "Pre build steps" cp build.properties.default build.properties snapcraftctl build echo "Post build steps" cp -r output/build/* $SNAPCRAFT_PART_INSTALL cat < $SNAPCRAFT_PART_INSTALL/tomcat-launch #!/bin/sh export JRE_HOME=\${SNAP}/usr/lib/jvm/default-java/jre export JAVA_HOME=\${SNAP}/usr/lib/jvm/default-java/jre export CATALINA_HOME=\${SNAP} export CATALINA_BASE=\${SNAP_DATA} export CATALINA_TMPDIR=/tmp cp -rn \${CATALINA_HOME}/conf \${CATALINA_BASE}/ # this creates a second copy of the webapps directory. # No problem but need to see if we can clean up. # seems like an organize statement might do the trick. cp -rn \${CATALINA_HOME}/webapps \${CATALINA_BASE}/ exec \${CATALINA_HOME}/bin/catalina.sh run EOF chmod +x $SNAPCRAFT_PART_INSTALL/tomcat-launch plugin: ant prime: - -webapps/docs - -webapps/examples - -webapps/manager - -webapps/host-manager - -webapps/ROOT source: https://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_32/ source-type: svn stage-packages: - libc6 - libbz2-1.0 - libgcc1 - libcomerr2 - libgcrypt20 - liblzma5 - libmount1 - libncursesw5 - libselinux1 - libtinfo5 - libuuid1 - libstdc++6 - libsmartcols1 - libgpg-error0 - libblkid1 - zlib1g - libpcre3 - libsystemd0