diff --git a/git/PKGBUILD b/git/PKGBUILD index b404d22e27..8f3d5ea23e 100644 --- a/git/PKGBUILD +++ b/git/PKGBUILD @@ -1,9 +1,10 @@ # POWER Maintainer: Alexander Baldeck +# POWER Maintainer: Alexander Baldeck # Maintainer: Christian Hesse # Maintainer: Dan McGee pkgname=git -pkgver=2.20.1 +pkgver=2.21.0 pkgrel=1 pkgdesc='the fast distributed version control system' arch=(x86_64 powerpc64le) @@ -11,7 +12,7 @@ url='https://git-scm.com/' license=('GPL2') depends=('curl' 'expat' 'perl' 'perl-error' 'perl-mailtools' 'openssl' 'pcre2' 'grep' 'shadow') -makedepends=('python2' 'xmlto' 'asciidoc') +makedepends=('python2' 'xmlto' 'asciidoc') # 'libgnome-keyring' optdepends=('tk: gitk and git gui' 'perl-libwww: git svn' 'perl-term-readkey: git svn and interactive.singlekey setting' @@ -24,15 +25,15 @@ optdepends=('tk: gitk and git gui' 'perl-cgi: gitweb (web interface) support' 'python2: various helper scripts' 'subversion: git svn' - 'gnome-keyring: GNOME keyring credential helper' 'libsecret: libsecret credential helper') install=git.install validpgpkeys=('96E07AF25771955980DAD10020D04E5A713660A7') # Junio C Hamano -source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar.xz" +source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar."{xz,sign} 'git-daemon@.service' 'git-daemon.socket' 'git-sysusers.conf') -sha256sums=('9d2e91e2faa2ea61ba0a70201d023b36f54d846314591a002c610ea2ab81c3e9' +sha256sums=('8ccb1ce743ee991d91697e163c47c11be4bf81efbdd9fb0b4a7ad77cc0020d28' + 'SKIP' '14c0b67cfe116b430645c19d8c4759419657e6809dfa28f438c33a005245ad91' 'ac4c90d62c44926e6d30d18d97767efc901076d4e0283ed812a349aece72f203' '7630e8245526ad80f703fac9900a1328588c503ce32b37b9f8811674fcda4a45') diff --git a/git/git-daemon.socket b/git/git-daemon.socket new file mode 100644 index 0000000000..58ed2f1546 --- /dev/null +++ b/git/git-daemon.socket @@ -0,0 +1,9 @@ +[Unit] +Description=Git Daemon Socket + +[Socket] +ListenStream=9418 +Accept=true + +[Install] +WantedBy=sockets.target diff --git a/git/git-daemon@.service b/git/git-daemon@.service new file mode 100644 index 0000000000..70e0dcaafe --- /dev/null +++ b/git/git-daemon@.service @@ -0,0 +1,14 @@ +[Unit] +Description=Git Daemon Instance + +[Service] +User=git +# The '-' is to ignore non-zero exit statuses +ExecStart=-/usr/lib/git-core/git-daemon --inetd --export-all --base-path=/srv/git +StandardInput=socket +StandardOutput=inherit +StandardError=journal +ProtectSystem=full +ProtectHome=on +PrivateDevices=on +NoNewPrivileges=on diff --git a/git/git-sysusers.conf b/git/git-sysusers.conf new file mode 100644 index 0000000000..8189065f6d --- /dev/null +++ b/git/git-sysusers.conf @@ -0,0 +1 @@ +u git - "git daemon user" / /usr/bin/git-shell diff --git a/git/git.install b/git/git.install new file mode 100644 index 0000000000..453050dfc6 --- /dev/null +++ b/git/git.install @@ -0,0 +1,14 @@ +#!/bin/sh + +post_install() { + # make git-shell a valid shell + if ! grep -qe '^/usr/bin/git-shell$' etc/shells; then + echo '/usr/bin/git-shell' >> etc/shells + fi +} + +# do not modify user settings (shell) in post-upgrade function! + +post_remove() { + sed -i -r '/^\/usr\/bin\/git-shell$/d' etc/shells +}