I found the unity-place-python sample code and used that to create a lens to search your filesystem. It's currently kinda unstable, but you can search for files and you usually get results.
You can access the lens in the Unity Launcher. You can see it here where I'm searching for "lecture".
The magnifying glass in the bottom left corner is the FileSearch Lens. (The icon changes based on your icon theme.) The lens shows files and folders in two separate sections.
You can add it to your main dash (Ubuntu button) by setting ShowGlobal=true
in /usr/share/unity/places/filesearch.place
. Unfortunately, Unity doesn't currently have a way to customize what lenses are in the Dash.
The files and folders sections are combined in the dash under the heading "File Search".
Config
When filesearch-lens first runs, it will create a config file ~/.filesearch.cfg
. You can customize the directories to search, how deep to search, and what folders to ignore.
For example, here's my config:
[search]
#dirs = a comma separated list of folders to search
dirs = ~/data
#depth = how deep from / to search
depth = 5
[ignore]
#pattern = python-style regex for directories to ignore
pattern = ^\.|^bin$|^lib$|^apps$|^settings$|^eclipse$
I want it to search ~/data and two directories below it and to ignore all dotfiles and some other specific folders. (Note: No, it's not smart enough to not search the same folders if you give it nested folders like ~/,~/code
, so don't do that.)
If you change the config file, you need to restart the daemon to reload it:
killall unity-filesearch-daemon
Install
I packaged it so you can download it from my ppa.
sudo add-apt-repository ppa:pydave/unity-lenses
sudo apt-get update
sudo apt-get install unity-place-filesearch
Then you need to reset unity before the lens will be noticed:
setsid unity
Experimental Features
If you give it a path, it usually shows the path as one of the results (so you can open folders like you could in gnome-do).
One of the features I'm still trying to get working properly is the ability to type a path, a space, and then a search word to search in the path. Most of the time it works, but sometimes it fails to find anything (probably because the search is taking forever).
I just ran into the same problem that you did. I messed around with a bunch of settings within my .desktop files to try to get the name to show up in the Unity launcher, since I had created the .desktop files in ~/Desktop then moved them to ~/.local/share/applications
All I had to do to get the Unity application launcher to show the names is log out of Ubuntu and log back in. Pretty lame, I know, but it worked.
At least this shows that in my case (and probably yours too) the .desktop files were not somehow wrong. After all, in my case, the desktop-file-validate program didn't list any errors. There was probably some name cache within Unity that needed to be cleared. It would be more satisfying to know how to do that without logging out, but this workaround is good enough for me for now. Hope this observation helps someone else!
Best Answer
I have a similar problem. If I've just logged in and attempt to access the dash, then the search field doesn't automatically acknowledge my typing. I have to use my mouse to click on the search field. Or I have to close the dash and open it again.
The best answer I can give, from my experience, is to wait a bit longer before accessing the dash. Perhaps it's still loading stuff in the background...