Cómo instalar Beagle, el mega-buscador, en Ubuntu
No busca, ¡encuentra!
Resulta que ya tenemos el sistema funcionando. Pero somos un poco despistados y no sabemos dónde tenemos las cosas. No pasa nada, existe un maravilloso buscador que va a ayudarnos en la búsqueda, se llama beagle y, como no podía ser de otra manera, lo está desarrollando la gente de Novell
¿Qué hace beagle por nosotros? Puede encontrar ficheros, programas, conversaciones en gaim, blogs en liferea, mensajes de correo en evolution, páginas web en firefox, etc. Un ejemplo. Buscamos «pepe». Beagle nos contesta que tenemos un fichero «pepe» en la carpeta «juan», un fichero llamado «leeme.txt» que contiene el texto «debo 1 euro a pepe», una web «http://pepe.com», un blog que contiene el texto «pepe es un pesao», una conversación con Pepe, una hoja de cálculo que dice «DEBE: pepe 1»… supongo que lo vais pillando
Instalando Beagle
Voy a explicar cómo instalar Beagle en una Ubuntu Hoary. Para otras distribuciones no funcionará, así que ni lo intentéis. Probad mejor las instrucciones de la página oficial
Lo primero es decirle al sistema que use nuevos repositorios. Podemos hacerlo tanto desde el gestor de paquetes como actualizando manualmente el fichero /etc/apt/sources.list. Añadimos las dos líneas siguientes:
deb ftp://ftp2.caliu.info/backports/ hoary-extras main universe multiverse restricted
Entonces, desde el mismo gestor o con la consola, instalamos los paquetes beagle wv libmono-dev libgecko-cil libsqlite0 libsqlite0-dev. Puede ser que en vuestro caso hagan falta más paquetes, no lo sé. Mirad en la página oficial los requisitos extras
Después, como no queremos seguir usando los repositorios de backports porque pueden cascarnos el sistema, mejor los desactivamos. Esto se consigue desmarcándolos desde el gestor de paquetes o bien editando el archivo de fuentes y poniéndoles una almohadilla # delante. A continuación refrescamos nuevamente los repositorios.
Para acabar, editamos el archivo /etc/fstab y buscamos todas las entradas de este tipo:
/dev/hdb1 / ext3 defaults, y las cambiamos por
/dev/hdb1 / ext3 defaults,user_xattr
Tenéis que hacer este cambio para todos los puntos de montaje de los discos duros, que acostumbran a empezar por /dev/hda o /dev/hdb. Entonces, desde una consola, ejecutáis sudo mount -o remount /dev/hdb1, cambiando hdb1 por cada una de las particiones que hayáis cambiado en el archivo fstab. Si os liáis, mirad las instrucciones oficiales
Si queremos que indexe las páginas por las que vamos navegando, hay que instalar el plug-in para firefox tal y como se explica en beagle firefox extension.
Life needs a fucking search function. I need my socks.
La pregunta del millón: ¿cómo buscamos cosas?
Lo primero es ejecutar beagled desde una consola. Si todo ha ido bien, no aparecerá nada de texto. Entonces podemos llamar a best, que también está en el menú, y nos aparecerá el dibujo de un perro con una «b» en la bandeja del sistema, al lado del reloj
Haciendo clic en él tenemos un cuadro para escribir texto. Más fácil no puede ser. Incluso haciendo menos clics que con el puto perro de las búsquedas de Windows XP
Por supuesto, si no usamos Evolution, Liferea ni Gaim, Beagle no indexará su contenido y no encontrará nada de información en ellos, pero seguirá buscando archivos en el disco duro. ¿Por qué estos programas? Simplemente porque son los primeros que se han ofrecido a colaborar. Si usáis, digamos, KDE, es muy posible que no aprovechéis al 100% las capacidades de Beagle, pero ¡fijáos todo lo que puede hacer! Aun así es mejor que la mayoría de utilidades para encontrar archivos
El tiempo es oro
Antes de empezar a buscar como locos, hay que esperar un tiempo prudencial para que se vaya indexando toda la información del disco duro. En mi Athlon 2600+ 1GB RAM me está tardando algo más de media hora. Más o menos, instaláis beagle y poco a poco se irá indexando todo, posiblemente al cabo de un par de horas ya esté todo listo. Podría ir más rápido, pero está hecho de manera que no interfiera en vuestro trabajo normal. Además, esta indexación sólo se hace una vez, la primera vez que se ejecuta beagle.
Beagle no ralentiza vuestro sistema, precisamente por eso tarda tanto en recopilar los datos al principio. Podéis tenerlo funcionando en segundo plano sin problemas.
Por supuesto, para saber más y ver algún pantallazo id a la página de Beagle. Seb y Nat tienen vídeos en flash con ejemplos de búsquedas en Beagle. Y os aseguro que si los miráis correréis a instalar Beagle. Porque mola.
Actualización: más paquetes a instalar. Si os da algún tipo de error, mirad que no os falten paquetes de la lista de prerequisitos.
Ufff que bien, me viene muy bien para ver los pdfs, no sabia que hubiese un programa asi, y mira que he buscado el problema es que en amd64 no viene, una gran putada, sera por mono… maldito .net y maldito microsoft, si hasta en linux microsoft me fastidia
Bueno, pero siempre puedes compilártelo tú. El problema es que tiene bastantes dependencias, pero con algo de paciencia…
muy bueno y facilito :)
No me atrevía instalarlo porque creía que había que hacer muchas cosas. Gracias por hacerme la vida más fácil :D
Habrá que olvidarse de:
find / [ [|grep -i "XXXXX"] |xargs grep -i “YYYYY”]
en los escritorios linux.
Jo, con lo que mola el grep y las regex, pero claro, grep no te busca en esos ficheros binarios que contienen texto (a.k.a. hojas de cálculo, pdf’s, etc…), y tampoco indexa :-/
Como siempre, a remolque de lo que haga MacOs X… xDDD
Es broma, me parece genial que comience a proliferar este tipo de indexadores. Quién sabe si el futuro será organizar por metadatos y no por carpetas, ojalá!!!
Sergio, precisamente en un vídeo Miguel de Icaza comentaba que mientras desarrollaban Beagle les habían venido rumores de que Apple estaba haciendo algo parecido. Cuando se enteraron de que el día X a las Y horas Apple pensaba anunciar su nuevo producto Novell, por si acaso, presentó Beagle el día X a las Y-3 horas. Y los rumores resultaron ser ciertos xD
<flame>de todos modos, es mejor copiar a macos que copiar a windows, como hace KDE</flame>. Aun así ya es igual, ahora windows longhorn copia (descaradamente) a apple, así que kde copiará a windows que copiará a apple… al final todos copiarán a todos, se producirá un bucle infinito en la informática y acabaremos usando openBSD en modo consola
Llevo mucho tiempo siguiendo al proyecto Beagle. Sigue siendo necesario tener un kernel 2.6 con soporte xa inotify? Si todavia no lo he probado es xq sigo anclado a la rama 2.4 y creo ke tiene una fuerte dependencia con la rama 2.6…
Croc, se supone que no hace falta inotify, pero el tenerlo hace que vaya mucho más rápido, según lei en la ultima noticia al respecto, 20 veces más rapido :-P.
Croc, en Hoary el inotify está roto. Lo he probado y beagle peta si activas inotify, por eso no lo he explicado.
Es curioso, pero mi kernel 2.4.26 no contempla la opcion de los atributos extendidos XATTR a mi EXT3. Esa opcion aparecio solo en los kernel 2.6 o en versiones posteriores de la 2.4??
Tengo la release oficial de esa version del kernel ke me compilo yo mismo sobre una debian sid.
Problema compilando…
Y yo que pensaba que no se podia compilar mono en amd64…
Mono se compila perfectamente, no tuve que bajarme los paquetes de debian
El problema viene en beagle
checking X11/extensions/scrnsaver.h usability… no
checking X11/extensions/scrnsaver.h presence… no
checking for X11/extensions/scrnsaver.h… no
configure: error: Unable to find scrnsaver.h. You probably need to install XFree86 development packages
Claro eso seria logico si usase las XFree86….
¿Como han hecho el paquete de hoary?
¿Alguna solucion?
Ya se que este no es el mejor sitio para postear esto…..
Carlos, ¿tienes instalado el paquete xorg-dev?
Xorg, para mantener compatibilidad, llama a los archivos como XFree
Solucionado
apt-get install libxss-dev
¿Ya funciona en particiones FAT32?
Hola, sigo todos los pasos para instalar beagle en ubuntu Horay y todo correcto hasta que ejecuto beagle en modo debug, me sale lo siguiente… alguien sabe que puede estar fallando?
(he probado a compilar gmime 2.1.13)
INFO: Starting Beagle Daemon (version 0.0.11.1)
DEBUG: Command Line: /usr/lib/beagle/BeagleDaemon.exe –fg –debug
DEBUG: Starting main loop
DEBUG: Starting messaging server
** (beagled:21589): WARNING **: The following assembly referenced from /usr/lib/beagle/BeagleDaemonLib.dll could not be loaded:
Assembly: gmime-sharp (assemblyref_index=8)
Version: 1.0.0.0
Public Key: 677013d4cb5910f0
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/usr/lib/beagle).
** (beagled:21589): WARNING **: The class GMime.StreamFs could not be loaded, used in /usr/lib/beagle/BeagleDaemonLib.dll (token 0×01000099)
** (beagled:21589): WARNING **: The class GMime.Parser could not be loaded, used in /usr/lib/beagle/BeagleDaemonLib.dll (token 0×0100009b)
** (beagled:21589): WARNING **: The following assembly referenced from /usr/lib/beagle/BeagleDaemonLib.dll could not be loaded:
Assembly: evolution-sharp (assemblyref_index=13)
Version: 1.0.0.0
Public Key: 457eed85bd9370df
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/usr/lib/beagle).
** (beagled:21589): WARNING **: The class Evolution.Book could not be loaded, used in /usr/lib/beagle/BeagleDaemonLib.dll (token 0×010000eb)
** (beagled:21589): WARNING **: The class Evolution.BookView could not be loaded, used in /usr/lib/beagle/BeagleDaemonLib.dll (token 0×010000ed)
DEBUG: Starting QueryDriver
DEBUG: worker added: name=server ’socket’ refcount=1
DEBUG: Found index helper at /usr/lib/beagle/beagled-index-helper
WARN: Could not open /dev/inotify
DEBUG: Starting FileSystemWatcher Backend
DEBUG: Pre-populated UniqueIdStore cache with 0 items in ,00s
INFO: Loaded 0 records from /home/dmcom/.beagle/FileSystemIndex/FileAttributesStore.db in 0,000s
INFO: Loaded 0 records from /home/dmcom/.beagle/LauncherIndex/FileAttributesStore.db in 0,000s
DEBUG: Found 11 types in BeagleDaemonLib, Version=1.4.3.3, Culture=neutral
INFO: FileSystemQueryable start-up thread finished
INFO: Starting Evolution mail backend
INFO: Starting Gaim log backend
INFO: Starting launcher backend
INFO: Scanning Launchers
INFO: Starting Evolution mail backend
DEBUG: Starting mail crawl
DEBUG: Mail crawl finished
INFO: Evolution mail driver worker thread done in ,66s
INFO: Gaim log backend worker thread done in ,73s
INFO: Found 856 Launchers in ,00s
INFO: Launcher backend worker thread done in 4,03s
** (beagled:21589): WARNING **: The class Evolution.BookQuery could not be loaded, used in /usr/lib/beagle/BeagleDaemonLib.dll (token 0×010000ec)
Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object
in (unmanaged) 0×80e00a9
in Beagle.Daemon.Queryable:Start ()
in Beagle.Daemon.QueryDriver:Start ()
in Beagle.Daemon.BeagleDaemon:StartupProcess ()
in (wrapper delegate-invoke) System.MulticastDelegate:invoke_bool ()
in IdleProxy:Handler ()
in (wrapper native-to-managed) IdleProxy:Handler ()
in (unmanaged) 0xb7f75a02
in (wrapper managed-to-native) Gtk.Application:gtk_main ()
in Gtk.Application:Run ()
in Beagle.Daemon.BeagleDaemon:Main (string[])
psiko-loc: mira que tengas instalados todos estos paquetes:
topopardo@equisde:~ $ dpkg -l | grep gmime
ii libgmime-cil 2.1.13-0ubuntu .NET binding for the gmime MIME library
ii libgmime0 0.6.0-3 MIME library
ii libgmime0-dev 0.6.0-3 MIME library – development files
ii libgmime2.1 2.1.13-0ubuntu MIME library, unstable version
Me faltaban dos, pero sigue sin funcionar…
~$ dpkg -l | grep gmime
ii libgmime-cil 2.1.13-0ubuntu .NET binding for the gmime MIME library
ii libgmime0 0.6.0-3 MIME library
ii libgmime0-dev 0.6.0-3 MIME library – development files
ii libgmime1 1.0.8-1 MIME library
ii libgmime2.1 2.1.13-0ubuntu MIME library, unstable version
Ahora los backports estan petados. Y no estaban en *ubuntuforums* ?¿
saludos