October 23rd, 2009 by greg
I released a bunch of software related to a message passing middle-ware that I developed at work. My employer, Impact Technologies, agreed to release the code. I call the middle-wave iobroker. iobroker uses a post/subscribe mechanism and passes around arbitrary sized messages. Each message is given a class-id which is an arbitrary string. Clients subscribe using regular expressions telling the server what messages they are interested in receiving. When a message arrives matching a subscription the server forwards the message to the client. Communication is through UNIX sockets or via TCP or both. I’ve also released a number of supporting libraries. The support libraries all have BSD licenses while the iobroker server is licensed using GPL v2. See the software page for more info and to download the code.
Category: Misc |
No Comments »
June 5th, 2009 by greg
Sometimes you need to update packages on a Debian based system but you don’t want to updated all of them. For example there are security updates available right now for a system I manage. One of those updates is the linux kernel. I’m not ready to upgrade the kernel because it is a remote machine that many people depend on. To do a kernel upgrade I need to schedule downtime and prepare for the case when the system doesn’t reboot after the upgrade.
With Debian based systems you can handle this by placing packages on hold. Packages that are on hold are not updated. If you use aptitude this is as easy as:
If you use apt-get you can accomplish the same thing with:
# echo
hold | dpkg –set-selections
When you are ready to update the package you can take it off of hold with (for aptitude):
And for apt-get/dpkg it is accomplished by:
# echo
install | dpkg –set-selections
Read the rest of this entry »
Category: Misc |
No Comments »
January 22nd, 2009 by greg
I recently learned about XBMC, a very nice cross platform media center application. After encoding all of my music in mp3 format I tried to use the Myth Music plugin. It works but I found it awkward and difficult to use. XBMC looks much nicer and can work as a MythTV frontend!
My current frontend is a mini-itx system that uses a VIA chip. It’s the M10000 board. It’s been great. The board is not powerful enough to decode, in real time, any 720p or 1080i recordings that I make (I have an analog tuner card and a digital tuner card). With the upcoming switch to digital TV broadcasts my options are to transcode everything or to upgrade my frontend. Transcoding doesn’t appeal to me since it takes a very long time to do. Besides I couldn’t watch anything as it is recorded. I sometimes start watching a show 15 minutes after it has started.
I’ve been using a Shuttle SD11G5 for quite a while as my desktop system. It’s a 2 Ghz Pentium M system with an Intel 915 graphics integrated graphics card. My hope was that this machine would be powerful enough to decode over-the-air broadcast HD. I’m happy to report that it does — mostly.
Using the XBMC live CD I booted XBMC. The default resolution was 1024×768. At that resolution I saw no significant frame drops on 720p or 1080i recordings. When I bumped the resolution to 1280×1024, the native resolution of my monitor, I saw hundreds of dropped frames. I also tried 640×480. Not surprisingly the system could keep up just fine at 640×480. I’m going to run XBMC at 640×480 (probably) since I have a standard definition TV (a 27 inch CRT).
When I eventually buy a new TV I’ll upgrade the frontend system too. From what I’ve read a system with a Core2 Duo at 3 Ghz is fast enough to decode even the toughest 1080p videos (H.264 format) in real time completely in software. An Intel X4500HD graphics chip should be sufficient to handle the OpenGL work that XBMC throws at it. Until I buy a new TV I’m hoping to get away with not buying any new hardware!
Category: Misc |
No Comments »
September 25th, 2008 by greg
It’s been a long time since I’ve run a Linux machine in a multi-head setup. Much to my surprise (and delight) a lot has changed. Unfortunately there’s still a lot of information out there on setting things up the old way but not a lot on setting things up the new way.
The old way is specifying Devices and Screens and using Xinerama and using directives like RightOf and LeftOf in your xorg.conf. The new way moves all of this stuff out of xorg.conf and shifts the responsibility to xrandr which will configure screens and devices at runtime and can do so completely dynamically.
So the basic steps are just to get xorg up and running, which should work by default, tweak your xorg.conf slightly, and then run xrandr at the beginning of your X session to configure your displays to your liking. Read the rest of this entry »
Category: Misc |
No Comments »