LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Google Desktop Search equivalent (https://www.linuxquestions.org/questions/slackware-14/google-desktop-search-equivalent-553949/)

Drone4four 05-14-2007 11:36 PM

Google Desktop Search equivalent
 
I need an application which will allow me to search a monster index of academic word documents for Slackware GNU Linux the same way Google Desktop Search does for win32.

Beagle seems to be the most popular for linux, but it requires extensive gnome/gtk deps which slackware doesn't have. So what do you use? And what should I use?

rworkman on FreeNode suggests I use "slocate(1)". Wtf is that?

Drone4four 05-14-2007 11:41 PM

rob0 explains that in Slackware, slocate / updatedb is installed and working by default if you leave the machine running overnight.

Nem 05-15-2007 12:41 AM

Read this as it works for me,
and is very fast too.
http://shilo.is-a-geek.com/slack/search3.html

H_TeXMeX_H 05-15-2007 11:22 AM

Quote:

Originally Posted by Drone4four
rworkman on FreeNode suggests I use "slocate(1)". Wtf is that?

Remember, if you ever ask yourself this question, run 'man slocate'.

msantinho 05-15-2007 12:59 PM

Drone4four is asking for an application capable of reading and indexing file contents, not file names.

titopoquito 05-15-2007 01:33 PM

recoll is very nice ( http://www.lesbonscomptes.com/recoll/ ). I needed to install three other packages (antiword, unrtf and xapian) but it indexes rtf, doc, odt, txt, pdf ... and the search is very fast. You can even get a preview. And it handles umlauts ok if you need them.

gstath 05-15-2007 04:34 PM

Apart from recoll that it is already suggested, you can also try

- beagle: http://beagle-project.org/Main_Page
and
- Kat: http://sourceforge.net/projects/kat/

I've not tried kat so I can not make any comments. Several months ago I tried Beagle which is quite ok.


GS

Alien_Hominid 05-15-2007 05:03 PM

Pat could include http://en.opensuse.org/Kerry into his kde release to facilitate searching.

erklaerbaer 05-15-2007 05:37 PM

beagle has a lot of dependencies, so i think the chances are pretty low:
http://beagle-project.org/Installing_prerequisites

http://pinot.berlios.de/ looks promising, but still has the occasional bugs.
recoll looks nice. but one really has to take a closer look at its source code.

don't hold your breath for one of these to be included anytime soon. ;)

EDIT:

titopoquito 05-16-2007 03:41 AM

pinot and recoll look very similar, at least in its dependencies, but pinot adds some new dependencies like gtkmm, libtextcat, Google SOAP API ... I'm glad I found recoll first or second after beagle, else I would probably have given up frustrated from all the extra stuff they need.
It was really easy to build on Slackware with only one minor hazzle (antiword insisting to install to /usr/local, until I manually edited the Makefile).

Hangdog42 05-16-2007 07:11 AM

Quote:

Originally Posted by gstath
- Kat: http://sourceforge.net/projects/kat/

I've not tried kat so I can not make any comments. Several months ago I tried Beagle which is quite ok.


GS

I tried Kat once and vowed never again. As far as I'm concerned this is one of the worst pieces of software ever written. It grabbed the CPU and absolutely would not ever let go. Ever. I let it index overnight and it STILL wouldn't release the CPU.

Besides, the last release was a year and a half ago. I'm not sure this is a live project.

Ugh.

salmaklak 05-16-2007 05:14 PM

Desktop search
 
Recoll works nicely for me. Light and fast, easy to compile, indexes when I tell it to rather than adding to the clutter running in the background. Helped me find stuff since the latter half of my uni course when I started using it.
I tried Kat initially, but had bad experiences with it, and as someone says above the project is dead as far as I can tell too.
I had a quick butcher's at Novell's desktop when it came out with Beagle to see how Beagle works, and while the search part was alright I personally don't like things running in the background eating up resources. I'm not sure if Beagle has got lighter since me trying it out back then. For me it felt like a huge gorilla that wasn't particularly quick on it's feet compared to Recoll.
YMMV. :)

Hangdog42 05-17-2007 07:26 AM

Quote:

Originally Posted by titopoquito
recoll is very nice ( http://www.lesbonscomptes.com/recoll/ ). I needed to install three other packages (antiword, unrtf and xapian) but it indexes rtf, doc, odt, txt, pdf ... and the search is very fast. You can even get a preview. And it handles umlauts ok if you need them.


I want to say thanks for mentioning recoll. I hadn't run across it before and it was EXACTLY what I was looking for.

Thanks!

titopoquito 05-17-2007 02:32 PM

recoll acts even nicer if you don't want to index your whole harddisk but just have some folders with documents. You have to fiddle around with the recoll.conf file but this way the indexing goes even faster, especially if your documents change often this will save some time.

adriv 05-17-2007 05:03 PM

Quote:

Originally Posted by titopoquito
recoll is very nice ( http://www.lesbonscomptes.com/recoll/ ). I needed to install three other packages (antiword, unrtf and xapian) but it indexes rtf, doc, odt, txt, pdf ... and the search is very fast. You can even get a preview. And it handles umlauts ok if you need them.

I installed antiword, unrtf and xapian, but recoll won't compile.
Running MAKE gives this:
Code:

bash-3.2$ make
cd lib; make
make[1]: Entering directory `/home/adri/Desktop/recoll-1.8.1/lib'
g++ -g -O2 -Wall -Wno-unused  -I. -I../aspell -I../bincimapmime -I../common -I../index -I../internfile -I../rcldb -I../unac -I../utils -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/X11R6/include -DRECOLL_DATADIR=\"/usr/local/share/recoll\" -DLIBDIR=\"/usr/local/lib\" -DHAVE_CONFIG_H -D_GNU_SOURCE -DPUTENV_ARG_NOT_CONST -DHAVE_VASPRINTF=1 -DHAVE_MKDTEMP=1 -c ../index/csguess.cpp
../index/csguess.cpp: In function `int transcodeErrCnt(const char*, int, const char*, const char*)':
../index/csguess.cpp:82: error: invalid conversion from `const char**' to `char**'
../index/csguess.cpp:82: error:  initializing argument 2 of `size_t libiconv(void*, char**, size_t*, char**, size_t*)'
make[1]: *** [csguess.o] Error 1
make[1]: Leaving directory `/home/adri/Desktop/recoll-1.8.1/lib'
make: *** [all] Error 2
bash-3.2$

Anyone an idea what's wrong?

erklaerbaer 05-17-2007 05:26 PM

yes:
Quote:

../index/csguess.cpp:82: error: invalid conversion from `const char**' to `char**
could it be that you use gcc 4 ?

if you don't have experience with c++, you best wait until the authors release a version that compiles cleanly.

adriv 05-17-2007 06:10 PM

Quote:

Originally Posted by erklaerbaer
yes:

could it be that you use gcc 4 ?

No, 3.4.6.
Quote:

Originally Posted by erklaerbaer
if you don't have experience with c++, you best wait until the authors release a version that compiles cleanly.

No experience whatsoever... :)

H_TeXMeX_H 05-17-2007 06:49 PM

Try changing line 80 from:
Code:

(char **)&rp,
to:
Code:

(const char **)&rp,
It might just work ... dunno if this will introduce a bug tho.

titopoquito 05-18-2007 03:10 AM

Quote:

Originally Posted by adriv
I installed antiword, unrtf and xapian, but recoll won't compile.
Running MAKE gives this:
Code:

bash-3.2$ make
cd lib; make
make[1]: Entering directory `/home/adri/Desktop/recoll-1.8.1/lib'
g++ -g -O2 -Wall -Wno-unused  -I. -I../aspell -I../bincimapmime -I../common -I../index -I../internfile -I../rcldb -I../unac -I../utils -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/X11R6/include -DRECOLL_DATADIR=\"/usr/local/share/recoll\" -DLIBDIR=\"/usr/local/lib\" -DHAVE_CONFIG_H -D_GNU_SOURCE -DPUTENV_ARG_NOT_CONST -DHAVE_VASPRINTF=1 -DHAVE_MKDTEMP=1 -c ../index/csguess.cpp
../index/csguess.cpp: In function `int transcodeErrCnt(const char*, int, const char*, const char*)':
../index/csguess.cpp:82: error: invalid conversion from `const char**' to `char**'
../index/csguess.cpp:82: error:  initializing argument 2 of `size_t libiconv(void*, char**, size_t*, char**, size_t*)'
make[1]: *** [csguess.o] Error 1
make[1]: Leaving directory `/home/adri/Desktop/recoll-1.8.1/lib'
make: *** [all] Error 2
bash-3.2$

Anyone an idea what's wrong?

Sorry to hear that. It compiles clean as a whistle here with the three apps mentioned and I hope that it's not an additional dependency I incidently met. I would check the configure output -- are there warnings, where are "no"s as result found ...

Only difference: I installed all four apps to /usr instead of /usr/local like you seem you did. Had to change the Makefile for antiword (changed line to "GLOBAL_INSTALL_DIR = /usr/bin" where /usr/local/bin was hardcoded) and configured the others with --prefix=/usr. But honestly I don't know if that makes a big difference.

EDIT: This program has by far the shortest configure output I've seen. If you want to compare ... aspell and xapian-config are the only ones that seem to be checked here:

Code:

configure: WARNING: you should use --build, --host, --target
checking for aspell... /usr/bin/aspell
withAspell = yes
configure: inotify monitoring disabled
checking for i486-slackware-linux-gcc... i486-slackware-linux-gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether i486-slackware-linux-gcc accepts -g... yes
checking for i486-slackware-linux-gcc option to accept ANSI C... none needed
checking for iconv_open in -liconv... no
checking for iconv_open in -liconv... no
checking for iconv_open in -lc... yes
checking for xapian-config... /usr/bin/xapian-config
configure: rcl_cv_qt4 no
checking for qmake... /usr/lib/qt/bin/qmake
checking how to run the C preprocessor... i486-slackware-linux-gcc -E
checking for X... libraries /usr/X11/lib, headers
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
configure: creating ./config.status
config.status: creating mk/localdefs
config.status: creating recollinstall
config.status: creating Makefile
config.status: creating sampleconf/recoll.conf
config.status: creating qtgui/recoll.pro
config.status: creating common/autoconfig.h


adriv 05-18-2007 06:18 AM

OK, so here's the output from ./configure:
Code:

checking for aspell... /usr/bin/aspell
withAspell = yes
configure: inotify monitoring disabled
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for iconv_open in -liconv... yes
checking for xapian-config... /usr/local/bin/xapian-config
configure: rcl_cv_qt4 no
checking for qmake... /usr/lib/qt/bin/qmake
checking how to run the C preprocessor... gcc -E
checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
configure: creating ./config.status
config.status: creating mk/localdefs
config.status: creating recollinstall
config.status: creating Makefile
config.status: creating sampleconf/recoll.conf
config.status: creating qtgui/recoll.pro
config.status: creating common/autoconfig.h
config.status: common/autoconfig.h is unchanged

I don't see anything strange in it.
Quote:

Originally Posted by H_TeXMeX_H
Try changing line 80 from:

Code:

(char **)&rp,
to:
Code:


(const char **)&rp,


It might just work ... dunno if this will introduce a bug tho.

You mean of the makefile?
Don't see those lines there anywhere, except for lines 22-24:
Code:

common/rclversion.h: VERSION
        echo 'static const char *rclversion = "'`cat VERSION`'";' \
          > common/rclversion.h


titopoquito 05-18-2007 06:35 AM

Quote:

Originally Posted by adriv
OK, so here's the output from ./configure:
Code:

checking for aspell... /usr/bin/aspell
withAspell = yes
configure: inotify monitoring disabled
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for iconv_open in -liconv... yes
checking for xapian-config... /usr/local/bin/xapian-config
configure: rcl_cv_qt4 no
checking for qmake... /usr/lib/qt/bin/qmake
checking how to run the C preprocessor... gcc -E
checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
configure: creating ./config.status
config.status: creating mk/localdefs
config.status: creating recollinstall
config.status: creating Makefile
config.status: creating sampleconf/recoll.conf
config.status: creating qtgui/recoll.pro
config.status: creating common/autoconfig.h
config.status: common/autoconfig.h is unchanged

I don't see anything strange in it.

I don't see anything too, looks basically the same :(

Quote:

You mean of the makefile?
No, H_TeXMeX_H meant the file index/csguess.cpp.

adriv 05-18-2007 07:50 AM

Thanks, but I'm afraid it doesn't help much:
Code:

bash-3.2$ make
cd lib; make
make[1]: Entering directory `/home/adri/Desktop/recoll-1.8.1/lib'
g++ -M -g -O2 -Wall -Wno-unused  -I. -I../aspell -I../bincimapmime -I../common -I../index -I../internfile -I../rcldb -I../unac -I../utils -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/X11R6/include -DRECOLL_DATADIR=\"/usr/local/share/recoll\" -DLIBDIR=\"/usr/local/lib\" -DHAVE_CONFIG_H -D_GNU_SOURCE -DPUTENV_ARG_NOT_CONST -DHAVE_VASPRINTF=1 -DHAVE_MKDTEMP=1 ../index/csguess.cpp > csguess.dep
touch csguess.dep.stamp
g++ -g -O2 -Wall -Wno-unused  -I. -I../aspell -I../bincimapmime -I../common -I../index -I../internfile -I../rcldb -I../unac -I../utils -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/X11R6/include -DRECOLL_DATADIR=\"/usr/local/share/recoll\" -DLIBDIR=\"/usr/local/lib\" -DHAVE_CONFIG_H -D_GNU_SOURCE -DPUTENV_ARG_NOT_CONST -DHAVE_VASPRINTF=1 -DHAVE_MKDTEMP=1 -c ../index/csguess.cpp
../index/csguess.cpp: In function `int transcodeErrCnt(const char*, int, const char*, const char*)':
../index/csguess.cpp:82: error: invalid conversion from `const char**' to `char**'
../index/csguess.cpp:82: error:  initializing argument 2 of `size_t libiconv(void*, char**, size_t*, char**, size_t*)'
make[1]: *** [csguess.o] Error 1
make[1]: Leaving directory `/home/adri/Desktop/recoll-1.8.1/lib'
make: *** [all] Error 2
bash-3.2$

Like I said, I don't know anything about coding, so completely stuck...:(

titopoquito 05-18-2007 08:07 AM

It's not a real solution to the error you get, but I could send you my Slackbuild scripts I used or even the packages of all four via email. Don't know how to solve the error other way ... :(

Alien_Hominid 05-18-2007 08:11 AM

Titopoquito, you could send them at linuxpackages so others could use them too.

titopoquito 05-18-2007 08:15 AM

Generally a good (or very good) idea. The problem is I don't have the time now to clean them up from highly idiosyncratic stuff and get them tidy so that they would get accepted at linuxpackages.net or slackbuild.org. Maybe next week, but definitely not this weekend :( And I guess it would take some more time for them to be reviewed and accepted.

Alien Bob 05-18-2007 10:25 AM

I am interested in recoll myself, so the review time at SlackBuilds.org would be fairly short :-) In fact I was already prepared to build the packages for my own repository (http://www.slackware.com/~alien/slackbuilds/) but to have your SlackBuilds on SBo is a good addition.

Eric

kite 05-18-2007 11:50 AM

Quote:

Originally Posted by titopoquito
It's not a real solution to the error you get, but I could send you my Slackbuild scripts I used or even the packages of all four via email. Don't know how to solve the error other way ... :(

I also got the same error on compiling. would you please do me a favor to send the package and slackbuild to my email address? My Email: kitelau at gmail dot com

Thanks.

H_TeXMeX_H 05-18-2007 11:56 AM

If it absolutely won't compile, you could try 'rpm2tgz' then 'installpkg' on an rpm build of it.

titopoquito 05-18-2007 01:13 PM

Ok, I will try to prepare the scripts for submission on slackbuild.org, so that others could get them if they want. kite, I will send you the packages, then maybe in some days the build scripts will be available anyway ...

adriv 05-18-2007 03:30 PM

Quote:

Originally Posted by H_TeXMeX_H
If it absolutely won't compile, you could try 'rpm2tgz' then 'installpkg' on an rpm build of it.

Why didn't I think of that? :)

But, a little later... no such luck.
I tried src2pkg as well and that didn't work either.
Quote:

Originally Posted by titopoquito
It's not a real solution to the error you get, but I could send you my Slackbuild scripts I used or even the packages of all four via email. Don't know how to solve the error other way ... :(

Thanks!
I'll wait for the script at SlackBuilds.org, there's no hurry. And I have just a hunch that it won't last very long before we see it there. ;)

By the way: I tried Kat, but that's horrible. Eats up all your memory and Slack is sloooooooooooooooooooooow with Kat on the background (not to mention the two crashes of Kat).
So I got rid of it.

titopoquito 05-18-2007 06:07 PM

I've just submitted the scripts. Let's hope they are well done so that they are accepted by Eric or the other guys from slackbuild.org :)

Alien Bob 05-18-2007 09:49 PM

They're in the SBo repository now.

Eric

adriv 05-19-2007 06:07 AM

Got it installed now without a hitch. :)
Thanks!

UPDATE:
It works great!
Fast and very little RAM-consuming.
Nice work.

allend 05-19-2007 09:51 AM

Great thread and slick work!
I have been following this with great interest and now all is installed and running using the Slackbuild scripts.
This will fulfil a wish I have had for indexing a data archive.

SlackMagic! :-)

Thanks to all concerned.

Drone4four 06-06-2007 03:02 AM

I installed Recoll like everyone else just fine with SBo. Special thanks to the SBo team! After reading the dox on the Recoll website I learned how to set index certain directories. Now my problem is: how do I click on a searched item on the results page? It's like I can't click the results. wtf??

Hangdog42 06-06-2007 07:07 AM

There are preview and edit links in the first line of every result (well, edit only shows up if recoll knows what program to use to edit it). The whole result isn't clickable, but the links should be there.

Drone4four 06-18-2007 11:38 PM

Quote:

Originally Posted by Hangdog42
There are preview and edit links in the first line of every result (well, edit only shows up if recoll knows what program to use to edit it). The whole result isn't clickable, but the links should be there.

thanks, that explains it

Drone4four 06-18-2007 11:47 PM

Now the index is horribly incomplete. Reading the official documentation here, http://www.lesbonscomptes.com/recoll...ual/index.html I learned that this is the command to start the index:
Quote:

recollindex
However, a handle full of files which should exist in my index, do not. WTF? What commands do you use to start your recoll index?

edit:sp

gnashley 06-19-2007 03:09 AM

adriv if you do decide to try converting a binary rpm package, you can use src2pkg for that instead of using rpm2tgz and installpkg. src2pkg incorporated binary rpm and deb conversion a while back. It should do a better job because the conents get checked and corrected like other src2pkg output and it will insert the slack-desc for you which is missing for the package otherwise.

Still, getting the sources to compile correctly would the best solution. Maybe you are missing some overlooked package or configure option. I don't use KDE and don't normally install any of the qt or kde stuff so I can't easily help.

titopoquito 06-19-2007 03:39 AM

Quote:

Originally Posted by Drone4four
Now the index is horribly incomplete. Reading the official documentation here, http://www.lesbonscomptes.com/recoll...ual/index.html I learned that this is the command to start the index:However, a handle full of files which should exist in my index, do not. WTF? What commands do you use to start your recoll index?

edit:sp

I use the GUI to do that after I have edited the config file by hand to tell recoll which folders to index (I have to of them -- one on my computer and one on my girlfiend's computer -- that go into one search database). So, no command line involved here, although I'm quite sure the way you start indexing has or should have the same effets.
Bad to hear that your index isn't complete. I've got nearly no document in my index that is unique enough to test that.

Hangdog42 06-19-2007 07:25 AM

Quote:

Originally Posted by Drone4four
Now the index is horribly incomplete. Reading the official documentation here, http://www.lesbonscomptes.com/recoll...ual/index.html I learned that this is the command to start the index:However, a handle full of files which should exist in my index, do not. WTF? What commands do you use to start your recoll index?

That's odd, I just use recollindex (in fact I run it as a daily cron job) and it seems to index everything. OK, it indexes everything in my home directory, which is the default top of the search tree. Are the things it isn't indexing outside of your home directory?

adriv 06-20-2007 06:20 AM

Quote:

Originally Posted by gnashley
adriv if you do decide to try converting a binary rpm package, you can use src2pkg for that instead of using rpm2tgz and installpkg. src2pkg incorporated binary rpm and deb conversion a while back. It should do a better job because the conents get checked and corrected like other src2pkg output and it will insert the slack-desc for you which is missing for the package otherwise.

Still, getting the sources to compile correctly would the best solution. Maybe you are missing some overlooked package or configure option. I don't use KDE and don't normally install any of the qt or kde stuff so I can't easily help.

Thanks, I have src2pkg installed for several months now (recently upgraded), just tried rpm2tgz because I couldn't get the job done with src2pkg.

By the way, the Slackbuild worked perfectly. ;)

titopoquito 06-28-2007 08:01 AM

EDIT: The following patch enables OGG and FLAC audio file indexing in recoll when used with the recoll build script from http://www.slackbuild.org


---

What I still missed from recoll is the ability to index flac and ogg audio files. I created a patch for that, which I want to give you below if you want flac and ogg support. These changes are not on Slackbuild.org because the submission part is disabled at the moment. I testet it and it seems okay, but please report if you encounter any problems with that. Oh, and of course it requires that you the Slackware's flac and vorbis-tools package installed :)

If you have untarred the Slackbuild "recoll.tar.gz" from Slackbuild, go to that folder. Save the code below as a file and apply it:

Code:

patch -p0 < /path/to/where/you/saved/this/file
now the patch itself:

Code:

--- recoll.SlackBuild.withoutflac        2007-06-28 14:54:27.491524250 +0200
+++ recoll.SlackBuild        2007-06-28 20:07:49.856360750 +0200
@@ -49,6 +49,11 @@
 chown -R root:root .
 chmod -R u+w,go+r-w,a-s .
 
+# If you do NOT want a patch that enables flac and ogg audio file indexing comment out the
+# next line. Note: requires "metaflac" and "ogginfo", found in the stock Slackware flac and
+# vorbis-tools package.
+patch -p0 < $CWD/patch.flac+ogg
+
 CFLAGS="$SLKCFLAGS" \
 CXXFLAGS="$SLKCFLAGS" \
 ./configure \
--- patch.flac+ogg.nul        2007-06-28 20:09:11.921489500 +0200
+++ patch.flac+ogg        2007-06-28 19:56:03.288203000 +0200
@@ -0,0 +1,263 @@
+--- sampleconf/mimeconf        2007-02-06 19:01:16.000000000 +0100
++++ sampleconf/mimeconf.flac        2007-06-28 19:33:30.066579750 +0200
+@@ -26,6 +26,7 @@
+ # have a look at the scripts.
+ [index]
+ application/msword = exec rcldoc
++application/ogg = exec rclogg
+ application/pdf = exec rclpdf
+ application/postscript = exec rclps
+ application/vnd.ms-powerpoint = exec rclppt
+@@ -41,6 +42,7 @@
+ application/vnd.sun.xml.writer.global = exec rclsoff
+ application/vnd.sun.xml.writer.template = exec rclsoff
+ application/x-dvi = exec rcldvi
++application/x-flac = exec rclflac
+ application/x-lyx = exec rcllyx
+ application/x-scribus = exec rclscribus
+ audio/mpeg = exec rclmedia
+@@ -57,6 +59,7 @@
+ # Icons to be used in the result list if required by gui config
+ [icons]
+ application/msword = wordprocessing
++application/ogg = sownd
+ application/pdf = pdf
+ application/postscript = postscript
+ application/vnd.ms-excel = spreadsheet
+@@ -70,6 +73,7 @@
+ application/vnd.sun.xml.writer = wordprocessing
+ application/vnd.sun.xml.writer.global = wordprocessing
+ application/vnd.sun.xml.writer.template = wordprocessing
++application/x-flac = sownd
+ application/x-fsdirectory = folder
+ application/x-dvi = document
+ audio/mpeg = sownd
+@@ -108,6 +112,8 @@
+              application/vnd.sun.xml.impress.template
+
+ media = audio/mpeg \
++      application/ogg \
++      application/x-flac \
+      image/jpeg \
+      image/png \
+
+--- sampleconf/mimemap        2007-02-06 19:01:16.000000000 +0100
++++ sampleconf/mimemap.flac        2007-06-28 19:33:30.066579750 +0200
+@@ -62,6 +62,8 @@
+ .rtf = text/rtf
+
+ .mp3 = audio/mpeg
++.flac = application/x-flac
++.ogg = application/ogg
+ .png = image/png
+ .jpg = image/jpeg
+
+--- sampleconf/mimeview        2007-02-14 11:10:43.000000000 +0100
++++ sampleconf/mimeview.flac        2007-06-28 19:54:07.452963750 +0200
+@@ -9,6 +9,7 @@
+ application/x-all = xdg-open %f
+
+ application/msword = openoffice %f
++application/ogg = xmms %f
+ application/pdf  = xpdf %f
+ application/postscript = gv %f
+ application/vnd.ms-excel = openoffice %f
+@@ -25,6 +26,7 @@
+ application/vnd.sun.xml.writer.template = openoffice %f
+ application/x-fsdirectory = rox %f
+ application/x-dvi = xdvi %f
++application/x-flac = xmms %f
+ application/x-lyx = lyx %f
+ application/x-scribus = scribus %f
+ audio/mpeg = xmms %f
+--- filters/rclflac.nul        2007-06-28 13:38:54.966033500 +0200
++++ filters/rclflac        2007-06-28 19:39:29.093017500 +0200
+@@ -0,0 +1,93 @@
++#!/bin/sh
++# @(#$Id: rclflac,v 0.1 2007/06/27 19:39:00 dockes Exp $  (C) 2007 J.F.Dockes
++#================================================================
++# rclflac
++# Handle flac audio files for recoll.
++#================================================================
++# set variables
++LANG=C ; export LANG
++LC_ALL=C ; export LC_ALL
++progname="rclflac"
++filetype=media
++
++
++#RECFILTCOMMONCODE
++##############################################################################
++# !! Leave the previous line unmodified!! Code imported from the
++# recfiltcommon file
++
++# Utility code common to all shell filters. This could be sourced at run
++# time, but it's slightly more efficient to include the code in the
++# filters at build time (with a sed script).
++
++# Describe error in a way that can be interpreted by our caller
++senderror()
++{
++    echo RECFILTERROR $*
++    # Also alert on stderr just in case
++    echo ":2:$progname::: $*" 1>&2
++    exit 1
++}
++
++iscmd()
++{
++    cmd=$1
++    case $cmd in
++    */*)
++        if test -x $cmd ; then return 0; else return 1; fi ;;
++    *)
++      oldifs=$IFS; IFS=":"; set -- $PATH; IFS=$oldifs
++      for d in $*;do test -x $d/$cmd && return 0;done
++      return 1 ;;
++    esac
++}
++
++checkcmds()
++{
++    for cmd in $*;do
++      if iscmd $cmd
++      then
++        a=1
++      else
++        senderror HELPERNOTFOUND $cmd
++      fi
++    done
++}
++
++# show help message
++if test $# -ne 1 -o "$1" = "--help"
++then
++  echo "Convert a $filetype file to HTML text for Recoll indexing."
++  echo "Usage: $progname [infile]"
++  exit 1
++fi
++
++infile="$1"
++
++# check the input file existence (may be '-' for stdin)
++if test "X$infile" != X- -a ! -f "$infile"
++then
++  senderror INPUTNOSUCHFILE "$infile"
++fi
++
++##############################################################################
++# !! Leave the following line unmodified !
++#ENDRECFILTCOMMONCODE
++
++checkcmds metaflac
++
++# output the result
++echo '<html><head>'
++#echo '<title>' "$title" '</title>'
++echo '<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">'
++echo '</head><body>'
++echo '<pre>'
++
++metaflac --list "$infile" | \
++  grep 'comment\[' | sed -e 's/</&lt;/g' -e 's/&/&amp;/g' -e 's/ *comment\[.*\]: .*=//'
++
++echo '</pre>'
++echo '</body></html>'
++
++# exit normally
++exit 0
+--- filters/rclogg.nul        2007-06-28 19:33:55.980199250 +0200
++++ filters/rclogg        2007-06-28 19:54:50.323643000 +0200
+@@ -0,0 +1,92 @@
++#!/bin/sh
++# @(#$Id: rclogg,v 0.1 2007/06/27 19:39:50 dockes Exp $  (C) 2007 J.F.Dockes
++#================================================================
++# rclogg
++# Handle ogg audio files for recoll.
++#================================================================
++# set variables
++LANG=C ; export LANG
++LC_ALL=C ; export LC_ALL
++progname="rclogg"
++filetype=media
++
++
++#RECFILTCOMMONCODE
++##############################################################################
++# !! Leave the previous line unmodified!! Code imported from the
++# recfiltcommon file
++
++# Utility code common to all shell filters. This could be sourced at run
++# time, but it's slightly more efficient to include the code in the
++# filters at build time (with a sed script).
++
++# Describe error in a way that can be interpreted by our caller
++senderror()
++{
++    echo RECFILTERROR $*
++    # Also alert on stderr just in case
++    echo ":2:$progname::: $*" 1>&2
++    exit 1
++}
++
++iscmd()
++{
++    cmd=$1
++    case $cmd in
++    */*)
++        if test -x $cmd ; then return 0; else return 1; fi ;;
++    *)
++      oldifs=$IFS; IFS=":"; set -- $PATH; IFS=$oldifs
++      for d in $*;do test -x $d/$cmd && return 0;done
++      return 1 ;;
++    esac
++}
++
++checkcmds()
++{
++    for cmd in $*;do
++      if iscmd $cmd
++      then
++        a=1
++      else
++        senderror HELPERNOTFOUND $cmd
++      fi
++    done
++}
++
++# show help message
++if test $# -ne 1 -o "$1" = "--help"
++then
++  echo "Convert a $filetype file to HTML text for Recoll indexing."
++  echo "Usage: $progname [infile]"
++  exit 1
++fi
++
++infile="$1"
++
++# check the input file existence (may be '-' for stdin)
++if test "X$infile" != X- -a ! -f "$infile"
++then
++  senderror INPUTNOSUCHFILE "$infile"
++fi
++
++##############################################################################
++# !! Leave the following line unmodified !
++#ENDRECFILTCOMMONCODE
++
++checkcmds ogginfo
++
++# output the result
++echo '<html><head>'
++#echo '<title>' "$title" '</title>'
++echo '<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">'
++echo '</head><body>'
++echo '<pre>'
++
++ogginfo "$infile" | \
++  sed -e "1,/^User comments/d" | grep -v Warning | sed "s/^ *.*=//"
++echo '</pre>'
++echo '</body></html>'
++
++# exit normally
++exit 0


msantinho 06-28-2007 04:12 PM

By the way, I noticed now that Google has released Google Desktop for Linux. http://desktop.google.com/linux/


All times are GMT -5. The time now is 08:21 AM.