]> Pileus Git - ~andy/sunrise/blob - app-antivirus/drweb/drweb-4.33.ebuild
app-vim/clewn: added trailing slash to HOMEPAGE URL
[~andy/sunrise] / app-antivirus / drweb / drweb-4.33.ebuild
1 # Copyright 1999-2006 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: $
4
5 inherit eutils
6
7 MY_P="drweb-${PV}"
8 S="${WORKDIR}/${P}-glibc2.3"
9
10 DESCRIPTION="DrWeb virus scaner for Linux"
11 HOMEPAGE="http://www.drweb.com"
12 SRC_URI="http://download.drweb.com/files/unix/Linux/Generic/${MY_P}-glibc2.3.tar.gz
13         doc? ( linguas_ru? ( ftp://ftp.drweb.com/pub/drweb/unix/doc/${PN}-${PV/./}-unix-ru-pdf.zip ) )
14         doc? ( ftp://ftp.drweb.com/pub/drweb/unix/doc/${PN}-${PV/./}-unix-en-pdf.zip )"
15 RESTRICT="mirror strip"
16
17 SLOT="0"
18 LICENSE="DRWEB"
19 KEYWORDS="~x86"
20 IUSE="doc linguas_ru logrotate"
21
22 DEPEND="app-arch/unzip"
23 RDEPEND="${DEPEND}
24         dev-perl/libwww-perl
25         virtual/cron
26         logrotate? ( app-admin/logrotate )
27         =sys-libs/glibc-2.3*"
28
29 PROVIDE="virtual/antivirus"
30
31 src_unpack() {
32         unpack ${A}
33         cd "${S}"
34         epatch "${FILESDIR}/${PF}-gentoo.patch"
35 }
36
37 pkg_setup() {
38         enewgroup drweb
39         enewuser drweb -1 -1 /var/drweb drweb
40 }
41
42 src_compile() {
43         einfo "Nothing to compile, installing DrWeb..."
44 }
45
46 src_install() {
47         cp -pPR "${S}"/opt/ "${D}"/opt
48         cp -pPR "${S}"/var/ "${D}"/var
49         cp -pPR "${S}"/etc/ "${D}"/etc
50
51         # Create log dir in proper location
52         rm -rf "${D}"/var/drweb/log/
53         rm -rf "${D}"/var/drweb/spool/
54         dodir /var/log/drweb
55         dodir /var/spool/drweb
56
57         # Set up permissions
58         fowners drweb:drweb /opt/drweb/lib
59         fowners drweb:drweb /var/drweb/{bases,infected,run,updates}
60         fowners drweb:drweb /etc/drweb/email.ini
61         fowners drweb:drweb /var/log/drweb
62         fowners drweb:drweb /var/spool/drweb
63         fperms 0640 /etc/drweb/email.ini
64         fperms 0750 /var/drweb/infected
65         fperms 0700 /var/drweb/run
66         fperms 0700 /var/drweb/updates
67         fperms 0770 /var/spool/drweb
68         chown -R drweb:drweb "${D}"/var/drweb/bases
69         chown -R drweb:drweb "${D}"/opt/drweb/lib
70
71         if use logrotate ; then
72                 insinto /etc/logrotate.d
73                 newins "${D}"/etc/drweb/drweb-log drweb
74         fi
75         rm -f "${D}"/etc/drweb/drweb-log
76
77         newinitd "${D}"/etc/init.d/drwebd drweb
78         rm -f "${D}"/etc/init.d/drwebd
79
80         local docdir="${D}/opt/drweb/doc"
81         for doc in ${docdir}/{ChangeLog,FAQ,readme.{eicar,license}} \
82         ${docdir}/{daemon/readme.daemon,scanner/readme.scanner,update/readme.update}
83         do
84                 dodoc ${doc} && rm -f ${doc}
85                 if use linguas_ru; then
86                         dodoc ${doc}.rus && rm -f ${doc}.rus
87                 fi
88         done
89         dodoc "${D}"/opt/drweb/getkey.HOWTO
90         use linguas_ru && dodoc "${D}"/opt/drweb/getkey.rus.HOWTO
91
92         rm -rf ${docdir} && rm -f "${D}"/opt/drweb/getkey.*
93
94         use doc && dodoc ${WORKDIR}/drwunxen.pdf
95         use doc && use linguas_ru && dodoc ${WORKDIR}/drwunxru.pdf
96 }
97
98 pkg_postinst() {
99         elog
100         elog " Create a cron entry for DrWeb auto updates in a similar manner:"
101         elog
102         elog " crontab -u drweb -e"
103         elog
104         elog " and add the following line (change the frequency of update if required):"
105         elog
106         elog " * */4 * * *     if [ -x /opt/drweb/update/update.pl ]; then /opt/drweb/update/update.pl; fi"
107         elog
108
109         elog
110         elog "To configure DrWeb, edit /etc/drweb/drweb32.ini as needed."
111         elog
112
113         if use logrotate ; then
114                 elog "DrWeb logrotate script has been provided."
115                 elog "Edit /etc/logrotate.d/drweb as needed."
116         fi
117
118         ewarn
119         ewarn "IMPORTANT!!!"
120         ewarn
121         ewarn "If you don't have a license for DrWeb, go to http://download.drweb.com/demo/ "
122         ewarn "to obtain a demo licence."
123         ewarn
124         ewarn "Additional information can be obtained from /usr/share/doc/${PF}/readme.license"
125 }