]> git.pld-linux.org Git - packages/dovecot.git/blob - dovecot.spec
- up to 1.0.6
[packages/dovecot.git] / dovecot.spec
1 #
2 # Conditional build:
3 %bcond_without  ldap    # without LDAP auth
4 %bcond_without  mysql   # without MySQL auth
5 %bcond_without  pgsql   # without PostgreSQL auth
6 %bcond_without  sqlite  # without SQLite3 auth
7 %bcond_without  sasl    # without SASL auth
8 #
9 Summary:        IMAP and POP3 server written with security primarily in mind
10 Summary(pl.UTF-8):      Serwer IMAP i POP3 pisany głównie z myślą o bezpieczeństwie
11 Name:           dovecot
12 Version:        1.0.6
13 Release:        1
14 License:        LGPL v2.1 and MIT
15 Group:          Networking/Daemons
16 Source0:        http://dovecot.org/releases/1.0/%{name}-%{version}.tar.gz
17 # Source0-md5:  c8ecdc0379b05cc24d089c11b8122765
18 Source1:        %{name}.pamd
19 Source2:        %{name}.init
20 Source3:        %{name}.sysconfig
21 Patch0:         %{name}-config.patch
22 #Patch1:                %{name}-dspam-plugin.patch
23 URL:            http://dovecot.org/
24 BuildRequires:  autoconf
25 BuildRequires:  automake
26 %{?with_sasl:BuildRequires:     cyrus-sasl-devel >= 2.0}
27 BuildRequires:  gettext-devel
28 #BuildRequires: krb5-devel
29 BuildRequires:  libtool
30 %{?with_mysql:BuildRequires:    mysql-devel}
31 %{?with_ldap:BuildRequires:     openldap-devel >= 2.3.0}
32 BuildRequires:  openssl-devel >= 0.9.7d
33 BuildRequires:  pam-devel
34 BuildRequires:  pkgconfig
35 %{?with_pgsql:BuildRequires:    postgresql-devel}
36 BuildRequires:  sed >= 4.0
37 %{?with_sqlite:BuildRequires:   sqlite3-devel}
38 Requires(post,preun):   /sbin/chkconfig
39 Requires(postun):       /usr/sbin/groupdel
40 Requires(postun):       /usr/sbin/userdel
41 Requires(pre):  /bin/id
42 Requires(pre):  /usr/bin/getgid
43 Requires(pre):  /usr/sbin/groupadd
44 Requires(pre):  /usr/sbin/useradd
45 Requires:       pam >= 0.79.0
46 Provides:       group(dovecot)
47 Provides:       user(dovecot)
48 Provides:       imapdaemon
49 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50
51 %description
52 Dovecot is an IMAP and POP3 server for Linux/UNIX-like systems,
53 written with security primarily in mind. Although it's written with C,
54 it uses several coding techniques to avoid most of the common
55 pitfalls.
56
57 Dovecot can work with standard mbox and maildir formats and it's fully
58 compatible with UW-IMAP and Courier IMAP servers as well as mail
59 clients accessing the mailboxes directly. It's also planned to support
60 storing mails in SQL databases.
61
62 Dovecot is easy to set up and doesn't require special maintenance.
63 Only thing you need is to get the authentication working properly - if
64 your users are in /etc/passwd there's hardly anything you have to do.
65
66 Dovecot should be pretty fast, mostly because of index files that
67 Dovecot maintains; instead of having to scan through all the data in
68 mailbox, Dovecot can get most of the wanted information from index
69 with little effort.
70
71 Status:
72 - should be quite ready for use with normal IMAP clients
73 - complete IMAP4rev1 and POP3 support
74 - supports THREAD, SORT and IDLE extensions, required by many IMAP
75   webmails
76 - complete TLS/SSL support
77 - IPv6 ready
78 - shared mailboxes aren't yet supported
79 - Maildir++ quota is supported, bad hard filesystem quota can be
80   problematic
81
82 %description -l pl.UTF-8
83 Dovecot to serwer IMAP i POP3 dla systemów linuksowych/uniksowych,
84 pisany głównie z myślą o bezpieczeństwie. Chociaż jest pisany w C,
85 używa kilku technik kodowania zapobiegających większości popularnych
86 pułapek.
87
88 Dovecot może działać ze standardowymi formatami mbox i maildir, jest
89 całkowicie kompatybilny z serwerami UW-IMAP i Courier IMAP, a także z
90 klientami pocztowymi bezpośrednio dostającymi się do skrzynek.
91 Planowana jest także obsługa przechowywania listów w bazach SQL.
92
93 Dovecot jest łatwy do skonfigurowania i nie wymaga specjalnego
94 nadzoru. Wystarczy tylko doprowadzić do działania uwierzytelnianie -
95 jeśli użytkownicy są w /etc/passwd, to właściwie nie trzeba nic
96 zmieniać.
97
98 Dovecot powinien być w miarę szybki, głównie z powodu plików
99 indeksowych utrzymywanych przez serwer; zamiast potrzeby skanowania
100 wszystkich danych w skrzynce, Dovecot może małym kosztem uzyskać
101 większość potrzebnych informacji z indeksu.
102
103 Stan:
104 - powinien być gotowy do użycia ze zwykłymi klientami IMAP
105 - pełna obsługa IMAP4rev1 i POP3
106 - obsługa rozszerzeń THREAD, SORT i IDLE, wymaganych przez wiele
107   webmaili IMAP
108 - obsługa IPv6
109 - pełna obsługa TLS/SSL
110 - quota Maildir++ jest obsługiwana, ale twarda quota na systemach
111   plików może być problematyczna
112
113 %package devel
114 Summary:        Libraries and headers for Dovecot
115 Group:          Development/Libraries
116 Requires:       %{name} = %{version}-%{release}
117
118 %description devel
119 This package contains development files for linking against %{name}.
120
121 %prep
122 %setup -q
123 %patch0 -p1
124 #%patch1 -p1
125
126 %{__sed} -i 's,/usr/lib/dovecot,%{_libdir}/dovecot,g' dovecot-example.conf
127
128 %build
129 touch config.rpath
130 %{__libtoolize}
131 %{__aclocal}
132 %{__autoconf}
133 %{__autoheader}
134 %{__automake}
135 %configure \
136         %{?debug:--enable-debug} \
137         %{?with_ldap:--with-ldap} \
138         %{?with_mysql:--with-mysql} \
139         %{?with_pgsql:--with-pgsql} \
140         %{?with_sasl:--with-cyrus-sasl2} \
141         %{?with_sqlite:--with-sqlite} \
142         --with-gssapi \
143         --with-ssl=openssl \
144         --with-ssl-dir=/var/lib/openssl \
145         --sysconfdir=/etc/%{name}
146
147 %{__make}
148
149 %install
150 rm -rf $RPM_BUILD_ROOT
151 install -d $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,sysconfig,security}
152 install -d $RPM_BUILD_ROOT{%{_libdir},%{_bindir}}
153 install -d $RPM_BUILD_ROOT{/var/lib/dovecot,/var/run/dovecot/login}
154
155 %{__make} install \
156         moduledir=%{_libdir}/%{name}/plugins \
157         DESTDIR=$RPM_BUILD_ROOT
158
159 mv -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{dovecot-example.conf,dovecot.conf}
160
161 install %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/%{name}
162 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
163 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
164
165 touch $RPM_BUILD_ROOT/etc/security/blacklist.imap
166
167 # devel
168 for folder in deliver imap lib lib-imap lib-mail lib-storage; do
169     install -d $RPM_BUILD_ROOT%{_includedir}/%{name}/$folder
170     install -p -m644 src/$folder/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/$folder/
171 done
172
173 for folder in lib lib-imap lib-mail lib-storage; do
174     install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/$folder
175     install -p -m644 src/$folder/*.a $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/$folder/
176 done
177
178 for f in dovecot-config config.h stamp.h; do
179     install -p -m644 $f $RPM_BUILD_ROOT%{_includedir}/%{name}
180 done
181
182
183 %clean
184 rm -rf $RPM_BUILD_ROOT
185
186 %pre
187 %groupadd -g 172 dovecot
188 %useradd -u 172 -d /usr/share/empty -s /bin/false -c "Dovecot server" -g dovecot dovecot
189
190 %post
191 /sbin/chkconfig --add dovecot
192 if [ -f /var/lock/subsys/dovecot ]; then
193         /etc/rc.d/init.d/dovecot restart >&2
194 else
195         echo "Run \"/etc/rc.d/init.d/dovecot start\" to start dovecot daemon."
196 fi
197
198 %preun
199 if [ "$1" = "0" ]; then
200         if [ -f /var/lock/subsys/dovecot ]; then
201                 /etc/rc.d/init.d/dovecot stop >&2
202         fi
203         /sbin/chkconfig --del dovecot
204 fi
205
206 %postun
207 if [ "$1" = "0" ]; then
208         %userremove dovecot
209         %groupremove dovecot
210 fi
211
212 %files
213 %defattr(644,root,root,755)
214 # COPYING contains some notes, not actual LGPL text
215 %doc AUTHORS COPYING ChangeLog NEWS README TODO doc/*.txt doc/*.c*f doc/wiki/*.txt
216 %attr(755,root,root) %{_sbindir}/%{name}
217 %attr(755,root,root) %{_sbindir}/%{name}pw
218 %attr(750,root,root) %dir %{_sysconfdir}/%{name}
219 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.conf
220 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/%{name}
221 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.imap
222 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
223 %attr(754,root,root) /etc/rc.d/init.d/%{name}
224 #Files :P
225 %dir %{_libdir}/%{name}/
226 %attr(755,root,root) %{_libdir}/%{name}/checkpassword-reply
227 %attr(755,root,root) %{_libdir}/%{name}/deliver
228 %attr(755,root,root) %{_libdir}/%{name}/dict
229 %attr(755,root,root) %{_libdir}/%{name}/dovecot-auth
230 %attr(755,root,root) %{_libdir}/%{name}/gdbhelper
231 %attr(755,root,root) %{_libdir}/%{name}/idxview
232 %attr(755,root,root) %{_libdir}/%{name}/imap
233 %attr(755,root,root) %{_libdir}/%{name}/imap-login
234 %attr(755,root,root) %{_libdir}/%{name}/logview
235 %attr(755,root,root) %{_libdir}/%{name}/pop3
236 %attr(755,root,root) %{_libdir}/%{name}/pop3-login
237 %attr(755,root,root) %{_libdir}/%{name}/rawlog
238 %attr(755,root,root) %{_libdir}/%{name}/ssl-build-param
239 %dir %{_libdir}/%{name}/plugins/
240 %attr(755,root,root) %{_libdir}/%{name}/plugins/*.so
241 %dir %{_libdir}/%{name}/plugins/imap
242 %attr(755,root,root)%{_libdir}/%{name}/plugins/imap/*.so
243 %dir %{_libdir}/%{name}/plugins/lda
244 %attr(755,root,root) %{_libdir}/%{name}/plugins/lda/*.so
245 %dir %{_libdir}/%{name}/plugins/pop3
246 %attr(755,root,root) %{_libdir}/%{name}/plugins/pop3/*.so
247 %dir /var/lib/dovecot
248 %dir /var/run/dovecot
249 %attr(750,root,dovecot) %dir /var/run/dovecot/login
250
251 %files devel
252 %defattr(644,root,root,755)
253 %{_libdir}/%{name}/plugins/*.a
254 %attr(755,root,root) %{_libdir}/%{name}/plugins/*.la
255 %{_libdir}/%{name}/plugins/imap/*.a
256 %attr(755,root,root) %{_libdir}/%{name}/plugins/imap/*.la
257 %dir %{_libdir}/%{name}/plugins/lib
258 %{_libdir}/%{name}/plugins/lib/*.a
259 %dir %{_libdir}/%{name}/plugins/lib-imap
260 %{_libdir}/%{name}/plugins/lib-imap/*.a
261 %dir %{_libdir}/%{name}/plugins/lib-mail
262 %{_libdir}/%{name}/plugins/lib-mail/*.a
263 %dir %{_libdir}/%{name}/plugins/lib-storage
264 %{_libdir}/%{name}/plugins/lib-storage/*.a
265 %{_includedir}/%{name}
This page took 0.0678 seconds and 3 git commands to generate.