Avahify Your Application!

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/avahify-your-app.html

It has never been easier to add Zeroconf service discovery support to your GTK application!

The upcoming Avahi 0.6.18 will ship with a
new library libavahi-ui which contains a GTK UI dialog
AuiServiceDialog, a simple and easy-to-use dialog for
selecting Zeroconf services, similar in style to GtkFileChooserDialog and friends. This dialog should be used whenever there is an IP
server to enter in a GTK GUI. For example:

  • Mail applications such as Evolution may use it to browse for POP3, POP3S, IMAP, IMAPS and SMTP servers.
  • VNC applications may use it to browse for VNC/RFB servers
  • Database clients such as Glom may use it to browse for PostrgreSQL servers
  • FTP clients may use it to browse for FTP servers
  • RSS readers may use it to browse for local RSS feeds

So, how does it look like? Here’s a screenshot of a service dialog browsing for FTP, SFTP and WebDAV shares simultaneously:

Service Dialog

The dialog properly supports browsing in remote domains, browsing for
multiple service types at the same time (i.e. POP3 and POP3S) and supports
multi-homed services. It will also resolve the services if requested. Avahi
will ship a (very useful!) example tool zssh.c which
if started from the command line allows you to quickly browse for local SSH
servers and connect to one of those available. (Short Theora screencast of zssh
Please excuse the strange cursor, seems to be a bug in Istanbul 0.2.1,
which BTW is totally broken on multi-headed setups):

A simple application making use of this dialog might look like this:

#include <gtk/gtk.h>
#include <avahi-ui/avahi-ui.h>

int main(int argc, char*argv[]) {
    GtkWidget *d;

    gtk_init(&argc, &argv);

    d = aui_service_dialog_new("Choose Web Service");
    aui_service_dialog_set_browse_service_types(AUI_SERVICE_DIALOG(d), "_http._tcp", "_https._tcp", NULL);

    if (gtk_dialog_run(GTK_DIALOG(d)) == GTK_RESPONSE_OK)
        g_message("Selected service name: %s; service type: %s; host name: %s; port: %u",
		aui_service_dialog_get_service_name(AUI_SERVICE_DIALOG(d)),
		aui_service_dialog_get_service_type(AUI_SERVICE_DIALOG(d)),
		aui_service_dialog_get_host_name(AUI_SERVICE_DIALOG(d)),
		aui_service_dialog_get_port(AUI_SERVICE_DIALOG(d)));
    else
        g_message("Canceled.");

    gtk_widget_destroy(d);

    return 0;
}

A more elaborate example is zssh.c. You
may browse the
full API online
.

AuiServiceDialog is not perfect yet. It still lacks i18n and a11y
support. In addition it follows the HIG only very roughly. Patches welcome! I
am also very interested in feedback from more experienced GTK programmers,
since my experience with implementing GTK controls is rather limited. This is
my first GTK library which should really feel like a GTK API. So please, read
through the
API
and the
implementation
and send me your comments! Thank you!

If you want to integrate AuiServiceDialog into your application and
don’t want to wait for Avahi 0.6.18, just copy avahi-ui.h
and avahi-ui.c into your sources
and make sure to add avahi-client, avahi-glib, gtk+-2.0 to your pkg-config dependencies.

IQ in the Movies

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/iq-in-the-movies.html

The (original) IQ Light is featured in the stylish and funny Hollywood movie Lucky Number Slevin:

Lucky Number Slevin Still

Related to this, don’t miss this small but beautiful gallery of a mobile built entirely from (mexican style) IQ lights of various sizes. I hope to post better quality pictures of the same mobile shortly:

IQ Gallery

Oh, and I am finally back in .de after my trip to .au and
linux.conf.au 2007/FOMS 2007. I hope to post a
recap of the conferences and their outcome for PulseAudio and Avahi shortly.

Thanks to the impressing work of Silvia Pfeiffer and the LCA video team there’s now a video of my PulseAudio presentation at LCA available online. (Ogg Theora, Java Cortado). Don’t miss it!

FOMS 2007/Linux.conf.au 2007

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/foms-lca-2007.html

On Wed, January 17th, I will be speaking at linux.conf.au 2007 about the PulseAudio sound server. Before that, on Mon January 15th, I will do a presentation about Avahi, together with Trent Lloyd, at GNOME.conf.au 2007. And even before that, I will attend FOMS 2007, and probably say a word or two about PulseAudio, again.

Can’t wait for those 25h+ of flying from .de to .au!

One last followup

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/iq-light-final.html

A small, final followup on the blog stories about the mexican style IQ Light:

After some unsuccessful experimenting with materials like Polystyrene
(cracks too easily), I settled on 0.3mm white Polypropylene which is both easy
to work with and easy to find. The light becomes a little bit blue-greyish
cold. I bought Ibico PolyOpaque
report covers
for this purpose, which you can get at German Staples stores.
You can get it in 25, 50 or 100 DIN-A4 packs. Because only two full-size
pieces can be cut from a single A4 sheet and you need 30 pieces you need at
least 15 sheets for a single full-size lamp. I built 10 lamps in various sizes from
this material and it seems to work pretty well.

Have fun!

Das Leben der Anderen

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/leben-der-anderen.html

German movies are usually not my thing – I don’t like the topics, I don’t
like the scripting, I don’t like the acting, I don’t like the actors, I don’t
like the drama and I don’t like the humor. (Ok, they usually lack humor entirely, so there’s not much not to like of the humor.)

However, there’s now a notable exception: Das Leben der Anderen (The Lives of
Others
) is a very good film, one that I really like. It’s an absorbing drama, the scripting is good and the acting is fine. There’s a good reason that
it has won the European Movie Award (Best Film) and is one of the top
contenders for next years’ Oscar (at least the foreign language one).

If you get the chance to see this movie, do it! It’s worth it.

San Francisco

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/photos/san-fran.html

As a followup to my Windows of Barcelona series I prepared Windows of San Francisco:

Windows of San Francisco

A few other series :

Adjazenz!

No, the German names and numbers of the series don’t have any special meaning, their sole purpose is to sound “artsy”, in the spirit of the famous work “Fluktuation 8” by a certain polish action artist.

The remaining photos I made during my visit in San Francisco after the
Ubuntu Developers’ Summit in Mountain View in November are now online,
as well.

Unique Eyebrows

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/photos/unique-eyebrows.html

Dear American People,

I guess you’ll find businesses selling unique eyebrow
designs
only in god’s own country:

Unique Eyebrows

And what does “unique” mean? Do their customers get two
different designs for their two eyebrows? – What a bargain!

Groucho Marx’ greasepaint eyebrows are unique, in a way. Maybe that’s what they are selling?

Confused,
     Lennart (a worried European)

Interlocking Quadrilaterals

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/iqlamp-stencil.html

As promised, here’s
a stencil drawing of the Mexican-style IQ Lamp: .ps, .svg, .pdf. (1:1, DIN A4/ISO 216 paper size)

Fake IQ Light from Mexico - Stencil

30 of these are needed to assemble one mexican style lamp, as depicted below.
The material to cut these patterns from needs to be a thin (less than .5 mm
thick) plastic (or maybe cardboard) which needs to be flexible – but not too
flexible, and not glossy. It might be advisable to use energy-saving light
bulbs for this lamp. They are entirely hidden inside the lamp and might be good
to avoid overheating of the plastic. Assembling
instructions
, Video, Instructable. Please note
that assembling the mexican-style IQ light needs a quite a bit manual force
because all pieces are bent a little, in contrast to the original danish
design which appears to be assembled without any force. (at least the video
clip suggests that.) For mounting a cable/lamp socket you might need to cut a
small hole in one of the plastic sheets, to put the cable through.

Once again the photo:

Fake IQ Light from Mexico

Have fun!

Chasing A Light

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/chasing-light.html

Last friday I posted a little Lazyweb experiment,
a hunt for information about a certain kind of lamp sold by a street dealer in
Mexico City. A quick followup on the results:

Surprinsingly many people responded, mostly by email, and partly by blog comment.
As it appears I am not the only one who’s looking for this specific type of
lamp. Furthermore, a non-trivial set of Planet Gnome readers actually already
owns one of these devices. Apparently counterfeit versions of this lamp are
sold all around the world by street dealers and on markets.

The lamp seems to be a modified version of the “IQ Light”, a self
assembly lighting system made up of interlocking quadrilaterals
. It is
a scandinavian design, by Holger Strøm, 1973. It is nowadays
exclusively distributed by Bald & Bang,
Denmark. The lighting system has a very interesting web site of its own, which even includes an
HOWTO for
assembling these lamps. The Bald & Bang web site has a
very stylish video which also shows how to assemble an IQ lamp.

Fake IQ Light from Mexico

While my mexican specimen and the official design are very similar, they
differ: the mexican design looks – in a way – “tighter” and … better (at
least in my humble opinion). For comparison, please have a look on the photo I took from the mexican version which is shown
above, and on the many photos returned by Google
Images
, or the one from the IQ Light homepage. It
appears as if the basic geometrical form used by the mexican design is somehow
more narrow than the official danish one.

So, where can one buy one of those lamps? Fake and real ones are sold on
eBay
, every
now an then
. The Museum
Store of the New York MoMA
sells the original version for super-cheap $160.
If you search with Google you’ll find many more offers like this one, but all
of them are not exactly cheap – for a bunch of thin plastic sheets. All these
shops sell the danish version of the design, noone was able to point me to a shop
where the modified, “mexican” version is sold.

Given the hefty price tag and the fact that the fake, mexican version looks
better then the original one, I will now build my own lamps, based on the
mexican design. For that I will disassamble my specimen (at least partially)
and create a paper stencil of the basic plastic pattern. I hope to put this up
for download as a .ps file some time next week, since many people
asked for instructions for building these lamps. Presumably the original
design is protected by copyright, hence I will not publish a step-by-step guide
how to build your own fake version. But thankfully this is not even necessary, since the vendor already published a HOWTO and a video for this, online.

Thank you very much for your numerous responses!

Ubuntu vs. Free Software

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/ubuntu-vs-free-software.html

Everybody should read Roman Kennke’s
take on Mark Shuttleworth’s OpenSUSE spam mail
. It’s constructive and sensible.

I hope the Ubuntu people find the strength to resist the short-term bliss of
desktop bling for long-term software freedom!

Please learn the lession Java teaches us: resist the temptation of
closed source software and develop alternatives as free software!

Dear Lazyweb!

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/mexico-lamp.html

Let’s see how well Lazyweb works for me!

One of the nicest types of lamps I know is depicted on this photo:

mexico lamp

This lamp is built from a number (16 or so, it’s so difficult to count) of
identical shapes which are put together (a mano) in a very simple, mathematical
fashion. No glue or anything else is need to make it a very robust object. The
lamp looks a little bit like certain Julia fractals, its geometrical structure
is just beautiful. Every mathematical mind will enjoy it.

This particular specimen has been bought from a street dealer in Mexico
City, and has been made of thin plastic sheets. I saw the same model made from
paper on a market near Barcelona this summer (during GUADEC). Unfortunately I
didn’t seize the chance to buy any back then, and now I am regretting it!

I’ve been trying to find this model in German and US shops for the last
months (Christmas is approaching fast!) but couldn’t find a single specimen. I
wonder who designed this ingenious lamp and who produces it. It looks like a
scandinavian design to me, but that’s just an uneducated guess.

If you have any information about this specific lamp model, or could even
provide me with a pointer where to buy or how to order these lamps in/from
Germany, please leave a comment to this blog story, or write me an email to
mzynzcr (at) 0pointer (dot) de! Thank you very much!

Cui Bono?

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/cui-bono.html

So, you thought that only Linux users (and other alternative OS zealots)
would benefit from reverse
engineered Windows drivers
? Ha! Far from the truth, it’s the Windows
users themselves
who are benefitting. (Sorry, that link is in German)

Too bad that this specific Windows port actually infringes my copyrights
since it links my GPL’ed code against the non-free inpout32.dll. And the guy who did
that port doesn’t even think it’s necessary to put his email address anywhere.

MSI Laptop Owners!

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/megawiki.html

MSI Laptop Owners! Join us and extend the MegaWiki, the new Wiki for all kinds of information on Linux on MSI MegaBooks! (and all MSI built laptops sold under other brands)

The MegaWiki is still rather empty but we hope that it will soon grow as
large as our inspiration, the ThinkWiki
which collects information about IBM ThinkPads. For that we need your help!

This site will be the new home of the MSI laptop drivers (backlight control,
rfkill) and provide modified ACPI DSDTs to fix a few BIOS errors. And more!

Conferences: UDS, FOMS and LCA

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/conferences.html

To my surprise I have been invited to the Ubuntu Developers Summit in
Mountain View early next month (as a “ROCKSTAR”, to quote Mark), to promote PulseAudio. And that although I am not an
Ubuntu developer, nor even much of an Ubuntu user. I’ll be available for
discussing everything Multimedia/PulseAudio related. While I’ve not been
invited because of my involvement in Avahi/Zeroconf I will, of course, also be
available for discussion of these topics. As it appears, Canonical is not
resentful
, or maybe it’s just their way to bribe me into registering with
Launchpad? 😉

After UDS I plan to stay a few more days in San Francisco to visit the city.
Can anyone point me to cheap accomodation in SF, or perhaps even lives in SF and
has room where I could sleep?

In addition my PulseAudio presentation has been accepted at linux.conf.au 2007. At GNOME.conf.au I hope to give
another presentation, together with Trent Lloyd about Avahi, everyone’s favourite Zeroconf
implementation. And finally I plan to give yet another presentation, again about
PulseAudio, at FOMS 2007, the Foundations of Open Media Software
conference, which happens shortly before linux.conf.au, also in Sydney. FOMS
is still looking for more people to speak at the conference, so, please go to
their CFP page
and send in your proposal if you have something to talk about!

One fring to rule them all…

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/fring2.html

A while ago I
played around with Cairo and created a Python tool fring, similar to KDE’s Filelight, however not
interactive and very simple. Frédéric Back took my code and gave it a little
GUI love, and this is the result:

fring screenshot

Frédéric added a nice interactive GTK GUI and a fully asynchronous directory
walker based on Gnome-VFS which runs in a background thread and thus doesn’t
block the UI. This makes the user interface snappier than Filelight’s ever was.
It’s a lot of fun to navigate your directories like this!

I would have liked to post a screencast of the new fring in action here, to show how
snappy it is. But unfortunately both Byzanz and Istanbul failed horribly on my 16bpp
display.

The current version of fring is not yet polished for a public
release. In the meantime, you can get the sources from the SVN:

svn checkout svn://svn.0pointer.de/fring/trunk fring

Yes, I am aware that a future version of Baobab will offer a similar view of
the filesystem. However, it just was so much fun to hack on fring, and
due to the power of Python it was so easy and quick to develop this tool, that
we just couldn’t resist to do it.

Updates

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/stuff.html

Various, unrelated news:

Thanks to Marvin Stark my project syrep is now
available in Debian. As you might know all the cool kids have written their
own distributed revision control systems. This is my contribution on this
topic. Although I started to work on it four years ago syrep is still unrivaled
and unbeaten in its specific feature set. (Which is admittedly very different
from the feature set of most other software in this area.)

Thanks to CJ van den Berg and Sjoerd Simons (and a few others from
#pulseaudio) PulseAudio is now available in
Debian
, the auxiliary GUI tools like pavucontrol seem to
be still missing. Nonetheless: it’s now easier then ever to try PulseAudio:

sudo aptitude install pulseaudio \
    pulseaudio-module-hal \
    pulseaudio-esound-compat \
    pulseaudio-utils \
    libgstreamer-plugins-pulse0.10-0 \
    pulseaudio-module-gconf \
    pulseaudio-module-x11 \
    pulseaudio-module-zeroconf

For the next months I will focus on my Diplomarbeit (German equivalent of a master thesis). Due to this I passed maintainership of Avahi to Trent Lloyd and of PulseAudio to Pierre Ossman. I hope to resume maintainership of both projects in January.

My first non-trivial kernel patch has been merged into Linus’ kernel, although the 2.6.19 merge window was already closed. I take this as birthday present from Linus.

If you have a laptop (such as the MSI S270) with Ricoh SD/MMC
interface (not one of the new controllers which are SDHCI compatible, but the
old ones where the SD/MMC is a virtual PCMCIA slot identifying itself as
Bay1Controller), then please support me in writing a Linux driver for
it and request the necessary documentation and datasheets from Ricoh. For more
information on this issue see this
posting on the s270-linux mailing list
, and this followup.

That’s all for now.

The collective thoughts of the interwebz