1 Summary: A another one web indexing and searching system for a small domain or intranet
2 Summary(pl): Kolejny System indeksowania i przeszukiwania www dla ma³ych domen i intranetu
7 Group: Networking/Utilities
8 Source0: http://www.mnogosearch.ru/Download/%{name}-%{version}.tar.gz
9 Patch0: %{name}-DESTDIR.patch
10 Source1: %{name}-gethostnames
11 URL: http://www.mnogosearch.ru/
12 BuildRequires: postgresql-devel
13 BuildRequires: autoconf
14 BuildRequires: automake
15 BuildRequires: libtool
17 Prereq: postgresql-clients
18 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
20 %define _sysconfdir /etc/httpd/%{name}
21 %define _localstatedir /var/lib/mnogosearch
24 The mnogosearch system is a complete world wide web indexing and
25 searching system for a small domain or intranet. This system is not
26 meant to replace the need for powerful internet-wide search systems
27 like Lycos, Infoseek, Webcrawler and AltaVista. Instead it is meant to
28 cover the search needs for a single company, campus, or even a
29 particular sub section of a web site. Features:
32 - http: (and ftp: - via proxy) URL schemaa
35 - support for ssl (https://)
36 - limiting queries to one hostname by sth like this: <INPUT
37 TYPE=HIDDEN NAME=ul VALUE=http://www.something.com/>
38 - it's posilble to run indexers on several diffrent (theoreticaly 128)
39 hosts, and gather information on one of them, reindexing proceses make
40 no harm to avalibility of search engine. See cachemode.txt
42 As opposed to some WAIS-based or web-server based search engines,
43 mnogsearch can span several web servers at a site. The type of these
44 different web servers doesn't matter as long as they understand the
45 HTTP 1.0 protocol. Mnogosearch supports also virtual domains.
48 Mnogosearch jest kompletnym systemem indeksuj±cym i przeszukuj±cym www
49 dla ma³ych domen oraz intranetu. System nie zosta³ opracowany jako
50 wielki system typu Lycos, Infoseek WebCrawler i AltaVista. Natomiast
51 nadaje siê do zastosowania w pojedynczej firmie, kampusie lub
52 jakiejkolwiek stronie www. Zalety:
53 - przeszukiwaie tagów mp3,
54 - niusów (Server news://localhost/pl/),
55 - htdb czyli baz danych udostêpnianych przez www/cgi. (HTDBList SELECT
56 \ concat("http://search.mnogo.ru/board/message.php?id=",id) \ FROM
57 udm.messages LIMIT 2))
58 - zawarto¶ci serwerów ftp (rada za 2gr: "Index no" dla serwera ftp
59 spowoduje nie indexowanie *zawarto¶ci* plików na nim siê znajduj±cych)
60 - wyszukiwanie w zwyk³ych URL-ach http://
61 - wsparcie dla SSL (https://)
62 - wyszukiwanie w mirrorach (równie¿ lokalnych) odleg³ych sieci
63 - zgadywanie zestawu znaków
64 - zewnêtrzne przetwarzacze dokumentów na potrzeby indeksowania
65 - ograniczanie zapytañ do jednej nazwy hosta: <INPUT TYPE=HIDDEN
66 NAME=ul VALUE=http://www.something.com/>
67 - kategoryzacja witryny (doc/categories.txt)
68 - mo¿liwe jest uruchomienie kilku procesów indeksuj±cych na kilku
69 (teoretycznie 128) hostach i trzymanie bazy na jednym z nich,
70 reindeksacja nie powoduje wtedy niedostêpno¶ci wyszukiwarki.
71 Przeczytaj cachemode.txt
73 W odró¿nieniu od innych systemów bazuj±cych na WAIS-ie lub serwerach
74 www, mnogosearch mo¿e ³±czyæ kilka serwerów www w jednym miejscu. Typ
75 serwera nie ma znaczenia, dopóki pracuje on zgodnie z protoko³em HTTP
76 1.0. Pakiet wspó³pracuje równie¿ z domenami wirtualnymi.
79 Summary: Include files and libraries for mnogo
80 Summary(pl): Pliki nag³ówkowe dla mnogo
81 Group: Development/Libraries
82 Requires: %{name} = %{version}
85 This package contains mnogosearch development files.
87 %description devel -l pl
88 Pliki dla programistów mnogosearch.
91 Summary: mnogosearch with pgsql storage-support
92 Summary(pl): mnogosearch z pgsqlem jako metod± przechowywania danych
93 Group: Networking/Utilities
94 Requires: %{name} = %{version}
97 This package contains pgsql storage support.
99 Note: install will try to create tables in database mnogosearch.
101 %description pgsql -l pl
102 Ten pakiet zawiera wsparcie dla postgresa jako sposobu przechowywania
105 Instalacja tego pakietu spowoduje za³o¿enie tabel w bazie mnogosearch.
108 Summary: mnogo static libraries
109 Summary(pl): Biblioteki statyczne mnogo
110 Group: Development/Libraries
111 Requires: %{name}-devel = %{version}
114 This package contains static libraries of mnogosearch.
116 %description static -l pl
117 Ten pakiet zawiera statyczne biblioteki mnogosearch.
124 libtoolize --copy --force
128 #where the hell is pgsql?
129 sed -e 's%{_prefix}\/include\/pgsql%{_prefix}\/include\/postgresql/' < configure.in > aqq
130 mv -f aqq configure.in
133 --enable-syslog=LOG_LOCAL6 \
134 --with-image-dir=/home/httpd/html/%{name} \
135 --with-cgi-bin-dir=/home/httpd/cgi-bin \
136 --with-search-dir=/home/httpd/html \
137 --with-config-dir=%{_sysconfdir}/http/%{name} \
138 --infodir=%{_infodir} \
141 --enable-linux-pthreads \
142 --enable-charset-guesser \
143 --enable-news-extension \
149 # enable automatic Russian charset guesser :-]
150 # wy uze www.linux.ru procitacli sewodnja?
152 # --with-msql[=DIR] Include mSQL support. DIR is the mSQL base
153 # --with-iodbc[=DIR] Include iODBC support. DIR is the iODBC base
154 # --with-unixODBC[=DIR] Include unixODBC support. DIR is the unixODBC base
155 # --with-solid[=DIR] Include Solid support. DIR is the Solid base
156 # --with-openlink[=DIR] Include OpenLink ODBC support.
157 # --with-easysoft[=DIR] Include EasySoft ODBC support.
158 # --with-sapdb[=DIR] Include SAPDB support. DIR is the SAPDB base
159 # --with-ibase[=DIR] Include InterBase support. DIR is the InterBase
160 # --with-oracle7[=DIR] Include Oracle 7.3 support. DIR is the Oracle
161 # --with-oracle8[=DIR] Include Oracle8 support. DIR is the Oracle
162 # --with-oracle8i[=DIR] Include Oracle8i support. DIR is the Oracle
166 # FIXME: add selection of storage method, spliting into %{name}-common & %{name}-$DB_NAME
171 rm -rf $RPM_BUILD_ROOT
172 install -d $RPM_BUILD_ROOT{/var/lib/mnogosearch,/etc/cron.daily,/home/httpd/html/%{name},%{_sysconfdir},%{_infodir}}
174 %{__make} DESTDIR=$RPM_BUILD_ROOT install
176 ln -sf ../..%{_sbindir}/indexer \
177 $RPM_BUILD_ROOT/etc/cron.daily/mnogo-dbgen
179 ln -sf ../../../..%{_defaultdocdir}/%{name} \
180 $RPM_BUILD_ROOT/home/httpd/html/%{name}/mnogodoc
182 install etc/search.htm-dist $RPM_BUILD_ROOT/home/httpd/html/search.html
183 install -d $RPM_BUILD_ROOT/home/httpd/cgi-bin
185 install $RPM_BUILD_ROOT%{_bindir}/search.cgi $RPM_BUILD_ROOT/home/httpd/cgi-bin/search.cgi
186 touch $RPM_BUILD_ROOT%{_sysconfdir}/locals
188 $RPM_BUILD_ROOT/etc/cron.daily/mnogosearch-gethostnames
193 rm -rf $RPM_BUILD_ROOT
196 cp -f %{_sysconfdir}/indexer.conf-dist %{_sysconfdir}/indexer.conf
199 Please see docs (%{_defaultdocdir}/%{name} or http://localhost/mnogodoc),
200 then read how to setup db connection, and put line like this
201 "pgsql://user:password@/dbname/" into %{_sysconfdir}, then run sth like
202 psql < %{_defaultdocdir}/%{name}/pgsql/*.txt
206 echo 'Now I will try to Create Tables for postgres: '
207 su postgres -c "psql -U postgres template1 -c 'CREATE DATABASE mnogosearch;' "
208 echo "Trying to Create Tables:"
209 su postgres -c "psql -U postgres mnogosearch < /usr/share/doc/mnogosearch-3.1.17/pgsql/create.txt"
210 echo "Trying to Create Tables for crc-multi storage method:"
211 su postgres -c "psql -U postgres mnogosearch < /usr/share/doc/mnogosearch-3.1.17/pgsql/crc-multi.txt"
212 echo "Trying to Create Tables for news extension:"
213 su postgres -c "psql -U postgres mnogosearch < /usr/share/doc/mnogosearch-3.1.17/pgsql/news-extension.txt"
214 echo "Mnogosearch user will be created with passwd aqq123 change it ! and I mean it really !"
215 echo 'CREATE USER "mnogosearch" WITH PASSWORD '"'aqq123'"' NOCREATEDB NOCREATEUSER;' > /tmp/aqq
216 su postgres -c "psql -U postgres mnogosearch < /tmp/aqq"
217 echo "Granting Permisions..."
218 cat > /tmp/mnogo.aqq << EOF
220 GRANT ALL ON url,dict,robots,stopword,categories,next_url_id,affix TO mnogosearch;
222 GRANT ALL ON ndict,server,thread,spell,next_cat_id,next_server_id,next_url_id TO mnogosearch;
224 GRANT ALL ON ndict2,ndict3,ndict4,ndict5,ndict6,ndict7,ndict8,ndict9,
225 ndict10,ndict11,ndict12,ndict16,ndict32 TO mnogosearch;
227 GRANT ALL ON dict2,dict3,dict4,dict5,dict6,dict7,dict8,dict9,dict10,
228 dict11,dict12,dict16,dict32 TO mnogosearch;
230 GRANT ALL ON "qtrack" TO mnogosearch;
232 su postgres -c "psql -U postgres template1 -f /tmp/mnogo.aqq"
236 echo -n 'Dropping Database mnogosearch:'
237 su postgres -c "psql -U postgres template1 -c 'DROP DATABASE mnogosearch;' "
240 %defattr(644,root,root,755)
241 %doc COPYING README doc/* create/* create/*/*
243 %dir /var/lib/%{name}
244 %attr (755,http,http) /home/httpd/cgi-bin/*
245 %attr (755,http,http) %{_bindir}/*
246 %attr (755,http,http) %{_sbindir}/*
247 %attr (755,http,http) %{_libdir}/*
248 #%attr (755,http,http) %{_libdir}/%{name}/*la
249 %config(noreplace) /home/httpd/html/%{name}/*
250 #%{_datadir}/%{name}/*
251 %config(noreplace) %verify(not size mtime md5) /home/httpd/html/search.html
252 %config(noreplace) %{_sysconfdir}/*
253 %config(noreplace) %attr(750,http,http) /etc/cron.daily/*
256 %defattr(644,root,root,755)
257 #%{_includedir}/%{name}/*
260 %defattr(644,root,root,755)
261 #%{_libdir}/%{name}/*.a