Post Syndicated from Lennart Poettering original http://0pointer.net/blog/photos/hheurokai.html
Avahi 0.6 in Beta
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-0.6-pre.html
Unless we find any major bugs Avahi 0.6 will be released on friday. We ask everyone to do some testing for us:
There have been a bunch of API changes. However, the API is now frozen, so feel free to start porting your application to the new API now.
A rough overview about the many improvements in Avahi 0.6.
- Support for (read-only) wide area support. (i.e. DNS-SD over unicast DNS)
- Ported to FreeBSD, NetBSD, Darwin/MacOSX and to some extent OpenBSD
- Compatibility layers for HOWL and Bonjour
- Support for registering/browsing abritrary records
- Proper support for DNS-SD service subtypes
- Native C implementations of the client utilities
- Now passes the Bonjour conformance test suite without any exceptions
- “Passive observation of failures”
- chroot() support
- Many traffic reduction improvements
- Bugfixes, cleanups
Avahi 0.6 in Beta
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-0.6-pre.html
Unless we find any major bugs Avahi 0.6 will be released on friday. We ask everyone to do some testing for us:
There have been a bunch of API changes. However, the API is now frozen, so feel free to start porting your application to the new API now.
A rough overview about the many improvements in Avahi 0.6.
- Support for (read-only) wide area support. (i.e. DNS-SD over unicast DNS)
- Ported to FreeBSD, NetBSD, Darwin/MacOSX and to some extent OpenBSD
- Compatibility layers for HOWL and Bonjour
- Support for registering/browsing abritrary records
- Proper support for DNS-SD service subtypes
- Native C implementations of the client utilities
- Now passes the Bonjour conformance test suite without any exceptions
- “Passive observation of failures”
- chroot() support
- Many traffic reduction improvements
- Bugfixes, cleanups
Hamburg Harbour
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/photos/hheurokai.html
The Eurokai in the Harbour of Hamburg in the early evening:
Hamburg Harbour
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/photos/hheurokai.html
The Eurokai in the Harbour of Hamburg in the early evening:
Avahi Gains Compatibility Layers for Apple Bonjour and HOWL
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-compat.html
A short while ago I checked in to SVN two API/ABI compatibility
modules which implement the HOWL and the Apple
Bonjour (dns_sd.h) DNS-SD/mDNS APIs on top of Avahi’s
native API. Effectively this means that you can run *all*
Zeroconf-enabled software that is available for free operating systems
seamlessly on top of Avahi. Or at least the software that uses the
limited subset of API functions we support. Missing functions will be
implemented on an on-demand basis. Gnome-VFS/Nautilus works
perfectly, as does Gobby, which are the only real-world applications
we tested until now.
The list of supported/unsupported functions is available from SVN for HOWL and for
dns-sd.h.
The compatibility layers are actually pretty interesting pieces of code: for
compatibility with the way HOWL/Bonjour integrates with event loops we had to
hook up the timeout and I/O watches D-BUS depends on to a single file
descriptor. This involves all kinds of ugly things like threading and
“creative” ways to use the event loop abstraction Avahi provides. Some might
call this “cracktastic”, but it actually works pretty well.
The compatibility layers are not intended to be long term solutions. For
every session object we create a background thread that polls for events and a
DBUS session object. This is an utter waste of resources, especially on
dns_sd.h where every basic operation uses a session object of its own.
In addition, our compatibility layers are incomplete. We do not offer the full
set of functions or the full semantics. Our compatibility is just good enough
to make most Zeroconf-aware programs work with Avahi right now.
We consider neither dns_sd.h nor the HOWL API a “well designed”
API and encourage people to port their programs to our more powerful native
API. To stress this the two modules will warn the user about their usage and
write a warning line to STDERR and syslog. Hopefully this will annoy
people sufficiently that Avahi adoption speeds up a little.
To our own surprise we actually support at least one API function more than each of the
reference implementations! From dns_sd.h we support
DNSServiceEnumerateDomains() which is actually unsupported by
Apple Bonjour on POSIX/Linux systems. The documented HOWL function
sw_ipv4_address_decompose() is actually a NOOP in the
reference implementation, but isn’t in our compatibility layer.
Since dns_sd.h is the only file licensed under a BSD license in the otherwise APSL-licensed
mDNSResponder distribution, we were able to copy it into our sources untouched.
Here’s a screenshot of
Nautilus and Gobby running on top of Avahi through the HOWL compatibility
layers.
Avahi Gains Compatibility Layers for Apple Bonjour and HOWL
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-compat.html
A short while ago I checked in to SVN two API/ABI compatibility
modules which implement the HOWL and the Apple
Bonjour (dns_sd.h) DNS-SD/mDNS APIs on top of Avahi’s
native API. Effectively this means that you can run *all*
Zeroconf-enabled software that is available for free operating systems
seamlessly on top of Avahi. Or at least the software that uses the
limited subset of API functions we support. Missing functions will be
implemented on an on-demand basis. Gnome-VFS/Nautilus works
perfectly, as does Gobby, which are the only real-world applications
we tested until now.
The list of supported/unsupported functions is available from SVN for HOWL and for
dns-sd.h.
The compatibility layers are actually pretty interesting pieces of code: for
compatibility with the way HOWL/Bonjour integrates with event loops we had to
hook up the timeout and I/O watches D-BUS depends on to a single file
descriptor. This involves all kinds of ugly things like threading and
“creative” ways to use the event loop abstraction Avahi provides. Some might
call this “cracktastic”, but it actually works pretty well.
The compatibility layers are not intended to be long term solutions. For
every session object we create a background thread that polls for events and a
DBUS session object. This is an utter waste of resources, especially on
dns_sd.h where every basic operation uses a session object of its own.
In addition, our compatibility layers are incomplete. We do not offer the full
set of functions or the full semantics. Our compatibility is just good enough
to make most Zeroconf-aware programs work with Avahi right now.
We consider neither dns_sd.h nor the HOWL API a “well designed”
API and encourage people to port their programs to our more powerful native
API. To stress this the two modules will warn the user about their usage and
write a warning line to STDERR and syslog. Hopefully this will annoy
people sufficiently that Avahi adoption speeds up a little.
To our own surprise we actually support at least one API function more than each of the
reference implementations! From dns_sd.h we support
DNSServiceEnumerateDomains() which is actually unsupported by
Apple Bonjour on POSIX/Linux systems. The documented HOWL function
sw_ipv4_address_decompose() is actually a NOOP in the
reference implementation, but isn’t in our compatibility layer.
Since dns_sd.h is the only file licensed under a BSD license in the otherwise APSL-licensed
mDNSResponder distribution, we were able to copy it into our sources untouched.
Here’s a screenshot of
Nautilus and Gobby running on top of Avahi through the HOWL compatibility
layers.
Avahi Gains Compatibility Layers for Apple Bonjour and HOWL
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-compat.html
A short while ago I checked in to SVN two API/ABI compatibility
modules which implement the HOWL and the Apple
Bonjour (dns_sd.h) DNS-SD/mDNS APIs on top of Avahi’s
native API. Effectively this means that you can run *all*
Zeroconf-enabled software that is available for free operating systems
seamlessly on top of Avahi. Or at least the software that uses the
limited subset of API functions we support. Missing functions will be
implemented on an on-demand basis. Gnome-VFS/Nautilus works
perfectly, as does Gobby, which are the only real-world applications
we tested until now.
The list of supported/unsupported functions is available from SVN for HOWL and for
dns-sd.h.
The compatibility layers are actually pretty interesting pieces of code: for
compatibility with the way HOWL/Bonjour integrates with event loops we had to
hook up the timeout and I/O watches D-BUS depends on to a single file
descriptor. This involves all kinds of ugly things like threading and
“creative” ways to use the event loop abstraction Avahi provides. Some might
call this “cracktastic”, but it actually works pretty well.
The compatibility layers are not intended to be long term solutions. For
every session object we create a background thread that polls for events and a
DBUS session object. This is an utter waste of resources, especially on
dns_sd.h where every basic operation uses a session object of its own.
In addition, our compatibility layers are incomplete. We do not offer the full
set of functions or the full semantics. Our compatibility is just good enough
to make most Zeroconf-aware programs work with Avahi right now.
We consider neither dns_sd.h nor the HOWL API a “well designed”
API and encourage people to port their programs to our more powerful native
API. To stress this the two modules will warn the user about their usage and
write a warning line to STDERR and syslog. Hopefully this will annoy
people sufficiently that Avahi adoption speeds up a little.
To our own surprise we actually support at least one API function more than each of the
reference implementations! From dns_sd.h we support
DNSServiceEnumerateDomains() which is actually unsupported by
Apple Bonjour on POSIX/Linux systems. The documented HOWL function
sw_ipv4_address_decompose() is actually a NOOP in the
reference implementation, but isn’t in our compatibility layer.
Since dns_sd.h is the only file licensed under a BSD license in the otherwise APSL-licensed
mDNSResponder distribution, we were able to copy it into our sources untouched.
Here’s a screenshot of
Nautilus and Gobby running on top of Avahi through the HOWL compatibility
layers.
Avahi Gains "Wide-Area" Support
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-wide-area.html
Yesterday in the late evening I commited “Wide Area” support to
Avahi SVN, i.e. “DNS-SD over Unicast DNS”. Only browsing, no
“Long-Lived Query” support and no publishing for now, but it is a
start.
To show off how cool this is, here is a “screenshot” of
avahi-browse showing all services defined in the domain
0pointer.de:
$ avahi-browse -a -d 0pointer.de
Browsing domain ‘0pointer.de’ on any.-1 …
Browsing for services of type ‘_http-rss091._tcp’ (Web Syndication RSS 0.91) in domain ‘0pointer.de’ on any.-1 …
Browsing for services of type ‘_http-rss20._tcp’ (Web Syndication RSS 2.0) in domain ‘0pointer.de’ on any.-1 …
Browsing for services of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1 …
Found service ‘Lennart’s Blog’ of type ‘_http-rss091._tcp’ (Web Syndication RSS 0.91) in domain ‘0pointer.de’ on any.-1.
Found service ‘Lennart’s Blog’ of type ‘_http-rss20._tcp’ (Web Syndication RSS 2.0) in domain ‘0pointer.de’ on any.-1.
Found service ‘Lennart’s Homepage’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1.
Found service ‘Avahi mDNS/DNS-SD’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1.
Found service ‘Lennart’s Photos’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1.
Found service ‘Lennart’s Blog’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1.
Service data for service ‘Lennart’s Blog’ of type ‘_http-rss091._tcp’ (Web Syndication RSS 0.91) in domain ‘0pointer.de’ on any.-1:
Host 0pointer.de (217.160.223.3), port 80, TXT data: [‘path=/blog/index.rss’]
Service data for service ‘Lennart’s Blog’ of type ‘_http-rss20._tcp’ (Web Syndication RSS 2.0) in domain ‘0pointer.de’ on any.-1:
Host 0pointer.de (217.160.223.3), port 80, TXT data: [‘path=/blog/index.rss2’]
Service data for service ‘Lennart’s Homepage’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1:
Host 0pointer.de (217.160.223.3), port 80, TXT data: [‘path=/lennart/’]
Service data for service ‘Avahi mDNS/DNS-SD’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1:
Host freedesktop.org (131.252.208.82), port 80, TXT data: [‘path=/Software/Avahi’]
Service data for service ‘Lennart’s Photos’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1:
Host 0pointer.de (217.160.223.3), port 80, TXT data: [‘path=/photos/’]
Service data for service ‘Lennart’s Blog’ of type ‘_http._tcp’ (Web Site) in domain ‘0pointer.de’ on any.-1:
Host 0pointer.de (217.160.223.3), port 80, TXT data: [‘path=/blog’]
Avahi Gains "Wide-Area" Support
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-wide-area.html
Yesterday in the late evening I commited “Wide Area” support to
Avahi SVN, i.e. “DNS-SD over Unicast DNS”. Only browsing, no
“Long-Lived Query” support and no publishing for now, but it is a
start.
To show off how cool this is, here is a “screenshot” of
avahi-browse showing all services defined in the domain
0pointer.de:
$ avahi-browse -a -d 0pointer.de Browsing domain '0pointer.de' on any.-1 ... Browsing for services of type '_http-rss091._tcp' (Web Syndication RSS 0.91) in domain '0pointer.de' on any.-1 ... Browsing for services of type '_http-rss20._tcp' (Web Syndication RSS 2.0) in domain '0pointer.de' on any.-1 ... Browsing for services of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1 ... Found service 'Lennart's Blog' of type '_http-rss091._tcp' (Web Syndication RSS 0.91) in domain '0pointer.de' on any.-1. Found service 'Lennart's Blog' of type '_http-rss20._tcp' (Web Syndication RSS 2.0) in domain '0pointer.de' on any.-1. Found service 'Lennart's Homepage' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Found service 'Avahi mDNS/DNS-SD' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Found service 'Lennart's Photos' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Found service 'Lennart's Blog' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Service data for service 'Lennart's Blog' of type '_http-rss091._tcp' (Web Syndication RSS 0.91) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/blog/index.rss'] Service data for service 'Lennart's Blog' of type '_http-rss20._tcp' (Web Syndication RSS 2.0) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/blog/index.rss2'] Service data for service 'Lennart's Homepage' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/lennart/'] Service data for service 'Avahi mDNS/DNS-SD' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host freedesktop.org (131.252.208.82), port 80, TXT data: ['path=/Software/Avahi'] Service data for service 'Lennart's Photos' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/photos/'] Service data for service 'Lennart's Blog' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/blog']
Avahi Gains "Wide-Area" Support
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-wide-area.html
Yesterday in the late evening I commited “Wide Area” support to
Avahi SVN, i.e. “DNS-SD over Unicast DNS”. Only browsing, no
“Long-Lived Query” support and no publishing for now, but it is a
start.
To show off how cool this is, here is a “screenshot” of
avahi-browse showing all services defined in the domain
0pointer.de:
$ avahi-browse -a -d 0pointer.de Browsing domain '0pointer.de' on any.-1 ... Browsing for services of type '_http-rss091._tcp' (Web Syndication RSS 0.91) in domain '0pointer.de' on any.-1 ... Browsing for services of type '_http-rss20._tcp' (Web Syndication RSS 2.0) in domain '0pointer.de' on any.-1 ... Browsing for services of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1 ... Found service 'Lennart's Blog' of type '_http-rss091._tcp' (Web Syndication RSS 0.91) in domain '0pointer.de' on any.-1. Found service 'Lennart's Blog' of type '_http-rss20._tcp' (Web Syndication RSS 2.0) in domain '0pointer.de' on any.-1. Found service 'Lennart's Homepage' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Found service 'Avahi mDNS/DNS-SD' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Found service 'Lennart's Photos' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Found service 'Lennart's Blog' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1. Service data for service 'Lennart's Blog' of type '_http-rss091._tcp' (Web Syndication RSS 0.91) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/blog/index.rss'] Service data for service 'Lennart's Blog' of type '_http-rss20._tcp' (Web Syndication RSS 2.0) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/blog/index.rss2'] Service data for service 'Lennart's Homepage' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/lennart/'] Service data for service 'Avahi mDNS/DNS-SD' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host freedesktop.org (131.252.208.82), port 80, TXT data: ['path=/Software/Avahi'] Service data for service 'Lennart's Photos' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/photos/'] Service data for service 'Lennart's Blog' of type '_http._tcp' (Web Site) in domain '0pointer.de' on any.-1: Host 0pointer.de (217.160.223.3), port 80, TXT data: ['path=/blog']
Linux on the MSI S270 aka Cytron/TCM/Medion/Tchibo MD96100
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/tchibo-linux.html
I finally found the time to write up my experiences running Linux on my new shiny laptop. Read it here.
Linux on the MSI S270 aka Cytron/TCM/Medion/Tchibo MD96100
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/tchibo-linux.html
I finally found the time to write up my experiences running Linux on my new shiny laptop. Read it here.
Linux on the MSI S270 aka Cytron/TCM/Medion/Tchibo MD96100
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/tchibo-linux.html
I finally found the time to write up my experiences running Linux on my new shiny laptop. Read it here.
KDE Ported to Avahi
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-kde.html
Jakub Stachowski completed support for using Avahi as backend for KDE’s KDNSSD subsystem. This means that you can use any Zeroconf-enabled KDE application (including Konqueror) with Avahi as mDNS stack. You can find more information in the KDNSSD Wiki.
The list of software supporting Avahi grows longer and longer. There are some patches for vino and GnomeMeeting floating around, Rhythmbox already merged DAAP support based on Avahi, KDE is now fully compatible with Avahi. Shall your project be the next in this list? To get started with Avahi, read the developer’s documentation.
Oh, yes, we released Avahi 0.3 and 0.4 recently. Get it while it’s hot. No major changes, just bugfixes an Qt main loop support.
KDE Ported to Avahi
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-kde.html
Jakub Stachowski completed support for using Avahi as backend for KDE’s KDNSSD subsystem. This means that you can use any Zeroconf-enabled KDE application (including Konqueror) with Avahi as mDNS stack. You can find more information in the KDNSSD Wiki.
The list of software supporting Avahi grows longer and longer. There are some patches for vino and GnomeMeeting floating around, Rhythmbox already merged DAAP support based on Avahi, KDE is now fully compatible with Avahi. Shall your project be the next in this list? To get started with Avahi, read the developer’s documentation.
Oh, yes, we released Avahi 0.3 and 0.4 recently. Get it while it’s hot. No major changes, just bugfixes an Qt main loop support.
KDE Ported to Avahi
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-kde.html
Jakub Stachowski completed support for using Avahi as backend for KDE’s KDNSSD subsystem. This means that you can use any Zeroconf-enabled KDE application (including Konqueror) with Avahi as mDNS stack. You can find more information in the KDNSSD Wiki.
The list of software supporting Avahi grows longer and longer. There are some patches for vino and GnomeMeeting floating around, Rhythmbox already merged DAAP support based on Avahi, KDE is now fully compatible with Avahi. Shall your project be the next in this list? To get started with Avahi, read the developer’s documentation.
Oh, yes, we released Avahi 0.3 and 0.4 recently. Get it while it’s hot. No major changes, just bugfixes an Qt main loop support.
Wheat
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/photos/wheat.html
Tiger Lilies
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/photos/tiger-lilies.html
In the garden:
Avahi 0.2 Release
Post Syndicated from Lennart Poettering original http://0pointer.net/blog/projects/avahi-0.2-release.html
Yesterday we released Avahi 0.2. Get it while it is hot! Full announcement here.
In related news: Jakub Stachowski is working on a kdnssd-to-Avahi bridge. Soon KDE applications will be able to make use of Avahi without even knowing.
Sebastien’s Zeroconf Gnome Applet now has an SVN repository: svn checkout svn://svn.0pointer.de/service-discovery-applet/trunk service-discovery-applet.