mirror of https://github.com/Fabio286/mizar.git
162 lines
4.7 KiB
YAML
162 lines
4.7 KiB
YAML
name: mizar
|
|
adopt-info: mizar
|
|
summary: A TCP testing tool, useful and intuitive to use right out of the box.
|
|
description: |
|
|
Mizar is a TCP tester/debugger designed to be immediately useful and intuitive to use right out of the box.
|
|
The purpose of Mizar is to help developers working on software that communicates over TCP protocol by speeding up debugging and testing from the earliest stages of development.
|
|
base: core20
|
|
|
|
grade: stable
|
|
confinement: strict
|
|
|
|
architectures:
|
|
- build-on: amd64
|
|
compression: lzo
|
|
layout:
|
|
/etc/nsswitch.conf:
|
|
bind-file: $SNAP/etc/nsswitch.conf
|
|
|
|
parts:
|
|
mizar:
|
|
plugin: dump
|
|
source: .
|
|
override-build: |
|
|
snapcraftctl build
|
|
ARCHITECTURE=$(dpkg --print-architecture)
|
|
if [ "${ARCHITECTURE}" = "amd64" ]; then
|
|
FILTER="amd64.deb"
|
|
else
|
|
echo "ERROR! Mizar only produces debs for amd64. Failing the build here."
|
|
exit 1
|
|
fi
|
|
# Get the latest releases json
|
|
echo "Get GitHub releases..."
|
|
wget --quiet https://api.github.com/repos/fabio286/mizar/releases/latest -O releases.json
|
|
# Get the version from the tag_name and the download URL.
|
|
VERSION=$(jq . releases.json | grep tag_name | cut -d'"' -f4 | sed s'/release-//')
|
|
DEB_URL=$(cat releases.json | jq -r ".assets[] | select(.name | test(\"${FILTER}\")) | .browser_download_url")
|
|
DEB=$(basename "${DEB_URL}")
|
|
echo "Downloading ${DEB_URL}..."
|
|
wget --quiet "${DEB_URL}" -O "${SNAPCRAFT_PART_INSTALL}/${DEB}"
|
|
echo "Unpacking ${DEB}..."
|
|
dpkg -x "${SNAPCRAFT_PART_INSTALL}/${DEB}" ${SNAPCRAFT_PART_INSTALL}
|
|
rm -f releases.json 2>/dev/null
|
|
rm -f "${SNAPCRAFT_PART_INSTALL}/${DEB}" 2>/dev/null
|
|
echo $VERSION > $SNAPCRAFT_STAGE/version
|
|
# Correct path to icon.
|
|
sed -i 's|Icon=mizar|Icon=/usr/share/icons/hicolor/256x256/apps/mizar\.png|g' ${SNAPCRAFT_PART_INSTALL}/usr/share/applications/mizar.desktop
|
|
# Delete usr/bin/mizar, it's a broken symlink pointing outside the snap.
|
|
rm -f ${SNAPCRAFT_PART_INSTALL}/usr/bin/mizar
|
|
chmod -s ${SNAPCRAFT_PART_INSTALL}/opt/Mizar/chrome-sandbox
|
|
snapcraftctl set-version "$(echo $VERSION)"
|
|
build-packages:
|
|
- dpkg
|
|
- jq
|
|
- sed
|
|
- wget
|
|
stage-packages:
|
|
- fcitx-frontend-gtk3
|
|
- libappindicator3-1
|
|
- libasound2
|
|
- libcurl4
|
|
- libgconf-2-4
|
|
- libgtk-3-0
|
|
- libnotify4
|
|
- libnspr4
|
|
- libnss3
|
|
- libpcre3
|
|
- libpulse0
|
|
- libxss1
|
|
- libsecret-1-0
|
|
- libxtst6
|
|
- libxkbfile1
|
|
- gcc-10-base
|
|
- libapparmor1
|
|
- libblkid1
|
|
- libbsd0
|
|
- libcom-err2
|
|
- libcrypt1
|
|
- libdb5.3
|
|
- libdbus-1-3
|
|
- libexpat1
|
|
- libffi7
|
|
- libgcc-s1
|
|
- libgcrypt20
|
|
- libglib2.0-0
|
|
- libgmp10
|
|
- libgnutls30
|
|
- libgpg-error0
|
|
- libgssapi-krb5-2
|
|
- libhogweed5
|
|
- libidn2-0
|
|
- libjson-c4
|
|
- libk5crypto3
|
|
- libkeyutils1
|
|
- libkrb5-3
|
|
- libkrb5support0
|
|
- liblz4-1
|
|
- liblzma5
|
|
- libmount1
|
|
- libnettle7
|
|
- libp11-kit0
|
|
- libpcre2-8-0
|
|
- libselinux1
|
|
- libsqlite3-0
|
|
- libssl1.1
|
|
- libstdc++6
|
|
- libsystemd0
|
|
- libtasn1-6
|
|
- libudev1
|
|
- libunistring2
|
|
- libuuid1
|
|
- libwrap0
|
|
- libzstd1
|
|
- zlib1g
|
|
- libx11-xcb1
|
|
- libdrm2
|
|
- libgbm1
|
|
- libxcb-dri3-0
|
|
cleanup:
|
|
after: [mizar]
|
|
plugin: nil
|
|
build-snaps: [gnome-3-38-2004]
|
|
override-prime: |
|
|
set -eux
|
|
cd /snap/gnome-3-38-2004/current
|
|
find . -type f,l -exec rm -f $SNAPCRAFT_PRIME/{} \;
|
|
|
|
mdns-lookup:
|
|
# Make resolution of ".local" host names (Zero-Conf/mDNS/DNS-SD)
|
|
# working: Take the original nsswitch.conf file from the base
|
|
# Snap and add "mdns4_minimal [NOTFOUND=return]" to its "hosts:" line
|
|
# Also install corresponding mdns4_minimal plug-in
|
|
# See: https://forum.snapcraft.io/t/no-mdns-support-in-snaps-should-core-have-a-modified-nsswitch-conf/
|
|
plugin: nil
|
|
stage-packages:
|
|
- libnss-mdns
|
|
override-prime: |
|
|
set -eux
|
|
sed -Ee 's/^\s*hosts:(\s+)files/hosts:\1files mdns4_minimal \[NOTFOUND=return\]/' /snap/core20/current/etc/nsswitch.conf > $SNAPCRAFT_STAGE/etc/nsswitch.conf
|
|
snapcraftctl prime
|
|
prime:
|
|
- lib/$SNAPCRAFT_ARCH_TRIPLET/libnss_mdns4_minimal*
|
|
- etc/nsswitch.conf
|
|
|
|
apps:
|
|
mizar:
|
|
command: opt/Mizar/mizar --no-sandbox
|
|
desktop: usr/share/applications/mizar.desktop
|
|
extensions: [gnome-3-38]
|
|
environment:
|
|
# Fallback to XWayland if running in a Wayland session.
|
|
DISABLE_WAYLAND: 1
|
|
plugs:
|
|
- browser-support
|
|
- cups-control
|
|
- home
|
|
- network
|
|
- opengl
|
|
- pulseaudio
|
|
- removable-media
|
|
- unity7
|