1939 |
richard |
1 |
By Rexy
|
|
|
2 |
|
|
|
3 |
ALCASAR need the following programs that don't be included as RPM in Mageia :
|
|
|
4 |
- coovachilli
|
|
|
5 |
- havp
|
|
|
6 |
- netflow kernel module
|
|
|
7 |
|
|
|
8 |
This howto explains how to build RPM of these programs in order to keep the distribution clean
|
|
|
9 |
|
|
|
10 |
**** Prepare the RPM creation structure ***
|
|
|
11 |
- install the following RPMs "kernel-userspace-headers", "rpm-build", "gengetopt", "libtool" packages
|
|
|
12 |
- create directories structure in your home : mkdir -p ~/rpmbuild/{SRPMS,SOURCES,SPECS,tmp}
|
|
|
13 |
- Option : find the ".rpmmacros" file on mageia wiki (https://wiki.mageia.org/en/Packagers_RPM_tutorial) and copy it in your home directory
|
|
|
14 |
|
|
|
15 |
**** Coova-chilli *****
|
|
|
16 |
- retrieve the last tarball of coova-chilli (or the svn archive).
|
|
|
17 |
- Untar it and test the compilation process ("sh ./bootstrap", "./configure --enable-json --enable-libjson", "make", "make install").
|
|
|
18 |
- all is in the /usr/local". Remove the instaled files ("make uninstall") and the binaries ("make clean").
|
2055 |
richard |
19 |
- rename the directory and compress it (ie : tar -cvzf coova-chilli-1.3.2.tar.gz coova-chilli-1.3.2). Copy this tarball in the directory ~/rpmbuild/SOURCES/.
|
1939 |
richard |
20 |
- copy the SPEC file from the ALCASAR archive to the directory ~/rpmbuild/SPEC
|
|
|
21 |
- change to the directory ~/pmbuild/SPEC and run the RPM build process excluding 'ssl' : "rpmbuild -bb coova-chilli.spec --without ssl" (or rpmbuild -ba to create also the SRPMS)
|
|
|
22 |
|
|
|
23 |
INFO : .spec modifications since Redhat RPM :
|
|
|
24 |
- ajouter en première ligne "%define _disable_ld_no_undefined 1" pour éviter les erreurs liées au variables inutisées
|
|
|
25 |
- pour la version 64b, ajouter 2 lignes intégrant le répertoire "lib64" lors de la suppression des binaires statiques (rm -rf $RPM_BUILD_ROOT/usr/lib/*.la)
|
|
|
26 |
- exclure de l'archive les fichiers inutiles pour ALCASAR (wpad.dat, wwwdir, etc. via la directive '%exclude')
|
|
|
27 |
|
|
|
28 |
**** HAVP ****
|
|
|
29 |
- install the RPM of clamav-devel
|
|
|
30 |
- download, uncompress, and test the compilation of the last version of havp (./configure + make)
|
|
|
31 |
- copy the tarball in ~/rpmbuild/SOURCES/. copy the patch file ("havp-init.diff") in ~/rpmbuil/SOURCE. Copy and adapt the .spec in ~/rpmbuid/SPEC
|
|
|
32 |
- rpmbuild -dd ***.spec
|
|
|
33 |
|
|
|
34 |
**** ipt_netflow ****
|
2057 |
richard |
35 |
- Must be complied on a system which runs the target kernel !
|
1939 |
richard |
36 |
- install the RPMs "kernel-server-devel", "lib64iptables-devel (or libiptables-devel in 32b arch)"
|
2060 |
richard |
37 |
- download, uncompress and test the conpilation of the last version of ipt-netflow (configure, make all install). The module is compiled in the same directory. The libs are copied in the /lib64/iptables (libip6t_NETFLOW.so & libipt_NETFLOW.so)
|
1939 |
richard |
38 |
- test the module : go to the directory of source and try to load it (modprobe ipt_NETFLOW), "lsmod" to verify that it's loaded, "alcasar-iptables.sh" to test the iptables rules
|
|
|
39 |
- if all is ok, copy the tarball in rpmbuild/SOURCES. Copy the .spec in rpmbuild/SPECS. In this file, change the kernel number and uncoment the lines to match the architecture.
|
|
|
40 |
- rpmbuild -bb ****.spec
|
2101 |
richard |
41 |
|
2169 |
tom.houday |
42 |
**** wkhtmltopdf ****
|
|
|
43 |
- download the archive of the binaries of the last version (https://wkhtmltopdf.org/downloads.html) in ~/rpmbuild/SOURCES/wkhtmltox-%{version}_linux-generic-amd64.tar.xz.
|
|
|
44 |
- build with: rpmbuild -bb --clean wkhtmltopdf-%{version}-%{release}.spec
|