(12-18-2011, 07:40 PM)hydroxide Wrote: [ -> ]I'm definitely interested in helping out. I don't have amazing technical knowledge (I know Java, PHP, Javascript, but that's about it). But I do learn really quickly so I could do something more simple like porting add-ons or feathers. And I could definitely help out with the website (if even needed) because I'm pretty good with that. The thing is this project seems pretty unstructured so I'm not really sure where to start. Not even sure on how I would port add-ons. What's involved in this? I understand they need to be downloaded, unzipped, fixed, then rezipped but.. What exactly needs to be changed to make them compatible? Is there a page somewhere on how Mozilla extensions work? And Songbird/Nightingale APIs or anything?
ps. What's with the orange logo? I thought it was supposed to be blue :p
First, thanks for your interest!
If you're interested in working on AddOns or the core itself, a good page to start is
the Mozilla Developer Network.
To port / fix an extension (you already discovered the download, unzip and rezip step, so I skip that) you basically have to change the target application from Songbird to Nightingale in the
install.rdf file (if display panes are involved, also change it there: <songbird

omething> should become <nightingale

omething> and you should add the nightingale namespace on the top of the file, basically the songbird namespace with "getnightingale.com" instead of "songbirdnest.com").
After that, Nightingale will let you install the extension, and the pane registration will work. Most likely that is not enough to fix the extension, you should have a look at
chrome.manifest, and replace songbird with nightingale there. After that, the AddOn should integrate into Nightingale as it did in Songbird.
Many simple extensions will work now, but you should scan xul and javascript in the chome directory (might be jar-packed, if so unzip, edit, rezip) for occurences of songbird, and replace them with nightingale according to the context. Some examples:
"Songbird:Main" is the windowtype of Songbird's main window, "Nightingale:Main" is correct for Nightingale.
"@songbirdnest.com/something/crazy" should become "@getnightingale.com/something/crazy", beware of "@songbirdnest.com/songbird/something" -> "@getnightingale.com/nightingale/something". Keep up- and downcase correct!
After that, test the extension (you can put it into a folder within your profile directory so you don't have to zip changes everytime), the
Building an Extension Article describes the process a bit.
Most extensions should be ported now; there might be an issue if the extension was for Songbird 1.9.* and higher, as some APIs changed. If you have *much* time, open the error console, look for errors and try to fix them (most likely: javascript code, which you understand, calls things that doesn't exist, like the global JSON object, you could fix that by inserting a jsonclass helper providing JSON functionality). You can always ask us at IRC (
irc://irc.mozilla.org/#nightingale) if you need help for a specific issue.
Thanks again for your interest, and welcome to the Nightingale community!