KubuntuFileSearch
Download and Install
md5sums of all files:
http://home.casema.nl/vollebregt/soc/deb/md5sums.txt
Debian binary package:
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.2_i386.deb
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.2_i386.changes
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.1_i386.deb
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.1_i386.changes
Debian source package:
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.2.diff.gz
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.2.orig.tar.gz
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.2.dsc
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.1.diff.gz
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.1.orig.tar.gz
http://home.casema.nl/vollebregt/soc/deb/kio-locate_0.4.2tvo0.1.dsc
Source tarball:
http://home.casema.nl/vollebregt/soc/deb/kio-locate-0.4.2tvo0.2.tar.bz2
http://home.casema.nl/vollebregt/soc/deb/kio-locate-0.4.2tvo0.1.tar.bz2
Arch/bazaar source package:
Current version: kio-locate--tvo--0.2--patch-12
kio-locate is now on the supermirror. To check it out use:
$ cd workingdirectory $ ARCHIVE=http://mirrors.sourcecontrol.net/tobivollebregt@gmail.com--2005-kio-locate/kio-locate--tvo--0.2 $ baz get $ARCHIVE kio-locate
This creates a directory kio-locate inside workingdirectory. This directory contains the entire source. The archive is automagically registered. To install, do (presuming you're still in workingdirectory):
$ cd kio-locate $ scons configure $ scons $ sudo scons install
Instead of scons configure you might want to use scons configure debug=1 to enable debugging.
Use scons -c install to uninstall.
Type locater:config in konqueror for configuration. It might appear as if the first configuration dialog tab doesn't fit into the window. I've been told this is a bug in KDE 3.4.0 and has been fixed in later versions.
Notes to packagers (in particular: self)
Note: This package uses scons and bksys for building.
First I made sure all debian/* files were OK. I made debian/rules always use mini-scons, and as such added a python (>= 2.4) build-depend in debian/control. The 2.4 is arbitrary. It might also work with 2.3 or even 2.2 but I didn't feel like testing that. I didn't add python (<< 2.5) as with scons. I was told this is needed with depends because the python script in a package is compiled into bytecode. In my case, however, the python script is just used for building, so I reasoned the << 2.5 requirement was useles and I removed it.
WARNING: never just copy-paste a script and execute it!! Certainly not my scripts
I used this script as root to regenerate the package, after making sure all files in debian/ were OK. It assumes you have scons installed.
ARCHIVE=kio-locate--tvo--0.2 FOLDER=kio-locate-0.4.2tvo0.2 DEB=kio-locate_0.4.2tvo0.2_i386.deb DSC=kio-locate_0.4.2tvo0.2.dsc DIFF=kio-locate_0.4.2tvo0.2.diff TARBALL_HYPHEN=kio-locate-0.4.2tvo0.2 TARBALL_UNDERSCORE=kio-locate_0.4.2tvo0.2 # Retrieve source from versioning system baz get $ARCHIVE $FOLDER ## GNU Arch cleanup find $FOLDER -name "{arch}" | xargs rm -rf find $FOLDER -name ".arch-i*" | xargs rm -rf cd $FOLDER # Make the orig. scons dist bunzip2 $TARBALL_HYPHEN.tar.bz2 gzip $TARBALL_HYPHEN.tar mv $TARBALL_HYPHEN.tar.gz ../$TARBALL_UNDERSCORE.orig.tar.gz scons distclean # Build the source package. -S to only make a source package. dpkg-buildpackage -S -rfakeroot cd ..
$ lintian *.dsc
Then:
sudo pbuilder build *.dsc
Note: I set up pbuilder for breezy using PbuilderHowto.
Then in /var/cache/pbuilder/result:
$ lintian *.deb $ lintian *.dsc $ linda *.deb
I installed and purged the package a few times comparing directory hierarchy before and after:
$ ls -R /usr/ > before $ sudo dpkg -i *.deb $ ls -R /usr/ > mid $ sudo dpkg --purge kio-locate $ ls -R /usr/ > after $ diff -u before after
No changes in between before and after, so everything's fine.
Then I uploaded it, downloaded it, generated md5sums before up and after download and compared them. They were equal so everything's fine.
Two other checks, run in project directory ($FOLDER in script):
sudo fakeroot debian/rules clean
and examine project directory. If there are any files left from the build process you should modify the clean rule debian/rules to delete them.
debuild -S
shouldn't depend on -dev packages
Issues
Hidden files
Konqueror only hides files starting with a dot, and not files like "/home/ubuntu/.local/trash/foo". Question is, should we hide hits containing "/." in kio_locate, or modify konqueror to do this (or file a bug). The first option is easiest to implement, but the second is more intuitive (only one location to change display of hidden files).
Created a new patch and sent it to kde-devel: http://home.casema.nl/vollebregt/soc/uds_hidden.diff Committed by dfaure, revision number: 444176
Status: RESOLVED
Done
http://home.casema.nl/vollebregt/soc/changelog-kio-locate--tvo--0.1.html
http://home.casema.nl/vollebregt/soc/changelog-kio-locate--tvo--0.2.html
Todo
Short term
(no particular order)
(kde-apps.org) I downloaded the sources and, after spotting a "debian" subdirectory, proceeded to do dpkg-buildpackage. I run Debian/Unstable. I thought this was more of a (K)Ubuntu package, but I gave it a go anyway...
It complains about a dependency with python2.4; however, python 2.4.1 is there. You might want to fix that for regular, not-Ubuntu debian users. Ignoring the dependency with -d works fine, and it looks like the DEB package was installed fine. Great tool, extremely useful Needs investigation(kde-apps.org) As suggested I used locate as my default search engine but if multiple entries are searched for nothing is returned as the actual search goes from "kat home" to "locate:kat+home". I can't confirm this. On Kubuntu it works fine. It goes from "kat home" to "locater:search?q=kat+home" which is perfectly right.
- Maybe add config item to disable config either entirely, or disable just locate tab or just white/blacklist tab (for sysadmins). Combined with filters tab they can then blacklist system folders for example. Or whitelist home folders.
- Integrate locate:/ with Konqueror's search bar (is already included in kio-locate_0.4.2 by Armin Straub isn't it?). Also includes figuring out how to set default search plugin per profile.
- Look at Kat(done) and Kat source
- Look at Tenor and Tenor source
- Look at Katapult(done) and Katapult source
- Look at Kfind(done) and Kfind source
- Look at kio-clucene and kio-clucene source (talk to trollichon)
- Look at beagle and beagle source (requested)
Look at indexlib (the 2 links in my bookmarks )
Additionally, these two extra items are found when grepping through the kio-locate_0.4.2 source tree. Both are to do status, but pretty low priority in my opinion.
kio_locate.cpp: /// \todo Is UDS_NAME used for anything in stat? If so we should kio_locate.cpp- /// at least strip of the protocol part. kio_locate.cpp- UDSEntry entry; kio_locate.cpp- addAtom(entry, KIO::UDS_NAME, url.decode_string(url.url()));
kio_locate.cpp: /// \todo Somehow locate: and locate:/ is thought to be a directory kio_locate.cpp- /// by konqueror anyway. How to change this? kio_locate.cpp- } else { kio_locate.cpp- // What's this?
Long term
(no particular order)
- Patch KDE to use default search engine in open dialog if path doesn't start with ~ or / (it now reverts to home directory)
- (August) Finally decide which of above projects (Kat, Tenor, Katapult, Kfind, kio-clucene, inotify locate) to help, take over or start.
(August) Add project to KDE extragear, http://extragear.kde.org, suggested by Armin Straub.
Other ideas:
- (August, first week?) update locate database with inotify, or FAM API (through gamin). FAM isn't possible, it can only monitor directories non-recursively.
- Integrate locate:/ with katapult
- Make kfind or Kat better
Links
http://lists.kde.org/?l=kde-devel&m=111328905108759&w=2
http://extragear.kde.org
http://arminstraub.de/browse.php?page=programs_kiolocate&lang=en
http://udu.wiki.ubuntu.com/KubuntuFileSearch
Developer
UDU Notes
Status
Created: 2005-04-28 by JonathanRiddell
Priority: NeedsPriority
People: JonathanRiddellLead, AndreasMuellerSecond
Contributors: JonathanRiddell
- Interested:
Status: ApprovedSpecification, BreezyGoal, UduBof, DistroSpecification, JonathanRiddellQueue, AndreasMuellerQueue
- Branch:
- Malone Bug:
- Packages:
- Depends:
- Dependents:
- BelgianTeam/IrcMeetings/Logs (ubuntu-be-irc-meeting-2009-04-08-log.txt)
- Bugs/OneiricWorkflowSurveyResults (bug_workflow_survey_results.ods)
- DesktopTeam/Meeting/2009-02-17 (bugs.csv)
- EgyptTeam/Events/2010-07-03-SummerTraining (Cairo.odp)
- Grantbow/UpdatedSlides (locos-ubuntu-2008-07.odp)
- Kubuntu/Meetings/Minutes/2006-02-16
- Kubuntu/OldKubuntu
- KubuntuFileSearch
- KubuntuFileSearchWithKat
- LucidLynx/ReleaseNotes/ChangeSummary/10.04.4 (10.04.4-Fixes.raw.lst)
- QATeam/MainPackagesWithoutBugSubscribers (unsubscribed-packages.txt)
- QATeam/phillw/MainPackagesWithoutBugSubscribers (unsubscribed-packages.txt)
- ReleaseTeam/Meeting/2010-06-18 (ubuntu-meeting.html)
- ReleaseTeam/Meeting/2010-06-25 (ubuntu-meeting.html)
- ReleaseTeam/Meeting/2010-07-16 (ubuntu-meeting.html)
- ReleaseTeam/Meeting/2010-07-30 (ubuntu-meeting.html)
- ScreencastTeam/TranslationStatus (20070918_watching_video_en.srt)
- UbuntuBelowZero/BOFs
UduSessions: 1, 4, 8, etc
Introduction
Make an easy way to search the system for files in Kubuntu.
Rationale
locate is a great command line tool, however it should have a graphical version available.
Scope and Use Cases
A user wants to find a file called foo.xmi, he types in foo.xmi into Konqueror's search bar and it finds the file.
Implementation Plan
kio-locate is an ioslave (virtual filesystem) which is a graphical front end to the locate command line tool. A URL such as locate:/foo.xmi will show all the files on the system matching that search in the same way as any other folder is shown. It should be included in Kubuntu. The Konqueror search plugin should be modified to be able to search for files using kio-locate and Konqueror's about screen should be able to search using kio-locate.
In the longer term, KDE will use Tenor (formerly klink) an API to create links between any element of the desktop. It will allow for search to be fully integrated with all elements of KDE including file manager and file save/open dialogues and Beagle like tools based on the links created with Tenor.
Data Preservation and Migration
Packages Affected
- Konqueror
kio-locate
konq-plugins
User Interface Requirements
Alter about:konqueror to include a search bar.
KubuntuFileSearch (last edited 2008-08-06 16:20:54 by localhost)