Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Working tree for the community fork of Songbird, Nightingale. If building, use the sb-trunk-oldxul (development) branch, with the tag 1.12.1 tag for stable, for now. The master-xul-9.0.1 branch is the current progress in building Nightingale with XULRunner 9 and builds, but is broken. All help in terms of patches and pull requests is welcome.
C++ JavaScript CSS Java HTML Makefile Other
Failed to load latest commit information.
.tx Adding adofex config file and fix some strings in en-US
app Fix playQueue tests that didn't pass a dragSession and don't instanti…
bindings remove svn directories ... from here on out we're using this code as …
branding Revert "Use testing URLs for now"
build Merge pull request #336 from darealshinji/patch-1
components Fix issue #329 by replacing the character at index 2 if the float is …
dependencies verbose mode: silence the make-jars messages
documentation use $(GZIP)
extensions Fixed playlist generation issue.
feathers Purple Rain feather: replace Songbird logo with NG logo
installer Make mute action visible
locales Fix #250: Expose libnotify extension prefs
tools remove executable bit from files, which aren't supposed to be executable
update Attempt to merge remote-tracking branch 'upstream/master' into sb-tru…
vcproj bug 12556
.gitignore clean up gitignore, don't ignore dependencies/vendor anymore
.travis.yml Add some tests for the eq presets binding (though the saving one fail… typos, grammar
LICENSE i believe this is the most recent version...they're pushing both trun…
Makefile make use of the previously unused run_autoconf target Compile & install manpage fix trollface in
TRADEMARK.txt Updated Trademark.txt (removed two blank lines) to force build.
aclocal.m4 add git ...we'll remove the svn dirs maybe, but they're slightly nece… add git ...we'll remove the svn dirs maybe, but they're slightly nece… Don't force -Os on Linux

Nightingale Media Player

Nightingale is a community based fork of the Songbird Media player distributed under the GNU GPL and portions (XULRunner and Mozilla libs) licensed under the Mozilla MPL/BSD license.

The goal of Nightingale is to create a Media Player, which will eventually use only system libraries to conserve space. Currently, some libraries are still bundled, but progress is being made to change this fact.

This git tree is the Songbird trunk, rebranded for Nightingale. It's a reflection of what our Xul 6+ releases will be like.

Bountysource Travis CI


  • To build, you need to have all of the gstreamer0.10 packages for your distro, svn, wget, and git (if pulling the tree down) installed, as well as the usual dependencies for building software upon your distro.

  • If it gets python errors, make sure you have python2 installed, and try the script again.

  • If it doesn't play music, you'll need to copy /usr/lib/gstreamer0.10/* into compiled-dist-linux-[your arch]/dist/gst-plugins and then rerun nightingale. It should then play music.


If you're on Linux, simply run the script. It will download the deps and build the app for you. You'll generally need the usual build deps for most software packages, though.

Ubuntu and Debian users should note you'll need:

  • libdbus-glib-1-dev
  • libgstreamer-plugins-base0.10-dev
  • and a few more (checkout the build article for a full list)

More information can be gleaned from the Nightingale wiki:

Building a Debian Package

Even though this source contains a debian/ folder, do not consider it as producing a release quality build. Further it will not work out of the box, see this section of the Linux building article.

Configure Options

ac_add_options (option here)

option description
--with-taglib-source=[system,packaged] use system taglib or not
--enable-debug whether or not to compile debug
--enable-jars whether or not to create jars
--enable-installer whether or not to make installer
--enable-official whether or not to official build
--enable-nightly whether or not to nightly build
--enable-tests whether or not to build tests
--enable-update-channel=CHANNEL which update channel to use
--enable-breakpad whether or not to enable breakpad
--enable-static single-component static build
--enable-compiler-environment-checks only allow supported compilers
--enable-libnotify Optionally enable libnotify
--enable-unity-integration Optional support for Unity's sound menu
--enable-system-nspr Optionally use your system's NSPR instead of the bundled one from Mozilla

Notes for Configurable Options

libnotify support


  • libnotify-dev
  • libgtk2.0-dev

Unity sound menu integration


  • libunity-dev
  • libnotify-dev
  • libgtk2.0-dev

System NSPR


  • libnspr4-dev


Everything relevant to you should be explained in


  • Steven Bengtson - Stevo
  • Janek Bevendorff - Manko10
  • Downward
  • Lukas Diener - Lukas_Skywalker
  • Matt Dwyer - MattSD
  • Martin Giger - freaktechnik
  • Geoffrey Gates - Timmythepirate
  • Andrew Luecke - Auzy
  • Matt Parnell - Ilikenwf
  • Dirk Steinmetz - rsjtdrjgfuzkfg
  • Antoine Turmel - GeekShadow
  • Mark Yen - Mook
  • Akil Krishnan - LIB53
  • Alexander Korenev - LookingMan
  • John Murray - johnmurrayvi
  • David Rogers - Ezekial1000
  • Luis Gallego - luisgmarine
  • Lars Tobias Skjong-Børsting - larstobi
  • chocolateboy
  • Logan Smyth - loganfsmyth
  • Unit 193 / Ukikie
  • Mark Becwar - thebecwar
  • djcj


This is an open source software and everyone who works on it is a volunteer! Don't be a troll towards the people giving you free software and hard work! Look at the license for detailed information.


Something went wrong with that request. Please try again.