I can't shut up about GNOME Do...
David Siegel has just blogged about the new release of GNOME Do.
The GNOME Do team has done a great job so far, they've packaged the right stuff for feature freeze getting it into hardy; on top of that they've been fixing tons of bugs. Chris Halse Rogers has done a fantastic job as a MOTU leading the effort to get it into hardy (8.04). He's filed a feature freeze exception to get the latest version into 8.04.
For my part I am proud that I had a a small part in getting things done. In many ways I hope that David's conclusion/thesis to the project involves mentioning the community aspect to the project. I really look forward to reading his findings.
I think it was really gutsy of David to do his senior design project in open source. He could have taken the easy way out and just done some other stupid thing that everyone else is doing. Instead, he put his cards down and did GNOME Do in an open manner.
His code is being shipped in universe for 8.04; he's got a lively mailing list full of contributors submitting code all the time, there are a bunch of branches in launchpad full of even more code ... GNOME Do is all over lifehacker, and a bunch of of other enthusiast sites; so what am I trying to say?
- David filled a niche. People wanted quicksilver-like functionality in linux.
- David could have spent weeks picking infrastructure to host his project. He picked launchpad, which means he spent a small amount of time picking infrastructure, and most of the time getting things done.
- David quickly took the role of "benevolant dictator" and ran with it. In the beginning, Rick and I had some pretty crazy ideas of where Do should go. And David was quick to say "NO". This was frustrating to me, but, he had an idea of where Do should go, so he had the guts to tell us to get bent.
- On the other hand, David was very receptive to ideas ... and listened to them. He was able to look at wishlist bug reports and determine what was important, and what wasn't feasible. When he told us to "get bent", he was able to communicate why ... that's really important.
- David delegated well. Rick and I had tons of things to do, but we like GNOME Do. So we did the usual, "What do you need?" posts. David never let us skate, he didn't care what we did for a living, he just delegated, and we did what he said. Tough love. If we couldn't do it, he would find someone else to do it.
- David didn't discriminate: At first GNOME Do was a GNOME launcher, that ran on Ubuntu; as other people showed up from other distros and other desktop environments he made sure they were taken care of. He removed desktop-specific dependancies, and all the like.
- David encouraged people to make new branches in launchpad. This is so huge. When people wanted to do things David just told them to create a new branch in launchpad and run with it - I find this a total opposite of the the standard status-quo. You want to work on something? Fork it. Let David know when you're ready ... and he'll merge it.
There are more factors, but I consider these the big ones. GNOME Do is awesome. If you're having problems ... post below ...
Edit: No, I'm not a total fanboy, I just think that David has done a pretty awesome job so far, if you think he hasn't, then post in the comments.
One issue I had with Gnome-Do, and which I mentioned on the Twitter plugin page IIRC, is that it does not play well with network proxies, at least as of today. It seems fairly easy to hack any plugin to have it scan gconf settings for a proxy, but since several plugins will obviously need network access, I was wondering if it would be possible to factor it into the core application, rather than duplicating it in each single plugin. In other news, I agree with you: Do rocks, hard.
Posted by:Polaris | March 18, 2008 at 05:54
I wonder why the heck it isn't called KDE Do xD
Posted by:Dread Knight | March 18, 2008 at 08:26
It's cool to see the evolution of the project as time goes on. I remember creating the irc channel and there were two of us in there with Dave popping in once in a while. Now there's usually several of the hackers on the team in there with Dave always jumping in to check things out. Ah, the good ole days.
Lots of cool things in the new announcements and hopefully some KDE users will be happy with many of them as well.
We need to find DBO's real name, not just his irc nick to give him some mad props for this as well. I know he's done some awesome work on things. Too bad Gnome Do didn't get any SOC love. Would have rocked to have DBO paid to keep going on things.
Posted by:Rick | March 18, 2008 at 08:43
You know, I really do like the idea of Gnome-do. I wouldn't go so far as saying that it runs fine in other environments though. Which is fine, since it was first and foremost designed for gnome, but it has a long way to go if it's to become desktop-agnostic. I tried version 0.4, installed using the ppa repo for hardy, in KDE 4 (the glass interface look awsome!), and to be honest: it is next to useless in that environment. For example, it is impossible (at least I haven't been able to figure out how to do it) to get it to recgonize a short-cut to bring up the interface - I have to relaunch the entire application when I want to use it which rather defeats the purpose. And even when the interface is up, most actions do not work. Just a few examples: urls open neither firefox or konqueror. Local paths do not open any kind of filemanager (I suppose it's hardcoded for nautilus?). The Amarok plugin sort-of works. Sort of means that it only finds small parts of my collection, but works fine in using what it finds. Textfiles do not open any texteditor. Open terminal requires the gnome-terminal to be installed (at least it told me that...which the web/path examples didn't). I guess it would work if I had the entire Gnome desktop installed so do could find the correct filemanager and so on, but that's hardly what I would qualify as "removing desktop-specific dependencies". Adding an option to setup your preferences in filemanager, browser, and so on would. So, in short, awesome for Gnome users but a bit dishonest at this point in time to claim it works in other DE as well. That being said, it's a great project and I wish you the best of luck with it.
Posted by:Jonas | March 18, 2008 at 08:46
Jonas, we've worked very hard to make sure all of the things you claim are going wrong work correctly:
1. GNOME Do runs in the background, so even if your shortcut key doesn't work, running the command gnome-do will bring the window up quickly. When you run gnome-do, it does NOT re-launch Do; instead, Do is already running in the background, and it is send a simple DBus message which causes it to show. Use your favorite KDE program to assign a keybinding to gnome-do.
2. Your supposition that Do is hard-coded to work with Nautilus is wrong; Do uses xdg-open to open URLs and file paths. This means that on any Freedektop-compliant system, URLs will open in your default browser and file paths will open in your default file manager. Maybe you have to set these settings somewhere in KDE?
3. Maybe "open terminal here" is using gnome-terminal, but this isn't a bug. The whole reason we've designed our plugin system is so you can create plugins that use the tools and programs you work with. The "Run in Terminal" action is written to use either xterm, Konsole, or gnome-terminal. It probably reads gconf, and if that fails looks for a terminal application in some hard-coded order. And the Amarok plugin needs a lot of love -- in fact, I don't recommend using that plugin! Basically, what you're looking for is KDE-specific plugins, which we certainly could use more of. The core application is very much desktop agnostic as Jorge claims.
Posted by:Dave | March 18, 2008 at 10:07
First, sorry if I sounded confrontational (which, reading my post again, I probably did). And I don't know if it's primarily kde-plugins that I would be looking for even if that would be good too :) Primarily one that is able to interpret what I have i my start-menu...
I guess I was just confused and frustrated that it, for whatever reason, didn't launch my default browser and filemanager. And yes, they are set correctly. And in my path. Honestly, I don't know if it's a Gnome do problem or whether a problem with the Hardy KDE4 packaging. I'll try to see if I can figure out what the problem is though. Hm...think I see a problem actually. Dunno if it's the entire problem but the path to say konsole look odd...
/usr/lib/kde4/bin//konsole
Nevermind the odd place for the files, but why on earth are there two slashes before the binary??? Off to file a bug I think...
Including why your point 1 doesn't work for me...yes, it is running in the background according to KDE's system monitor but just running the command gnome-do in a terminal or alt-f2 run dialog certainly just doesn't make it pop up here. According to the messages in konsole it is loading again but I don't get two entries in the process-list, nor do I get the interface.
Consider me confused...
Posted by:Jonas | March 18, 2008 at 11:02
Hmm... Do you get any messages about DBus not working? Bug reports are greatly appreciated.
Posted by:Dave | March 18, 2008 at 11:33
No, no errors of that kind. Although I've now somehow managed to get it to work. I don't know if I needed to do all of these steps but here goes: 1. I completely purged it, and reinstalled. Just the core package this time. 2. I manually created the user-specific plugin directory (i.e ~./local...) 3. When running in the background, just attaching a hot-key to the command gnome-do was not sufficient. I had to use the commandline you mentioned on the do-website. That is, dbus-send --session --type=method_call --dest='org.gnome.Do' '/org/gnome/Do/Controller' 'org.gnome.Do.Controller.Summon' 4. Just running it manually in a console-window for trying it out wasn't enough to get it to open textfiles in Kwrite, paths in Dolphin and so on. If I did it that way, it insisted on trying to open everything with gnome-terminal. If it's launched on login though it works. And never mind that comment about it not picking up apps in the Kmenu. It does now, when launched on login. Not everything there for some reason (i.e. it finds digikam, but not firefox) but I've made progress :)
Posted by:Jonas | March 18, 2008 at 12:37
"If you're having problems ... post below ..."
Thanks!
1°) if i create an entry for GNOME Do in Preferences->Session (for autostart purpose), then GNOME Do doesn't start minimized with GNOME
i'd like it to start minmized
2°) when launching GNOME Do (ctrl+backspace) the search field is not empty by default :
If i made a search for "fire" and press escape, and if i then want to search for "water", GNOME Do will search "firewater"
Posted by:antistress | March 18, 2008 at 13:27
1) Yep, he got the idea of what is needed spot-on.
2) (I'll skip this one)
3) Yep, quite right. Too many OSS projects are running around like headless chickens (pardon for the comparison, but just try and argue it's not true :/)
4) Yep, dealing with humans is a skill that you have to realize.
5) (I'll skip this one)
6) Cool beans.
7) That's what Linus does too.
As of the last point, David got the idea spot on - in fact everything you've listed can be applied to Linus too. Now if we only had a bit more coders who realized all these points? I'm glad the bunch at Canonical are more like this.
Posted by:Vadim P. | March 19, 2008 at 09:43
One possible modification to gnome-do would be keeping a track of which application is opened for certain key entries and allot a ranking system. If you want to open a script in terminal that too should be an option. I use a program called Matlab, and each time I type in Matlab I get tons of other options but no option for opening my script (also named matlab) in terminal.
Gnome-do has made things a lot simpler but it needs a bit of fine tuning to make it perfect. Great job btw.
Posted by:Retrow | March 19, 2008 at 18:38
Retrow, please read the release notes. The "one possible modification" you suggest has been made :)
Posted by:Dave | March 19, 2008 at 23:50
Oopsie. Hadn't updated sources since last Friday, so I still had 0.3 when I made my earlier post. Now with updated sources and 0.4.0.1 I can see how typing in 't' brings up terminal as the first choice. Just what I was looking for. Splendid job. Thanks a ton.
Posted by:Retrow | March 20, 2008 at 00:31