File PKGBUILD of Package hostapd
pkgname=hostapd
_name=hostap
pkgver=2.11
pkgrel=4
pkgdesc="IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator"
arch=(x86_64)
url="https://w1.fi/hostapd/"
license=(BSD-3-Clause)
depends=(
glibc
libnl
openssl
sqlite
)
makedepends=(
git
)
backup=(
etc/$pkgname/$pkgname.{accept,conf,deny,eap_user,radius_clients,vlan,wpa_psk}
)
makedepends=(clang mold)
source=(
"https://w1.fi/releases/$pkgname-$pkgver.tar.gz"
config
hostapd.service
hostapd@.service
$pkgname.tmpfiles
$pkgname-2.11-fhs-config.patch
)
sha512sums=('SKIP'
'SKIP'
'34e16c5d46383477bcb9e0dba5073b7f01354a6adca8e591050aeff6319255f8939926b70d76d109735496bbaf9ff2d04be9cf6e0d057c4d2f4a4140067957a3'
'51f472ed969037bd4d480d13e356a03207316169ef0ac532c40d2e7a618d0fef0529eb060a7d146d28c31efef9b5942bc12661f29d970a6ea0d972f7d2b9d3dc'
'4394f871381165b772afc603ef640cb278980287060e87eed9cff17d8eb5ce131d081674bbbb053b2df65aeff55ce4a5fd361788e8e552e6b085656c2332b600'
'd1dba5160d784e0194de70a7b0009ea41ada6c944cb448299d4a05e33d8ac4350b05e570f21622fc5c39d3737a0bf782e498d2c6916808505eaac119e7273c0a')
# NOTE: The upstream developer has been contacted on 2024-07-22 about their 1024bit DSA key being unsafe for artifact signing
validpgpkeys=('EC4AA0A991A5F2464582D52D2B6EF432EFC895FA') # Jouni Malinen
prepare() {
# custom
mv "$pkgname-$pkgver" $_name
# make include locations in main configuration file filesystem compliant
patch -Np1 -d $_name -i ../$pkgname-2.11-fhs-config.patch
# link build configuration into place:
# an up-to-date version of the build configuration can be found in
# hostapd/defconfig and should be diffed with the packaged one before every
# build
ln -sv ../../config $_name/$pkgname/.config
}
build() {
# CFLAGS+=" -I/usr/include/openssl-1.1"
# LDFLAGS+=' -L/usr/lib/openssl-1.1'
mold -run make -C $_name/$pkgname -j$(nproc)
}
package() {
cd "$_name"
make -C $pkgname install DESTDIR="$pkgdir" BINDIR=/usr/bin
# systemd service
install -vDm 644 ../$pkgname.service -t "$pkgdir/usr/lib/systemd/system/"
install -vDm 644 ../$pkgname@.service -t "$pkgdir/usr/lib/systemd/system/"
# license
install -vDm 644 COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
# config
install -vDm 640 $pkgname/$pkgname.{accept,conf,deny,eap_user,radius_clients,vlan,wpa_psk} -t "$pkgdir/etc/$pkgname/"
install -vDm 640 $pkgname/$pkgname.{accept,conf,deny,eap_user,radius_clients,vlan,wpa_psk} -t "$pkgdir/usr/share/factory/etc/$pkgname/"
# docs
install -vDm 644 $pkgname/{hostapd.sim_db,wired.conf,hlr_auc_gw.{txt,milenage_db}} "$pkgname/"{README*,ChangeLog} -t "$pkgdir/usr/share/doc/$pkgname/"
# man pages
install -vDm 644 $pkgname/$pkgname.8 -t "$pkgdir/usr/share/man/man8/"
install -vDm 644 $pkgname/${pkgname}_cli.1 -t "$pkgdir/usr/share/man/man1/"
# tmpfiles.d
install -vDm 644 ../$pkgname.tmpfiles "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
}