Tag Archives: Projects

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.

avahi-autoipd Released and ‘State of the Lemur’

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

A few minutes ago I released Avahi 0.6.14
which besides other, minor fixes and cleanups includes a new component avahi-autoipd.
This new daemon is an implementation of IPv4LL (aka RFC3927, aka
APIPA), a method for acquiring link-local IP addresses (those from the range
169.254/16) without a central server, such as DHCP.

Yes, there are already plenty Free implementations of this protocol
available. However, this one tries to do it right and integrates well with the
rest of Avahi. For a longer rationale for adding this tool to our distribution
instead of relying on externals tools, please read this
mailing list thread
.

It is my hope that this tool is quickly adopted by the popular
distributions, which will allow Linux to finally catch up with technology that
has been available in Windows systems since Win98 times. If you’re a
distributor please follow these
notes
which describe how to integrate this new tool into your distribution
best.

Because avahi-autoipd acts as dhclient plug-in by default,
and only activates itself as last resort for acquiring an IP address I hope
that it will get much less in the way of the user than previous implementations
of this technology for Linux.

State of the Lemur

Almost 22 months after my first SVN commit to the flexmdns (which was the
name I chose for my mDNS implementation when I first started to work on it)
source code repository, 18 months after Trent and I decided to join our two
projects under the name “Avahi” and 12 months after the release of Avahi 0.1,
it’s time for a little “State of the Lemur” post.

To make it short: Avahi is ubiquitous in the Free Software world. 😉

All major (Debian, Ubuntu, Fedora, Gentoo, Mandriva, OpenSUSE) and many
minor distributions have it. A quick Google-based poll I did a few weeks ago
shows that it is part of at least 19 different
distributions
, including a range of embedded ones. The list of applications
making native use
of the Avahi client API is growing, currently bearing 31
items. That list does not include the legacy HOWL applications and the
applications that use our Bonjour compatibility API which can run on top of
Avahi, hence the real number of applications that can make use of Avahi is
slightly higher. The first commercial hardware appliances which include Avahi are
slowly appearing on the market. I know of at least three such products, one
being Bubba.

If you package Avahi for a distribution, add Avahi support to an
application, or build a hardware appliance with Avahi, please make sure to add
an item to the respective lists linked above, it’s a Wiki. Thank you!
(Anonymous registration without Mail address required, though)

Playing with Cairo

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

Play around with Cairo: Check!

One thing that has been sitting on my TODO list for a very long
time was playing around with Cairo. No longer! Yesterday I spent a
little time on hacking a Cairo based equivalent of KDE’s Filelight (Which
BTW is one of the two programs that KDE has but GNOME really lacks,
the other being KCacheGrind). The
result after two hours is this:

Fring Screenshot

This screenshot shows the development tree of my Syrep tool.

This tool has definitely nicer anti-aliased graphics than
Filelight, doesn’t it? The source code is here: fring.py. Anyone
interested in turning this into a proper GNOME application?

A few updates on PulseAudio

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

Thanks to Marc-Andre Lureau there’s now a jhbuild file
for PulseAudio
. And there is this (little bit chaotic)
Wiki page
in GNOME Live! about the relation of PulseAudio and
GNOME.

A few weeks ago I wrote a new page for our Wiki where I tried to
describe the steps necessary to get the most out of PulseAudio. It’s
called the Perfect
Setup
.

A few minutes ago I released PulseAudio 0.9.5 and new versions of the auxiliary tools. The changelog:

  • Add module-hal-detect, a module that detects all local sound hardware using HAL and loads the necessary modules. Handles hot-plug and hot-removal of audio devices. (Contributed by Shahms E. King)
  • Add shared memory transfer method for local clients
  • Update module-volume-restore to automatically restore the output device last used by an application in addition to the volume it last used
  • Add a new module module-rescue-streams for automatically moving streams to another sink/source if the sink/source they are connected to dies
  • Add support for moving streams “hot” between sinks/sources
  • Reduce memory consumption and CPU load as result of Valgrind/Massif profiling
  • Add new module module-gconf for reading additional configuration statements from GConf
  • Fix module-tunnel to work with the latest protocol
  • Miscellaneous fixes

One of the nicest new features of PulseAudio 0.9.5 is HAL
integration (which has been contributed by Shahms King). PulseAudio will
now automatically detect all available sound devices and will make
use of them. It supports both hot-plug and hot-remove.

Another nice feature is the GConf integration which allowed us to add another nice application to the PulseAudio toolset: the PulseAudio Preferences utility:

paprefs screenshot

The idea is to have a simple, nice configuration dialog that allows
configuration of the more exotic features of PulseAudio which we do
not enable by default due to security considerations or to not
confuse the user. Right now a lot of features are hidden behind
non-trivial configuration file statements. This preferences tool shall
make them available for the users which are not so keen on editing
configuration files.

Playing around with Valgrind‘s
Massif tool and KCachegrind I did a little bit of memory and perfomance profiling of
the PulseAudio daemon. The 0.9.5 release contains a lot of
optimizations which are result of this work.

Before:

Massif before

After:

Massif after

These plots show the memory consumption against the time, from
starting the server, to playing stream, to stopping the stream and
shutting down the server again. The major improvement was actually an
update to libsamplerate done
by its maintainer to improve the memory handling of that library. (He
didn’t release an updated version of his library containing the
changes shown in the plots yet).

PulseAudio had the nice feature of remembering the playback volume of every
application for quite a while. Starting with 0.9.5 PulseAudio it also remembers
the output device for every application. Together with an updated Volume
Control tool which now allows moving streams between sinks while they are
played this can be used to configure a ruleset like “Ekiga always on the USB
headset, Rhytmbox always on the external speakers” very intuitively and easily:

pavucontrol screenshot

And here’s a final screenshot showing all the tools we currently have for PulseAudio 0.9.5.

PA Screenshot

Launchpad is Evil

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/launchpad-stole-my-name.html

I always think twice before entering my name in any web form or posting to a
mailing list. Is the web site/list respectable? Do the owners of the web site
have any commercial interest in my name (spam, marketing, …)? Would I ever
regret that my name can be found with Google in context with this web
site/mailing list? If I enter my name is it used for collecting data about me?
Is there any reasonable privacy policy?

Often enough I refrain from entering my name after deciding that the answers
to these questions are unsatisfactory. I like to be in control of my name. If I
am not confident that I remain in control I don’t enter my name to any
service.

Recently it came to my attention that Canonical decided to create an account (!) for me in their
commercial, proprietary bug tracker called “Launchpad”. I never asked for one!
I never even considered having one, because their service clearly is nothing
that would pass the tests mentioned above. They are a commercial service, my
account data is apparently “content” for them, they don’t seem to have any
privacy policy. (At least I couldn’t find any, the navigation is pretty
crappy.)

Canonical’s nimbus of being “the good guys” doesn’t hinder them to
incorporate data from free sources (apparently they got my data from the Debian
BTS) and make a commercial service of it, without even asking the original
contributors if that would be OK with them, or if it is OK to incorporate their
name or personal profile in the service. Apparently Canonical is not much
better than a common spam harvester: generating personal profiles for
business, without consent of the “victim”.

If anyone from Canonical reads this: It is not OK for me to use my name as
“content” for your commercial, proprietary service. Please remove any
reference to my name from your “account” database. I don’t want to have a
Launchpad account. I don’t plan to use Launchpad. Let me decide if I ever want to
join! Thank you very much.

Update: I especially dislike the fact that they created an account for me in
a service where Hitler apparently already has six (!) accounts. I am very sure
that I don’t want to be part of that community.

Avahi 0.6.13 released

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

Avahi Logo

I am happy to bring you yet another release of Avahi, everyone’s favourite Zeroconf stack.

  • Add a new D-Bus method for changing the mDNS host name during
    runtime. This functionality is only available to members of the
    UNIX group “netdev”, which is the same access group that is
    enforced by GNOME’s NetworkManager daemon. Since NM will probably
    be the most prominent user of this new method, we decided to limit
    access to the same group. The access group can be set by passing
    –with-avahi-priv-access-group= to “configure”. If you need more
    sophisticated access control you can freely edit
    /etc/dbus/system.d/avahi-dbus.conf.
  • Add a new utility “avahi-set-host-name” which is a command line
    wrapper around the aforementioned SetHostName() method.
  • Bonjour API compatibility library:
    • Implement DNSServiceUpdateRecord()
    • Allow passing NULL as callback function for DNSServiceRegister()
    • Implement subtype registration in DNSServiceRegister() in a
      way that is compatible with Bonjour.
    • Update to newer copy of dns_sd.h
  • If the host name changes update names of static services wich
    contain wildcards.
  • Don’t build documentation about embedding the Avahi mDNS stack into
    other programs by default. This is a feature used only by embedded
    developers. Pass –enable-core-docs to “configure” to enable
    building these docs, like in Avahi <= 0.6.12.
  • Build Qt documentation only when Qt support is enabled in
    the configuration. Same for GLib.
  • Change algorithm used to find a new host name on conflict. In
    Avahi <= 0.6.12 a conflicting host name of “foobar” would be
    changed to the new name “foobar2”. With 0.6.13 “foobar-2” will be
    picked instead. This follows Bonjour’s behaviour and has the
    advantage not confusing people with regular host names ending in
    digits.
  • Don’t disable all static services when SIGHUP is recieved.
  • Fix build when Avahi is configured without Gtk+ but with Python
    support
  • Fix build on MacOS X
  • Support using Solaris DBM instead of gdbm for the service type
    database. The latter is still recommended
  • Minor other fixes and documentation updates

The relevant NetworkManager bug about SetHostName() is #352828.

And our bug tracker is back to only two open bugs for Avahi. That’s a good feeling, I can tell you!

MSI S270 Laptop Linux Kernel Driver

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

Earlier this year I worked on reverse engineering the
brightness control of my MSI
S270 laptop
. Turning this work into a proper kernel driver was still left
to be done. Until yesterday… The result of yesterday’s work are two kernel patches I already posted
for upstream inclusion.

If you want to test these drivers, download the latest kernel patches:

  1. acpi-ec-transaction.patch
  2. acpi-s270.patch

The two patches apply to kernel 2.6.17. After patching activate “MSI S270
Laptop Extras” under “Device Drivers”/”Misc devices” and recompile and install.
After loading the s270 module, you now have a backlight class driver
exposing its innards in /sys/class/backlight/s270bl/. For
changing the screen brightness issue as root:

echo 8 > /sys/class/backlight/s270bl/brightness

This will set the screen brightness to maximum. The integer range is 0..8.

In addition to this backlight class driver we export a platform driver which
allows reading the current state of the WLAN/Bluetooth subsystem. The platform
drivers also allows toggling the automatic brightness control feature:

cat /sys/devices/platform/s270pf/wlan                 # Show WLAN status
cat /sys/devices/platform/s270pf/bluetooth            # Show Bluetooth status
echo 1 > /sys/devices/platform/s270pf/auto_brightness # Enable automatic brightness control

If the driver refuses to load (returning ENODEV) and you are sure you have
an MSI S270 the machine is probably not recognized correctly by its DMI data.
In that case you can pass force=1 to the driver which will force the
driver load even when the DMI data doesn’t match. YMMV. If everything works
correctly please make sure to send me the output of dmidecode, so that
I can add the DMI data to the list of known laptops in the driver.

There might even be a chance that this driver works on other MSI laptop
models, too (such as S260). YMMV. But don’t come running when the driver causes
your machine to explode! MSI laptops such as the S270 or S260 are often sold as
OEM hardware under different brands (such as Cytron/TCM/Medion/Tchibo MD96100
or “SAM2000”), so if your laptop looks remotely like this one and dmidecode |
grep MICRO-STAR
yields at least a single line, and you are adventurous
than you might want to test this driver on it. And don’t forget to send me your
dmidecode output if it works for you!

Unfortunately HAL (at least in my version 0.5.7) doesn’t support the generic
backlight device class yet, which means no gnome-power-manager support
for now.

Although this driver is based on reverse engineered data it should be
legally safe even in the US. After I did my initial work on the S270 controls
MSI supplied me with a register table of their ACPI Embedded Controller
(which is what this driver interfaces with) and one of their engineers even
tested my work.

Last but not least I created a mailing list for
discussion of Linux on the MSI S270
. Please join if you run Linux on one of
these machines! I will announce future driver work for the S270 there.

Apple Bonjour adopts the Apache License 2.0

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/bonjour-apache-license.html

Yesterday Apple Bonjour has
been
released
under the Apache License 2.0, replacing the old much criticized (because
non-free) APSL licensing.

What does this mean for Avahi? First of all
although the Apache
License
is much better than the APSL it still isn’t GPL
compatible (at least in the eyes of the FSF), which effectively means that
Bonjour still cannot be used by more than 66% of the Free Software
projects available. Secondly Avahi is more powerful in most areas than Bonjour
ever was. (In fact, there is only a single feature where Bonjour surpasses us:
writable “Wide Area DNS-SD”). Avahi uses all the “hot” Free technologies like
D-Bus and a has much better integration in the Linux networking subsystem. Avahi is more secure (chroot()…)
Avahi is compatible API- and ABI-wise with Bonjour, but not the other way
round. Avahi is now part of every major Linux distribution.

Avahi is actively developed. The aforementioned Wide Area DNS-SD is currently
being worked on by Federico Lucifredi. Since I will write my master thesis
about mDNS scalability a lot of additional development will be done for Avahi
in the next month.

In short: Avahi is here to stay. Apple’s move to the Apache license is too little, too late.

Update: the Bonjour client libraries are BSD licensed, so the 66% argument doesn’t hold.

ZeroConf in Ubuntu

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

(Disclaimer: I am not an Ubuntu user myself. But I happen to be the lead developer of Avahi.)

It came to my attention that Ubuntu is
discussing
whether
to
enable Zeroconf/Avahi in default installations. I would like to point out a few
things:

The “No Open Ports” policy: This policy (or at least the
way many people interprete it) seems to be thought out by someone who
doesn’t have much experience with TCP/IP networking. While it might make sense
to enforce this for application-level protocols like HTTP or FTP it doesn’t
make sense to apply it to transport-level protocols such as DHCP, DNS or in
this case mDNS (the underlying protocol of Zeroconf/Avahi/Bonjour):

  • Even the simplest DNS lookup requires the opening of an UDP port for a
    short period of time to be able to recieve the response. This is usually not
    visible to the administrator, because the time is too short to show up in
    netstat -uln, but nonetheless it is an open port. (UDP is not
    session-based (like TCP is) so incoming packets are accepted regardless where
    they come from)
  • DHCP clients listen on UDP port 68 during their entire lifetime (which in
    most cases is the same as the uptime of the machine). DHCP may be misused for
    much worse things than mDNS. Evildoers can forge DHCP packets to change IP
    addresses and routing of machines. This is definitely something that cannot be
    done with mDNS.

All three protocols, DNS, DHCP and mDNS, require a little bit of trust in
the local LAN. They (usually) don’t come with any sort of authentication and
they all are very easy to forge. The impact of forged mDNS packets is clearly
less dangerous than forged DHCP or DNS packets. Why? Because mDNS doesn’t
allow you to change the IP address or routing setup (which forged DHCP allows)
and because it cannot be used to spoof host names outside the .local
domain (which forged DNS allows).

Enforcing the “No Open ports” policy everywhere in Ubuntu would require that
both DNS and DHCP are disabled by default. However, as everybody probably
agrees, this would be ridiculous because a standard Ubuntu installation
couldn’t even be used for the most basic things like web browsing.

Oh, and BTW: DNS lookups are usually done by an NSS plugin which is loaded
by the libc into every process which uses gethostbyname() (the function for doing host name resolutions). So, in
effect every single process that uses this function has an open port for a
short time. And the DNS client code runs with user priviliges, so an exploit
really hurts. dhclient (the DHCP client) runs as root during the entire
runtime, so an exploit of it hurts even more. Avahi in contrast runs as its own user and
chroot()s
.

It is not my intention to force anyone to use my
software
. However, enforcing the “No Open Ports” policy unconditionally is
not a good idea. Currently Ubuntu makes exceptions for DHCP/DNS and so
it should for mDNS.

I do agree that publishing all kinds of local services with Avahi in a
default install is indeed problematic. However, if the “No Open Ports” policy
is enforced on all other application-level software, there shouldn’t be any
application that would want to register a service with Avahi.

Starting Avahi “on-demand” is not an option either, because it offers useful
services even when no local application is accessing is. Most notably this is
host name resolution for the local host name. (Hey, yeah, Zeroconf is more than
just stealing music.)

Remember: Zeroconf is about
Zero Configuration. Requiring the user to toggle some obscure
configuration option before he can use Zeroconf would make it a paradox.
Zeroconf was designed to make things “just work”. If it isn’t enabled by
default it is impossible to reach that goal.

Oh, and I enabled commmenting in my blog, if anyone wants to flame me on this…

Announcing SECCURE

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

Yesterday my brother released his second Free Software package, the SECCURE Elliptic Curve Crypto Utility for Reliable Encryption. (Recursive acronyms, yay!)

The seccure toolset implements a selection of asymmetric algorithms based on elliptic curve cryptography (ECC). In particular, it offers public key encryption / decryption and signature generation / verification. ECC schemes offer a much better key size to security ratio than classical systems (RSA, DSA). Keys are short enough to make direct specification of keys on the command line possible (sometimes this is more convenient than the management of PGP-like key rings). seccure builds on this feature and therefore is the tool of choice whenever lightweight asymmetric cryptography — independent of key servers, revocation certificates, the Web of Trust, or even configuration files — is required.

Anyone willing to work on the Debian RFP?

(The first Free Software package of him is ssss, an implementation of Shamir’s secret sharing scheme)

GUADEC Sound BOF Slides

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

Marc-Andre was so kind to upload the improvised mini-slides we had prepared for GUADEC’s sound BOF. Unfortunately there is no recording of the BOF, so this is all we can offer for those interested but who were not able to attend GUADEC.

In related news: Thanks to jat there is now a native PulseAudio driver for MPD (in SVN), and I updated the MPlayer patch, which adds a native PulseAudio driver to MPlayer.

Re: PulseAudio and GNOME

Post Syndicated from Lennart Poettering original https://0pointer.net/blog/projects/pulse-davidz-reply.html

davidz: Shams King is
currently working on HAL support in PulseAudio. He’s planning to extend
our module-combine
to automatically combine all available hardware sound cards found with
HAL into a single virtual sound sink. That way, if the user plugs in
an USB loudspeaker set it will automatically output the same audio as
the internal speakers did before. I believe this is the behaviour most
non-technical users would expect from a well designed system.

Right now PulseAudio sink names cannot be used to identify the
underlying hardware devices, since they are generic names like
alsa_output or oss_output2. However, it might be a
good idea to use the ALSA device name
(i.e. alsa_output_hw_0_0) or even the HAL identifier if it is
available. If this
dialog
uses the normal GStreamer PropertyProbe API to
query the available devices (and does not use HAL directly), we should
be able to support this easily in gst-pulse
(right now we support this interface in GstPulseMixer, but not yet in
GstPulseSink).

Marc-Andre, I wonder how the differentiation between “Sound events”, “Music and
Movies” and “Audio/Video Conferencing” touches the “role”/”class” model of GSmartMix?

Regarding power saving and PulseAudio: First of all, PulseAudio
right now is intended to be run per-session, just like esd
was. However, there is some incomplete support for running it as
system-wide instance.

I think instead of integrating PulseAudio with
gnome-power-manager the way you described it is probably a better idea
to close the sound device when it is idle regardless if we are in
power saving mode or not, and hope that the driver authors fix their
stuff to not produce any click or pop sounds when the device is opened
or closed. To be honest, all driver/sound card combinations I have
access to work properly in this area.

In ALSA you usually open devices in O_RDONLY or O_WRONLY mode (and not
in O_RDWR) anyway, so falling back to it is not really necessary.

PulseAudio 0.9.2 released

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

We’re proud to announce the first release of PulseAudio after the name change from
Polypaudio. Besides a variety of sed -i -e s/polyp/pulse/g changes it
mostly contains minor bugfixes. Get
it while it is hot!

In related news PulseAudio now gained its own domain and a new Trac-based homepage: http://pulseaudio.org/. And thanks to Rafael Jannone and Pierre Ossman we now have a logo:

PulseAudio Logo

Together with PulseAudio 0.9.2 we released updated versions of all the auxiliary GUI
tools
. A new utility has been released as well, named PulseAudio Device
Chooser
. It installs a tray icon and allows the user to quickly change
the sound server attached to the local X11 display, showing a list of servers that
is accumulated using ZeroConf service browsing. In addition it allows you to
quickly start one of the other GUI tools and shows notification whenever a new
PulseAudio server/sink/source appears on the network. Everybody loves
screenshots:

PulseAudio Device Chooser Screenshot

Attending GUADEC

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

Due to the generosity of the GNOME Foundation I have been able to get to the GUADEC 2006 this year. I’d like to thank Jeff Waugh and Quim Gil for the “last-minute” funding of my trip to Vilanova, and all the sponsors who actually are providing the funds. If anyone wants to talk to me about Avahi and/or PulseAudio (aka Polypaudio) (or any of my other projects), just try to find and speak to me. (Bungalow 870)

In related news, the new PulseAudio homepage will be “inaugurated” soon, becoming the official new home of PulseAudio/Polypaudio as soon as we release 0.9.2, which hopefully will be pretty soon.

TPFKAPA: The Project Formerly Known as Polypaudio

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

It came to our attention that some people really disliked the name of Polypaudio, because
it reminded them of that medical condition,
though the software was actually named after the sea dweller. I actually
liked that double entendre, but many did not and expressed concerns that the name
would hinder Polypaudio’s adoption. After a long discussion on
#polypaudio we came to the conclusion that a name change is a good
idea in this case. Name changes are usually a bad idea, but this time it’s
worth it, we think.

The new name we agreed on is PulseAudio, or shorter just Pulse. It has
the nice advantage that it abbreviates to pa, just as Polypaudio did. This
allows us to keep source code compatiblity (and binary compatibility to a
certain degree) with the current releases of Polypaudio, because the symbol
prefix can stay pa_. In addition the auxiliary tools paman, pavucontrol, pavumeter need not to
be renamed.

We will try to make the transition as smooth as possible and would like to
apologize to all the packagers, who need to rename their packages now.

The next release of Polypaudio (0.9.2) will be a bugfix release and be the first to bear the new name: PulseAudio 0.9.2.

Polypaudio is dead. Long live PulseAudio!