]> git.ipfire.org Git - people/amarx/ipfire-3.x.git/blob - freeradius/freeradius.nm
62b72897bd28d8cfb946285284b52b1556012916
[people/amarx/ipfire-3.x.git] / freeradius / freeradius.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = freeradius-server
7 version = 2.1.12
8 release = 3
9
10 groups = System/Daemons
11 url = http://www.freeradius.org
12 license = GPLv2+ and LGPLv2+
13 summary = High-performance and highly configurable free RADIUS server.
14
15 description
16 The FreeRADIUS Server Project is a high performance and highly
17 configurable GPL'd free RADIUS server.
18 FreeRADIUS is an Internet authentication daemon, which implements
19 the RADIUS protocol, as defined in RFC 2865. It allows
20 Network Access Servers to perform authentication for dial-up users.
21 end
22
23 source_dl = ftp://ftp.freeradius.org/pub/freeradius/
24
25 build
26 requires
27 gdbm-devel
28 libpcap-devel
29 libtool
30 libtool-devel
31 openssl-devel
32 perl
33 shadow-utils
34 end
35
36 PARALLELISMFLAGS = # Disabled
37
38 configure_options +=\
39 %{CONFIGURE_ARCH} \
40 --sysconfdir=/etc \
41 --libdir=/usr/lib/freeradius \
42 --localstatedir=/var \
43 --with-system-libtool \
44 --with-threads \
45 --with-thread-pool \
46 --disable-ltdl-install \
47 --with-gnu-ld \
48 --without-rlm_eap_ikev2 \
49 --without-rlm_sql_iodbc \
50 --without-rlm_sql_firebird \
51 --without-rlm_sql_db2 \
52 --without-rlm_sql_oracle
53
54 prepare_cmds
55 %{create_user}
56 end
57
58 make_build_targets = LINK_MODE=-pie
59
60 install
61 make install R=%{BUILDROOT}
62
63 # Change freeradius user and group.
64 perl -i -pe 's/^#user =.*$/user = radiusd/' %{BUILDROOT}/etc/raddb/radiusd.conf
65 perl -i -pe 's/^#group =.*$/group = radiusd/' %{BUILDROOT}/etc/raddb/radiusd.conf
66
67 # Create emty logfiles.
68 mkdir -pv %{BUILDROOT}/var/log/radius/radacct
69 touch %{BUILDROOT}/var/log/radius/{radutmp,radius.log}
70 chown -Rv radiusd.radiusd %{BUILDROOT}/var/log/radius/
71
72 # Create tmpfiles folder.
73 mkdir -pv %{BUILDROOT}/run/radiusd
74 chown -Rv radiusd.radiusd %{BUILDROOT}/run/radiusd/
75
76 # Remove unneeded stuff.
77 rm -vf %{BUILDROOT}/usr/sbin/rc.radiusd
78 rm -rvf %{BUILDROOT}/etc/raddb/sql/
79 rm -rvf %{BUILDROOT}/var/run/
80
81 # Remove header files, we don't ship a devel package.
82 rm -rvf %{BUILDROOT}/usr/include/
83
84 # remove unsupported config file.
85 rm -vf %{BUILDROOT}/etc/raddb/experimental.conf
86
87 # Fix permissions.
88 chown -Rv root.radiusd %{BUILDROOT}/etc/raddb
89 end
90 end
91
92 create_user
93 getent group radiusd >/dev/null || /usr/sbin/groupadd -r radiusd
94 getent passwd radiusd >/dev/null || /usr/sbin/useradd -r -g radiusd \
95 -d /var/lib/radiusd -s /sbin/nologin radiusd
96 end
97
98 quality-agent
99 whitelist_rpath
100 /usr/lib/freeradius
101 end
102 end
103
104 packages
105 package %{name}
106 configfiles
107 /etc/raddb/radiusd.conf
108 end
109
110 prerequires = shadow-utils systemd-units
111
112 script prein
113 %{create_user}
114 end
115
116 script postin
117 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
118 end
119
120 script preun
121 /bin/systemctl --no-reload disable freeradius.service >/dev/null 2>&1 || :
122 /bin/systemctl stop freeradius.service >/dev/null 2>&1 || :
123 end
124
125 script postup
126 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
127 /bin/systemctl try-restart freeradius.service >/dev/null 2>&1 || :
128 end
129 end
130
131 package freeradius-utils
132 summary = FreeRADIUS utilities.
133 description
134 Additional utilities to configure and manage FreeRADUIS
135 Servers.
136 end
137
138 files
139 /usr/bin/*
140 /usr/share/man/man1/radclient.1
141 /usr/share/man/man1/radeapclient.1
142 /usr/share/man/man1/radlast.1
143 /usr/share/man/man1/radtest.1
144 /usr/share/man/man1/radwho.1
145 /usr/share/man/man1/radzap.1
146 /usr/share/man/man1/smbencrypt.1
147 /usr/share/man/man5/checkrad.5
148 /usr/share/man/man8/radconf2xml.8
149 /usr/share/man/man8/radcrypt.8
150 /usr/share/man/man8/radsniff.8
151 /usr/share/man/man8/radsqlrelay.8
152 /usr/share/man/man8/rlm_ippool_tool.8
153 end
154 end
155 end