Arch PKGBUILDs for https://tangled.org/@tangled.org/core
arch pkgbuild

Compare changes

Choose any two refs to compare.

+1
.gitignore
··· 5 5 *.log 6 6 *.zip 7 7 *.zst 8 + *.tar.gz
+3 -3
README.md
··· 11 11 12 12 ### [appview](appview) 13 13 14 - Builds `appview` from tag [v1.9.1-alpha](https://tangled.org/@tangled.org/core/tree/v1.9.1-alpha). 14 + Builds `appview` from tag [v1.11.0-alpha](https://tangled.org/@tangled.org/core/tree/v1.11.0-alpha). 15 15 16 16 ### [knotserver](knotserver) 17 17 18 - Builds `knot` from tag [v1.9.1-alpha](https://tangled.org/@tangled.org/core/tree/v1.9.1-alpha). 18 + Builds `knot` from tag [v1.11.0-alpha](https://tangled.org/@tangled.org/core/tree/v1.11.0-alpha). 19 19 20 20 ### [knotserver-git](knotserver-git) 21 21 ··· 23 23 24 24 ### [spindle](spindle) 25 25 26 - Builds `spindle` from tag [v1.9.1-alpha](https://tangled.org/@tangled.org/core/tree/v1.9.1-alpha). 26 + Builds `spindle` from tag [v1.11.0-alpha](https://tangled.org/@tangled.org/core/tree/v1.11.0-alpha). 27 27
+3 -3
appview/.SRCINFO
··· 1 1 pkgbase = appview 2 2 pkgdesc = git collaboration platform built on ATproto 3 - pkgver = 1.9.1.alpha 3 + pkgver = 1.11.0.alpha 4 4 pkgrel = 1 5 5 url = https://tangled.org/@tangled.org/core 6 6 arch = x86_64 ··· 10 10 depends = git 11 11 options = strip 12 12 options = !debug 13 - source = tangled::git+https://tangled.org/@tangled.org/core#tag=v1.9.1-alpha 13 + source = core-v1.11.0-alpha.tar.gz::https://tangled.org/@tangled.org/core/archive/refs%2Ftags%2Fv1.11.0-alpha 14 14 source = https://unpkg.com/htmx.org@2.0.4/dist/htmx.min.js 15 15 source = https://github.com/lucide-icons/lucide/releases/download/0.483.0/lucide-icons-0.483.0.zip 16 16 source = https://github.com/rsms/inter/releases/download/v4.1/Inter-4.1.zip 17 17 source = https://github.com/IBM/plex/releases/download/%40ibm%2Fplex-mono%401.1.0/ibm-plex-mono.zip 18 - sha256sums = 5562ff3aef0b7e986cccfa778d7abb6003311c44a7df79709a40604782cdef24 18 + sha256sums = 51d360848f8d61161a61a60adcd9f355246bdcd2a0437371096a8563896cc66a 19 19 sha256sums = e209dda5c8235479f3166defc7750e1dbcd5a5c1808b7792fc2e6733768fb447 20 20 sha256sums = cc9c1db50676416f6fbb4bbaf8fba46f83331ed7c895dd9602145aebd0daa20e 21 21 sha256sums = 9883fdd4a49d4fb66bd8177ba6625ef9a64aa45899767dde3d36aa425756b11e
+13 -13
appview/PKGBUILD
··· 1 - _pkgver=1.9.1-alpha 1 + _pkgver=1.11.0-alpha 2 2 pkgname=appview 3 3 pkgdesc='git collaboration platform built on ATproto' 4 4 pkgver=${_pkgver/\-/\.} ··· 9 9 depends=(git) 10 10 makedepends=(go npm) 11 11 options=(strip !debug) 12 - source=( 13 - "tangled::git+$url#tag=v$_pkgver" 12 + source=("core-v${_pkgver}.tar.gz::${url}/archive/refs%2Ftags%2Fv${_pkgver}" 14 13 "https://unpkg.com/htmx.org@2.0.4/dist/htmx.min.js" 15 14 "https://github.com/lucide-icons/lucide/releases/download/0.483.0/lucide-icons-0.483.0.zip" 16 15 "https://github.com/rsms/inter/releases/download/v4.1/Inter-4.1.zip" 17 16 "https://github.com/IBM/plex/releases/download/%40ibm%2Fplex-mono%401.1.0/ibm-plex-mono.zip") 18 - sha256sums=('5562ff3aef0b7e986cccfa778d7abb6003311c44a7df79709a40604782cdef24' 17 + sha256sums=('51d360848f8d61161a61a60adcd9f355246bdcd2a0437371096a8563896cc66a' 19 18 'e209dda5c8235479f3166defc7750e1dbcd5a5c1808b7792fc2e6733768fb447' 20 19 'cc9c1db50676416f6fbb4bbaf8fba46f83331ed7c895dd9602145aebd0daa20e' 21 20 '9883fdd4a49d4fb66bd8177ba6625ef9a64aa45899767dde3d36aa425756b11e' 22 21 '4bfc936d0e1fd19db6327a3786eabdbc3dc0d464500576f6458f6706df68d26c') 23 22 24 23 build() { 24 + tangled_src=core-v${_pkgver} 25 25 mkdir -p "${srcdir}/build" 26 - mkdir -p ${srcdir}/tangled/appview/pages/static/{fonts,icons} 27 - cp -f "${srcdir}/htmx.min.js" "${srcdir}/tangled/appview/pages/static/htmx.min.js" 28 - cp -rf ${srcdir}/icons/*.svg "${srcdir}/tangled/appview/pages/static/icons/" 29 - cp -f ${srcdir}/web/InterVariable*.woff2 "${srcdir}/tangled/appview/pages/static/fonts/" 30 - cp -f ${srcdir}/web/InterDisplay*.woff2 "${srcdir}/tangled/appview/pages/static/fonts/" 31 - cp -f "${srcdir}/ibm-plex-mono/fonts/complete/woff2/IBMPlexMono-Regular.woff2" "${srcdir}/tangled/appview/pages/static/fonts/" 26 + mkdir -p ${srcdir}/${tangled_src}/appview/pages/static/{fonts,icons} 27 + cp -f "${srcdir}/htmx.min.js" "${srcdir}/${tangled_src}/appview/pages/static/htmx.min.js" 28 + cp -rf ${srcdir}/icons/*.svg "${srcdir}/${tangled_src}/appview/pages/static/icons/" 29 + cp -f ${srcdir}/web/InterVariable*.woff2 "${srcdir}/${tangled_src}/appview/pages/static/fonts/" 30 + cp -f ${srcdir}/web/InterDisplay*.woff2 "${srcdir}/${tangled_src}/appview/pages/static/fonts/" 31 + cp -f "${srcdir}/ibm-plex-mono/fonts/complete/woff2/IBMPlexMono-Regular.woff2" "${srcdir}/${tangled_src}/appview/pages/static/fonts/" 32 32 33 33 pwd 34 - cd ${srcdir}/tangled 34 + cd ${srcdir}/${tangled_src} 35 35 npm install tailwindcss@3 @tailwindcss/typography 36 36 npx tailwindcss -i input.css -o appview/pages/static/tw.css 37 37 cd ${srcdir} ··· 42 42 export CGO_CXXFLAGS="${CXXFLAGS}" 43 43 export CGO_LDFLAGS="${LDFLAGS}" 44 44 export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" 45 - cd ${srcdir}/tangled 45 + cd ${srcdir}/${tangled_src} 46 46 go build -o "${srcdir}/build/appview" ./cmd/appview 47 47 } 48 48 49 49 package() { 50 50 install -Dm755 "${srcdir}/build/appview" "${pkgdir}/usr/bin/appview" 51 - install -Dm644 "${srcdir}/tangled/license" "${pkgdir}/usr/share/licenses/tangled/appview.LICENSE" 51 + install -Dm644 "${srcdir}/core-v${_pkgver}/license" "${pkgdir}/usr/share/licenses/tangled/appview.LICENSE" 52 52 }
+4 -3
conf.sh
··· 1 - tag=1.9.1-alpha 1 + tag=1.11.0-alpha 2 2 knotserver_user=git 3 3 knotserver_group=git 4 4 knotserver_path=/var/lib/knotserver 5 5 knotserver_repo_path=/var/lib/tangled 6 6 knotserver_log_directory=/var/log/knotserver 7 7 8 - spindle_user=root 9 - spindle_group=root 8 + spindle_user=spindle 9 + spindle_group=spindle 10 10 spindle_path=/var/lib/spindle 11 + spindle_add_to_docker=true
+4 -4
knotserver/.SRCINFO
··· 1 1 pkgbase = knotserver 2 2 pkgdesc = git collaboration platform built on ATproto 3 - pkgver = 1.9.1.alpha 3 + pkgver = 1.11.0.alpha 4 4 pkgrel = 1 5 5 url = https://tangled.org/@tangled.org/core 6 6 install = knotserver.install ··· 11 11 conflicts = knotserver-git 12 12 options = strip 13 13 options = !debug 14 - source = tangled::git+https://tangled.org/@tangled.org/core#tag=v1.9.1-alpha 14 + source = core-v1.11.0-alpha.tar.gz::https://tangled.org/@tangled.org/core/archive/refs%2Ftags%2Fv1.11.0-alpha 15 15 source = knotserver.service 16 16 source = knotserver-sshd.conf 17 17 source = knotserver-tmpfiles.conf 18 - sha256sums = 5562ff3aef0b7e986cccfa778d7abb6003311c44a7df79709a40604782cdef24 19 - sha256sums = ef8252f6c99f39367b574294594b7a87387525b39e5e186d5bf800e89615b126 18 + sha256sums = 51d360848f8d61161a61a60adcd9f355246bdcd2a0437371096a8563896cc66a 19 + sha256sums = 91bf996bc8ea97a6c4bcd0ebf5ab2f341bb1f6fa6da0190c9ff95c4debb217f8 20 20 sha256sums = 825ad80eccdfc473674cab83e4bd63d0e3b129d600b4628803d8241430da5bf8 21 21 sha256sums = 21accf6d6d6c9fb545f801cb0a6d98271f7205e504249cc7fdff53ba83203394 22 22
+7 -7
knotserver/PKGBUILD
··· 1 1 _pkgname=knotserver 2 - _pkgver=1.9.1-alpha 2 + _pkgver=1.11.0-alpha 3 3 pkgname=${_pkgname/\-/\.} 4 4 pkgdesc='git collaboration platform built on ATproto' 5 5 pkgver=${_pkgver/\-/\.} ··· 12 12 makedepends=(go) 13 13 options=(strip !debug) 14 14 install=${_pkgname}.install 15 - source=("tangled::git+$url#tag=v${_pkgver}" 15 + source=("core-v${_pkgver}.tar.gz::${url}/archive/refs%2Ftags%2Fv${_pkgver}" 16 16 ${_pkgname}.service 17 17 ${_pkgname}-sshd.conf 18 18 ${_pkgname}-tmpfiles.conf) 19 - sha256sums=('5562ff3aef0b7e986cccfa778d7abb6003311c44a7df79709a40604782cdef24' 20 - 'ef8252f6c99f39367b574294594b7a87387525b39e5e186d5bf800e89615b126' 19 + sha256sums=('51d360848f8d61161a61a60adcd9f355246bdcd2a0437371096a8563896cc66a' 20 + '91bf996bc8ea97a6c4bcd0ebf5ab2f341bb1f6fa6da0190c9ff95c4debb217f8' 21 21 '825ad80eccdfc473674cab83e4bd63d0e3b129d600b4628803d8241430da5bf8' 22 22 '21accf6d6d6c9fb545f801cb0a6d98271f7205e504249cc7fdff53ba83203394') 23 23 ··· 31 31 export CGO_LDFLAGS="${LDFLAGS}" 32 32 export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" 33 33 34 - cd ${srcdir}/tangled 35 - go build -ldflags "-X tangled.sh/tangled.sh/core/knotserver/xrpc.version=${_pkgver}" -o "${srcdir}/build/knot" ./cmd/knot 34 + cd ${srcdir}/core-v${_pkgver} 35 + go build -ldflags "-X tangled.org/core/knotserver/xrpc.version=${_pkgver}" -o "${srcdir}/build/knot" ./cmd/knot 36 36 } 37 37 38 38 package() { ··· 40 40 install -Dm644 "${srcdir}/${_pkgname}-tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/${_pkgname}.conf" 41 41 install -Dm644 "${srcdir}/${_pkgname}-sshd.conf" "${pkgdir}/usr/lib/systemd/sshd_config.d/${_pkgname}.conf" 42 42 install -Dm755 "${srcdir}/build/knot" "${pkgdir}/usr/bin/knot" 43 - install -Dm644 "${srcdir}/tangled/license" "${pkgdir}/usr/share/licenses/tangled/knotserver.LICENSE" 43 + install -Dm644 "${srcdir}/core-v${_pkgver}/license" "${pkgdir}/usr/share/licenses/tangled/knotserver.LICENSE" 44 44 }
+2 -2
knotserver/knotserver.install
··· 2 2 echo 3 3 echo knotserver installed, with repositories stored in: /var/lib/tangled 4 4 echo 5 - echo Use `systemctl edit knotserver.service` to set `KNOT_SERVER_OWNER` to the DID of the knot owner, 6 - echo and override `KNOT_SERVER_HOSTNAME` if 'hostname' does not return the FQDN echo of your knot. 5 + echo Use "systemctl edit knotserver.service" to set "KNOT_SERVER_OWNER" to the DID of the knot owner, 6 + echo and set "KNOT_SERVER_HOSTNAME" to the FQDN of your knot. 7 7 echo 8 8 echo To enable git push over ssh for tangled repositories, run: 9 9 echo " ln -s /usr/lib/systemd/sshd_config.d/knotserver.conf /etc/ssh/sshd_config.d/30-knotserver.conf"
-1
knotserver/knotserver.service
··· 6 6 AssertPathExists=/var/lib/tangled 7 7 8 8 [Service] 9 - Environment="KNOT_SERVER_HOSTNAME=%H" 10 9 Environment="KNOT_SERVER_LISTEN_ADDR=127.0.0.1:5555" 11 10 Environment="KNOT_REPO_SCAN_PATH=/var/lib/tangled" 12 11 WorkingDirectory=/var/lib/knotserver
+1 -1
knotserver-git/.SRCINFO
··· 15 15 source = knotserver-sshd.conf 16 16 source = knotserver-tmpfiles.conf 17 17 sha256sums = SKIP 18 - sha256sums = ef8252f6c99f39367b574294594b7a87387525b39e5e186d5bf800e89615b126 18 + sha256sums = 91bf996bc8ea97a6c4bcd0ebf5ab2f341bb1f6fa6da0190c9ff95c4debb217f8 19 19 sha256sums = 825ad80eccdfc473674cab83e4bd63d0e3b129d600b4628803d8241430da5bf8 20 20 sha256sums = 21accf6d6d6c9fb545f801cb0a6d98271f7205e504249cc7fdff53ba83203394 21 21
+2 -2
knotserver-git/PKGBUILD
··· 16 16 ${_pkgname}-sshd.conf 17 17 ${_pkgname}-tmpfiles.conf) 18 18 sha256sums=('SKIP' 19 - 'ef8252f6c99f39367b574294594b7a87387525b39e5e186d5bf800e89615b126' 19 + '91bf996bc8ea97a6c4bcd0ebf5ab2f341bb1f6fa6da0190c9ff95c4debb217f8' 20 20 '825ad80eccdfc473674cab83e4bd63d0e3b129d600b4628803d8241430da5bf8' 21 21 '21accf6d6d6c9fb545f801cb0a6d98271f7205e504249cc7fdff53ba83203394') 22 22 ··· 36 36 export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" 37 37 38 38 cd ${srcdir}/tangled 39 - go build -ldflags "-X tangled.sh/tangled.sh/core/knotserver/xrpc.version=${pkgver}" -o "${srcdir}/build/knot" ./cmd/knot 39 + go build -ldflags "-X tangled.org/core/knotserver/xrpc.version=${pkgver}" -o "${srcdir}/build/knot" ./cmd/knot 40 40 } 41 41 42 42 package() {
+2 -2
knotserver-git/knotserver.install
··· 2 2 echo 3 3 echo knotserver installed, with repositories stored in: /var/lib/tangled 4 4 echo 5 - echo Use `systemctl edit knotserver.service` to set `KNOT_SERVER_OWNER` to the DID of the knot owner, 6 - echo and override `KNOT_SERVER_HOSTNAME` if 'hostname' does not return the FQDN echo of your knot. 5 + echo Use "systemctl edit knotserver.service" to set "KNOT_SERVER_OWNER" to the DID of the knot owner, 6 + echo and set "KNOT_SERVER_HOSTNAME" to the FQDN of your knot. 7 7 echo 8 8 echo To enable git push over ssh for tangled repositories, run: 9 9 echo " ln -s /usr/lib/systemd/sshd_config.d/knotserver.conf /etc/ssh/sshd_config.d/30-knotserver.conf"
-1
knotserver-git/knotserver.service
··· 6 6 AssertPathExists=/var/lib/tangled 7 7 8 8 [Service] 9 - Environment="KNOT_SERVER_HOSTNAME=%H" 10 9 Environment="KNOT_SERVER_LISTEN_ADDR=127.0.0.1:5555" 11 10 Environment="KNOT_REPO_SCAN_PATH=/var/lib/tangled" 12 11 WorkingDirectory=/var/lib/knotserver
+7 -5
spindle/.SRCINFO
··· 1 1 pkgbase = spindle 2 2 pkgdesc = git collaboration platform built on ATproto 3 - pkgver = 1.9.1.alpha 3 + pkgver = 1.11.0.alpha 4 4 pkgrel = 1 5 5 url = https://tangled.org/@tangled.org/core 6 6 arch = x86_64 ··· 11 11 conflicts = spindle-git 12 12 options = strip 13 13 options = !debug 14 - source = tangled::git+https://tangled.org/@tangled.org/core#tag=v1.9.1-alpha 14 + source = core-v1.11.0-alpha.tar.gz::https://tangled.org/@tangled.org/core/archive/refs%2Ftags%2Fv1.11.0-alpha 15 15 source = spindle.service 16 + source = spindle.sysusers 16 17 source = spindle-tmpfiles.conf 17 - sha256sums = 5562ff3aef0b7e986cccfa778d7abb6003311c44a7df79709a40604782cdef24 18 - sha256sums = c133009fe69515dd35aa593e7f011136db40c22cde8804397177e1b75e3a6d5d 19 - sha256sums = 2abd16b1b058876cc804057d9e5eb9ae39536d9a83c212326d48d3a7ba89bbd4 18 + sha256sums = 51d360848f8d61161a61a60adcd9f355246bdcd2a0437371096a8563896cc66a 19 + sha256sums = 6509c3c71ed305cc8cdf59f54261538a2f554621ae6116bb2f78ebe92b8d64bb 20 + sha256sums = 1364062c3d0daa6fa8fc439bf26e88585d503a36b9f8335bae037f659b08bd15 21 + sha256sums = 28673b854e9cd65cb129f46bc1dc894fb74a62fa3b976f2e1e5737558096b499 20 22 21 23 pkgname = spindle
+10 -7
spindle/PKGBUILD
··· 1 1 _pkgname=spindle 2 - _pkgver=1.9.1-alpha 2 + _pkgver=1.11.0-alpha 3 3 pkgname=${_pkgname/\-/\.} 4 4 pkgdesc='git collaboration platform built on ATproto' 5 5 pkgver=${_pkgver/\-/\.} ··· 11 11 conflicts=(spindle-git) 12 12 makedepends=(git go) 13 13 options=(strip !debug) 14 - source=("tangled::git+$url#tag=v${_pkgver}" 14 + source=("core-v${_pkgver}.tar.gz::${url}/archive/refs%2Ftags%2Fv${_pkgver}" 15 15 ${_pkgname}.service 16 + ${_pkgname}.sysusers 16 17 ${_pkgname}-tmpfiles.conf) 17 - sha256sums=('5562ff3aef0b7e986cccfa778d7abb6003311c44a7df79709a40604782cdef24' 18 - 'c133009fe69515dd35aa593e7f011136db40c22cde8804397177e1b75e3a6d5d' 19 - '2abd16b1b058876cc804057d9e5eb9ae39536d9a83c212326d48d3a7ba89bbd4') 18 + sha256sums=('51d360848f8d61161a61a60adcd9f355246bdcd2a0437371096a8563896cc66a' 19 + '6509c3c71ed305cc8cdf59f54261538a2f554621ae6116bb2f78ebe92b8d64bb' 20 + '1364062c3d0daa6fa8fc439bf26e88585d503a36b9f8335bae037f659b08bd15' 21 + '28673b854e9cd65cb129f46bc1dc894fb74a62fa3b976f2e1e5737558096b499') 20 22 21 23 build() { 22 24 mkdir -p ${srcdir}/build ··· 28 30 export CGO_LDFLAGS="${LDFLAGS}" 29 31 export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" 30 32 31 - cd ${srcdir}/tangled 33 + cd ${srcdir}/core-v${_pkgver} 32 34 go build -o "${srcdir}/build/spindle" ./cmd/spindle 33 35 } 34 36 35 37 package() { 36 38 install -Dm644 "${srcdir}/${_pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${_pkgname}.service" 39 + install -Dm644 "${srcdir}/${_pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${_pkgname}.conf" 37 40 install -Dm644 "${srcdir}/${_pkgname}-tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/${_pkgname}.conf" 38 41 install -Dm755 "${srcdir}/build/spindle" "${pkgdir}/usr/bin/spindle" 39 - install -Dm644 "${srcdir}/tangled/license" "${pkgdir}/usr/share/licenses/tangled/spindle.LICENSE" 42 + install -Dm644 "${srcdir}/core-v${_pkgver}/license" "${pkgdir}/usr/share/licenses/tangled/spindle.LICENSE" 40 43 }
+1 -1
spindle/spindle-tmpfiles.conf
··· 1 - d /var/lib/spindle 755 root root - 1 + d /var/lib/spindle 755 spindle spindle -
+2 -3
spindle/spindle.service
··· 5 5 AssertPathExists=/var/lib/spindle 6 6 7 7 [Service] 8 - Environment="SPINDLE_SERVER_HOSTNAME=%H" 9 8 Environment="SPINDLE_SERVER_LISTEN_ADDR=127.0.0.1:6555" 10 9 WorkingDirectory=/var/lib/spindle 11 10 ExecStart=/usr/bin/spindle 12 11 Restart=always 13 - User=root 14 - Group=root 12 + User=spindle 13 + Group=spindle 15 14 StandardOutput=journal 16 15 StandardError=journal 17 16 LimitNOFILE=65536
+2
spindle/spindle.sysusers
··· 1 + u! spindle - "spindle server" /var/lib/spindle /usr/bin/nologin 2 + m spindle docker
+1
src/README.md.sh
··· 1 1 #!/usr/bin/bash 2 + set -eu 2 3 cat << EOF > ${pkgbuild_path}/README.md 3 4 # pkgs 4 5
-17
src/common/install.sh
··· 1 - #!/usr/bin/bash 2 - cat << EOF > ${pkgbuild_path}/knotserver.install 3 - post_install() { 4 - echo 5 - echo knotserver installed, with repositories stored in: ${knotserver_repo_path:-/var/lib/tangled/repositories} 6 - echo 7 - echo Use \`systemctl edit knotserver.service\` to set \`KNOT_SERVER_OWNER\` to the DID of the knot owner, 8 - echo and override \`KNOT_SERVER_HOSTNAME\` if 'hostname' does not return the FQDN echo of your knot. 9 - echo 10 - echo To enable git push over ssh for tangled repositories, run: 11 - echo " ln -s /usr/lib/systemd/sshd_config.d/knotserver.conf /etc/ssh/sshd_config.d/30-knotserver.conf" 12 - echo " usermod -s /usr/bin/bash -d ${knotserver_repo_path:-/var/lib/tangled/repositories} ${knotserver_user:-git}" 13 - echo 14 - echo and reload sshd 15 - echo 16 - } 17 - EOF
-29
src/common/service.sh
··· 1 - #!/usr/bin/bash 2 - cat << EOF > ${pkgbuild_path}/knotserver.service 3 - [Unit] 4 - Description=tangled knot server 5 - After=network.target network-online.target 6 - Wants=network-online.target 7 - AssertPathExists=${knotserver_path:-/var/lib/tangled} 8 - AssertPathExists=${knotserver_repo_path:-/var/lib/tangled/repositories} 9 - 10 - [Service] 11 - Environment="KNOT_SERVER_HOSTNAME=%H" 12 - Environment="KNOT_SERVER_LISTEN_ADDR=127.0.0.1:5555" 13 - Environment="KNOT_REPO_SCAN_PATH=${knotserver_repo_path:-/var/lib/tangled/repositories}" 14 - WorkingDirectory=${knotserver_path:-/var/lib/tangled} 15 - ExecStart=/usr/bin/knot server 16 - Restart=always 17 - User=${knotserver_user:-git} 18 - Group=${knotserver_group:-git} 19 - 20 - StandardOutput=journal 21 - StandardError=journal 22 - LimitNOFILE=65536 23 - 24 - # Creates /var/log/knotserver with the correct permissions for the repoguard log. 25 - LogsDirectory=knotserver 26 - 27 - [Install] 28 - WantedBy=multi-user.target 29 - EOF
-6
src/common/sshd.conf.sh
··· 1 - #!/usr/bin/bash 2 - cat << EOF > ${pkgbuild_path}/knotserver-sshd.conf 3 - Match User ${knotserver_user:-git} 4 - AuthorizedKeysCommand /usr/bin/knot keys -output authorized-keys -git-dir ${knotserver_repo_path:-/var/lib/tangled/repositories} -log-path ${knotserver_log_directory:-/var/log/knotserver}/keyfetch.log 5 - AuthorizedKeysCommandUser nobody 6 - EOF
-6
src/common/tmpfiles.conf.sh
··· 1 - #!/usr/bin/bash 2 - cat << EOF > ${pkgbuild_path}/knotserver-tmpfiles.conf 3 - d /etc/tangled 700 root root 4 - d ${knotserver_path:-/var/lib/tangled} 755 ${knotserver_user:-git} ${knotserver_group:-git} - 5 - d ${knotserver_repo_path:-/var/lib/tangled/repositories} 755 ${knotserver_user:-git} ${knotserver_group:-git} - 6 - EOF
+5 -4
src/knotserver/PKGBUILD.sh
··· 1 1 #!/usr/bin/bash 2 + set -eu 2 3 cat << EOF > ${pkgbuild_path}/PKGBUILD 3 4 _pkgname=knotserver 4 5 _pkgver=${tag} ··· 14 15 makedepends=(go) 15 16 options=(strip !debug) 16 17 install=\${_pkgname}.install 17 - source=("tangled::git+\$url#tag=v\${_pkgver}" 18 + source=("core-v\${_pkgver}.tar.gz::\${url}/archive/refs%2Ftags%2Fv\${_pkgver}" 18 19 \${_pkgname}.service 19 20 \${_pkgname}-sshd.conf 20 21 \${_pkgname}-tmpfiles.conf) ··· 33 34 export CGO_LDFLAGS="\${LDFLAGS}" 34 35 export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" 35 36 36 - cd \${srcdir}/tangled 37 - go build -ldflags "-X tangled.sh/tangled.sh/core/knotserver/xrpc.version=\${_pkgver}" -o "\${srcdir}/build/knot" ./cmd/knot 37 + cd \${srcdir}/core-v\${_pkgver} 38 + go build -ldflags "-X tangled.org/core/knotserver/xrpc.version=\${_pkgver}" -o "\${srcdir}/build/knot" ./cmd/knot 38 39 } 39 40 40 41 package() { ··· 42 43 install -Dm644 "\${srcdir}/\${_pkgname}-tmpfiles.conf" "\${pkgdir}/usr/lib/tmpfiles.d/\${_pkgname}.conf" 43 44 install -Dm644 "\${srcdir}/\${_pkgname}-sshd.conf" "\${pkgdir}/usr/lib/systemd/sshd_config.d/\${_pkgname}.conf" 44 45 install -Dm755 "\${srcdir}/build/knot" "\${pkgdir}/usr/bin/knot" 45 - install -Dm644 "\${srcdir}/tangled/license" "\${pkgdir}/usr/share/licenses/tangled/knotserver.LICENSE" 46 + install -Dm644 "\${srcdir}/core-v\${_pkgver}/license" "\${pkgdir}/usr/share/licenses/tangled/knotserver.LICENSE" 46 47 } 47 48 EOF
+3 -2
src/knotserver/README.md.sh
··· 1 1 #!/usr/bin/bash 2 + set -eu 2 3 cat << EOF > ${pkgbuild_path}/README.md 3 4 # knotserver 4 5 ··· 10 11 ## SSH 11 12 12 13 SSH access is required to push to repositories. To enable, use the sshd_config.d drop-in, and give the 13 - \`${knotserver_user:-git}\` user a shell and a home directory: 14 + \`${knotserver_user}\` user a shell and a home directory: 14 15 15 16 \`\`\`bash 16 17 ln -s /usr/lib/systemd/sshd_config.d/knotserver.conf /etc/ssh/sshd_config.d/30-knotserver.conf 17 - usermod -s /usr/bin/bash -d ${knotserver_repo_path} ${knotserver_user:-git} 18 + usermod -s /usr/bin/bash -d ${knotserver_repo_path} ${knotserver_user} 18 19 \`\`\` 19 20 20 21 EOF
+3 -2
src/knotserver-git/README.md.sh
··· 1 1 #!/usr/bin/bash 2 + set -eu 2 3 cat << EOF > ${pkgbuild_path}/README.md 3 4 # knotserver-git 4 5 ··· 10 11 ## SSH 11 12 12 13 SSH access is required to push to repositories. To enable, use the sshd_config.d drop-in, and give the 13 - \`${knotserver_user:-git}\` user a shell and a home directory: 14 + \`${knotserver_user}\` user a shell and a home directory: 14 15 15 16 \`\`\`bash 16 17 ln -s /usr/lib/systemd/sshd_config.d/knotserver.conf /etc/ssh/sshd_config.d/30-knotserver.conf 17 - usermod -s /usr/bin/bash -d ${knotserver_repo_path} ${knotserver_user:-git} 18 + usermod -s /usr/bin/bash -d ${knotserver_repo_path} ${knotserver_user} 18 19 \`\`\` 19 20 20 21 EOF
+18
src/knotserver-shared/install.sh
··· 1 + #!/usr/bin/bash 2 + set -eu 3 + cat << EOF > ${pkgbuild_path}/knotserver.install 4 + post_install() { 5 + echo 6 + echo knotserver installed, with repositories stored in: ${knotserver_repo_path} 7 + echo 8 + echo Use "systemctl edit knotserver.service" to set "KNOT_SERVER_OWNER" to the DID of the knot owner, 9 + echo and set "KNOT_SERVER_HOSTNAME" to the FQDN of your knot. 10 + echo 11 + echo To enable git push over ssh for tangled repositories, run: 12 + echo " ln -s /usr/lib/systemd/sshd_config.d/knotserver.conf /etc/ssh/sshd_config.d/30-knotserver.conf" 13 + echo " usermod -s /usr/bin/bash -d ${knotserver_repo_path} ${knotserver_user}" 14 + echo 15 + echo and reload sshd 16 + echo 17 + } 18 + EOF
+29
src/knotserver-shared/service.sh
··· 1 + #!/usr/bin/bash 2 + set -eu 3 + cat << EOF > ${pkgbuild_path}/knotserver.service 4 + [Unit] 5 + Description=tangled knot server 6 + After=network.target network-online.target 7 + Wants=network-online.target 8 + AssertPathExists=${knotserver_path} 9 + AssertPathExists=${knotserver_repo_path} 10 + 11 + [Service] 12 + Environment="KNOT_SERVER_LISTEN_ADDR=127.0.0.1:5555" 13 + Environment="KNOT_REPO_SCAN_PATH=${knotserver_repo_path}" 14 + WorkingDirectory=${knotserver_path} 15 + ExecStart=/usr/bin/knot server 16 + Restart=always 17 + User=${knotserver_user} 18 + Group=${knotserver_group} 19 + 20 + StandardOutput=journal 21 + StandardError=journal 22 + LimitNOFILE=65536 23 + 24 + # Creates /var/log/knotserver with the correct permissions for the repoguard log. 25 + LogsDirectory=knotserver 26 + 27 + [Install] 28 + WantedBy=multi-user.target 29 + EOF
+7
src/knotserver-shared/sshd.conf.sh
··· 1 + #!/usr/bin/bash 2 + set -eu 3 + cat << EOF > ${pkgbuild_path}/knotserver-sshd.conf 4 + Match User ${knotserver_user} 5 + AuthorizedKeysCommand /usr/bin/knot keys -output authorized-keys -git-dir ${knotserver_repo_path} -log-path ${knotserver_log_directory}/keyfetch.log 6 + AuthorizedKeysCommandUser nobody 7 + EOF
+7
src/knotserver-shared/tmpfiles.conf.sh
··· 1 + #!/usr/bin/bash 2 + set -eu 3 + cat << EOF > ${pkgbuild_path}/knotserver-tmpfiles.conf 4 + d /etc/tangled 700 root root 5 + d ${knotserver_path} 755 ${knotserver_user} ${knotserver_group} - 6 + d ${knotserver_repo_path} 755 ${knotserver_user} ${knotserver_group} - 7 + EOF
+7 -3
src/spindle/PKGBUILD.sh
··· 1 1 #!/usr/bin/bash 2 + set -eu 2 3 cat << EOF > ${pkgbuild_path}/PKGBUILD 3 4 _pkgname=spindle 4 5 _pkgver=${tag} ··· 13 14 conflicts=(spindle-git) 14 15 makedepends=(git go) 15 16 options=(strip !debug) 16 - source=("tangled::git+\$url#tag=v\${_pkgver}" 17 + source=("core-v\${_pkgver}.tar.gz::\${url}/archive/refs%2Ftags%2Fv\${_pkgver}" 17 18 \${_pkgname}.service 19 + \${_pkgname}.sysusers 18 20 \${_pkgname}-tmpfiles.conf) 19 21 sha256sums=('set by updpkgsums' 22 + 'set by updpkgsums' 20 23 'set by updpkgsums' 21 24 'set by updpkgsums') 22 25 ··· 30 33 export CGO_LDFLAGS="\${LDFLAGS}" 31 34 export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" 32 35 33 - cd \${srcdir}/tangled 36 + cd \${srcdir}/core-v\${_pkgver} 34 37 go build -o "\${srcdir}/build/spindle" ./cmd/spindle 35 38 } 36 39 37 40 package() { 38 41 install -Dm644 "\${srcdir}/\${_pkgname}.service" "\${pkgdir}/usr/lib/systemd/system/\${_pkgname}.service" 42 + install -Dm644 "\${srcdir}/\${_pkgname}.sysusers" "\${pkgdir}/usr/lib/sysusers.d/\${_pkgname}.conf" 39 43 install -Dm644 "\${srcdir}/\${_pkgname}-tmpfiles.conf" "\${pkgdir}/usr/lib/tmpfiles.d/\${_pkgname}.conf" 40 44 install -Dm755 "\${srcdir}/build/spindle" "\${pkgdir}/usr/bin/spindle" 41 - install -Dm644 "\${srcdir}/tangled/license" "\${pkgdir}/usr/share/licenses/tangled/spindle.LICENSE" 45 + install -Dm644 "\${srcdir}/core-v\${_pkgver}/license" "\${pkgdir}/usr/share/licenses/tangled/spindle.LICENSE" 42 46 } 43 47 EOF
-24
src/spindle/service.sh
··· 1 - #!/usr/bin/bash 2 - cat << EOF > ${pkgbuild_path}/spindle.service 3 - [Unit] 4 - Description=tangled spindle server 5 - After=network.target network-online.target docker.service 6 - Wants=network-online.target 7 - AssertPathExists=${spindle_path:-/var/lib/spindle} 8 - 9 - [Service] 10 - Environment="SPINDLE_SERVER_HOSTNAME=%H" 11 - Environment="SPINDLE_SERVER_LISTEN_ADDR=127.0.0.1:6555" 12 - WorkingDirectory=${spindle_path:-/var/lib/spindle} 13 - ExecStart=/usr/bin/spindle 14 - Restart=always 15 - User=${spindle_user:-root} 16 - Group=${spindle_group:-root} 17 - StandardOutput=journal 18 - StandardError=journal 19 - LimitNOFILE=65536 20 - LogsDirectory=spindle 21 - 22 - [Install] 23 - WantedBy=multi-user.target 24 - EOF
+2 -1
src/spindle/tmpfiles.conf.sh
··· 1 1 #!/usr/bin/bash 2 + set -eu 2 3 cat << EOF > ${pkgbuild_path}/spindle-tmpfiles.conf 3 - d ${spindle_path:-/var/lib/tangled} 755 ${spindle_user:-root} ${spindle_group:-root} - 4 + d ${spindle_path} 755 ${spindle_user} ${spindle_group} - 4 5 EOF
+24
src/spindle-shared/service.sh
··· 1 + #!/usr/bin/bash 2 + set -eu 3 + cat << EOF > ${pkgbuild_path}/spindle.service 4 + [Unit] 5 + Description=tangled spindle server 6 + After=network.target network-online.target docker.service 7 + Wants=network-online.target 8 + AssertPathExists=${spindle_path} 9 + 10 + [Service] 11 + Environment="SPINDLE_SERVER_LISTEN_ADDR=127.0.0.1:6555" 12 + WorkingDirectory=${spindle_path} 13 + ExecStart=/usr/bin/spindle 14 + Restart=always 15 + User=${spindle_user} 16 + Group=${spindle_group} 17 + StandardOutput=journal 18 + StandardError=journal 19 + LimitNOFILE=65536 20 + LogsDirectory=spindle 21 + 22 + [Install] 23 + WantedBy=multi-user.target 24 + EOF
+11
src/spindle-shared/sysusers.sh
··· 1 + #!/usr/bin/bash 2 + set -eu 3 + cat << EOF > ${pkgbuild_path}/spindle.sysusers 4 + u! ${spindle_user} - "spindle server" ${spindle_path} /usr/bin/nologin 5 + EOF 6 + 7 + if [[ "${spindle_add_to_docker}" == true ]]; then 8 + cat << EOF >> ${pkgbuild_path}/spindle.sysusers 9 + m ${spindle_user} docker 10 + EOF 11 + fi
+5 -1
update.sh
··· 1 1 #!/usr/bin/env bash 2 + set -eu 2 3 3 4 source ./conf.sh 4 5 ··· 6 7 source src/README.md.sh 7 8 8 9 for pkgbuild_path in knotserver knotserver-git; do 9 - for src in src/common/*.sh; do 10 + for src in src/knotserver-shared/*.sh; do 10 11 source ${src} 11 12 done 12 13 for src in src/${pkgbuild_path}/*.sh; do ··· 21 22 done 22 23 23 24 for pkgbuild_path in spindle; do 25 + for src in src/spindle-shared/*.sh; do 26 + source ${src} 27 + done 24 28 for src in src/${pkgbuild_path}/*.sh; do 25 29 source ${src} 26 30 done