{"id":181,"date":"2009-08-29T21:37:13","date_gmt":"2009-08-29T18:37:13","guid":{"rendered":"http:\/\/www.held.org.il\/blog\/?p=181"},"modified":"2009-08-29T21:37:13","modified_gmt":"2009-08-29T18:37:13","slug":"avahi-and-other-relatively-new-desktop-technologies","status":"publish","type":"post","link":"http:\/\/www.held.org.il\/blog\/2009\/08\/avahi-and-other-relatively-new-desktop-technologies\/","title":{"rendered":"Avahi and other (relatively) new desktop technologies"},"content":{"rendered":"<p>Every time when I try to sit and study, I find something better to do. This time it was playing with <a href=\"http:\/\/en.wikipedia.org\/wiki\/Avahi_(software)\"><strong>Avahi<\/strong><\/a> and some avahi clients such as <strong><a href=\"http:\/\/www.pidgin.im\">pidgin<\/a>, <a href=\"http:\/\/amarok.kde.org\/\">amarok<\/a>, <a href=\"http:\/\/www.pulseaudio.org\/wiki\/\">pulseaudio<\/a><\/strong>.<\/p>\n<p><span style=\"color: #888888;\"><strong>What is Avahi?<\/strong><\/span><\/p>\n<p>A free <a href=\"http:\/\/\">zeroconf<\/a> implementation which is very common on Linux distros, just as <a href=\"http:\/\/en.wikipedia.org\/wiki\/Bonjour_(software)\">Bonjour<\/a> is Apple's zeroconf implementation. AKA multicast DNS (mDNS), and is probably similar to the Microsoft-backed <a href=\"http:\/\/en.wikipedia.org\/wiki\/Universal_Plug_and_Play\">UPnP<\/a>.<br \/>\nLong story short: it allows discovering and resolving the available services on the LAN (if they're zeroconf-aware, of course)<\/p>\n<p><strong><span style=\"color: #888888;\">How do I use Avahi?<\/span><br \/>\n<\/strong><\/p>\n<ul>\n<li><strong>Discovering: <\/strong>If the avahi daemon is installed and running, the magical command <em>avahi-browse -a<\/em> (might require the avahi-utils package) would query and display all the available services.<\/li>\n<li><strong>Resolving<\/strong>: the following weird <em>hosts<\/em> line in <em>\/etc\/nsswitch.conf<\/em> enables resolving through avahi (usually with the .local suffix, i.e. ping mymachine.local):<br \/>\n<blockquote><p>hosts:\u00c2\u00a0\u00c2\u00a0\u00c2\u00a0\u00c2\u00a0\u00c2\u00a0\u00c2\u00a0\u00c2\u00a0\u00c2\u00a0\u00c2\u00a0 files dns mdns4_minimal [NOTFOUND=return]<\/p><\/blockquote>\n<\/li>\n<\/ul>\n<p><strong><span style=\"color: #888888;\">Software using Avahi out of the box:<\/span><br \/>\n<\/strong><\/p>\n<ul>\n<li><strong>Pidgin: <\/strong>simply add a new Bonjour account, and you'll be able to instantly talk to your LAN-neighbors.<\/li>\n<li><strong>CUPS or other printer config frontends:<\/strong> find zeroconf-supporting printers on the LAN.<\/li>\n<li><strong>Amarok v2: <\/strong>automagically finds all <a href=\"http:\/\/en.wikipedia.org\/wiki\/Digital_Audio_Access_Protocol\">DAAP<\/a>-shares on the LAN (iTunes, for example). The bad news is: iTunes v7 and newer weren't yet reverse-engineered, so amarok cannot login to the most popular DAAP servers. Apple, why won't you give us a hand?<\/li>\n<li><strong>Pulseaudio:<\/strong> using the <em>paprefs<\/em> program, you can choose to share your sound devices and become zeroconf-discoverable. This means that people running the <em>padevchooser<\/em> program can find your sound card and redirect audio to\/from yours.\n<ul>\n<li>It seems to require a wide bandwidth (couldn't find an option to lower the sound quality)<\/li>\n<li>I've experienced some bugs which required restarting pulseaudio and other voodoo, in order to make things work.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Every time when I try to sit and study, I find something better to do. This time it was playing with Avahi and some avahi clients such as pidgin, amarok, pulseaudio. What is Avahi? A free zeroconf implementation which is very common on Linux distros, just as Bonjour is Apple&#8217;s zeroconf implementation. AKA multicast DNS [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[7],"tags":[21,24,31,198,92,132],"_links":{"self":[{"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/posts\/181"}],"collection":[{"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/comments?post=181"}],"version-history":[{"count":0,"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/posts\/181\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/media?parent=181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/categories?post=181"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.held.org.il\/blog\/wp-json\/wp\/v2\/tags?post=181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}