Introducing Homerun

Aurélien Gâteau agateau at kde.org
Fri Nov 9 22:09:35 UTC 2012


Hi all,

Some of you have already heard about Homerun, but it has never been properly 
announced on this mailing list. Time to fix this.

# What is Homerun?

Homerun is an alternative launcher for KDE Plasma, built using QML Plasma 
Components. It has been developed by Shaun Reich and I during the last 6 
months. It originally started as a QML port of the Search and Launch 
containment, but rapidly evolved into something different.

Homerun currently looks like this:

http://wstaw.org/m/2012/11/09/plasma-windowedy27414.png

As you can see, it is a fullscreen launcher with content organized in tabs. A 
tab is made of several "sources". A source can provide one or more sections to 
a tab. Homerun comes with a few built-in sources, but custom sources can be 
written using libhomerun.

Homerun allows you to start applications, but also to browse hierarchies: for 
example clicking on an item of the "Favorite Places" section won't start 
Dolphin in this folder: it will list the folder content in Homerun itself, 
making it possible to explore the filesystem and directly open the file you are 
looking for. In this aspect it can be seen as an alternative to the Folder 
View applet.

Homerun can either be used from a launcher button in a panel, like Kickoff, or 
as a containment, like the Search and Launch containment.

# Sources vs Runners

One of the main differences between Homerun sources and Plasma runners is that 
sources can provide default content: A source exposes a list of items through 
a Qt model. This model may or may not support additional features such as 
searching/filtering, multiple sections or browsable content.

Sources and Runners are two ways of accessing content. While I haven't tried 
it yet, it should be possible to write a plugin which implements both the 
Runner and the Source interfaces. This could be handy as there is quite some 
code which can be shared between a Runner and a Source.

Note that Homerun ships a "Runner" source, which uses Plasma Runners to 
provide content. This is the source used to perform all "real" searchs (as 
opposed to filtering results).

# Getting it

Homerun code is hosted on KDE Git, get it with git clone kde:homerun

# Schedule

We are planning the release of version 0.1.0 for next week. For now we are 
happy with it staying in playground until it gains maturity. It has been quite 
stable and usable for the last months, but it still needs real-world use.

When we feel it is ready, we will probably ask for it to be moved to either 
extragear or the KDE SC, based on the user feedback we get.

Looking forward to hear your opinion on this new project.

Aurélien


More information about the Plasma-devel mailing list