diff options
author | Ivy Huang | 2024-03-27 02:57:49 -0400 |
---|---|---|
committer | Ivy Huang | 2024-03-27 02:57:49 -0400 |
commit | b0e00afa20d1696eba57d0bf05119604c44f402a (patch) | |
tree | db99385aed810667c54c6617a8b7831b6bb29cac | |
download | aur-b0e00afa20d1696eba57d0bf05119604c44f402a.tar.gz |
create taskchampion-sync-server repo
-rw-r--r-- | .SRCINFO | 22 | ||||
-rw-r--r-- | PKGBUILD | 53 | ||||
-rw-r--r-- | taskchampion-sync-server.install | 8 | ||||
-rw-r--r-- | taskchampion-sync-server.service | 14 | ||||
-rw-r--r-- | taskchampion-sync-server.sysusers | 1 |
5 files changed, 98 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..2c30acbd3722 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,22 @@ +pkgbase = taskchampion-sync-server + pkgdesc = The server Taskwarrior syncs to + pkgver = 3.0.0 + pkgrel = 1 + url = https://taskwarrior.org/ + install = taskchampion-sync-server.install + arch = x86_64 + license = MIT + makedepends = cmake + makedepends = git + makedepends = cargo + depends = util-linux + depends = gnutls + options = !lto + source = taskchampion-sync-server::git+https://github.com/GothenburgBitFactory/taskwarrior.git#commit=3e41fb604c209e355444a1f0e2f4e15c70d76226 + source = taskchampion-sync-server.service + source = taskchampion-sync-server.sysusers + sha256sums = 4f8304c149f28152fa1f291d6be1b263ed23619f53637715ae21e023f9c0f184 + sha256sums = 3ea87bb86ec6aa395eba25f859350545c9c67fa9779e485fd9083b7317339458 + sha256sums = 6ff937968e0c319bd436bdfe765eba132ceac78cb80640a8fd7b909cd44db89a + +pkgname = taskchampion-sync-server diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..af0521a5ba85 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,53 @@ +# Maintainer: Ivy Huang <imyxh@imyxh.net> +# vim: set tw=0 sw=4 et : + +pkgname=taskchampion-sync-server +pkgver=3.0.0 +pkgrel=1 +pkgdesc="The server Taskwarrior syncs to" +arch=('x86_64') +url="https://taskwarrior.org/" +license=('MIT') +depends=('util-linux' 'gnutls') +makedepends=('cmake' 'git' 'cargo') +optdepends=() +_commit=3e41fb604c209e355444a1f0e2f4e15c70d76226 +source=( + "$pkgname::git+https://github.com/GothenburgBitFactory/taskwarrior.git#commit=$_commit" + "$pkgname.service" + "$pkgname.sysusers" +) +sha256sums=( + '4f8304c149f28152fa1f291d6be1b263ed23619f53637715ae21e023f9c0f184' + '3ea87bb86ec6aa395eba25f859350545c9c67fa9779e485fd9083b7317339458' + '6ff937968e0c319bd436bdfe765eba132ceac78cb80640a8fd7b909cd44db89a' +) +options=('!lto') +install="$pkgname.install" + +prepare() { + cd "$srcdir/$pkgname/taskchampion/sync-server" + export RUSTUP_TOOLCHAIN=stable + cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')" +} + +build() { + cd "$srcdir/$pkgname/taskchampion/sync-server" + export RUSTUP_TOOLCHAIN=stable + export CARGO_TARGET_DIR=target + cargo build --frozen --release +} + +check() { + cd "$srcdir/$pkgname/taskchampion/sync-server" + export RUSTUP_TOOLCHAIN=stable + export CARGO_TARGET_DIR=target + cargo test --frozen +} + +package() { + install -Dm644 "$srcdir/$pkgname.service" "$pkgdir/usr/lib/systemd/system/$pkgname.service" + install -Dm644 "$srcdir/$pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" + install -Dt "$pkgdir/usr/bin" "$srcdir/$pkgname/taskchampion/sync-server/target/release/$pkgname" +} + diff --git a/taskchampion-sync-server.install b/taskchampion-sync-server.install new file mode 100644 index 000000000000..8687e4972dc0 --- /dev/null +++ b/taskchampion-sync-server.install @@ -0,0 +1,8 @@ +datadir=/var/lib/taskchampion-sync-server +post_install() { + systemd-sysusers + if [[ ! -e $datadir ]]; then + echo "Initializing taskchampion-sync-server data." + install -dm770 $datadir + chown -R taskchampion:taskchampion $datadir + fi diff --git a/taskchampion-sync-server.service b/taskchampion-sync-server.service new file mode 100644 index 000000000000..2693c9c94abf --- /dev/null +++ b/taskchampion-sync-server.service @@ -0,0 +1,14 @@ +[Unit] +Description=The server Taskwarrior syncs to +After=network.target +Documentation=http://taskwarrior.org/docs/ + +[Service] +ExecStart=/usr/bin/taskchampion-sync-server --port 53589 --data-dir /var/lib/taskchampion-sync-server +Restart=on-abort +Type=simple +User=taskchampion +Group=taskchampion + +[Install] +WantedBy=multi-user.target diff --git a/taskchampion-sync-server.sysusers b/taskchampion-sync-server.sysusers new file mode 100644 index 000000000000..cd6e4e87411d --- /dev/null +++ b/taskchampion-sync-server.sysusers @@ -0,0 +1 @@ +u taskchampion - "Taskwarrior Sync Server" |