166 lines
6.1 KiB
Text
166 lines
6.1 KiB
Text
# Maintainer: David Runge <dvzrv@archlinux.org>
|
|
# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
|
|
# Maintainer: Giancarlo Razzolini <grazzolini@archlinux.org>
|
|
# Contributor: Gaetan Bisson <bisson@archlinux.org>
|
|
# Contributor: Aaron Griffin <aaron@archlinux.org>
|
|
# Contributor: judd <jvinet@zeroflux.org>
|
|
|
|
pkgname=openssh
|
|
pkgver=9.7p1
|
|
pkgrel=2
|
|
pkgdesc="SSH protocol implementation for remote login, command execution and file transfer"
|
|
arch=(x86_64)
|
|
url='https://www.openssh.com/portable.html'
|
|
license=(
|
|
BSD-2-Clause
|
|
BSD-3-Clause
|
|
ISC
|
|
LicenseRef-Public-Domain
|
|
MIT
|
|
)
|
|
depends=(
|
|
glibc
|
|
)
|
|
makedepends=(
|
|
krb5
|
|
libedit
|
|
libfido2
|
|
libxcrypt
|
|
linux-headers
|
|
openssl
|
|
pam
|
|
zlib
|
|
)
|
|
optdepends=(
|
|
'libfido2: FIDO/U2F support'
|
|
'sh: for ssh-copy-id and findssl.sh'
|
|
'x11-ssh-askpass: input passphrase in X'
|
|
'xorg-xauth: X11 forwarding'
|
|
)
|
|
backup=(
|
|
etc/pam.d/sshd
|
|
etc/ssh/ssh_config
|
|
etc/ssh/sshd_config
|
|
)
|
|
source=(
|
|
https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/$pkgname-$pkgver.tar.gz{,.asc}
|
|
99-archlinux.conf
|
|
$pkgname.tmpfiles
|
|
sshdgenkeys.service
|
|
sshd.service
|
|
ssh-agent.service
|
|
sshd.pam
|
|
)
|
|
sha256sums=('490426f766d82a2763fcacd8d83ea3d70798750c7bd2aff2e57dc5660f773ffd'
|
|
'SKIP'
|
|
'78b806c38bc1e246daaa941bfe7880e6eb6f53f093bea5d5868525ae6d223d30'
|
|
'975904668c3c98fff5dbf840717ae959593fa05e90e215e67bf7ee24369d6369'
|
|
'e5305767b2d317183ad1c5022a5f6705bd9014a8b22495a000fd482713738611'
|
|
'e40f8b7c8e5e2ecf3084b3511a6c36d5b5c9f9e61f2bb13e3726c71dc7d4fbc7'
|
|
'b3b1e4f7af169cd5fccdcdf9538ef37fc919c79a9905f797925153a94e723998'
|
|
'633e24cbfcb045ba777d3e06d5f85dfaa06d44f4727d38c7fb2187c57498221d')
|
|
b2sums=('520859fcbdf678808fc8515b64585ab9a90a8055fa869df6fbba3083cb7f73ddb81ed9ea981e131520736a8aed838f85ae68ca63406a410df61039913c5cb48b'
|
|
'SKIP'
|
|
'1ff8cd4ae22efed2b4260f1e518de919c4b290be4e0b5edbc8e2225ffe63788678d1961e6f863b85974c4697428ee827bcbabad371cfc91cc8b36eae9402eb97'
|
|
'43bf32158d6b14cf298e5e92a54d93577d6a45b32b3c0fad7a3722e55a53e446fd30df10002bc945c71528904bb397aaadc4f439dd81e5a87263a31b1daa7fc2'
|
|
'09fad3648f48f13ee80195b90913feeba21240d121b1178e0ce62f4a17b1f7e58e8edc22c04403e377ab300f5022a804c848f5be132765d5ca26a38aab262e50'
|
|
'07ad5c7fb557411a6646ff6830bc9d564c07cbddc4ce819641d31c05dbdf677bfd8a99907cf529a7ee383b8c250936a6423f4b4b97ba0f1c14f627bbd629bd4e'
|
|
'046ea6bd6aa00440991e5f7998db33864a7baa353ec6071f96a3ccb5cca5b548cb9e75f9dee56022ca39daa977d18452851d91e6ba36a66028b84b375ded9bc5'
|
|
'1d24cc029eccf71cee54dda84371cf9aa8d805433e751575ab237df654055dd869024b50facd8b73390717e63100c76bca28b493e0c8be9791c76a2e0d60990a')
|
|
validpgpkeys=('7168B983815A5EEF59A4ADFD2A3F414E736060BA') # Damien Miller <djm@mindrot.org>
|
|
|
|
prepare() {
|
|
cd $pkgname-$pkgver
|
|
# remove variable (but useless) first line in config (related to upstream VCS)
|
|
sed '/^#.*\$.*\$$/d' -i ssh{,d}_config
|
|
|
|
# prepend configuration option to include drop-in configuration files for sshd_config
|
|
printf "# Include drop-in configurations\nInclude /etc/ssh/sshd_config.d/*.conf\n" | cat - sshd_config > sshd_config.tmp
|
|
mv -v sshd_config.tmp sshd_config
|
|
# prepend configuration option to include drop-in configuration files for ssh_config
|
|
printf "# Include drop-in configurations\nInclude /etc/ssh/ssh_config.d/*.conf\n" | cat - ssh_config > ssh_config.tmp
|
|
mv -v ssh_config.tmp ssh_config
|
|
|
|
# extract separate licenses
|
|
sed -n '89,113p' LICENCE > ../rijndael.Public-Domain.txt
|
|
sed -n '116,145p' LICENCE > ../ssh.BSD-3-Clause.txt
|
|
sed -n '148,209p' LICENCE > ../BSD-2-Clause.txt
|
|
sed -n '213,218p' LICENCE > ../snprintf.Public-Domain.txt
|
|
sed -n '222,258p' LICENCE > ../openbsd-compat.BSD-3-Clause.txt
|
|
sed -n '260,278p' LICENCE > ../openbsd-compat.ISC.txt
|
|
sed -n '280,308p' LICENCE > ../openbsd-compat.MIT.txt
|
|
sed -n '280,308p' LICENCE > ../openbsd-compat.MIT.txt
|
|
sed -n '310,338p' LICENCE > ../blowfish.BSD-3-Clause.txt
|
|
sed -n '340,368p' LICENCE > ../replacement.BSD-2-Clause.txt
|
|
}
|
|
|
|
build() {
|
|
local configure_options=(
|
|
--prefix=/usr
|
|
--sbindir=/usr/bin
|
|
--libexecdir=/usr/lib/ssh
|
|
--sysconfdir=/etc/ssh
|
|
--disable-strip
|
|
--with-libedit
|
|
--with-security-key-builtin
|
|
--with-ssl-engine
|
|
--with-pam
|
|
--with-privsep-user=nobody
|
|
--with-kerberos5=/usr
|
|
--with-xauth=/usr/bin/xauth
|
|
--with-pid-dir=/run
|
|
--with-default-path='/usr/local/sbin:/usr/local/bin:/usr/bin'
|
|
--without-zlib-version-check
|
|
)
|
|
|
|
cd $pkgname-$pkgver
|
|
|
|
./configure "${configure_options[@]}"
|
|
make
|
|
}
|
|
|
|
check() {
|
|
# NOTE: make t-exec does not work in our build environment
|
|
make file-tests interop-tests unit -C $pkgname-$pkgver
|
|
}
|
|
|
|
package() {
|
|
depends+=(
|
|
krb5 libkrb5.so libgssapi_krb5.so
|
|
libedit libedit.so
|
|
libxcrypt libcrypt.so
|
|
openssl libcrypto.so
|
|
pam libpam.so
|
|
zlib libz.so
|
|
)
|
|
|
|
cd $pkgname-$pkgver
|
|
|
|
make DESTDIR="$pkgdir" install
|
|
|
|
install -vDm 644 ../99-archlinux.conf -t "$pkgdir/etc/ssh/sshd_config.d/"
|
|
install -vdm 755 "$pkgdir/etc/ssh/ssh_config.d"
|
|
|
|
install -Dm644 LICENCE -t "$pkgdir/usr/share/licenses/$pkgname/"
|
|
install -Dm644 ../*.txt -t "$pkgdir/usr/share/licenses/$pkgname/"
|
|
|
|
install -Dm644 ../sshdgenkeys.service -t "$pkgdir"/usr/lib/systemd/system/
|
|
install -Dm644 ../sshd.service -t "$pkgdir"/usr/lib/systemd/system/
|
|
install -Dm644 ../ssh-agent.service -t "$pkgdir"/usr/lib/systemd/user/
|
|
install -Dm644 ../sshd.pam "$pkgdir"/etc/pam.d/sshd
|
|
|
|
# factory files
|
|
install -Dm644 ../sshd.pam "$pkgdir"/usr/share/factory/etc/pam.d/sshd
|
|
install -Dm644 "$pkgdir/etc/ssh/moduli" -t "$pkgdir"/usr/share/factory/etc/ssh/
|
|
install -Dm644 "$pkgdir/etc/ssh/ssh_config" -t "$pkgdir"/usr/share/factory/etc/ssh/
|
|
install -Dm644 "$pkgdir/etc/ssh/sshd_config" -t "$pkgdir"/usr/share/factory/etc/ssh/
|
|
install -vDm 644 ../99-archlinux.conf -t "$pkgdir/usr/share/factory/etc/ssh/sshd_config.d/"
|
|
|
|
install -vDm 644 ../$pkgname.tmpfiles "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
|
|
|
|
install -Dm755 contrib/findssl.sh -t "$pkgdir"/usr/bin/
|
|
install -Dm755 contrib/ssh-copy-id -t "$pkgdir"/usr/bin/
|
|
install -Dm644 contrib/ssh-copy-id.1 -t "$pkgdir"/usr/share/man/man1/
|
|
}
|
|
|
|
# vim: ts=2 sw=2 et:
|