Announcing Nightingale 1.12.1

Nightingale 1.12.1 is finally released! Existing installations of the last release version of Nightingale (1.12) on Windows or Mac OS X will give you the opportunity to automatically update to the new version. For Linux users the packages are updated; if you installed from a tarball on Linux you’ll have to update by grabbing a new one from the download page.

What’s new?

We cleaned up quite a bit: More legacy code from Songbird was removed or disabled, thus we expect the release to be more stable. There are also some bugs fixed, such as the Unity integration causing a crash in Ubuntu 13.04, battery drain in OS X Lion or newer and playback not properly updating the play counts.

As mentioned in a previous blog post, freaktechnik implemented some beautiful firstrun pages, which will present you changes after updates or overall information on the very first start. Through our newly introduced statistics page, this will also help us to track installations and upgrades to find update-related issues. Note that if you dislike the firstrun page, you can visit about:config and set the preference ‘nightingale.update.url’ to ”.

Additionally, GeekShadow implemented a new localization infrastructure and will contact past Songbird translators. He got rid of the last Songbird references, and thanks to our translators and reviewers many locales were improved quite a lot. However, there are still some locales without maintainers; and even if your locale already has one it would be great if you volunteer for proofreading and translating Nightingale’s strings! When updating, you may need to re-download the language packs for this change to take effect.

We also did some backend work switching to a new update infrastructure, as Google Code shuts down its downloads section. Updates are now handled through GitHub, where we also keep our main source code repository. An issue preventing Linux updates got fixed as well, so you should be able to auto-update from tarballs in the future.

As this is our first release after the shutdown of Songbird we replaced everything provided through Songbird infrastructure with our own services. To see everything we changed in 1.12.1, check out the official release notes.

The IDs of some add-ons changed, namely mashTape, SHOUTcast and Last.fm. This means Nightingale will find new add-ons and ask you, if you want to install them. Since the ID changed, they will not override the existing extensions. The previous versions of those add-ons will show up in the extensions manager as incompatible with Nightingale 1.12.1 and can be uninstalled.

Unity and libnotify integration have been split up into two optional components. Thanks to this the nightingale-nounity package now also includes libnotify integration. For those who don’t want, or can’t use our PPA, we still offer GNOME/Unity integration builds.

 

Enjoy the latest version of Nightingale, update or install it and listen to your favorite songs. We’d love to hear your feedback in the forums or on the IRC channel, #nightingale on irc.mozilla.org. As always, we’re looking for testers, developers, theme makers, and users to idle in our forums and IRC, not to mention help out with the project. Feel free to join!

Spread the word – and enjoy the tune of life!

- The Nightingale Community

Announcing Nightingale 1.12

We’re pleased to announce that Nightingale 1.12 is finally available for download! Existing installations of the last release version of Nightingale (1.11.0) will give you the opportunity to automatically update – this will be the first time we’ve ever used our update system. It may or may not work depending on your OS, and how you have Nightingale configured. We hope everything works great, but if it doesn’t let us know, and grab a regular build.

What’s new?

Most importantly, we moved to a cleaner backend. For you, that means Nightingale is more stable; on Linux, it means you use more of your system’s own libraries. This release also brings us closer to using more recent libraries. Behind the scenes, we’re already planning the next release which will use a current xulrunner, delivering more features and performance. Such an upgrade is a very large project, and as such we could use more developers. Feel free to pitch in!

We have also cleaned up our installer for Windows, which no longer requires administrative privileges. We  moved it to a completely new backend and designed it to be much simpler from the developers’ point of view. Working in the old system was quite a pain!

Another platform specific change is LookingMan’s Unity Integration – Nightingale is now able to integrate into Gnome and Unity audio menus and notification systems, a much requested feature that we are very happy to have available for you.

Independent of your platform, there are a number of new and ported addons, some from Songbird, others from scratch. One new addon includes GeekShadow’s fixed and updated port of the SoundCloud addon, a feature any self-respecting player should have.

While we work on version 2.0, this release should last for a while. A large reson being the last big change between 1.11 and 1.12: we fixed tons of issues. From crashing issues on Windows and Ubuntu to cosmetic issues like Nightingale opening with an empty tab – this new version fixes many old issues. We have also improved the branding a bit, updated the locales and made some tweaks – read a full list of changes in the Changelog.

We hope you enjoy the new version; update or install it and enjoy some music! We’d love to hear your feedback in the forums or on the IRC channel, #nightingale on moznet. We’re always looking for testers, developers, theme makers, and users to idle in our forums and IRC, not to mention help out with the project. Feel free to join!

Spread the word – and enjoy the tune of life!

- The Nightingale Community

Merry Christmas from (and to) The Nightingale Team!

New (old) Hardware

I recently purchased an old 2006-era Mac Mini for our development, so that I could make sure and get a more proper Mac build out for our next release. I’m happy to say that after setting up the build environment (and reinstalling OSX once the machine arrived, as I trust no eBay seller to do that part for me), I have most of the Nightingale build dependencies built fresh.

2006 Era Mac MiniNew Mac Testing Build

I’m still fighting with XULRunner to get it to build under OS X. That said, I did compile the new TagLib, so I was able to cobble together a current trunk build for all 5 of our Mac users out there (j/k, we have at least 7 Mac users :P). You can download the testing build here. I’d love to hear of any issues you run into, as I’m using a different compiler – the vanilla gcc 4.7 – to build the dependencies and client this time around. It should provide for smaller, faster, more efficient code.

Gearing Up For A New Release: 1.12

In other news, the team and I are all working hard to get the polish all together for a 1.12 release here at the beginning of January. Short of fighting to get the FLAC albumart display working, we have a lot of great changes, as well as more stability across all our platforms. On Linux especially, we have more system integration, and only have to rely on XULRunner and SQLite as precompiled dependencies. The release after next should do away with those altogether.

New Year’s Parties – Use Nightingale, Tell Friends!

We hope you had a Merry Christmas, and happy holidays all around. Furthermore, we all wish you a very happy New Year! Make sure to use Nightingale to play the music at your New Year’s parties, and show it off to your friends! Our resolution is to make Nightingale the best desktop music player out there, and to have more people use it as well. We can’t do that without your help, so please, make sure to help us get the word out!

Discuss!

Feel free to talk about the player, discuss the Mac build, or even just let us know your New Year’s resolutions in the comments, jump into the forums, or chat with us in #nightingale on irc.mozilla.org.

Stability on Windows – and an upcoming Release

A lot of interesting work has been done behind the scenes since the last blog post. Even though we’re still low on developers (are you a dev? we’re still searching!), ilikenwf and Mook made many steps in the direction of building with a more current, vanilla XULrunner. Non-technically speaking, that means making Nightingale much faster and more reliable, with more addons and support for newer web services. I (rjtdrjgfuzkfg) just finished working on the fix for the only blocker issue we had with 1.11.

We finally have working Windows builds using a recent version of taglib (read: builds without the annoying crash issue) and that means that the basic porting for using a newer, vanilla taglib is done. Now we need your support – please download the testing build and try it out to see if everything works as expected. A huge part of the metadata handling code was rewritten, so we need to test it thoroughly. Please report any issues and all the successes you run into in the forums or at the github issue tracker, so we can fix them in preparation for releasing the next version!

We will also be working on using system taglib support on Linux, which would reduce the number of bundled dependencies, making Nightingale even more lightweight. Linux builds of the current taglib changes are not yet available due to the required dependency rebuild, but they should be rolling out very soon!

Speaking of 1.11.1, we’re moving in the direction of releasing the second and probably last release from the current code branch. There are many bugs fixed already, and we’re looking forward to publishing them in a stable build soon. Again, we need your help testing, so make sure and let us know if you see something that is not ready yet or broken.

 

Thanks for your interest into the Project!

- rsjtdrjgfuzkfg and the Nightingale Community

Progress and Current Status

We admit, we really aren’t that great at informing people what’s going on – it could be because we all have day jobs that get in the way, or it could be because our free time is always used working on Nightingale or some other open source project.  We’re really sorry about all of that, but don’t take our silence as any indication as to the amount of improvement being made in the Nightingale code! We have great things ahead!

Upstream Merges

I have been pulling in upstream Songbird updates, and also making build fixes here and there on the main nightingale-hacking git repo. Otherwise, I have pulled down a copy of the Songbird dependencies SVN repository, and am working to get the dependencies building under gcc 4.7 (where applicable) in an effort to get better speed, stability, and performance out of Nightingale as a whole. The Linux dependencies are all already working, but we’re still struggling a bit getting Mac and Windows versions of them building. Either way, this should provide a speed boost, and get us closer to upgrading the dependencies to newer and more vanilla versions.

Dependency Upgrades and Linux Package Creation

Speaking of Linux, our near future involves the transition to using system dependencies. On Linux, Nightingale currently requires three non-system packages – xulrunner 1.9.2, sqlite, and taglib. These dependencies are specifically patched for the Nightingale/Songbird code base, so our first step will involve splitting these three dependencies off into their own repositories, and build them so that they are placed wherever their configuration points them to (ex: taglib could go into /opt/songbird-taglib instead of the same directory as the nightingale binary).

In turn, we’ll be required to take the first steps on the client code, setting it up to build by grabbing all the dependencies externally on Linux, rather than relying on having them in the same directory.  By splitting these packages up, it is our hope that Linux distributions will begin packaging Nightingale and it’s dependencies, and place them all in their repositories. Further, this change will take us closer to upgrading all of the dependencies as a whole on all platforms, using newer and more vanilla versions of them than we do now.

Buildbot

GeekShadow recently created some nice nightly build scripts, which build and push fresh versions of Nightingale any time a change is made. This script currently builds and uploads nightlies for 32 and 64 bit Linux, but Windows is on the way too. You can find the nightly build directory on Sourceforge, and give them a try as you so desire.

Windows Compatibility Improvements

Rsjtdrjgfuzkfg has also been really busy – he’s done various debug builds and work to improve the client’s stability and functionality on Windows. His current project focuses on using a vanilla taglib instead of the old, patched version Songbird uses – so far, it only deals with basic ID3 tags, but progress is being made. Soon,  his work should also pave the way to using a native taglib on Linux machines, and vanilla on Mac and Windows.