summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGiovanni Bottaro2022-06-15 15:46:43 +0200
committerGiovanni Bottaro2022-06-18 18:35:13 +0200
commitf167024566eb087b2e4038189c2119a1eb9b7ac7 (patch)
tree06a7fe94ff3ccd5fb49d846d36e70e994208d086
downloadaur-f167024566eb087b2e4038189c2119a1eb9b7ac7.tar.gz
First commit - Introduces a working triliumnotes(v0.52.3) pkgbuild
-rw-r--r--.SRCINFO24
-rw-r--r--PKGBUILD71
-rw-r--r--config-sample.ini.patch4
-rw-r--r--copy-trilium.sh.patch16
-rw-r--r--trilium.desktop15
-rw-r--r--trilium.sh4
6 files changed, 134 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..137b4cddb4c8
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,24 @@
+pkgbase = trilium
+ pkgdesc = A hierarchical note taking application with focus on building large personal knowledge bases.
+ pkgver = 0.52.3
+ pkgrel = 1
+ url = https://github.com/zadam/trilium
+ arch = x86_64
+ license = AGPL3
+ makedepends = npm
+ makedepends = make
+ makedepends = gcc
+ depends = electron16
+ depends = nodejs
+ source = trilium-0.52.3.tar.gz::https://github.com/zadam/trilium/archive/refs/tags/v0.52.3.tar.gz
+ source = copy-trilium.sh.patch
+ source = config-sample.ini.patch
+ source = trilium.sh
+ source = trilium.desktop
+ sha512sums = b19559bc8ae8c3b97c0fac18be66495996537d15bb8e058ab6d8688fe05b996efb40246fed1653a49c5eb296b5f7ee6f46e86ca306226088fb2e5718de18cb7f
+ sha512sums = 97dc8034f01cecceb4a85e61a0d561ddf01af7cf24e0dad24faefaee8c1f265c5e8441fd38ff473bd869606b821476d4efc8fc5ae1b99149875d826db4366fa7
+ sha512sums = b073a15731cced053d34534a7c34ce39b6b54bc9c818e1792d6d5fe0ef86ba83f255b75fd7a630dedad2ec0f51403dc68969d1fa3dab7472a2fc628d83c16bdd
+ sha512sums = f02253c2d7b21eb1e1f72c9d6b347180e03fe9f44a4843e16d532e9b9ff6cab3e754a559838dbcd0055d551bc2847414d655ef135467bb7b9fc67d05a0386da1
+ sha512sums = 2f26a7decafc57626835a8ec3842c1fc57572a66753e8cdbedafe59f59dd492edaa6971edd193512e20d7bbbec6618e602cf7e05c01e4911f8a2e038267c5703
+
+pkgname = trilium
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..7e1ad4046f8b
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,71 @@
+# Maintainer: Giovanni Bottaro <giovanni26.bottaro@gmail.com>
+
+_electron_version=16
+
+pkgname=trilium
+pkgver=0.52.3
+pkgrel=1
+pkgdesc="A hierarchical note taking application with focus on building large personal knowledge bases."
+arch=('x86_64')
+url="https://github.com/zadam/trilium"
+license=('AGPL3')
+depends=("electron$_electron_version" 'nodejs')
+makedepends=('npm' 'make' 'gcc')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/zadam/trilium/archive/refs/tags/v$pkgver.tar.gz"
+ "copy-trilium.sh.patch"
+ "config-sample.ini.patch"
+ "trilium.sh"
+ "trilium.desktop")
+sha512sums=('b19559bc8ae8c3b97c0fac18be66495996537d15bb8e058ab6d8688fe05b996efb40246fed1653a49c5eb296b5f7ee6f46e86ca306226088fb2e5718de18cb7f'
+ '97dc8034f01cecceb4a85e61a0d561ddf01af7cf24e0dad24faefaee8c1f265c5e8441fd38ff473bd869606b821476d4efc8fc5ae1b99149875d826db4366fa7'
+ 'b073a15731cced053d34534a7c34ce39b6b54bc9c818e1792d6d5fe0ef86ba83f255b75fd7a630dedad2ec0f51403dc68969d1fa3dab7472a2fc628d83c16bdd'
+ 'f02253c2d7b21eb1e1f72c9d6b347180e03fe9f44a4843e16d532e9b9ff6cab3e754a559838dbcd0055d551bc2847414d655ef135467bb7b9fc67d05a0386da1'
+ '2f26a7decafc57626835a8ec3842c1fc57572a66753e8cdbedafe59f59dd492edaa6971edd193512e20d7bbbec6618e602cf7e05c01e4911f8a2e038267c5703')
+
+prepare() {
+ cd "$pkgname-$pkgver"
+
+ sed -i "s|@electronversion@|$_electron_version|" ../trilium.sh
+
+ patch bin/copy-trilium.sh ../copy-trilium.sh.patch
+ patch config-sample.ini ../config-sample.ini.patch
+}
+
+build() {
+ cd "$pkgname-$pkgver"
+
+ export npm_config_cache="$srcdir/npm_cache"
+ export ELECTRON_SKIP_BINARY_DOWNLOAD=1
+ npm install --build-from-source
+
+ trilium_src_dir=./dist/trilium-linux-x64-src
+ ./bin/copy-trilium.sh $trilium_src_dir
+
+ rm -r $trilium_src_dir/src/public/app-dist/*.mobile.*
+
+ npx electron-builder --linux --x64 --dir \
+ --project=$trilium_src_dir \
+ -c.electronDist=/usr/lib/electron$_electron_version \
+ -c.electronVersion=$(electron$_electron_version --version | tail -c +2)
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+
+ trilium_final_build_dir=dist/trilium-linux-x64-src/dist/linux-unpacked
+ install -vDm644 $trilium_final_build_dir/resources/app.asar -t "${pkgdir}/usr/lib/${pkgname}"
+ install -vDm644 package.json -t "${pkgdir}/usr/lib/${pkgname}"
+ install -vDm755 bin/tpl/trilium-safe-mode.sh -t "${pkgdir}/usr/lib/${pkgname}"
+ install -vDm755 bin/tpl/trilium-no-cert-check.sh -t "${pkgdir}/usr/lib/${pkgname}"
+ install -vDm644 bin/tpl/anonymize-database.sql -t "${pkgdir}/usr/lib/${pkgname}"
+ install -vd "${pkgdir}/usr/lib/${pkgname}/dump-db"
+ cp -vr dump-db/* -t "${pkgdir}/usr/lib/${pkgname}/dump-db"
+
+
+ for i in 16 32 64 128 256 512; do
+ install -vDm644 images/app-icons/png/${i}x${i}.png "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png"
+ done
+
+ install -vDm755 "${srcdir}/${pkgname}.sh" "${pkgdir}/usr/bin/trilium"
+ install -vDm644 "${srcdir}"/${pkgname}.desktop -t "${pkgdir}"/usr/share/applications
+}
diff --git a/config-sample.ini.patch b/config-sample.ini.patch
new file mode 100644
index 000000000000..102784d9cc7a
--- /dev/null
+++ b/config-sample.ini.patch
@@ -0,0 +1,4 @@
+12c12
+< # noDesktopIcon=true
+---
+> noDesktopIcon=true
diff --git a/copy-trilium.sh.patch b/copy-trilium.sh.patch
new file mode 100644
index 000000000000..b693c153f989
--- /dev/null
+++ b/copy-trilium.sh.patch
@@ -0,0 +1,16 @@
+8c8
+< n exec 16.15.0 npm run webpack
+---
+> npm run webpack
+13c13
+< mkdir $DIR
+---
+> mkdir -p $DIR
+33c33
+< (cd $DIR && n exec 16.15.0 npm install --only=prod)
+---
+> (cd $DIR && npm install --only=prod --build-from-source)
+37c37
+< rm -r $DIR/node_modules/better-sqlite3/Release
+---
+> rm -r $DIR/node_modules/better-sqlite3/build/Release
diff --git a/trilium.desktop b/trilium.desktop
new file mode 100644
index 000000000000..c0d5e75edb04
--- /dev/null
+++ b/trilium.desktop
@@ -0,0 +1,15 @@
+[Desktop Entry]
+Name=Trilium Notes
+GenericName=Note-taking
+Comment=A hierarchical note taking application with focus on building large personal knowledge bases.
+Exec=trilium
+Terminal=false
+Type=Application
+Icon=trilium
+Categories=Office;Utility
+StartupWMClass=Trilium
+Actions=safe-mode
+
+[Desktop Action safe-mode]
+Name=Run in safe mode
+Exec=TRILIUM_SAFE_MODE=1 trilium \ No newline at end of file
diff --git a/trilium.sh b/trilium.sh
new file mode 100644
index 000000000000..8630480cd857
--- /dev/null
+++ b/trilium.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+export ELECTRON_IS_DEV=0
+cd /usr/lib/trilium
+exec electron@electronversion@ app.asar $@