-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy patheiwd-2.22-r1.ebuild
134 lines (107 loc) · 3.12 KB
/
eiwd-2.22-r1.ebuild
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic linux-info systemd
DESCRIPTION="iwd without dbus"
HOMEPAGE="https://github.com/illiliti/eiwd"
SRC_URI="${HOMEPAGE}/releases/download/${PVR/r/}/${P##e}.tar.xz -> ${PF}.tar.xz"
S="${WORKDIR}/${P#e}"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="cpu_flags_x86_aes cpu_flags_x86_ssse3 monitor ofono selinux systemd wired"
DEPEND=">=dev-libs/ell-0.69"
RDEPEND="
${DEPEND}
!net-wireless/iwd
acct-group/netdev
net-wireless/wireless-regdb
selinux? ( sec-policy/selinux-networkmanager )
systemd? ( sys-apps/systemd )
!systemd? ( virtual/resolvconf )
"
BDEPEND="virtual/pkgconfig"
pkg_setup() {
CONFIG_CHECK="
~ASYMMETRIC_KEY_TYPE
~ASYMMETRIC_PUBLIC_KEY_SUBTYPE
~CFG80211
~CRYPTO_AES
~CRYPTO_CBC
~CRYPTO_CMAC
~CRYPTO_DES
~CRYPTO_ECB
~CRYPTO_HMAC
~CRYPTO_MD4
~CRYPTO_MD5
~CRYPTO_RSA
~CRYPTO_SHA1
~CRYPTO_SHA256
~CRYPTO_SHA512
~CRYPTO_USER_API_HASH
~CRYPTO_USER_API_SKCIPHER
~KEY_DH_OPERATIONS
~PKCS7_MESSAGE_PARSER
~RFKILL
~X509_CERTIFICATE_PARSER
"
if use amd64;then
CONFIG_CHECK="${CONFIG_CHECK} ~CRYPTO_DES3_EDE_X86_64"
WARNING_CRYPTO_DES3_EDE_X86_64="CRYPTO_DES3_EDE_X86_64: enable for increased performance"
fi
if use cpu_flags_x86_aes;then
CONFIG_CHECK="${CONFIG_CHECK} ~CRYPTO_AES_NI_INTEL"
WARNING_CRYPTO_AES_NI_INTEL="CRYPTO_AES_NI_INTEL: enable for increased performance"
fi
if use cpu_flags_x86_ssse3 && use amd64; then
CONFIG_CHECK="${CONFIG_CHECK} ~CRYPTO_SHA1_SSSE3 ~CRYPTO_SHA256_SSSE3 ~CRYPTO_SHA512_SSSE3"
WARNING_CRYPTO_SHA1_SSSE3="CRYPTO_SHA1_SSSE3: enable for increased performance"
WARNING_CRYPTO_SHA256_SSSE3="CRYPTO_SHA256_SSSE3: enable for increased performance"
WARNING_CRYPTO_SHA512_SSSE3="CRYPTO_SHA512_SSSE3: enable for increased performance"
fi
if use kernel_linux && kernel_is -ge 4 20; then
CONFIG_CHECK="${CONFIG_CHECK} ~PKCS8_PRIVATE_KEY_PARSER"
fi
check_extra_config
}
src_prepare() {
default
sed -e "s:Exec=/bin/false:Exec=${EPREFIX}/usr/libexec/iwd:g" -i src/net.connman.iwd.service || die
}
src_configure() {
append-cflags "-fsigned-char"
local myeconfargs=(
--sysconfdir="${EPREFIX}"/etc/iwd --localstatedir="${EPREFIX}"/var
--disable-client
--disable-dbus
--enable-external-ell
"$(use_enable monitor)"
"$(use_enable ofono)"
"$(use_enable wired)"
--enable-systemd-service
--with-systemd-unitdir="$(systemd_get_systemunitdir)"
--with-systemd-modloaddir="${EPREFIX}/usr/lib/modules-load.d"
--with-systemd-networkdir="$(systemd_get_utildir)/network"
)
econf "${myeconfargs[@]}"
}
src_compile() {
emake RST2MAN=:
}
src_install() {
emake RST2MAN=: DESTDIR="${D}" install
keepdir "/var/lib/${PN}"
newinitd "${FILESDIR}/iwd.initd" iwd
if use wired;then
newinitd "${FILESDIR}/ead.initd" ead
fi
local iwdconf="${ED}/etc/iwd/main.conf"
insinto /etc/iwd/
cat << EOF > newins - main.conf
[General]
EnableNetworkConfiguration=true
[Network]
NameResolvingService=$(usex systemd systemd resolvconf)
EOF
echo 'rc_provide="net"' | newconfd - iwd
}