From 88adbf32a9127928d6de6cba65764ca6dcfcc90c 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 | 44 +++++++++++++++++++++++++++++ 3 files changed, 70 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 000000000000..c0f64e6dbe97 --- /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 000000000000..28e420474cb1 --- /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 000000000000..cb49c0fbb3b6 --- /dev/null +++ b/srcpkgs/Logseq/template @@ -0,0 +1,44 @@ +# 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 "${XBPS_BUILDDIR}/${pkgname}-${version}/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() { + cljs:release + cd "${XBPS_BUILDDIR}/${pkgname}-${version}/static" + 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 +}