Beagle è uno strumento di ricerca che indicizza lo spazio delle informazioni perosonali dell'utente per aiutarlo a trovare qualsiasi informazione stia cercando. È possibile utilizzare Beagle per trovare documenti, e-mail, cronologia Web, Instant Messenger e conversazioni ITC, codice sorgente, immagini, file musicali, applicazioni e molto altro ancora.
Beagle supporta i seguenti sorgenti di dati:
File system
Pulsanti di avvio per le applicazioni
Evolution mail e address book
log del sistema di messaggistica in tempo reale Gaim
Pagine Web Firefox (come vengono visualizzate)
Aggregator Blam e Liferea RSS
Tomboy notes
Supporta anche i seguenti formati file:
OpenOffice.org
Microsoft Office (doc, ppt, xls)
HTML
Images (jpeg, png)
Audio (mp3, ogg, flac)
AbiWord
Rich Text Format (rtf)
Texinfo
Pagine man
Codice sorgente (C, C++, C#, Fortran, Java, JavaScript, Pascal, Perl, PHP, Python)
Testo
Beagle indicizza automaticamente qualsiasi cosa presente nella home directory, ma è possibile scegliere di escludere alcuni file o directory. Beagle comprende anche diversi strumenti da utilizzare per la ricerca dei dati.
Il daemon di Beagle (beagled) esegue automaticamente tutte le indicizzazioni. Come impostazione predefinita, qualsiasi cosa presente nella home directory viene indicizzata. Beagle è in grado di rilevare le modifiche apportate alla home directory indicizzando di nuovo i dati di conseguenza.
I file vengono immediatamente indicizzati al momento della creazione, indicizzati di nuovo quando modificati e rilasciati dall'indice quando cancellati.
Le e-mail vengono indicizzate all'arrivo.
Le conversazioni IM vengono indicizzate mentre si chatta una riga alla volta.
L'indicizzazione dei dati richiede una certa potenza, anche se il daemon di Beagle cerca di essere meno intrusivo possibile. Contiene uno scheduler che ha il compito di dare la priorità ai task e di controllare l'utilizzo della CPU usage, sulla base dell'utilizzo attivo della workstation da parte dell'utente.
Se si desidera impedire che una directory (e tutte le sue sottodirectory) venga indicizzata, creare un file vuoto dal nome .noindex e inserirlo nella directory. È possibile aggiungere una lista di file e directory al file .noindex per impedirne l'indicizzazione. Nel file .noindex è consentito l'uso dei caratteri jolly.
È anche possibile inserire un file.neverindex nella propria home directory contenente una lista di file che non devono mai essere indicizzati. Anche in questo file è consentito l'uso dei caratteri jolly. Utilizzare gli stessi caratteri jolly utilizzati per glob (ad esempio, f*le??.txt). È anche possibile utilizzare espressioni regolari più potenti aggiungendo una barra prima e dopo il pattern (ad esempio, /file.*.txt/). Per ulteriori informazioni, visitare il sito Web di glob-UNIX (http://docs.python.org/lib/module-glob.html).
Beagle ha un sistema efficace per stabilire dove indicizzare i file cercando di non interferire con altre applicazioni in esecuzione. Beagle definisce di proposito quando effettuare l'indicizzazione in base al carico e all'inattività del sistema, in modo tale da non influire negativamente sul desktop. In ogni caso, se si desidera indicizzare subito la propria home directory, immettere il comando riportato qui di seguito in una finestra del terminale prima di eseguire Beagle:
export BEAGLE_EXERCISE_THE_DOG=1
Beagle comprende i seguenti comandi che consentono di visualizzare lo stato di indicizzazione corrente:
Visualizza la quantità e il tipo di documenti indicizzati.
Visualizza l'attività corrente che il daemon di Beagle sta eseguendo (in modo continuativo).