Wednesday, January 31, 2007

Sunk Port

So I spent some time over the past couple of days trying to get XFCE4 installed. It is the "other" desktop environment, a distant third behind the GNOME and KDE behemoths, but I was hoping it would run a little better on my machine. I was hoping that it would run in 24bit color mode, mostly, as KDE just hangs as soon as it starts up if I have it in 24bit color.



So I used my usual command to install xfce:



# portmanager x11-wm/xfce -l

And this worked just fine. But then I noticed the x11-wm/xfce4 port, and saw that it was the "meta-port" that built the entire destkop environment (much like x11/kde3 is the meta-port to install all of KDE). So I tried to do:



# portmanager x11-wm/xfce4 -l

... much output later ...

00001 have:pango-1.14.10 /x11-toolkits/pango built with OLD dependency: xorg-libraries-6.9.0


to no avail, as it kept complaining about the OLD dependency for pango. Now I don't know exactly who is broken, because when I would try to build xorg-libraries, it worked just fine, but I would still get the complaint if I tried to build pango. There's a couple of different portmanager options that should help with this. "-f" is supposed to force building of all dependencies and -pristine is supposed to update a port if all the way down the dependency chain. But if I tried -p, I got:



00001 PRISTINE MODE: pango-1.14.10 /x11-toolkits/pango has incorrect xorg-libraries-6.9.0 entry in +CONTENTS file

So that didn't work. I tried deleting various packages, rebuilding at different levels, and nothing would work. And portmamanger loops three times if it fails to build something, so if you aren't paying strict attention, it goes through and tries the same thing three times. What's that definition of crazy - "Doing the same thing over and over again expecting different results"? That's what portmanager does. And I couldn't get it to build xfce4, given the state of my machine.



So I went back to doing it the old-fashioned way - with make. cd into /usr/ports/x11-wm/xfce4 and make && make install && make clean. And it worked just fine, thank you very much. I suppose sometimes too much detail can be a killer. And I'm sure portmanager must have some way of telling it to ignore the problem, although the '-ip' option didn't seem to help. And, of course, now I have even more stuff dependent on an old port.



And, after all that, I still don't have a window manager I like:-( I still have the major problem that 'click to focus' doesn't work on any of them. Actually, focus works but it doesn't bring the window to the foreground, which I don't like. So I have to set the option that brings the window under the mouse to the foreground, which is okay in most circumstances, but makes me crazy in a few. I wish I knew why, despite setting the option, the 'click brings to foreground and in keyboard focus' doesn't work. It must have something to do with the mouse, because it doesn't work in all the WMs I've tried. Weird.



Monday, January 29, 2007

Upgrade Away!

While the upgrade from PC-BSD 1.2 to 1.3.0.1 was not without its complications, it does seem to have worked out in the end. So I'm currently running PC-BSD, v1.3.0.1. Yay!



The first time I installed the 1.3.0.1 PBI, I fired it up and waited until it got started. Once it began to install various packages, I switched away to my work computer and forgot about it until the computer started to make a sickly beeping noise. I switched back over to my PC-BSD machine, and found a blank screen and frozen keyboard. The computer was beeping steadily and nothing could be done. So, with much trepidation, I hit the Reset button (I refuse to build a computer that doesn't have a reset button) and hoped for the best.



I was surprised that it booted okay, but not surprised I was still getting PC-BSD 1.2 when I did a uname -a. I did notice a few differences, and when I went to Settings -> System Administration -> PC-BSD System Manager (new name), I was told I was running PC-BSD 1.3.01 (sic). Hmm, that meant, again not surprisingly, my machine was in some kind of upgrade limbo. Oh oh.



And I continued to be unsurprised when I clicked on my CD drive and was told that HAL was required. HAL, or Hardware Abstraction Layer, was a bit of a controversial decision to bring into PC-BSD and requires some daemons that obviously weren't running. I tried running the /usr/local/etc/rc.d/hald script but it didn't run. These days, in order for any daemon to run, it has to be explicitly enabled in /etc/rc.conf. So I added:



hald_enable="YES"

to my file and then it complained about a couple of other daemons not enabled correctly so I added:



dbus_enable="YES"

polkitd_enable="YES"


This seemed to help but there were still some problems, so I decided to try and re-install the patch PBI. Of course, it immediately informed me that it would only upgrade a 1.2 system. Looking at the /Programs/Patch1.2-1.3.01/PBI.FirstRun.sh file, I see where it got the version number via the PBReg program. I guess this sets up some kind of registry thing. So I just typed in PBReg set /PC-BSD/Version 1.2, and tried again.



This time I watched much more closely and it all went along pretty smoothly. I did not like how it just rebooted the computer when it finished though. It should at least ask you to click a button before rebooting, in case there is some work that needs to be saved. Luckily, I had closed everything else before beginning this install.



It rebooted fine and, lo and behold, I was now running PC-BSD 1.3:



$ uname -a

FreeBSD PCBSD.localhost 6.1-RELEASE-p11 FreeBSD 6.1-RELEASE-p11 #3: Wed Dec 20 18:51:13 PST 2006 root@PCBSD.localhost:/usr/obj/usr/src/sys/PCBSDv1.3 i386


But when I started X, I got a rude surprise - the upgrade had silently deleted my /etc/X11/xorg.conf file! My carefully crafted dual monitor xorg.conf file! Yikes! Luckily, I had an xorg.conf~ file still there, and it was reasonably intact, so I was able to recover from the problem. I did notice that one of the last packages installed during the upgrade was a new version of Xorg (xorg-server 6.9.0_5, to be exact), so I had hopes that perhaps my crash problem when I used 24 bit color depth would be fixed. But alas and alack, not to be. KDE still hangs when I try to use it in 24 bit mode with the dual monitors. I think, though, that fluxbox worked fine. So that may drive me even more to try out another window manager.



But it definitely should never have overwritten such a precious configuration file without at least saving a backup. If there's one file whose changes you don't want to lose, it's the X config file! I've created a few different backups this time myself.



So things are working okay. I can't seem to get any from an audio CD though. I get sound just fine when playing sound files, but CDs don't seem to say anything. And I need to find an MP3 ripper so I can continue my work in ripping my cd collection.




Friday, January 26, 2007

Tuesday, January 23, 2007

Upgrade Train

Sorry it has been so quiet around here. Busy times at work, so just not as much time to play. Also, The Beast is down due to a hardware problem with the main hard drive. I knew there was a reason why I didn't have that old 80gb hard drive in a machine and now I can't find the 20gb one I was using to boot from. It has two big hard drives on the UDMA100 card, but booting from these can be problematic, so I like to use a small one on the standard IDE channels as the main boot hard drive. I gotta see if I can figure out what I did with that other hard rive. I'm sure I didn't throw it away, as the box of ancient hardware stashed in the garage can attest to.



I also downloaded the PC-BSD 1.3.0.1 PBI update, but haven't had the intestinal fortitude to install it yet. I think I will do that after posting this entry. Heck, I see that 1.3.2 is already out, so I'd better jump on that upgrading train before it gets too far from the station.



Wednesday, January 17, 2007

Keep Us Informed

Very nice, very complete, FreeBSD status report page.  From GNOME to BSNMP (whatever that is) to specialized audio support, this tells us what the FreeBSD team was up to during the last quarter of 2006.

FreeBSD Status Report

Tuesday, January 16, 2007

Do The Desktop

Really nice to-the-point posting about installing and configuring FreeBSD 6.x.  Gives you a solid idea of how to gradually install just the packages you want, in order to get a lean and mean KDE machine. Of course, at this point, I'd just point someone at PC-BSD, but that's just one man's opinion. Be sure to read the comments, as there are lots of good make.conf suggestions in there.

OFB.biz: Open for Business

Monday, January 15, 2007

Another Live One

Might as well continue in the LiveCD vein. This time to note that Freesbie has just come out with its 2.0 release. Based on FreeBSD 6.2 (can't get any fresher than that!), it is a real winner of a LiveCD, excellent as a diagnostic tool when your FreeBSD machine is having problems. I'm downloading as we "speak".



FreeSBIE Blog: FreeSBIE-2.0-RELEASE Available!





Friday, January 12, 2007

Live More True

Must be the day for finding out about BSD LiveCDs, as TrueBSD is another LiveCD, only this time based on FreeBSD.  Lightweight and small (only 200mb), looks like a promising Live version.

Official Web-site operating system TrueBSD

Thursday, January 11, 2007

We've Got Another Live One!

OiveBSD is another "LiveCD" BSD version, this time based upon OpenBSD.  A LiveCD is one where you can boot and run the OS via the CD, which lets you test out things like hardware compatibility.  Usually, although not always, you can also install directly from the CD.  There's been some call for a PC-BSD LiveCD, but I think the developers are correct when they say that a LiveCD for PC-BSD doesn't offer you anything over any other FreeBSD LiveCD, like Freesbie or roFRESSBIE, because the thing PC-BSD does best is to streamline the install process.  So if you want to make sure PC-BSD will work on your hardware, try out one of the FreeBSD based LiveCDs and see how that works.  If you're happy with it, go grab the latest PC-BSD and go to town with that.



OliveBSD - OpenBSD Live CD


Cooking Up A Storm

Nice list of enhancements to look forward to in FreeBSD 7. ZFS sounds like a great addition, as does support for many new soundcards.

FreeBSD - What's cooking for FreeBSD 7?


powered by performancing firefox



Tuesday, January 9, 2007

Give Your Computer The Boot

I'm an operating system fanatic. It's a pretty crazy obsession, really, as there doesn't seem to be much of a point, as I never have time to really dig into most of them. But DistroWatch.com is a favorite web site and I am forever downloading a new ISO to try it out on The Beast. It's nice to have a computer to just play Operating System Bingo on!



In order to play with operating systems, you need to have a boot manager you are happy with, in order to pick which OS to boot into at any given time. This even has some work-related benefits, as I usually work at a multi-OS place, even if it is just to boot into various flavors of Windows. Of course, for testing purposes, these days it is much more cost-efficient to use a virtual machine, like VMWare, Virtual PC, or QEMU, but that's a discussion for another day (yup, I'm addicted to virtualization too). Boot managers allow you to easily pick a partition to boot into and they give you native speed and efficiency once you're there.



In the past, I was a huge fan of System Commander. It was my boot manager of choice for many many years. It was easy to install, looked good, quickly and painlessly found installed OSes and noticed new ones without a hiccup. It is very flexible and supports many different and obscure installations. But a few years ago, I started having graphical problems. I think they started getting too fancy with their display and it impacted its flexibility. Some of my machines just displayed garbage when booting into System Commander. And tech support was not successful in solving my problem, so I began to cast about for a new boot manager.



And so about 4 years ago, I began to use BootIt NG, a shareware boot manager. While not quite as smooth as System Commander at its peak, it at least works on every machine I've thrown at it. It is also not quite as successful in noticing new installations as System Commander, requiring a bit more work to add a new OS boot. And I've also had problems getting it to pick a CD and boot from it. But overall I've been very happy with it so far, and continue to recommend it (as frequent readers of this blog will no doubt notice!).



The other major contender for the boot manager crown is GAG, an Open Source program, often recommended in the PC-BSD forums, as the native FreeBSD loader, boot0 ("Boot Easy" (sic)) is pretty, no, make that incredibly, bare bones and simplisitic. So I decided to check it out to see if it could replace BootIT NG. And the short answer is "Not a snowball's chance in Hell."



While GAG purports to be an easy "graphical" way of doing a boot loader, I don't see it at all. While it will list your partitions, it gives you no virtually information about them at all:




  • A Boot From Floppy

  • B A5h FreeBSD

  • C 63h

  • D 63h

  • E 83h Linux EXT2

  • F 82h



Is the screen I see on booting The Beast. The black lines are primary partitions, while the blue ones are extended partitions (I have Kubuntu installed on the last partition). Not sure what the "63h" means. Not very user friendly, really. Although I suppose the case could be made that anyone messing with a boot manager should have enough knowledge to work through this. But it isn't really good enough for me. Not when I can spend a mere US$35 and get BootIT NG, which also contains a rudimentary partition manager too - worth it to me!



There is also a standard Linux boot loader called GRUB, but that requires editing some text files and offers no help whatsoever. Thanks, but I'll stick with BootIT NG.



Another Open Source boot loader I found is called Gujin. It looks promising based upon the web page, but pretty much demands a running Linux in order to install it and I'm not ready for that yet. But I hope to have some time in the near future to check it out.




This is a good looking set of pages on dual booting using GRUB, if you can deal with it:

How-To Dual Boot FreeBSD, Linux, and OpenBSD with GNU Grub



And of course, the FreeBSD Handbook is the real source for info on how BSD boots:

Bootstrapping BSD




Shiny and New PC-BSD

PC-BSD version 1.3.0.1 was released yesterday, fixing and updating a few things since last week's 1.3 unveiling. Most importantly, they fixed the nearly fatal flaw where it could trash your partition table if you tried to install into a primary partition that came after an extended one. Here's a list of changes in 1.3.0.1:




  • Updated HAL to latest version in Ports. (0.5.8.20070104)

  • Added xscreensaver-kde port

  • Updated PCInstall code with fixes for extended partitions. (Bug #355,
    Feature Request #203, Bug #334)

  • Updated enable.sh script for HAL in Services tool. (Bug #367)

  • Updated kcmPBSystem module with fixes Tim made recently (Bug #353)

  • Created /PCBSD/browser_plugins directory, and made it a default in
    KDE

  • Added Arabic language to installer

  • Fixed issue with changing the video card on install CD to "vesa".
    (Bug #372)

  • Updated version of CrashHandler which fixes leaving .files in your
    home dir.

  • Implemented Feature Request #148 - Documents path now defaults to
    /home//Documents/

  • Fixed issue running PBIs directly from CD. The "noexec" flag is now
    disabled by default.



I'm not exactly sure what this HAL thing is, but it has been the talk of the PC-BSD forums. It is some kind of new daemon used to detect hardware changes. Time for some investigations!



PC-BSD Download page



Monday, January 8, 2007

Controlling Characters

I have a problem with zsh when run as a process in Emacs, where some of the escape sequences used by zsh aren't interpretted correctly by the emacs terminal, and thus I have weird characters on my prompt string. I went on a quest to figure out what they were and I came across this excellently geeky page, where ASNI control sequences are delineated. Turns out I'm have problems with "esc [J" and "esc [k", which are line cleanup commands. I'm not sure how to get zsh to not use them, or what TERM I should use in the emacs term to get it to understand them. So I don't do shells in Emacs any more.



xterm / Escape Sequences



Sunday, January 7, 2007

Bigger Is Better

Once again, it has been pretty quiet around here. One reason for the time away from the keyboard is the new toy I picked up on Thursday - a 50in Sony KDS-50A2000 SXRD rear projection TV. Very tasty and the perfect way to watch yet another crushing Patriots victory over the New York Jets. This one was even more satisfying, as it came in a playoff game. The TV picture is spectacular, and I'm already addicted to hi-def TV and can barely stand regular format TV. It even has a VGA port in the back, so perhaps some day I'll carry my machine downstairs and plug it in. Would make for some mind-blowing computer gaming, I bet! The XBOX sure does look purty on it too.



I also wanted to report my extreme satisfaction with the new KVM switch. After some initial setup problems, I have it working like a champ, and three of the four computers display in glorious two monitor color. Only The Beast struggles along with a single monitor, and I've been tempted to throw in a PCI graphics card and see how that works. The switch is quite picky about how to get it initially installed and the conflicting installation docs don't help. Here's how I do it now:




  1. Turn off the computer and then plug in the special KVM dual monitor cable. There are just two VGA plugs (one male, one female, so you can't get them on backwards) on the KVM side, while there are two mail VGA plugs on the computer side. One plug has a USB plug with it and the other has sound/mic plugs off it. You can plug in the sound connectors if you want, but don't plug in the USB one yet. Be sure you have a USB keyboard and mouse plugged into the appropriate USB ports on the KVM switch, though.

  2. Plug a USB keyboard and mouse into the host computer. This is to make sure the computer works with the USB input, as that is what the KVM switch provides.

  3. Turn on the computer and let it boot up into Windows. The KVM switch will install a bunch of USB drivers in Window a little bit later. It claims to be compatible only with Windows, but it seems to work just fine with my BSD and Linux boxes.

  4. After you've booted into Windows and logged in, verify that everything is working. It might install some USB drivers for your mouse and/or keyboard, so get that done first.

  5. Now plug in the USB cord from the KVM switch (attached to one of the host end VGA plugs). Windows will then madly install USB drivers. I don't know exactly what it is doing but there's a bunch.

  6. Once that finishes, see if the KVM keyboard and mouse work. Then unplug the host USB keyboard and mouse and reboot. You should be good to go!



Like I said, it seems to be working like a charm. I am even able to use my Natural PS/2 keyboard via the USB adapter. I don't seem to have the ability to do the "double scroll lock" keyboard shortcut in order to swap machines, but as I found it tended to screw up the host machine anyway (the scroll lock would become engaged), I don't mind having to hit the front button to switch. I much preferred my old KVM switch's keyboard shortcut of shift-ctrl-alt and then the number. It had much less impact on the host machine than messing with the scroll lock key.



Now that I finally have it all up and running, I'm going to try installing the newly released PC-BSD 1.3 on The Beast. Be warned though - there's a serious installation bug if you have extended partitions, as it will tend to eat those partitions if you try to install into a primary partition that comes after the extended partition. Not nice! They have a fix and are working on a 1.3.1 release now. See here for more info on the problem.



Thursday, January 4, 2007

Open Source Eequivalents

This is a pretty cool list - a simple list of Linux (or Open Source) applications and which commercial Windows apps they can replace. While it is called "The Linux Equivalent Project", nearly all of them can be found in FreeBSD's ports. I've been meaning to email him and ask about perhaps getting some kind of notation to indicate the project is available for FreeBSD. Or maybe change it to be a table, with a column for various levels of OS support. But it gave me some pointers for some other FOSS packages to check out.



The Linux Equivalent Project - linuxeq.com