FreeBoB on Debian GNU/Linux
From FreeBoB
| Table of contents |
Concepts
* ‘BeBoB’ means the BridgeCo (http://www.bridgeco.net/) enhanced breakout box firmware. * BeBoB devices are audio breakout boxes running this firmware. * BeBoB devices are attached with IEEE1394, a.k.a FireWire(tm) or i.Link(tm), a high performance serial bus. * FreeBoB is a a generic Linux driver for BeBoB devices. * Debian GNU/Linux (http://www.debian.org/) is a free operating system for computers. Debian GNU/Linux uses the Linux kernel the operating system core), but most of the basic OS tools come from the GNU project; hence the name GNU/Linux. * FreeBoB on Debian GNU/Linux (http://pkg-freebob.alioth.debian.org/) is a FreeBoB port to Debian GNU/Linux.
Linux Kernel Questions
Linux kernel raw1394 support (built-in or module) is mandatory. Following commands can help you discover your actual config. Run, as root:
# zgrep IEEE1394 /proc/config.gz # grep IEEE1394 /boot/config-`uname -r`
You look for these lines:
* CONFIG_IEEE1394=y * CONFIG_IEEE1394_RAWIO=y
Or, alternatively, they can be built as modules and the lines would be as follows. Either is acceptable.
* CONFIG_IEEE1394=m * CONFIG_IEEE1394_RAWIO=m
=y means built-in suppport; =m means modular support. If raw1394 kernel support is not installed, you must recompile your kernel (How?) (http://www.debian.org/doc/manuals/reference/ch-kernel.en.html) with this setup or install kernel image packaged. Linux Kernel version 2.6.15 or later is recommendable but not mandatory. Run, as root:
# apt-get install linux-image-2.6
and then choose an adequate linux-image for install and install it.
Official Debian kernel packages have raw1394 support modular (not built-in). If you are using one (if you don't know then probably you are using one), it may be necessary to load the 'raw1394' module (you will need to do this if you had 'CONFIG_IEEE1394_RAWIO=m' above):
# modprobe raw1394
If you will often (or always) need access to the raw1394 driver, load the module at bootup:
# modconf
If that command did not work (resulting in output of 'modconf: command not found'), then install modconf first:
# apt-get install modconf # modconf
look for the line:
kernel/drivers/ieee1394
Press enter to select this submenu and then install raw1394. The module will now be loaded immediately and will also be loaded each time the machine boots.
Installing
Today, Mar 11 2007, FreeBoB run as jackd driver. So, all you need is love and install jackd.
FreeBoB is not yet released (stable) into Debian GNU/Linux. So, for use FreeBoB, you must run unstable and experimental (just for jack-related packages) Debian GNU/Linux. If you don't know what that means, be careful and read the Debian docs before continuing.
Add, if necessary, official unstable and experimental lines to /etc/apt/sources.list:
* deb http://ftp.debian.org/debian unstable main contrib non-free * deb http://ftp.debian.org/debian experimental main contrib non-free
Run, as root:
# apt-get update && apt-get install -t experimental jackd
Now, you are ready to run jackd. Run, as normal user:
$ jackd -d freebob
and cross yours fingers. Sometimes this can help ;). Press Ctrl+C to terminate execution of jackd and return to the command prompt. It is more likely than not that beyond installing, freebob you want use freebob :). So your next step is to review the Using hints.
Packages development
We have a Subversion repository (thanks to debian alioth admins/maintainers)
* svn://marciotex-guest@svn.debian.org/svn/pkg-freebob
For build packages, there is 2 options: i) from subversion repository; ii) from apt repository. First option is more "experimental" and requires more skills. Second option is more stable (things should be works) and more easy. Try these if first don't works.
Building Debian Source Packages From Subversion Repository
Install svn-buildpackage:
# apt-get install svn-buildpackage
First time, checkout wanted modules. For example, libfreebob:
$ cd /some/dir $ svn co svn://marciotex-guest@svn.debian.org/svn/pkg-freebob/libfreebob $ cd libfreebob/trunk $ svn-buildpackage -rfakeroot -us -uc < coffee is good; drink > $ cd /some/dir/libfreebob/build-area $ ls -lah
Packages should be there. If not, something got wrong. Let me know. Other times, substitues first three commands by
$ cd /some/dir/libfreebob $ svn up
Building Debian Source Packages From Apt Repository
libfreebob can be built from apt repository. To build binaries, run, as root,
# apt-get build-dep libfreebob
And then, as normal user:
$ cd /some/dir/whatever $ apt-get source libfreebob $ cd libfreebob $ dpkg-buildpackage -rfakeroot -us -uc $ cd /some/dir/whatever $ ls -lah
To install packages with dpkg, in case you don't remember, run (as root):
# dpkg --install package.deb
Social Area
Problems? Solutions? Patches? (hummm...) Please, if Debian-specific, send to mailing list pkg-freebob-devel (http://lists.alioth.debian.org/mailman/listinfo/pkg-freebob-devel).
If not, use Freebob-devel mailing list (https://lists.sourceforge.net/lists/listinfo/freebob-devel).
