Nubango is an iTunes-compatible Kerbango Tuning Service (KTS) server/proxy. Nubango is really just one CGI script and some static XML files.
Old iTunes versions like iTunes 8 and below are no longer able to download internet radio station listings from Apple's KTS server. Such old iTunes versions are using bad query strings in their HTTP requests. To get things working again, iTunes can be made to communicate with Nubango instead of Kerbango.
Pre-patched iTunes apps are now available on the Macintosh Garden!
To get iTunes to load radio stations from Nubango, we must redirect iTunes' HTTP requests to a Nubango server. patcher.sh
does a simple string replacement on a iTunes binary executable, replacing all instances of pri.kts-af.net
with pri.kts-af.org
(which is our dedicated Nubango server). Running the patcher in Terminal will present an "Open File" dialog in which you will be asked to select an iTunes application for patching. The old application binary is stored within iTunes.app/Contents/MacOS/iTunes.old
, just in case you would like to undo the hack later.
Here be dragons Nubango may cause damage to your system if you attempt to use it, because at-present it is mostly untested.
We need your help to improve Nubango for everyone. Please present requests and report any problems by creating a new GitHub issue!
For experienced users only. You risk damaging your system. Please read the included MIT "LICENSE" document.
Tested on Ubuntu 20.04.2
- Install Apache 2:
sudo apt-get update && sudo apt install apache2
- Copy the entire included
xml
directory into the webroot (most likely at)/var/www/html
- Enable the
rewrite
&cgi
Apache modules:
sudo a2enmod rewrite cgi
- Add this
RewriteRule
to the the site file (Just before the line</VirtualHost>
) at/etc/apache2/sites-enabled/000-default.config
:
RewriteEngine On
RewriteRule "^/xml/index\.xml$" "/cgi-bin/streamingRadioStations.sh" [H=cgi-script,PT]
- Copy the included CGI script from
cgi-bin/streamingRadioStations.sh
into the directory at/usr/lib/cgi-bin
- Make the file at
/usr/lib/cgi-bin/streamingRadioStations.sh
executable:
chmod +x /usr/lib/cgi-bin/streamingRadioStations.sh
- Start Apache 2:
sudo apachectl start
- Open http://127.0.0.1 and http://127.0.0.1/xml/index.xml in a web browser to ensure that the HTTP server is working properly.
Apache is included and pre-configured with Mac OS X 10.4
- Copy the entire included
xml
directory into the webroot at/Library/WebServer/Documents
- Add this
RewriteRule
to the bottom of the file at/etc/httpd/httpd.conf
:
RewriteRule "^/xml/index\.xml$" "/cgi-bin/streamingRadioStations.sh" [PT]
- Copy the included CGI script from
cgi-bin/streamingRadioStations.sh
into the directory at/Library/WebServer/CGI-Executables
- Make the file at
/Library/WebServer/CGI-Executables/streamingRadioStations.sh
executable:
chmod +x /Library/WebServer/CGI-Executables/streamingRadioStations.sh
- Ensure that "Personal Web Sharing" is enabled in System Preferences > Internet & Network > Services > Sharing
- Open http://127.0.0.1 and http://127.0.0.1/xml/index.xml in a web browser to ensure that the HTTP server is working properly.
To get your iTunes to communicate with your self-hosted Nubango server, you can perform a DNS hack instead of patching.
You can easily replace any of the below IP addresses with the one pointing to your Nubango server.
For Mac OS X: Add to the bottom of /etc/hosts
:
127.0.0.1 pri.kts-af.net
::1 pri.kts-af.net
For Mac OS 9: Add to the bottom of /System Folder/Preferences/Hosts
:
pri.kts-af.net IN A 127.0.0.1
pri.kts-af.net IN AAAA ::1