summaryrefslogtreecommitdiff
path: root/PKGBUILD
diff options
context:
space:
mode:
authorjc_gargma <jc_gargma@iserlohn-fortress.net>2021-03-05 18:36:56 -0800
committerjc_gargma <jc_gargma@iserlohn-fortress.net>2021-03-05 18:36:56 -0800
commitc057d69f22d83dbb2bcdf54c68d206c807507c31 (patch)
tree48ede91a5ec374d2848a4779a118d373a8841fb3 /PKGBUILD
downloadopenssh-c057d69f22d83dbb2bcdf54c68d206c807507c31.tar.xz
Initial commit
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD108
1 files changed, 108 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 0000000..fb8fe7e
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,108 @@
+# Maintainer: jc_gargma <jc_gargma@iserlohn-fortress.net>
+# Maintainer (Arch): Levente Polyak <anthraxx[at]archlinux[dot]org>
+# Maintainer (Arch): Giancarlo Razzolini <grazzolini@archlinux.org>
+# Contributor (Arch): Gaetan Bisson <bisson@archlinux.org>
+# Contributor (Arch): Aaron Griffin <aaron@archlinux.org>
+# Contributor (Arch): judd <jvinet@zeroflux.org>
+
+# # I maintain this because:
+# Artix version lacks additional optimization and hardening flags
+# Artix version lacks signature checks
+
+pkgname=openssh
+pkgver=8.5p1
+pkgrel=1
+pkgdesc='Premier connectivity tool for remote login with the SSH protocol'
+url='https://www.openssh.com/portable.html'
+license=('custom:BSD')
+arch=('x86_64')
+depends=('glibc' 'krb5' 'openssl' 'libedit' 'ldns' 'libxcrypt' 'libcrypt.so' 'zlib' 'pam')
+makedepends=('linux-headers' 'libfido2')
+checkdepends=('inetutils')
+optdepends=('xorg-xauth: X11 forwarding'
+ 'x11-ssh-askpass: input passphrase in X'
+ 'libfido2: FIDO/U2F support')
+validpgpkeys=('7168B983815A5EEF59A4ADFD2A3F414E736060BA')
+#source=("git://anongit.mindrot.org/openssh.git?signed#tag=V_8_2_P1"
+source=("https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz"{,.asc}
+ 'sshd.conf'
+ 'sshd.pam'
+ 'glibc-2.31.patch')
+b2sums=('f4e4bd39e2dd275d4811e06ca994f2239ad27c804b003c74cc26f9dffae28f1b4006fc618580f0dc9c45f0b7361c24728c23688b45f41cb8a15cf6206c3f15c3'
+ 'SKIP'
+ '27571f728c3c10834a81652f3917188436474b588f8b047462e44b6c7a424f60d06ce8cb74839b691870177d7261592207d7f35d4ae6c79af87d6a7ea156d395'
+ '557d015bca7008ce824111f235da67b7e0051a693aaab666e97b78e753ed7928b72274af03d7fde12033986b733d5f996faf2a4feb6ecf53f39accae31334930'
+ 'a6ff4e82a92e7dba08f0e6c14ad1d280ad2dbc1d5ebdc7dc70eaa1b7963ddd5d5491fdf4c83cde1bec183b335ed20edaf101ac8bdb3c0f480adc72d41251723b')
+validpgpkeys=(7168B983815A5EEF59A4ADFD2A3F414E736060BA) # https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/RELEASE_KEY.asc
+
+backup=('etc/ssh/ssh_config' 'etc/ssh/sshd_config' 'etc/pam.d/sshd')
+
+prepare() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ patch -p1 -i ../glibc-2.31.patch
+
+ autoreconf
+}
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ export CFLAGS="$CFLAGS -O3 -fstack-protector-all -flto=auto -fPIE"
+ export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -flto=auto -fPIE"
+ export LDFLAGS="$LDFLAGS,-pie"
+
+ ./configure \
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --libexecdir=/usr/lib/ssh \
+ --sysconfdir=/etc/ssh \
+ --disable-strip \
+ --with-ldns \
+ --with-libedit \
+ --with-security-key-builtin \
+ --with-ssl-engine \
+ --with-pam \
+ --with-privsep-user=nobody \
+ --with-kerberos5=/usr \
+ --with-xauth=/usr/bin/xauth \
+ --with-md5-passwords \
+ --with-pid-dir=/run \
+ --with-default-path='/usr/local/sbin:/usr/local/bin:/usr/bin' \
+
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ # Tests require openssh to be already installed system-wide,
+ # also connectivity tests will fail under makechrootpkg since
+ # it runs as nobody which has /bin/false as login shell.
+
+ if [[ -e /usr/bin/scp && ! -e /.arch-chroot ]]; then
+ make tests
+ fi
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ ln -sf ssh.1.gz "${pkgdir}"/usr/share/man/man1/slogin.1.gz
+ install -Dm644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENCE"
+
+ install -Dm644 ../sshd.conf "${pkgdir}"/usr/lib/tmpfiles.d/sshd.conf
+ install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd
+
+ install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/findssl.sh
+ install -Dm755 contrib/ssh-copy-id "${pkgdir}"/usr/bin/ssh-copy-id
+ install -Dm644 contrib/ssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1
+
+ sed \
+ -e '/^#ChallengeResponseAuthentication yes$/c ChallengeResponseAuthentication no' \
+ -e '/^#PrintMotd yes$/c PrintMotd no # pam does that' \
+ -e '/^#UsePAM no$/c UsePAM yes' \
+ -i "${pkgdir}"/etc/ssh/sshd_config
+}