From fffc33361459dc9c4f9dd98b5a99f885fc7c14e2 Mon Sep 17 00:00:00 2001 From: Viachaslau Ravinski Date: Fri, 9 Jun 2023 12:24:16 -0700 Subject: [PATCH] New package: Logseq-0.9.8 --- srcpkgs/Logseq/files/Logseq.desktop | 11 +++++++ srcpkgs/Logseq/files/Logseq.sh | 15 ++++++++++ srcpkgs/Logseq/template | 45 +++++++++++++++++++++++++++++ 3 files changed, 71 insertions(+) create mode 100644 srcpkgs/Logseq/files/Logseq.desktop create mode 100644 srcpkgs/Logseq/files/Logseq.sh create mode 100644 srcpkgs/Logseq/template diff --git a/srcpkgs/Logseq/files/Logseq.desktop b/srcpkgs/Logseq/files/Logseq.desktop new file mode 100644 index 0000000000000..c0f64e6dbe971 --- /dev/null +++ b/srcpkgs/Logseq/files/Logseq.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Logseq +Exec=/usr/bin/Logseq %u +MimeType=x-scheme-handler/logseq +Terminal=false +Type=Application +Icon=logseq +StartupWMClass=logseq +Comment=Open Source platform for knowledge sharing and management +Categories=Office + diff --git a/srcpkgs/Logseq/files/Logseq.sh b/srcpkgs/Logseq/files/Logseq.sh new file mode 100644 index 0000000000000..28e420474cb12 --- /dev/null +++ b/srcpkgs/Logseq/files/Logseq.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env sh +# Launches Logseq with flags specified in $XDG_CONFIG_HOME/logseq-flags.conf + +# Make script fail if `cat` fails for some reason +set -e + +# Set default value if variable is unset/null +XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-${HOME}/.config}" + +# Attempt to read a config file if it exists +if [ -r "${XDG_CONFIG_HOME}/logseq-flags.conf" ]; then + LOGSEQ_USER_FLAGS="$(cat "$XDG_CONFIG_HOME/logseq-flags.conf")" +fi + +exec /usr/lib/Logseq/Logseq $LOGSEQ_USER_FLAGS "$@" diff --git a/srcpkgs/Logseq/template b/srcpkgs/Logseq/template new file mode 100644 index 0000000000000..cf00403f94789 --- /dev/null +++ b/srcpkgs/Logseq/template @@ -0,0 +1,45 @@ +# Template file for 'Logseq' +pkgname=Logseq +version=0.9.8 +revision=1 +archs="x86_64" +hostmakedepends="nodejs yarn clojure python3 git" +short_desc="Open-source platform for knowledge sharing and management" +maintainer="shnaps " +license="AGPL-3.0-only" +homepage="https://github.com/logseq/logseq" +distfiles="https://github.com/logseq/logseq/archive/refs/tags/${version}.tar.gz" +checksum=2dd28a81aaff9436efdd1610c8cb07291b03913ed0541224cac0e5d52b46f208 +nostrip_files="Logseq" + +do_configure() { + # download required js modules + yarn install + + # create and sync files to folder `static` + yarn gulp:build + + # go to folder `static` and download required js modules in static + cd "static" + yarn install + + # go back to the top-level folder and download clojure dependencies + cd "${XBPS_BUILDDIR}/${pkgname}-${version}" + clojure -P -M:cljs +} + +do_build() { + cd "${XBPS_BUILDDIR}/${pkgname}-${version}" + yarn cljs:release + cd "static" + yarn electron-forge package +} + +do_install() { + vinstall "${FILESDIR}/Logseq.desktop" 644 usr/share/applications + vinstall "static/out/Logseq-linux-x64/resources/app/icons/logseq.png" 644 usr/share/pixmaps logseq.png + vcopy "static/out/Logseq-linux-x64/" usr/lib/Logseq + vlicense "static/out/Logseq-linux-x64/LICENSE" + vlicense "static/out/Logseq-linux-x64/LICENSES.chromium.html" + vbin "${FILESDIR}/Logseq.sh" Logseq +}