metaruss

Computing

debian-helper-scripts

by on Dec.02, 2007, under Linux

debian-helper-scripts is a set of tools to help with the maintenance of a Debian system.  It is basically a package of scripts (Perl and Bourne-shell) that I generally install on any Debian system that I maintain.  They are:

Packages

Leave a Comment :, more...

Debian on the Xbox

by on Nov.07, 2007, under Linux

Update 01/17/2012:  It seems that my internal links suffered from bit rot and broke at some point while moving my website around.  I have fixed those.  Also it appears that the xbox-linux.org site is borked and has been for some time.  I still get emails about this process, so I have annotated some of the steps below as best I can from memory.

Below are a series of Debian packages specific for the Microsoft Xbox.  Their purpose is to assist upgrades from Xebian 1.1.4, which is based on a rather old version of Debian GNU/Linux 3.0 “woody”.  These packages allowed me to upgrade my Xebian installation to Debian GNU/Linux 4.0 “etch”, with some additional effort.  Here is an approximation of the steps required to install Debian on an Xbox:

  1. Read the Getting Started Guide at the Xbox Linux Project Wiki.  The exact methods that you chose depend entirely on what you have to start with and what are your goals.  You may have to flash the BIOS, etc. In other words, this is where you have to hack the Xbox so that you can boot Linux. There are several ways to do it and they are documented elsewhere on the Internet. I used a mod chip and loaded Debian into the unused area at the end of the hard drive so that I could still use Xbox Live (though I never did). There are other methods that don’t require hardware mods as long as you don’t mind getting your device blacklisted on Xbox Live. Given the age of this device, I suspect you probably don’t care. One caveat is that the kernel sources below do not have the FATX patches applied. If you plan to install Xebian in the game partition, you’ll need these. I remember seeing them ported to a later kernel by someone else out there.
  2. You should evntually end up at the Xebian Download page.  Download the Xebian 1.1.4 archive of your choice.  The “basic” archive is effectively a Debian base install for the Xbox, while the “xbox” archive is a full graphical desktop.  Both work on the Xbox, of course.  If you are an advanced Debian user and intend to immediately upgrade to the latest stable Debian, the upgrade may be more painless by starting with the “basic” archive and adding packages after the upgrade is complete.  I already had the “xbox” archive installed for several years, as it was being used as a MythTV frontend.
  3. Be sure to read the Xbox Linux Boot CD/DVD Burning HOWTO before burning any images.  There are some caveats with the Xbox. Basically, don’t use CD+RW or and RW DVD media because the drive doesn’t like it. CD-RW media seems to work fine as do regular CD-R’s.
  4. Read the Xebian HOWTO all the way through. I don’t remember anything from this, but there is some information in the README that comes in the Xebian archive.
  5. Install and configure Xebian per the procedure outlined in the HOWTO.

Once you have Xebian installed and configured, you need to prepare for the Debian upgrade.  At the time of this writing, Debian GNU/Linux 4.0 “etch” is the most recent release.  This procedure has that assumption in mind.  If Cromwell BIOS is used, version 2.40 or higher is required. Obviously, this is a rather old version of Debian. Debian doesn’t support skipping over stable versions, so your best bet is probably to download Etch from the archives and do the upgrade per the steps below. If you only did a base install of Xebian, you might be able to get away with skipping straight to the latest version, but I haven’t tried it.

  1. Configure your apt sources.list as shown here and execute “apt-get update”.
  2. Upgrade the kernel and modules to version 2.6 using the packages below.  Due to something strange about make-kpkg, the sources may need to be untarred in “/usr/src” for the installation to succeed. This kernel is rather long in the tooth, but I never got around to making an updated one. The patched sources are below, so you can generate your own patch set from the pristine sources and try to patch a later kernel. If you have luck, I will be happy to post a newer kernel here for those who may follow.
  3. Install the module-init-tools package with “apt-get install module-init-tools”.
  4. Replace/merge your “/etc/modules” config file with this one.
  5. Add an entry for the new kernel to “/boot/linuxboot.cfg” as described on the Xebian-1.1.4-Kernel-2.6-Upgrade Wiki page under “Compile the Kernel -> xebian”.  You will need to change the “append” line for the new kernel to “root=/dev/hda2 kbd-reset xbox=hdd”, as Xebian uses the obsolete devfs driver.  Be sure to leave the entry for the old kernel in case something goes wrong.  This one works with the kernel package below. Just use the config file below. It should be self-explanatory.
  6. Reboot the Xbox with the new kernel.  You need to manually select the HDD boot device to make the kernel selection menu appear.  If all goes well, add a “default” entry to “/boot/linuxboot.cfg” to make the new kernel the default.
  7. Now perform the Debian upgrade.  There are some caveats with “etch”, so be sure to carefully follow the upgrade procedure in the Release Notes for Debian GNU/Linux 4.0 (“etch”), Intel x86.  Some manual intervention is required to get the upgrades to go smoothly, including removing some old packages (hotplug and python2.3 come to mind) and browsing through various scenarios presented by the aptitude tool.  This is due to old Xebian cruft. There are caveats to most Debian upgrades, so be sure to carefully read those release notes as well.
  8. Once the final “aptitude dist-upgrade” has been completed, reboot the Xbox to make sure it comes back up OK.
  9. Install the “nvxbox” driver for X.Org and place this xorg.conf as “/etc/X11/xorg.conf” to get the X server up. This is going to be a problem for later versions of Debian. If you need X, you may have some difficulty. Definitely look at the nouveau driver as they were actively trying to support the Xbox at one point.
  10. Replace your “/etc/lirc/lircd.conf” with this one if you were using the Xbox DVD remote with Xebian.  The new lirc_atiusb module only returns one byte per code instead of the 3 byte sequence of the old driver.
  11. Xebian’s “blink” tool to control the Xbox LED will not work, again due to its usage of the obsolete devfs device node structure.  I haven’t been able to get it to recompile yet, but a simple workaround is to create the device node manually and creating a symlink to it to emulate the devfs structure.  As root (this won’t stick if you are using udev):

cd /dev

mknod i2c-0 c 89 0

chgrp mythtv i2c-0

mkdir i2c

ln -s ../i2c-0 i2c/0

 

Packages

Linux Kernel 2.6.16 for the Microsoft XBox

This is a recent point-release of the 2.6.16 kernel with the Xbox patches applied and the modules for LIRC 0.8.0.  Also available is the patched kernel sources that may need to be present in /usr/src when installing the kernel package.  Note that FATX support has not been ported to the 2.6 kernel series yet.

 

X.Org nVidia Driver

This is a packaged version of the original xf86-video-nvxbox driver found in the Xbox Linux CVS. The driver itself is old, but is suitable for Debian Etch (X.Org v7.1.0) and works sufficiently well for use as a media center.

I also attempted to merge the changes from the xf86-video-nvxbox driver found in the Xbox Linux CVS into the xserver-xorg-video-nv driver for Debian Etch (X.Org v7.1.0).  This seems to work for me, though it will segfault if you do not set “NoAccel” to “true” in xorg.conf.  There is some breakage in the DMA support code that is not present in the older driver, however with the accel disabled the performance of the overlay is poor.  It’s not suitable for use as a media center.  It probably breaks support other nVidia GPUs too, so don’t try to use it for those.

9 Comments :, more...

synctree

by on Nov.05, 2005, under Linux

Synctree is a tool to synchronize two directory trees based on a set of rules.  It has been enhanced with the ability to interface with the Sorune database manager for the Neuros audio player.  By handling the transfer of files with this tool, it can automatically transcode/peel audio files into a format that is fully supoorted by the Neuros (which has trouble with high bitrate files).  It is written in Perl.

Packages

Leave a Comment :, , more...

bup

by on Mar.30, 2005, under Linux

bup is a backup and restore tool that uses tar to create archives.  The archives are
automatically named and split into 1GB chunks to accomodate any file system.  The archives
are optionally compressed using bzip2.  It is essentially another wrapper for tar,
which can be a pain when the backups are large.  I haven’t found one that is as easy to use
as this one (at least for me).  I do all my backups to a remote machine with a removeable
hard drive bay via NFS.

Packages

Leave a Comment :, , more...

subversion-helper-scripts 0.5-2

by on Mar.22, 2005, under Linux

Version 0.5-2 of subversion-helper-scripts has been released. This is a bug fix update to the initial public release, which includes an example global config file.

Leave a Comment :, , more...

Sorune

by on Mar.22, 2005, under Linux

Sorune is a tool written in Perl by Darren Smith.  It is used to manage the database on the Neuros Audio player.  Features include:

  • A simple GUI that makes management easy (requires Perl Tk).
  • All music formats are supported (mp3, ogg, wav, wma(non-drm)). All native file tags are supported.
  • Full m3u playlist support.
  • Database rebuild support.
  • Tagging by directory layout.
  • Sort by title on artists, genres, songs and recordings. Sort by track number on albums.
  • Maintains directory/file names as well as file access/modification times during sync.
  • Moving of recordings to user specified directory.
  • Foreign language accents in tags are handled (converted to the nearest English equivalent).
  • Handling of duplicate title names. Appends a number in parenthesis “(2)” or “(3)” to the title.
  • Sub-menu support.
  • Various artist support.Separate binary from libraries.

See the man page for more information.

Packages

The latest beta release:

Latest stable release:

Changes from Original Source

  • Separate binary from libraries.
  • Fix native library include path.
  • Created man page.
1 Comment :, , more...

cats2procmailrc

by on Oct.11, 2004, under Linux

cats2procmailrc is a tool written in Perl by Cameron Simpson.  It reads a human friendly mail category description file and emits a matching procmail recipe to implement it. The intent is to have an extremely succinct file of easily editable one line rules, generally of the form:

    folder tag pattern

See the man page for more information.

Packages

Changes from Original Source

  • Add missing -T option implementation.
  • Disable double quote stripping for maildirs.
1 Comment :, , more...

PureDigital Single Use Camera Support for gphoto

by on Nov.25, 2003, under Linux

I have taken John Maushammer’s gphoto changes and have rebuilt the gphoto2-2.3.1 and libgphoto2-2.3.1 Debian packages.  They are available here:

2 Comments :, more...

Debian on Motorola MCP750

by on May.05, 2003, under Linux

I actually did not do the work to create this, but I wanted to make
it available to the free software community. Special thanks to Eric Valette for all the hard
work in putting it together.

Basically, the kernel image used on the rescue disk for the Debian
2.2 “Potato” PowerPC distribution will not work on the Motorola MCP750.
There are a few patches required to make the IRQ mapping and IDE
controller work properly. If you do not have a native PPC or
cross-compiler environment to build a PPC kernel, then you will not be
able build a kernel with the required patches. Even if you do, the
MCP750 may not be able to boot from floppy or CDROM, depending on what
type of CompactPCI chassis it is installed in. Therefore, you will
need to network boot the board, which requires a combination rescue/root
image to be transferred to the board via TFTP. Eric’s image provides
that setup, using a Linux 2.2.17-pre9 kernel. Here
are the files:

Be sure that you have “Network PReP-Boot Mode Enabled” set to “Y”
and don’t be surprised if the “nbo” command fails with “Network Boot
Controller/Device Error”. Just try again. Once the installer is up,
you may install Debian in the usual fashion EXCEPT if you are installing
to hard disk. If that is the case DO NOT use the installer to setup
your partition table (cfdisk). Doing so will not work and will also
break the installer, requiring a reboot. Instead, scroll down to the
last few installation options and select “Start a shell”. From here,
use fdisk (not cfdisk) to setup the partitions and exit the shell when
complete. Also, I recommend using /dev/hdc1 as the root partition,
since this is the default boot parameter in Eric’s image. Otherwise, you can use a hex editor to easily change it (is there an rdev for PPC?).

Once I had Debian installed and upgraded to a sid/woody setup, I built a 2.4.x kernel for it. The 2.4.18-pre6 kernel worked on the MCP750 without any special modifications. While the 2.2.17-pre9 from Eric did not work on the MCPN750 (non-system slot version of the MCP750), the 2.4.18 seemed to.

Leave a Comment :, more...

Search

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact me.

Sites that interest me

A few highly recommended friends...

Meta