summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorxiota2023-12-02 22:16:36 -0800
committerxiota2023-12-02 23:18:25 -0800
commit24bb89469399855d59a6aa4be7272d275ce7629e (patch)
tree316b6f35e6caf1237bc13931ce3ac010053b2145
parenta77aa7ed75af3eec6e77d65a36685f8683cf4feb (diff)
downloadaur-24bb89469399855d59a6aa4be7272d275ce7629e.tar.gz
Bump to version 0.10.0
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD101
-rw-r--r--logseq-desktop.desktop10
-rw-r--r--logseq-desktop.install30
-rw-r--r--logseq-desktop.sh15
5 files changed, 98 insertions, 79 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 85f7ab09d170..5f9057b13d3a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,23 +1,18 @@
pkgbase = logseq-desktop
- pkgdesc = A privacy-first, open-source platform for knowledge sharing and management.
- pkgver = 0.9.20
+ pkgdesc = Privacy-first, open-source platform for knowledge sharing and management
+ pkgver = 0.10.0
pkgrel = 1
url = https://logseq.com
install = logseq-desktop.install
arch = x86_64
license = AGPL3
+ makedepends = clojure
+ makedepends = gendesk
makedepends = git
- makedepends = yarn
+ makedepends = nodejs
makedepends = npm
- makedepends = clojure
- makedepends = nodejs>=16
- source = logseq-desktop-0.9.20.zip::https://github.com/logseq/logseq/archive/refs/tags/0.9.20.zip
- source = build.patch
- source = logseq-desktop.desktop
- source = logseq-desktop.sh
- sha256sums = 9bdc34628cec13c6e017ef9d256ad8283af3654b3e8c270551329b75f08a91e9
- sha256sums = b26c6ed39e2635e08a0df83d92883e670b75b02ed1c2c279044909c04edf8fc2
- sha256sums = d7ec65e2e92c967a1be865f90a7c242402dbf6ee8c45c863bdbad73aab0af2f4
- sha256sums = a6412899c57cc0369cb11af547b561b00de84cc4aa4d656f4fa5ea3385cfef2e
+ makedepends = yarn
+ source = logseq-desktop-0.10.0.zip::https://github.com/logseq/logseq/archive/refs/tags/0.10.0.zip
+ sha256sums = 3b06e8910037a9bc6538fe631f8cbbccb1085e26c0defbbc628280350620d6ad
pkgname = logseq-desktop
diff --git a/PKGBUILD b/PKGBUILD
index 117c9ed26d62..32906c4b2eee 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,33 +1,71 @@
# Maintainer: Xuanwo <xuanwo@archlinuxcn.org>
# Contributor: Bader <Bad3r@pm.me>
-# Acknowledgment: Borrowed a lot from logseq-desktop-git, thank @pychuang
-pkgname=logseq-desktop
-pkgver=0.9.20
+# Acknowledgment: @pychuang (logseq-desktop-git)
+
+_pkgname="logseq-desktop"
+pkgname="$_pkgname"
+pkgver=0.10.0
pkgrel=1
-pkgdesc="A privacy-first, open-source platform for knowledge sharing and management."
+pkgdesc="Privacy-first, open-source platform for knowledge sharing and management"
arch=("x86_64")
url="https://logseq.com"
license=('AGPL3')
-makedepends=("git" "yarn" "npm" "clojure" "nodejs>=16")
+
+makedepends=(
+ "clojure"
+ "gendesk"
+ "git"
+ "nodejs"
+ "npm"
+ "yarn"
+)
+
install="$pkgname.install"
+
+_pkgsrc="logseq-${pkgver}"
source=(
- "${pkgname}-${pkgver}.zip::https://github.com/logseq/logseq/archive/refs/tags/${pkgver}.zip"
- "build.patch"
- "${pkgname}.desktop"
- "${pkgname}.sh"
+ "$_pkgname-${pkgver}.zip::https://github.com/logseq/logseq/archive/refs/tags/${pkgver}.zip"
)
sha256sums=(
- '9bdc34628cec13c6e017ef9d256ad8283af3654b3e8c270551329b75f08a91e9'
- 'b26c6ed39e2635e08a0df83d92883e670b75b02ed1c2c279044909c04edf8fc2'
- 'd7ec65e2e92c967a1be865f90a7c242402dbf6ee8c45c863bdbad73aab0af2f4'
- 'a6412899c57cc0369cb11af547b561b00de84cc4aa4d656f4fa5ea3385cfef2e'
+ '3b06e8910037a9bc6538fe631f8cbbccb1085e26c0defbbc628280350620d6ad'
)
prepare() {
- cd "$srcdir/logseq-${pkgver}"
+ cat <<'EOF' > "$_pkgname.sh"
+#!/usr/bin/env sh
+set -e
- # patch :parallel-build true in shadow-cljs.edn
- patch -Np1 -F100 -i "${srcdir}/build.patch"
+APPDIR="/opt/logseq-desktop"
+_ELECTRON="${APPDIR}/Logseq"
+
+_FLAGS_FILE="${XDG_CONFIG_HOME:-$HOME/.config}/logseq-flags.conf"
+if [ -r "$_FLAGS_FILE" ]; then
+ _USER_FLAGS="$(cat "$_FLAGS_FILE")"
+fi
+
+if [[ $EUID -ne 0 ]] || [[ $ELECTRON_RUN_AS_NODE ]]; then
+ exec ${_ELECTRON} $_USER_FLAGS "$@"
+else
+ exec ${_ELECTRON} --no-sandbox $_USER_FLAGS "$@"
+fi
+EOF
+
+ local _gendesk_options=(
+ -q -f -n
+ --pkgname="$_pkgname"
+ --pkgdesc="$pkgdesc"
+ --name="Logseq"
+ --exec="logseq %u"
+ --icon="logseq"
+ --terminal=false
+ --categories="Office"
+ --mimetypes="x-scheme-handler/logseq"
+ --startupnotify=true
+ --custom="StartupWMClass=Logseq"
+ )
+ gendesk "${_gendesk_options[@]}"
+
+ cd "${srcdir}/$_pkgsrc"
# download required js modules
yarn install
@@ -36,50 +74,51 @@ prepare() {
yarn gulp:build
# go to folder `static` and download required js modules in static
- cd "${srcdir}/logseq-${pkgver}/static"
+ cd "${srcdir}/$_pkgsrc/static"
yarn install
# go back to the top-level folder and download clojure dependencies
- cd "${srcdir}/logseq-${pkgver}"
+ cd "${srcdir}/$_pkgsrc"
clojure -P -M:cljs
}
build() {
- cd "${srcdir}/logseq-${pkgver}"
+ cd "${srcdir}/$_pkgsrc"
# build
yarn cljs:release
# packaging javescript files to an executable
- cd "${srcdir}/logseq-${pkgver}/static"
+ cd "${srcdir}/$_pkgsrc/static"
yarn electron-forge package
}
package() {
# important files are under static/out/Logseq-linux-x64
- cd "${srcdir}/logseq-${pkgver}/static/out/Logseq-linux-x64"
+ cd "${srcdir}/$_pkgsrc/static/out/Logseq-linux-x64"
# create destination folder and copy files
- install -dm755 "${pkgdir}/opt/${pkgname}"
- cp -a -r -u --verbose ./* "${pkgdir}/opt/${pkgname}"
+ install -dm755 "${pkgdir}/opt/$_pkgname"
+ cp -a -r -u --verbose ./* "${pkgdir}/opt/$_pkgname"
# create a soft link to the executable
install -dm755 "${pkgdir}/usr/bin"
+
# User flag aware launcher
- install -m755 ${srcdir}/logseq-desktop.sh "${pkgdir}/usr/bin/logseq"
+ install -m755 "${srcdir}/$_pkgname.sh" "${pkgdir}/usr/bin/logseq"
# create license folder and make soft links to actual license
- install -dm755 "${pkgdir}/usr/share/licenses/${pkgname}"
- ln -s "/opt/${pkgname}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}"
- ln -s "/opt/${pkgname}/LICENSES.chromium.html" "${pkgdir}/usr/share/licenses/${pkgname}"
+ install -dm755 "${pkgdir}/usr/share/licenses/$pkgname/"
+ ln -s "/opt/$_pkgname/LICENSE" "${pkgdir}/usr/share/licenses/$pkgname/"
+ ln -s "/opt/$_pkgname/LICENSES.chromium.html" "${pkgdir}/usr/share/licenses/$pkgname/"
# install readme and additional license file (the top-level AGPL3)
- cd "${srcdir}/logseq-${pkgver}"
- install -Dm644 "README.md" -t "${pkgdir}/usr/share/doc/${pkgname}"
- install -Dm644 "LICENSE.md" -t "${pkgdir}/usr/share/licenses/${pkgname}"
+ cd "${srcdir}/$_pkgsrc"
+ install -Dm644 "README.md" -t "${pkgdir}/usr/share/doc/$pkgname/"
+ install -Dm644 "LICENSE.md" -t "${pkgdir}/usr/share/licenses/$pkgname/"
# copy xdg desktop files
cd "${srcdir}"
install -dm755 "${pkgdir}/usr/share/applications"
- install -Dm644 "${pkgname}.desktop" -t "${pkgdir}/usr/share/applications"
+ install -Dm644 "$_pkgname.desktop" -t "${pkgdir}/usr/share/applications"
}
diff --git a/logseq-desktop.desktop b/logseq-desktop.desktop
deleted file mode 100644
index d72f97f0e3c3..000000000000
--- a/logseq-desktop.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name=Logseq
-Exec=/usr/bin/logseq %u
-Terminal=false
-Type=Application
-Icon=logseq
-StartupWMClass=logseq
-Comment=Open Source platform for knowledge sharing and management
-MimeType=x-scheme-handler/logseq
-Categories=Office
diff --git a/logseq-desktop.install b/logseq-desktop.install
index 906e9d0635a3..17752157cf95 100644
--- a/logseq-desktop.install
+++ b/logseq-desktop.install
@@ -1,22 +1,32 @@
# Colored makepkg-like functions
msg_blue() {
- printf "${blue}==>${bold} $1${all_off}\n"
+ printf "${BLUE}==>${BOLD} $1${ALL_OFF}\n"
}
-note() {
- printf "${blue}==>${yellow} NOTE:${bold} $1${all_off}\n"
+note1() {
+ printf "${BLUE}==>${YELLOW} NOTE:${BOLD} $1${ALL_OFF}\n"
}
-all_off="$(tput sgr0)"
-bold="${all_off}$(tput bold)"
-blue="${bold}$(tput setaf 4)"
-yellow="${bold}$(tput setaf 3)"
+note2() {
+ printf "${BLUE}==> ${BOLD} $1${ALL_OFF}\n"
+}
+
+ALL_OFF="$(tput sgr0)"
+BOLD="${ALL_OFF}$(tput bold)"
+BLACK="${BOLD}$(tput setaf 0)"
+RED="${BOLD}$(tput setaf 1)"
+GREEN="${BOLD}$(tput setaf 2)"
+YELLOW="${BOLD}$(tput setaf 3)"
+BLUE="${BOLD}$(tput setaf 4)"
+MAGENTA="${BOLD}$(tput setaf 5)"
+CYAN="${BOLD}$(tput setaf 6)"
+WHITE="${BOLD}$(tput setaf 7)"
post_install() {
- note "Custom flags should be put directly in: ~/.config/logseq-flags.conf"
- note "The launcher is called: 'logseq'"
+ note1 "Custom flags should be put directly in: ~/.config/logseq-flags.conf"
+ note2 "The launcher is called: 'logseq'"
}
post_upgrade() {
- post_install
+ post_install
}
diff --git a/logseq-desktop.sh b/logseq-desktop.sh
deleted file mode 100644
index 32e889984914..000000000000
--- a/logseq-desktop.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/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 /opt/logseq-desktop/Logseq $LOGSEQ_USER_FLAGS "$@"