Ninjam
libninjam
I split up the code of ninjam so that the code used by the client as well as the server ends up in a shared library. Further more there is now a library that should be the common ground for all the ninjam clients. This makes it also easier to develop clients outside the original ninjam source tree.The source code of ninjam includes the source code of the shared libraries libninjam-common and libninjam-client, as well as the cursesclient and the server. Just like in the original distribution.
Note: For up-to-date source-code of libninjam you may have a look at the svn repository on the sourceforge project page of gninjam.
Note 2: In the svn repository exists a branch of libninjam with session-mode and voice-chat support. The procedure of compiling the code is analogous to the instructions given here.
Instructions:
Download the source tarball[an error occurred while processing this directive] and the diff file.wget http://gehrignet.de/ubuntu/hardy/ninjam_0.06.orig.tar.gz [an error occurred while processing this directive]wget http://gehrignet.de/ubuntu/hardy/ninjam_0.06-1ubuntu9.diff.gzUnpack the tarball:
tar xvzf ninjam_0.06.orig.tar.gz[an error occurred while processing this directive]Patch the directory:
cd ninjam-0.06.orig zcat ../ninjam_0.06-1ubuntu9.diff.gz | patch -p1Build it:
[an error occurred while processing this directive]cd ninjam-0.06 [an error occurred while processing this directive]./autogen.sh [an error occurred while processing this directive]./configure make sudo make install
Debian/Ubuntu package:
Prebuilt deb packages are available through my repository. Which you can add to your/etc/apt/sources.list
or your favorite package manager with the following line:
deb http://gehrignet.de/ubuntu/ hardy/for access to the source packages:
deb-src http://gehrignet.de/ubuntu/ hardy/And then you can install them with:
sudo apt-get install libninjam-common libninjam-clientIf you also need the development files:
sudo apt-get install libninjam-common-dev libninjam-client-devThe server can be optained by:
sudo apt-get install ninjam-serverThe ncurses client can be optained by:
sudo apt-get install ninjam-clientNote: These packages were built on a current version of Ubuntu Hardy. So if you have an older version of Ubuntu you will probably have to built the packages yourself using the sources above, because you will probably not meet the package requirements. Here is how you can do that after adding the deb-src line above to your
/etc/apt/sources.list
sudo apt-get build-dep ninjam apt-get source ninjam cd ninjam-0.06-1ubuntu9 [an error occurred while processing this directive]./autogen.sh dpkg-buildpackage -rfakeroot -b -uc -us[an error occurred while processing this directive]And install it using
dpkg
:
sudo dpkg -i ninjam_0.06-1ubuntu9.deb
Changelog:
- 0.6-1ubuntu9:
- add conditional to Makefile to predict correct compile flags for 64bit CPUs
- 0.6-1ubuntu8:
- add per-user autosubscribe option
- 0.6-1ubuntu7:
- make create_audioStreamer_JACK return NULL, if the jack connection cannot be successfully established.
- 0.6-1ubuntu6:
- reopen server log file on SIGHUP so that logrotate can work properly
- updated logrotate file to reload server after log rotation
- 0.6-1ubuntu5:
- fixed output of month in server log file
- 0.6-1ubuntu4:
- apply patch from jnc to get njclient.cpp to compile on amd64
- fixed WDL/sha.cpp so authentication on ninjam server works correctly on amd64
- 0.6-1ubuntu3:
- add php script examples to retrieve the server status
- add official server guide
- 0.6-1ubuntu2:
- fix build-depends
- 0.6-1ubuntu1:
- add init.d script, logrotate, default and config file
- 0.6-1:
- merged with new upstream version of server
- 0.02-7ubuntu3:
- fix some Makefile errors and create pkgconfig automatically with correct PREFIX (patch by Adam Sampson) and VERSION
- 0.02-7ubuntu2:
- add pkgconfig files for client libraries set stereoout to true by default to fix a problem in cninjam (patch by Adam Sampson)
- separate PREFIX and DESTDIR in makefiles
- enable backspace key in curses client for non-MAC platforms (patch by Adam Sampson)
- 0.02-7ubuntu1:
- update pkgconfig file to reflect current version
- 0.02-7:
- fix compilation of cursesclient on system where libninjam has not yet been installed.
- 0.02-6:
- added jack transport fix from robin
- added patch for multiple outputs from expertsleepers
- fix problem with possibly negative output channel number
- make stereo channel output configurable
- add interface for adding audio channels and getting the names from in- and output ports seperately
- 0.02-5:
- make number of in-/output channels and client name of the jack driver variable
- 0.02-4:
- reenabled alsa driver in addition to the jack driver; some more conversions from char* to const char*
- 0.02-3:
- change filename parameter in WaveWriter to const char*
- 0.02-2:
- changed SetLocalChannelInfo to get const char* name as input instead of char* name
- 0.02-1:
- initial release of ninjam library with debian packaging
gninjam - GTK client for NINJAM
I finished the basic elements of the gui. It may be still a bit buggy, but it is working.Some settings are now included in the preferences dialog using gconfd for saving the configuration. The channel settings are also saved using gconfd now instead of the old ninjam.config file.
Note: Since this is an pre-alpha release there is no guarantee for anything;-).
Note 2: For up-to-date source-code of gninjam you may have a look at the svn repository on the sourceforge project page of gninjam.
Note 3: In the svn repository exists a branch of gninjam with session-mode and voice-chat support. The procedure of compiling the code is analogous to the instructions given here. You will also need libninjam with session-mode and voice-chat support to compile this branch of gninjam.
Requirements:
Get and install libninjam, especially the development files for the client.Instructions:
Download the source tarball[an error occurred while processing this directive] and the diff file.wget http://gehrignet.de/ubuntu/jaunty/gninjam_0.01a.orig.tar.gz [an error occurred while processing this directive]wget http://gehrignet.de/ubuntu/jaunty/gninjam_0.01a-13ubuntu1.diff.gzUnpack the tarball:
tar xvzf gninjam_0.01a.orig.tar.gz[an error occurred while processing this directive]Patch the directory:
cd gninjam-0.01a.orig zcat ../gninjam_0.01a-13ubuntu1.diff.gz | patch -p1Build it:
[an error occurred while processing this directive]cd gninjam-0.01a [an error occurred while processing this directive]./autogen.sh [an error occurred while processing this directive]./configure make sudo make install
Debian/Ubuntu package:
Prebuilt deb packages are available through my repository. Which you can add to your/etc/apt/sources.list
or your favorite package manager with the following line:
deb http://gehrignet.de/ubuntu/ jaunty/for access to the source packages:
deb-src http://gehrignet.de/ubuntu/ jaunty/After adding the repository you have to update your package list either by using your favorite package manager or by the following command:
sudo apt-get updateAnd then you can install gninjam with:
sudo apt-get install gninjamNote: These packages were built on a current version of Ubuntu Intrepid. So if you have an older version of Ubuntu you will probably have to built the packages yourself using the sources above, because you will probably not meet the package requirements. Here is how you can do that after adding the deb-src line above to your
/etc/apt/sources.list
sudo apt-get build-dep gninjam apt-get source gninjam cd gninjam-0.01a-13ubuntu1 [an error occurred while processing this directive]./autogen.sh dpkg-buildpackage -rfakeroot -b -uc -us[an error occurred while processing this directive]And install it using
dpkg
:
sudo dpkg -i gninjam_0.01a-13ubuntu1.deb
Changelog:
- 0.01a-13ubuntu1:
- fix compilation problem on intrepid
- 0.01a-13:
- add per-user autosubscribe option in preferences dialog
- 0.01a-12ubuntu1:
- start gui even if audio interface could not be successfully initialized
- 0.01a-12:
- disable markup for the label of the RemoteUserFrame to overcome those gtk warnings about the @ symbol.
- add checkbutton for anonymous login
- add accelerator to connect dialog, so that it is possible to simply press return to connect
- add about dialog
- 0.01a-11ubuntu4:
- rebuild with new libninjam version
- 0.01a-11ubuntu3:
- fix automatic scrolling of chat log (patch by Adam Sampson)
- 0.01a-11ubuntu2:
- use pkgconfig file of ninjam-client instead of ninjam
- 0.01a-11ubuntu1:
- use pkgconfig file of libninjam to get include and lib paths
- 0.01a-11:
- added remote user master control
- 0.01a-10:
- fixed markup problem
- 0.01a-9:
- added internationalization
- 0.01a-8:
- change menu items so that everything is consistently in english
- 0.01a-7:
- make border in remote channel view like in local channel view
- fix gtkmm dependencies in configure.in
- 0.01a-6:
- changed remote channel view so that the user name is displayed above all of the users channels not within each channel seperately
- added support for output channel selection
- added de-/selection of views to hide those that are note wanted
- added handlebar to master controls to tear it of the window
- changed callback for gui update so that the gui is only updated when needed
- added support to switch between stereo and mono mode for output channels
- added item in channel lists to add new channels while run-time
- 0.01a-5:
- make number of in-/output channels for jack and default connection parameters configurable
- 0.01a-4:
- use gconf for saving channel parameters
- 0.01a-3:
- added preference dialog
- 0.01a-2:
- added dependency for libninjam-client
- 0.01a-1:
- initial release with debian packaging
last modified: Wednesday, 12-May-2010 00:53:32 CEST