summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Crerar2017-10-04 12:38:29 -0400
committerAndrew Crerar2017-10-04 12:38:29 -0400
commit43140990bb486ee344f690aa3059fe249a956bfd (patch)
tree5406abee3a2c4d07521d32fceae56dc7c7fc4903
parent3aa61b2bb5f58f6205841013e35b4391f4f3b9c0 (diff)
downloadaur-43140990bb486ee344f690aa3059fe249a956bfd.tar.gz
PKGBUILD overhaul, added new maintainer
-rw-r--r--.SRCINFO48
-rw-r--r--PKGBUILD136
-rw-r--r--git-git.install13
3 files changed, 151 insertions, 46 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 827b28cbee40..ad4611618e68 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,31 +1,45 @@
-# Generated by mksrcinfo v8
-# Wed Dec 23 04:54:06 UTC 2015
pkgbase = git-git
pkgdesc = A fast distributed version control system
- pkgver = v2.7.0.rc2.r0.g554f6e4
+ pkgver = 2.14.2.r746.g8fb8a945bc
pkgrel = 1
url = http://git-scm.com/
install = git-git.install
arch = i686
arch = x86_64
license = GPL2
- depends = git
- depends = asciidoc
- depends = gettext
- depends = openssl
- depends = expat
- depends = xmlto
+ makedepends = python2
+ makedepends = emacs
+ makedepends = libgnome-keyring
+ makedepends = xmlto
+ makedepends = asciidoc
depends = curl
- depends = zlib
- depends = perl
- provides = git
- conflicts = git
- source = git://github.com/git/git.git
+ depends = expat>=2.0
+ depends = perl-error
+ depends = perl>=5.14.0
+ depends = openssl
+ depends = pcre2
+ optdepends = tk: gitk and git gui
+ optdepends = perl-libwww: git svn
+ optdepends = perl-term-readkey: git svn
+ optdepends = perl-mime-tools: git send-email
+ optdepends = perl-net-smtp-ssl: git send-email TLS support
+ optdepends = perl-authen-sasl: git send-email TLS support
+ optdepends = perl-mediawiki-api: git mediawiki support
+ optdepends = perl-datetime-format-iso8601: git mediawiki support
+ optdepends = perl-lwp-protocol-https: git mediawiki https support
+ optdepends = perl-cgi: gitweb (web interface) support
+ optdepends = python2: various helper scripts
+ optdepends = subversion: git svn
+ optdepends = cvsps2: git cvsimport
+ optdepends = gnome-keyring: GNOME keyring credential helper
+ provides = git-core
+ conflicts = git-core
+ source = git+https://github.com/git/git.git
source = git-daemon@.service
source = git-daemon.socket
- md5sums = SKIP
- md5sums = 042524f942785772d7bd52a1f02fe5ae
- md5sums = f67869315c2cc112e076f0c73f248002
+ sha512sums = SKIP
+ sha512sums = ad7f81859d5a3b9b93b48ab1fe317919940d666439e583984bf5287b6c62f570c192b990f4a004a5d0a2d983ed5e63aba2ccc95a42e05e1b93242fdbce2d07f5
+ sha512sums = bd4aff421e547044a2a91b8a77c86ce14f05321008aa2e28aab35154b297803ca716ccba3e0fca3805033d4adb455adb41086ceeca98200b8006582c13f2c7d3
pkgname = git-git
diff --git a/PKGBUILD b/PKGBUILD
index 48dd07c75b49..1e56963538cd 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,51 +1,133 @@
-# Maintainer: Kamran Mackey <kamranm1200@gmail.com>
+# Maintainer: Andrew Crerar <andrew (at) crerar (dot) io>
+# Contributor: Kamran Mackey <kamranm1200@gmail.com>
-_pkgbase=git
-pkgbase=git-git
-pkgname=('git-git')
-pkgver=v2.7.0.rc2.r0.g554f6e4
+_name=git
+pkgname=git-git
+pkgver=2.14.2.r746.g8fb8a945bc
pkgrel=1
-pkgdesc="A fast distributed version control system"
+pkgdesc='A fast distributed version control system'
arch=('i686' 'x86_64')
url='http://git-scm.com/'
license=('GPL2')
-depends=('git' 'asciidoc' 'gettext' 'openssl' 'expat' 'xmlto' 'curl' 'zlib' 'perl')
-conflicts=('git')
-provides=('git')
+depends=('curl' 'expat>=2.0' 'perl-error' 'perl>=5.14.0' 'openssl' 'pcre2')
+makedepends=('python2' 'emacs' 'libgnome-keyring' 'xmlto' 'asciidoc')
+optdepends=('tk: gitk and git gui'
+ 'perl-libwww: git svn'
+ 'perl-term-readkey: git svn'
+ 'perl-mime-tools: git send-email'
+ 'perl-net-smtp-ssl: git send-email TLS support'
+ 'perl-authen-sasl: git send-email TLS support'
+ 'perl-mediawiki-api: git mediawiki support'
+ 'perl-datetime-format-iso8601: git mediawiki support'
+ 'perl-lwp-protocol-https: git mediawiki https support'
+ 'perl-cgi: gitweb (web interface) support'
+ 'python2: various helper scripts'
+ 'subversion: git svn'
+ 'cvsps2: git cvsimport'
+ 'gnome-keyring: GNOME keyring credential helper')
+conflicts=('git-core')
+provides=('git-core')
install=git-git.install
-source=("git://github.com/git/git.git"
+source=('git+https://github.com/git/git.git'
git-daemon@.service
git-daemon.socket)
-md5sums=('SKIP'
- '042524f942785772d7bd52a1f02fe5ae'
- 'f67869315c2cc112e076f0c73f248002')
+sha512sums=('SKIP'
+ 'ad7f81859d5a3b9b93b48ab1fe317919940d666439e583984bf5287b6c62f570c192b990f4a004a5d0a2d983ed5e63aba2ccc95a42e05e1b93242fdbce2d07f5'
+ 'bd4aff421e547044a2a91b8a77c86ce14f05321008aa2e28aab35154b297803ca716ccba3e0fca3805033d4adb455adb41086ceeca98200b8006582c13f2c7d3')
_gitname=git
pkgver() {
- cd "$_gitname"
- git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
-}
-
-prepare() {
- cd "${srcdir}/${_pkgbase}"
+ cd "$srcdir/$_name"
+ git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}
build() {
- cd "$_gitname"
- make clean
- make configure
- ./configure prefix=/usr
- make prefix=/usr \
+ export PYTHON_PATH='/usr/bin/python2'
+ cd "$srcdir/$_name"
+ make prefix=/usr gitexecdir=/usr/lib/git-core \
CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
- USE_LIBPCRE=1 \
+ USE_LIBPCRE2=1 \
NO_CROSS_DIRECTORY_HARDLINKS=1 \
MAN_BOLD_LITERAL=1 \
all doc
+
+ make -C contrib/emacs prefix=/usr
+ make -C contrib/credential/gnome-keyring
+ make -C contrib/credential/libsecret
+ make -C contrib/subtree prefix=/usr gitexecdir=/usr/lib/git-core all doc
+ make -C contrib/mw-to-git prefix=/usr all
+ make -C contrib/diff-highlight prefix=/usr
+}
+
+check() {
+ export PYTHON_PATH='/usr/bin/python2'
+ cd "$srcdir/$_name"
+ local jobs
+ jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') || true
+ mkdir -p /dev/shm/git-test
+ # explicitly specify SHELL to avoid a test failure in t/t9903-bash-prompt.sh
+ # which is caused by 'git rebase' trying to use builduser's SHELL inside the
+ # build chroot (i.e.: /usr/bin/nologin)
+ SHELL=/bin/sh \
+ make prefix=/usr gitexecdir=/usr/lib/git-core \
+ CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
+ USE_LIBPCRE2=1 \
+ NO_CROSS_DIRECTORY_HARDLINKS=1 \
+ MAN_BOLD_LITERAL=1 \
+ NO_SVN_TESTS=y \
+ DEFAULT_TEST_TARGET=prove \
+ GIT_PROVE_OPTS="$jobs -Q" \
+ GIT_TEST_OPTS="--root=/dev/shm/git-test" \
+ test
}
package() {
- cd "$_gitname"
- make DESTDIR="$pkgdir" install install-doc
+ export PYTHON_PATH='/usr/bin/python2'
+ cd "$srcdir/$_name"
+ make prefix=/usr gitexecdir=/usr/lib/git-core \
+ CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
+ USE_LIBPCRE2=1 \
+ NO_CROSS_DIRECTORY_HARDLINKS=1 \
+ MAN_BOLD_LITERAL=1 \
+ INSTALLDIRS=vendor DESTDIR="$pkgdir" install install-doc
+
+ # bash completion
+ mkdir -p "$pkgdir"/usr/share/bash-completion/completions/
+ install -m644 ./contrib/completion/git-completion.bash "$pkgdir"/usr/share/bash-completion/completions/git
+ # fancy git prompt
+ mkdir -p "$pkgdir"/usr/share/git/
+ install -m644 ./contrib/completion/git-prompt.sh "$pkgdir"/usr/share/git/git-prompt.sh
+ # emacs
+ make -C contrib/emacs prefix=/usr DESTDIR="$pkgdir" install
+ # gnome credentials helper
+ install -m755 contrib/credential/gnome-keyring/git-credential-gnome-keyring \
+ "$pkgdir"/usr/lib/git-core/git-credential-gnome-keyring
+ make -C contrib/credential/gnome-keyring clean
+ # libsecret credentials helper
+ install -m755 contrib/credential/libsecret/git-credential-libsecret \
+ "$pkgdir"/usr/lib/git-core/git-credential-libsecret
+ make -C contrib/credential/libsecret clean
+ # subtree installation
+ make -C contrib/subtree prefix=/usr gitexecdir=/usr/lib/git-core DESTDIR="$pkgdir" install install-doc
+ # mediawiki installation
+ make -C contrib/mw-to-git prefix=/usr gitexecdir=/usr/lib/git-core DESTDIR="$pkgdir" install
+ # the rest of the contrib stuff
+ find contrib/ -name '.gitignore' -delete
+ cp -a ./contrib/* $pkgdir/usr/share/git/
+
+ # scripts are for python 2.x
+ sed -i 's|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|' \
+ $(find "$pkgdir" -name '*.py') \
+ "$pkgdir"/usr/share/git/remote-helpers/git-remote-bzr \
+ "$pkgdir"/usr/share/git/remote-helpers/git-remote-hg
+ sed -i 's|#![ ]*/usr/bin/python$|#!/usr/bin/python2|' \
+ "$pkgdir"/usr/share/git/svn-fe/svnrdump_sim.py
+
+ # perl modules from contrib/ install to site dir... move to vendor
+ mv "$pkgdir"/usr/share/perl5/site_perl/Git/* "$pkgdir"/usr/share/perl5/vendor_perl/Git/
+ rm -rf "$pkgdir"/usr/share/perl5/site_perl
+ # remove perllocal.pod, .packlist, and empty directories.
+ rm -rf "$pkgdir"/usr/lib/perl5
# git-daemon via systemd socket activation
install -D -m 644 "$srcdir"/git-daemon@.service "$pkgdir"/usr/lib/systemd/system/git-daemon@.service
diff --git a/git-git.install b/git-git.install
index 064eda019bde..c011b4743142 100644
--- a/git-git.install
+++ b/git-git.install
@@ -1,12 +1,21 @@
+#!/bin/sh
+
post_install() {
if ! getent group git >/dev/null; then
- groupadd --system git
+ groupadd --system git
fi
if ! getent passwd git >/dev/null; then
- useradd --system -c 'git daemon user' -g git -d / -s /bin/bash git
+ useradd --system -c 'git daemon user' -g git -d / -s /usr/bin/git-shell git
+ fi
+ if ! grep -qe '^/usr/bin/git-shell$' etc/shells; then
+ echo '/usr/bin/git-shell' >> etc/shells
fi
}
post_upgrade() {
post_install $1
}
+
+post_remove() {
+ sed -i -r '/^\/usr\/bin\/git-shell$/d' etc/shells
+}