summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorfalkecarlsen2024-02-20 16:54:23 +0100
committerfalkecarlsen2024-02-20 16:54:23 +0100
commit1cd723716a9de2ee62d3adf3c5106b173af05fc2 (patch)
tree92af66bbca699e66595a9dba51c16f6aa7cc15c7
parent1242b7b4922373e383e2121890eb02ea4c324a73 (diff)
downloadaur-1cd723716a9de2ee62d3adf3c5106b173af05fc2.tar.gz
add PKGBUILD and not just symlink
-rw-r--r--[l---------]PKGBUILD94
1 files changed, 93 insertions, 1 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 000418a738d3..1d05d71401e5 120000..100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1 +1,93 @@
-../../uppaal-packaging/PKGBUILD \ No newline at end of file
+# Developer: Uppaal Team <uppaal@cs.aau.dk>
+# Maintainer: Falke Carlsen "falkecarlsen" <falkeboc@cs.aau.dk>
+
+pkgname=uppaal
+pkgver=5.0.0
+pkgrel=1
+pkgdesc="Verify timed automata models and learn strategies."
+arch=('any')
+url="https://uppaal.org/"
+license=('custom')
+depends=('jre17-openjdk' 'xdg-utils')
+makedepends=('unzip')
+provides=("${pkgname}-${pkgver}")
+_relname="${pkgname}-${pkgver}-linux64"
+_zipname="${_relname}.zip"
+source=("https://download.uppaal.org/uppaal-5.0/uppaal-${pkgver}/uppaal-${pkgver}-linux64.zip")
+noextract=("${_zipname}")
+sha512sums=('e7fceddd699ebbe1a0120209bbe59fe7ef61b0c3b671bc453028e46e68310c3e96e3c5be7d9aec8cd5c85d065b3a4c7d6f9c68e7e5578d410efec7a6d9407543')
+
+build() {
+ # determine x11 or wayland
+ if [ "$XDG_SESSION_TYPE" = "wayland" ]; then
+ # add env vars for wayland fixes
+ prefix="env _JAVA_AWT_WM_NONREPARENTING=1 _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true' "
+ else
+ prefix=""
+ fi
+
+ cat << EOD > "${pkgname}.desktop"
+[Desktop Entry]
+Encoding=UTF-8
+Version=1.0
+Type=Application
+GenericName=Model Checker ${pkgver}
+Name=UPPAAL 5.0.0
+Comment=Verify timed automata models and learn strategies
+Exec=${prefix}/usr/bin/uppaal %u
+Icon=uppaal-icon
+Categories=Application;Science;Math;Education;Development;IDE
+Terminal=false
+StartupNotify=true
+MimeType=application/uppaal-xml;application/uppaal-xta;application/vnd.uppaal-xml;application/vnd.uppaal-xta;application/x-uppaal-xml;application/x-uppaal-xta
+EOD
+}
+
+package() {
+ # get newest available stable semver
+ latest=$(curl -s https://versioncheck.uppaal.org/version.txt | grep -o '"version": "[^"]*' | grep -o '[^"]*$')
+
+ # check if latest is newer than $pkgver
+ if [[ "$(echo -e "$latest\n$pkgver" | sort -V | tail -n 1)" == "$latest" ]]; then
+ msg2 "Packaging newest stable release: uppaal-$latest"
+ else
+ warning "Newer release available but not yet packaged ($latest > $pkgver). Visit uppaal.org for manual installation instructions if urgent."
+ fi
+
+ install -dm755 "${pkgdir}"/opt/
+ install -dm755 "${pkgdir}"/usr/bin/
+ install -dm755 "${pkgdir}"/usr/share/icons/hicolor/
+
+ pkgloc="${pkgdir}/opt/${pkgname}"
+
+ # unpack and move out of release top-level dir (_relname)
+ unzip -qd "${pkgdir}/opt/" "${srcdir}/${_zipname}"
+ mv "${pkgdir}/opt/${_relname}" "${pkgloc}"
+
+ # install built desktop entry
+ launcher_path="${pkgdir}/usr/share/applications/${pkgname}.desktop"
+ install -Dm644 "${pkgname}.desktop" ${launcher_path}
+
+ # install icons
+ for s in 16 24 32 48 64 96 128 ; do
+ install -dm755 "${pkgdir}/usr/share/icons/hicolor/"$s"x"$s""
+ install -Dm644 "${pkgloc}/res/icon-"$s"x"$s".png" "${pkgdir}/usr/share/icons/hicolor/"$s"x"$s"/apps/uppaal-icon.png"
+ done
+
+ # install mime type definitions
+ mimetype_dir="${pkgdir}"/usr/share/mime/packages
+ install -dm755 $mimetype_dir
+ for xml_mimetype_file in "${pkgloc}"/res/*-mimetype.xml; do
+ if [ -f "$xml_mimetype_file" ]; then
+ install -Dm644 "$xml_mimetype_file" "$mimetype_dir/$(basename "$xml_mimetype_file")"
+ fi
+ done
+
+ # assoc uppaal mime types with launcher
+ xdg-mime default "${launcher_path}" "application/uppaal-xml"
+ xdg-mime default "${launcher_path}" "application/uppaal-xta"
+ xdg-mime default "${launcher_path}" "application/uppaal-ta"
+
+ # symlink startup script to bin
+ ln -s "${pkgdir}/opt/${pkgname}/uppaal" "${pkgdir}/usr/bin/${pkgname}"
+}