1.5->1.5.1 update, dead flock’er

GRRRRRRRRRRRRRRRRRRRRRRR

PC-BSD update for 1.5->1.5.1 went smoothly if slowly but broke flock πŸ™

Well, at lest they are starting to figure out you don’t have to nuke every installed port/pkg to do upgrades… They however still don’t seem to have fixed the flib’n syntax error in their sound detection systems XML file, which has been there since the new sound detection system hit.

The good news, I’ve got the first draft done on my report (yay!), the bad news is it is 0550Q and I’m less tired then I was at 1300Q loool. All that is less I guess is one or two more sections that I need to write.

One thing I really need to do is start organizing more of my common things into packages, I freaking love TeX :-).

Also good news is I’ve gotten auth for putting TeX Live PBI’s on their testing server so that means I can get cracking on field testing it here, then start trying to push it on to PBIDir.

With luck, tomorrow might be a SWAT4 Live Op so I’ll have time finish work on the site and get some more interesting work done too xD.

I was trained in Rvs, I took that route for the Selection Course and wouldn’t change that decision for any thing. But I do rather feel at home with SWAT4. I’ve been playing S4 since the beta and bought the game shortly after it came out. The thing I dislike about RvS is the door bugs, SWAT4.. Hey some suspects might draw faster then Jesse James but at least they eventually go down when you shoot them, can’t say the same for Raven Shields occasional super tangos dancing between bullets ^_^.

What pisses me off is I paid $50 for SWAT4, $30 for SWAT4:TSS and SWAT4:TSS although it is an expansion pack is implemented through the (very shitty compared to SWAT3s) mod system, which is probably the ONLY reason they ever released the SDK. Because the change in dev-teams meant a need for a quick way of hacking in the other 40% of the freaking game!

What a company…

Dixie reborn

and a return to KDE, version 3.5.8 while I’m at it

Free Image Hosting at www.ImageShack.us

I find the lipstick style that PC-BSD uses by default a little yucky to stare at all day so I set it to my favorite (Keramik). I have installed a ton of colour schemes off kde-look.org but hate most of them….. One that I found was essentially an emulation of Ubuntu’s “Human” setup, which I do like very much or else I wouldn’t be using a modified form of it.

The colour scheme and GTK+ widgets is actually the only good thing I can say about Ubuntu 6.06 when I tested it last year. At first I thought I might try a custom colour scheme with a red title bar, give KDE a nice little FreeBSD flair πŸ˜‰ But I couldn’t get a shade of red that I could live with, like using, and not be distracted by in the same colour. PC-BSDs default window decor, ‘Crystal’ didn’t match well with the human colour scheme so I changed it repeatidly trying to find one that did match well and I could live with. I couldn’t find one I liked, so as usual I wound up with Keramik haha. No matter what I do I always find that window decore attractive 0.o. I also installed the Human_KDE icon set to match the human colour scheme.

I copied over the KMenu and Konqueror icons from PC-BSDs default theme into a copy of Human_KDE and I made a clone of the Human colour scheme. Then changed the desired portion of the title bar to use PC-BSDs default colours for it instead, adding some contrast. I loved the match up and it is much more appeasing to my eyes πŸ™‚

A bit of both muahuaha !

As far as the screen shot, the background is my ‘choice picture of the day’, rxvt-unicode is running and displays a listing of my home directory and the system versioning. Normally my desktop is some what dominated by a terminal emulator and a web browser with a few IM windows for icing on the cake. Below urxvt is linux-flock open to a live journal page. Lower left hand corner is XMMS blasting music while the lower right hand corner is a ‘KasBar’ which provides a replacement for the usual taskbar. While still giving me some thing similar to how Window Maker solves the problem hehe. There are no icons on the desktop only the panel.

I placed the main panel on top because with a laptop + touch pad I find it easier to use and more comfortable on my eyes with the widescreen display. From left to right on the top panel there is the K-Menu button, System [folders] Menu, Settings Menu, Web Browser (flock), Terminal (~/sh/urxvt big), Network Folders, the system tray applet which shows PC-BSDs battery monitor, Klipper the clibboard app I wish Windows XP had, KMix (volume/mixer control), PC-BSDs update manager, KOrganizer (which may be getting the ax soon), Pidgin (AIM/MSN/YIM/ICQ/XMPP chat), and Konversation (IRC). Over to the righter’ side is a desktop pager, lock/logout buttons, and a clocklet.

I feel the system has a bit of a Gnome / Ubuntu look and feel to it but I’m finding it quite comfortable. Because I like the pleasant feel of it plus it matches my work flow while still being KDE3 and FreeBSD powered instead xD.

Well after a bit of work the system is now fully operational and I can pass out >_>

Managed to get to bed at a nice early post 0415, only for a crazy set of dreams. I dreamed that my allergies were so bad I could barely breath and my throat so dry it was choking me to death. Yet as much water as I drank, it was as if it never touched my tongue :

It’s kind of strange but when I dream, I usually know I’m dreaming pretty quickly so I wasn’t afraid just uncomfortable.

Transition to leading a SEAL team on an dockside assault with an M4 in hand and MP5 slung. Sent the team below while I took down the ships bridge, left the ‘abnormal’ terrorist leader with a few 9x19mm in the head after I figured out a way around the personal engey shield and regrouped.
Some talk about a dead mans switch and time to evacuate. The SEAL team pulled out while I went to check on the status of the lower level, only to find the NSA and Nurses tending to the hostages.

Transition yet again to being stuck in the middle of the desert with just a pistol in each hand, Tomb Raider style and a bet on who makes it out of their first. Only to end up with a psycho-path trying to get there first, a fairly attractive brunette in toe but horriabley useless in a gun fight in the race to the LZ lol.

Dang man, I have strange dreams lol.

My allergies have not been to bad today but I haven’t eaten much all day… There is nothing to take, even the stuff that comes most highly recommended doesn’t do squat. Most of them are just 10mg of loratadine which is pretty useless IMHO. With the way I’ve been feeling I think a decongestant might be helpful but not exactly worth the price tag. I can’t wait for winter to come back !!!!!!!!!

I’ve spent most of my time working on the laptop and chatting with friends. Still havn’t gotten much done today of productive use. Next on my list is restoring TeX Live from backup which I can do tonight. If MartΓ­nez ever gets back to me about the PBI Testing ftp server I might be able to get a TeX Live PBI set ready to rock & roll, it’s a little to freaking big for any of the places I have storage on >_>. Once a working PBI is out, I can try and see what I can do about making a port of it once the PBI’s out of my hair.

Reinstalling all the software

still to do:

mencoder -> build from source
konverter -> I still ain’t used it but want it installed just in case
linux-flock -> from ports (rpm)
linux-realplayer -> from ports (rpm)
linux-mplayerplug-in -> install after flock
libdvdcss -> build from source
portupgrade -> needed for Neo Ports Manager development (it’s the backend)
emacs or xemacs -> from source, rarly use emacs but I like to have a fat and micro sized emacsen installed.

Ports/Packages that PC-BSD actually saves me time on are perl, python, ruby, gtk2, subversion, kdegames, xv, kdegraphics, kdepim, libdvdread, libdvdnav, cdrtools, mplayer, and X.Org πŸ˜‰

I’ve been using Window Maker for a long time now, I think I’ll go back to KDE3 for awhile. I’ve always liked using KDE3, even though I love Window Maker hehe. I’ve thought about switching to a less ‘common’ window manager as well but lack the time to RTFM and bend it to my wishes, especially since the ones that interest me can be quite keyboard driven hehe. I can use just about any window manager but I’m partial to Window Maker, the Box family, KDE, and Gnome. The only window manager I’ve used that I don’t like, depending on what one considers ‘explorer.exe’ any way ^_^ is TWM, I used to use it over VNC to my test machine back in the PC-BSD 1.0RC2 days… I find it very much less then pretty. I don’t care much for FVWM1/2 and most of it’s variants either but would prefer them to TWM for using 24 * 7 * 365 ! Oh and I also have to reinstall TeX Live 2007 but that I have backed up to beat the bands hehe.

All that is left for tonight is to configure and build Vim before I hit the hay.

./configure –with-features=big –with-x –enable-gui=gtk2 –enable-xfontsel –enable-rubyinterp –enable-pythoninterp –enable-perlinterp –enable-cscope && gmake -j4 && gmake install

Technically all I could leave it as –with-features big and –enable-gui=gtk2 but I usually su[pply the other args to the configure script instictively.

Tomorrow I can finish installing the remaining apps since most of it is just waiting on me to install a ports tree. I also need to get the NFS/SMB shares sorted on Vectra & SAL1600, look up my ICQ# as it seems I lost both my KDM Theme and Pidgin settings by lack of forsite :-(. No matter, I actually like the more Gnome’ish PC-BSD KDM theme lol. I also remember the logins for my AIM/M$N/Y!M/XMPP so that one is not a big problem hehe.

And of course as always to playfully mold KDE to match my work flow, muhauahuaha !

/*
* list of software I’ve installed tonight:
*/

// languages
gcc43 // including the GNU Compiler for Java
javavmwrapper, JRE, and JDK
rubygem-rtags
rubygem-rake
guile
scheme48

// libraries
Qt4

// development tools
gmake // needed for vim, gtk+, qt3/4, and my tex makefiles
ctags // extended multi-language ctags, *BSD has a C based one
cscope and kscope
webcpp

// games
xgalaga
prboom with freeware doom-data
wesnoth

// graphics software
gimp with animation package (gimp-gap)
inkscape

// browsers
lynx

// local mail clients just in case
thunderbird
thunderbird-i18n
mutt

// chat
konversation // worlds best irc client
pidgin // aim/msn/yim/icq/etc
pidgin-hotkeys
pidgin-guifications
pidgin-libnotify
pidgin-otr
pidgin-encryption
teamspeak_client // linux version

// multimedia
libdvdplay
xmms
xmms-skins
xmms-pipe // control xmms from a named pipe

// documents
gnumeric
abiword
koffice

// personal
zsh
docker
rxvt-unicode
terminus-font
mg // micro gnu emacs, openbsds alterntive to vi

Reinstalling PC-BSD

I complted my backups during dinner so when I booted my laptop tonight, compared the MD5 checksums on the PC-BSD v1.5 CD#1 ISO file and burned the disk. I had K3B installed from PBI when I installed PC-BSD from a 2-Disk set awhile ago but I’ve never actually used K3B to do things lol. So I put a blank CD-R in my laptops acd0 and looked around on how to burn the ISO.

cdrecord -scanbus               # find out my 'dev'ice
Cdrecord-Clone 2.01 (i386-unknown-freebsd6.2) Copyright (C) 1995-2004 JΓΆrg Schilling
Using libscg version 'schily-0.8'.
scsibus2:
2,0,0 200) 'PHILIPS ' 'DVD+-RW SDVD8441' 'PA48' Removable CD-ROM
2,1,0 201) *
2,2,0 202) *
2,3,0 203) *
2,4,0 204) *
2,5,0 205) *
2,6,0 206) *
2,7,0 207) *

cdrecord -v -pad speed=1 dev=2,0,0 PCBSD1.5-x86-CD1.iso
# with very nice verbose output ;-)

I’ve never used my laptops DVD+-RW drive for burning disks before, normally I use the install of Nero that came with my Desktop but good ol’Dixie ain’t let me down, the CD-ROM came out great. I did an install with the decision to use the entire disk and a custom disk label. The dang gum installer still doesn’t have an option to set the time zone to UTC so I set it to Europe/London GMT 0000 which is close enough (my .zshrc sets TZ)

I noticed three problems with the custom disk label part of the installer. The first is, although PC-BSD finally fixed their default of 1024MB SWAP to instead use a more dynamic algorithim… For which it alloted 512MB of SWAP when my laptop has 512MB of PC2700 RAM. My previous install had that much RAM and when under the ‘worst loads of its life’ top some times reported ~300-400MB swap usage.

The installer woulnd’t let me create a second swap partition, so I upped the size to 1024MB. Normally I double check my values with a calculator since the installer seems to lack fdisks ability to handle K, M, and G suffixes but I found BC was gone. I didn’t have one handy so I started an XTerm only to find out that ‘bc’ was not on the install disk πŸ™ so I did it manually.

The other two problems are that I created /usr, /home, /var, and /tmp partitions. It converted the /home mount point to /usr/home and made /home a symlink, the only problem is I created /home before /usr in the installer. So when I rebooted I found a nice surprise that /usr/home was not mounting because /usr was not mounted yet :-(. Also although I made a /tmp partition the PC-BSD installer failed to disable tmpmfs in rc.conf, I had to do that manually. I know rc.conf.local is supposed to be a bit out dated on FreeBSD and the proper way on OpenBSD… But I always use /etc/rc.conf.local for changing rc.conf on PC-BSD, less trouble ;-).

Started PC-BSD, noted the boot menu now shows FreeBSD instead of PC-BSD like in the last release and the splash screen was gone which is fine by me. I usually would clear it when booting but was always too lazy to disable it 8=)

Setup the display for 1280×800 24-bit with ‘ati-3d-enable’ and switched to a vtty with control+alt+F2 and logged in as root. I had to change roots password, because my is to strong to ‘pass’ the PC-BSD installers concept of an acceptible multinational password lol. And to add my personal user, during install I only added ‘rstaff’ because I wanted to create my user ‘Terry’ with the same UID and GID settings as on my OpenBSD machine, tired of remapping stuff…

passwd                                  # fix roots pw
adduser # add my user

Then I realized that there was one fatal flaw in my plan, all the backups were on Vectra including the copy of my wpa_supplicant.conf file used for an internetconnection via wireless.

There is more ways then one to solve a problem πŸ˜‰

Since I don’t have a USB Flash Drive I booted my desktop into Windows and stuck in my spare SD Memory card in the hopes of copying the backup of /etc to it but Windows couldn’t access the bloody file shares, *Grrr* so I used PuTTY to SSH into Vectra and used cat, copy, and paste to create a new wpa_supplicant file.

Since my laptops card reader is not supported on FreeBSD 6.3 I swapped memory cards in my camera and attached the USB cable, I keep it set to ‘Mass Storage’ mode rather then PTP so I can transfer pictures to my laptop.

I plugged in the cable, turned on the camera, and in the time it took for me to type ls /dev | grep da the entire computer locked up, frozen solid on ‘ls /d’ so I had to shutdown with the magic on/off button πŸ™

So this time I turned off the camera and started my laptop again, turning on the camera during the kernel probe so it would stay in umass mode. Booted into single user mode and did a fsck -y then mounted the camera so I could get the file.

mount -t msdosfs /dev/da0s1 /mnt
cp /mnt/wpa_* /etc/
umount /mnt
# exit single user mode

Logged into KDE with my main user, ‘Terry’ and I decided to give PC-BSDs networking tool a try, set up my wireless card. It failed to detect my wireless access point so I specified the SSID manually and cat, copy, and pasted my passphrase from wpa_supplicant into the GUI. I then proceded with my master plan, mount my stored backups off Vectra via NFS and start restoring files. So I booted into single user mode again and set to work, I knew I’d need single user mode because with X running things would get fucked soon if I didn’t get my xorg.conf back!

Since I rarely write out a mission plan in that much detail when I am ‘playing’ with one of my computers. I’ve kept a log of my actions using vi to write /root/fixit.log and have ordered and commented the entries in a more logical order, I just did them in the order I thunk of them hehe.

fsck -y
mount -u -o rw /
mount -a
/etc/rc.d/netif start # start the network connection
# and mount my backup files on /mnt
mount_nfs -r 8192 -w 8192 xxx.xxx.xxx.xxx:/srv/nfs/Backups/today /mnt
bash # /bin/sh lacks a bit on tab-completion

cd /tmp
tar -xf /mnt/etc.tar
cd etc
cp ssh/ssh*_config /etc/ssh/
cp /etc/X11/xorg.conf /etc/X11/xorg.conf.pcbsd15.install
cp X11/xorg.conf /etc/X11/
cp rc.conf.local /etc/ && vi /etc/rc.conf.local # trim my rc.conf
cp pf.conf /etc/pf.conf.my-old
vi /etc/fstab # create fstab entries for the NFS shares
cd /
tar -xf /mnt/local-share-ri.tar # install ruby docs pc-bsd lacks
tar -xf /mnt/local-etc /usr/local/etc/sudoers # restore my sudo config
cd /usr/home/Terry

# add nfs-users and smb groups
pw groupadd -g 7778 -n nfs-users -M rstaff,Terry
pw groupadd -g 19132 -n smb -M rstaff,Terry
pw groupmod -n operator -m Terry # add myself to the operator group
su - Terry
mv Images Pictures # I prefer that name ;-)
mkdir code
# adjust the ownsership of my dirs
chown Terry:nfs-users {Documents,Music,Pictures,code,Videos}
tar -xf /mnt/my-home-backups.tar # various files, extracts as 'backups/'
# restore the stuff I want saved
mv backups/GNUstep ~/
mv backups/sh ~/
mv backups/misc ~/
mv backups/konversation ~/.kde/share/apps/
mv backups/knode ~/.kde/share/apps/
mv backups/.* ~/ # restore selected 'dot' files

# connect to my file server and create a new dir for nfs
ssh -p 22222 -i .ssh/mykey Terry@vectra
su - root
mkdir -m 1770 /srv/nfs/code # I'll extract files later
groupadd -g 7778 nfs-users
vi /etc/group # added my user to nfs-users
^D # exit vectra root shell
^D # exit vectra Terry's shell
cd /srv/nfs
chown -R Terry:nfs-users ./*
^D# back to working as root on dixie in single user mode
cd /tmp
tar -xf /mnt/root-home.tar
cd root # restore a few files I want there
cp *.ogg ~/
cp .login ~/
cp *-supfile ~/
reboot

on reboot I set out to work with molding KDE into shape and installing PC-BSD updates. With no lockups within the first half hour of operation.

Well, downloading a PC-BSD v1.5 install disk via KGet… Looks like a reinstall / repair is probably going to be the only way to fix Linux GTK+ apps without spending more time and effort then it pays to on the issue. I even tried booting off my FreeBSD 7 partition and setting up linux-flock there. Much more successful then PC-BSD, it died due to a missing gnome library which is probably what I get for installing gnome2, gtk2, linux-gtk2, and mutual friends from packages >_>

I actually like KGet as far as download utilities go. I’m used to using FreeBSDs fetch command which just wraps around a few library routines. What I like most about kget is it just stays out of my way, sits in the system tray, and doesn’t take a Ph.D to figure it out πŸ˜‰

It’s been awhile since I’ve tried the konqueror integration but it probably would be nice. I do rather like keeping downloads separated from my browser when it’s a _big_ file though. That way at least if my browser crashes the download won’t get FUBAR’d on me.

So here I sit, downloading the remaining ~500MB of the ISO image and watching The Negotiator which is one of my favorite thrillers. I remember I once caught it on cable one night and had to get the VHS when the chance came up. Now I enjoy the movie twice as much while I watch crooked SWAT team members break almost every damn rule their is to hostage rescue. To quote Kevin Spacey’s charactor, “You want to kill him on national television now!?”. The whole point of SWAT is to *_save_* lives, even the suspects if you can… but never, ever do you jeprodize the lives of hostages like that.

I need to get my system files backed up, shouldn’t take long it’s mostly the /etc folder, the parts of my home dir that are still local, and a few things in /usr/local/{share,etc} that I might want to keep. Guess it’s time to update my partitioning scheme while I’m at it….

days rumble

Well I’ve put a few thoughts through LaTeX and even discovered that at least the version in my MiKTeX install on WinXP, some times pdflatex.exe/latex.exe will have an endless loop rather then die with the normal error message if you accidentally delete the end{document} at the end of a doc ^_^

I think I’ll probably post the file tomorrow in the members forum, I zipped it with a simple password chosen at random. The question is will I remember what it is later rofl.

I like using tex/latex quite a lot so far, works much better then XHTML+CSS at giving decent output without *eventually* getting annoying to edit and maintain. I’ve been slowing building up a .sty file for things I use a lot so I don’t have to worry about finding the last document I did some thing to when I can’t remember a specific.

Probably will pass out in a few hours next to learning perl, glad I’m off work tomorrow… need some rest: Maybe I can even catch up with the 30++ messages in my in box haha!

I’ve done enough for the night, in the future Ineed to play around with the Linux ABI on my laptop and NFS. I have a FreeBSD 7 partition, I think I will see if I can use that to help fix the PC-BSD one… Either way it would probably take less then 2 hours to reinstall my laptop and restore files once I’ve got a set of PC-BSD v1.5 disks handy…Most of the time of course spent transferring and extracting files on low end hardware lool. NFS, I’ve always avoided and OpenBSD seems to use a different syntax for /etc/exports then I learned on Linux but as long as it works… SSHFS and SMB/CIFS seem to have failed me, the only remaining options I know available to me are NFS and AFS, nether of which I’ve had time to test fully yet. I guess that can wait for later.

*passes out*

A moment for truth

I’ve got the PC-BSD 1.4.x->1.5 patch pbi downloading, from the best (for me) US Mirror available at a snails pace (20-30kb/sec), so that means it is either time to power cycle ye’ol modem+router or things must be pretty busy. A nice power-cycle and spit upon the hardware and we’re back up to a more acceptable 75-150+ kb/sec according to kget but it still blows. I’ve noticed whenever it rains the internet connection gets even less stable here :

I’m not sure what state the update will leave my laptop in but I know that the *IMPORTANT* stuff is backed up. I trust FreeBSD and OpenBSDs update procedures waaayyy more then PC-BSDs… Today I give them one on trust.

Normally my test machine is patched first and examined for errors, this time I will skip that phase and we will see the results. I have stuff backed up to $VECTRA:/srv/smb/Backups/ which I use as a sort of cache, stuff goes here and gets gradually removed but it stays on one of SAL1600s cold storage partitions much longer.

Dixie-backup-2008-02-28.tar.gz          code-stuff.tar
Lexmark-Z12-lxm3200-tweaked.ppd docs-stuff.tar
MaxSec4E.tar.bz2 etc.tar
boot.tar

the *stuff.tar files hold the only things I’ve changed (and care if are lost) since my last backup, the boot and etc tarballs hold the only critical system files that may be changed since my last backup as well. So honestly the only casualties will be few if the upgrade goes badly — having to reinstall crap.

If the PC-BSD upgrade goes badly, there is a three disk set of FreeBSD 7.0-Release sitting on my desk and a list of programs I have been keeping which will soon be scp’d to my VECTRA for safe keeping hehe. The only things missing from the list are language bindings, namely that I need Python bindings for Qt3 for work on NPM.

# languages
gcc-4.3
# manual install needed for JDK/JRE
perl
python
ruby && rubygem-rtags && rubygem-rake
guile
scheme48

# libraries
qt4
gtk-2

# development tools
gmake
ctags
cscope && kscope
webcpp
subversion

# games
kdegames
xgalaga
prboom
doom-data
wesnoth

# graphics software
gimp
inkscape
xv
kdegraphics

# browsers
linux-flock
lynx

# e-mail and news
thunderbird && thunderbird-i18n
mutt

# kontact and related
kdepim


# chat
konversation
pidgin && pidgin-hotkeys
pidgin-guifications || pidgin-libnotify
pidgin-otr && pidgin-encryption
teamspeak_client


xemacs || emacs
mg
terminus-font

# multimedia
libdvdread
libdvdplay
libdvdnav
libdvdcss
cdrtools
mplayer # install codecs manually, more reliable
linux-mplayerplug-in
smplayer-qt4 && smplayer-themes
mencoder # not sure if there is a pkg
xmms
k3b

# documents
latex
gnumeric || koffice

# personal
zsh
windowmaker
docker
wmclock
rxvt-unicode || aterm

Vim is not on the list, because ever since one day I was setting up a FreeBSD install and the port was broken. I learned to install it from the sources on vim.org, so I continue to do so even now.

If all goes FUBAR with the 1.5 patch, well FreeBSD 7 here I come. It should only take a few hours to get the necessary software installed, a package add on xorg-7.3 alone should take awhile <_<. And a couple minutes to decide if I want XDM, KDM, or GDM (Xs, KDEs, or Gnomes) login manager while I’m waiting. I can also use the 7.0-Release kernel from my test machine hehe.

I expect as long as the 1.4 -> 1.5 update leaves my laptop in a bootable state that I shouldn’t have any problems. There is a limit to how much I’ll be willing to stand fixing myself of course. The last time I let it do any major upgrades it was so kind as to delete all files in /usr/local/* so I’m prepared to reinstall my software if necessary but not PC-BSD πŸ˜‰

Let’s see the outcome.

Manually upgrading PC-BSD v1.4 to using FreeBSD 7 underneath

It can be done although I don’t actually recommend it lol, I did this solely for fun. Here is what I recored in the ~/fun-log file on my Samba server. A copy of my kernel configuration and a screen shot of the first GUI enabled boot is at the end of the post:

——————————————————————
Enabled SSH login to my test machine, since I don’t use the default port 22 for SSH I had to open ssh_config and sshd_config in /etc/ssh/ and uncomment the ‘Port’ line and change the port number.

A quick restart of the SSH Daemon from a root shell:

/etc/rc.d/sshd restart

I also disabled the firewall (pf) since I was in no mood to sort it out or port my laptops pf.config over.

and from my own shell

ssh Terry@xxx.xxx.xxx.xxx # s/xxx.xxx.xxx.xxx/server ip/g

I accepted the finger print and logged in, then ssh’d to this machine from that ssh connection doing like wise.

I’d recommend taking back ups of the system before proceeding, since this is a test machine I can skip it. I would suggest using either tar or dump in conjunction with a mounted recovery partition (or other storage device) or SSH if you have another system to use for storing the backups. Some people prefer Optical disks (cd/dvd) but I only use these for perm. backups.

rebooted with the FreeBSD 7.0-RELEASE install cd in the drive and chose the upgrade option from sysinstall. I chose to upgrade ‘custom’ and selected all sets except the profiled libraries and source code: every thing worked perfect except that X.Org failed to upgrade due to already installed packages, unexpected yes but no problem as I was not planning on using X until after KDE was upgraded.

Completed the upgrade and chose the ‘Fixit’ option in the main menu dropping to a shell on ttyv4 which I used to edit /etc/ttys and disable the start of X.Org on boot up.

Located the ttyv4 line that starts /PCBSD/bin/pdm on an xterm and change the ‘on’ to an ‘off’. Saved the file and gave a ‘reboot’.

I forgot that FreeBSD’s GENERIC kernels detect my hard drives wrong because the kernel uses the ATA_STATIC_ID option. I have a SATA drive for ad0 and with ATA_STATIC_ID in the kenrel config it detects ad0 as ad4, PC-BSD’s kernel builds have the ‘right’ option commented out to fix that so I had to manually select a root disk at boot:

ufs:ad4s3

While I could easily fix this with changing the lines in /etc/fstab that would defeat the point of merging PC-BSD’s SMP Kernel configuration with FreeBSD’s GENERIC kernel. Which I could have done before rebooting any way.

I Inserted my install disk and ran /usr/sbin/sysinstall, using the ‘Configure’ option I chose to install the source code for every thing through the distribution sets. As far as I know you need the full system source to build a kernel.

I set PACKAGEROOT and did a pkg_add of lynx so I could view the installed version of the FreeBSD handbook without reading HTML source code. I like to have access to the handbook when building a kernel so that I can check if any new notes have been made in the section on the kernel configuration file. I also did a pkg_add of the mg editor, much smaller then vim but easier for me to work with then FreeBSDs /usr/bin/vi when I wish to view two files at once.

mkdir ~/kernel-config; cd ~/kernel-config
cp /PCBSD/conf/PCBSD-SMP.i386 ./
cp /usr/src/sys/i386/conf/GENERIC ./
pkg_add -r mg
...
vi ~/.mg # set a few options I like for emacs

Then I used MicroGNUEmacs (mg) to merge PCBSD-SMP.i386 into GENERIC saving it as mykernel with the ^x^w command, the basics of using mgh you can find in the man page; if you choose to use mg but don’t know emacs. In point of fact, I have not used emacs regularly to edit files in over 2 years!

touch ./mykernel; ln -s /root/kerne-config/mykernel /usr/src/sys/i386/conf/mykernel; mg ./mykernel
cd /usr/src
make buildkernel KERNCONF=mykernel

You know, I wish I remembered to use the -j 8 option to make… Because last time I did that on my Pentium D it only took ~45 minutes to compile a kernel on 6.1-RELEASE or so.

Build started at: Sun Mar 2 21:19:14 UTC 2008
Build finished at: Sun Mar 2 21:40:51 UTC 2008

And to top it off, when I got up to do a few chores when I got back the console ‘screen saver’ kicked in. Which just happened to be the PC-BSD splash screen that comes up when ever the system boots kicked in during my kernel compile. This appears to have been some thing I broke with the upgrade, unless there is a difference because my laptop uses a Beastie image for the console screen saver.

I’m standing here like WTF? Did I crash or are they joking. Sure enough the system was playing a mean joke on me haha. And I know the system shouldn’t go down during a buildkernel even with what I’ve been ‘doing’ to the system without some serious problems. Right now it looks like the NIC drivers are compiling so it shouldn’t take to much longer.

While I wait, I’ll start merging the configuration files in /etc with those in /etc/upgrade.

A quick look to see if there are any config files from PC-BSD with pcbsd mentioned in them:

find /etc/ -type f -exec grep -ni ‘pcbsd|pc-bsd’ ‘{}’ ;

Of course they are *never* so nice as to denote what files are explicitly changed from the base FreeBSD installs 8=). Used lynx to browse PC-BSD’s SVN Repository online, looking at the system overlay in the 1.4 branch. I don’t see any any thing here that should effect me seriously — if any one tries this after me, check PC-BSDs SVN -> pcbsd/branches/1.4/system-overlay/etc (some thing like that) and look at the commit messages, if you see some thing that might effect you. Carefully compare the relevant files in /etc/ and /etc/upgrade unless like me, there is nothing you can seriously break that you will ever want to fix later.

There are two ways of doing this part, manual and mergemaster. If you have never done a buildworld/installworld before read the manual page for mergemaster and run it in a more user friendly mode. I usually do this any way because I use mergemaster only a few times a year at the most.

Some switches to mergemaster you might want to look up are: -a, -i, -v, -U

If you are going manually, I suggest you move the files from /etc/upgrade to /etc/ but pay special attention to files such as group and rc.local -> You don’t want to be unable to login as any thing but root on your reboot now do you? Hehe.

mv /etc/upgrade /root/etc-upgrade
mergemaster -viU
...

I installed most files but merged several others, among them:

ssh_conf and sshd_conf I merged to keep my port settings

group I merged to keep the various groups PC-BSD has setup for HAL’d and friends as well as having my user in wheel, operator, and its own group πŸ˜‰

login.conf because I use ‘blf’ for the pass word format rather then the default md5. At the end of my mergemaster’ing I was happy to see that mergemaster was already a step ahead of me and promped for the login.conf database to be rebuilt for fool proof safeties sake:

*** You installed a login.conf file, so make sure that you run
'/usr/bin/cap_mkdb /etc/login.conf'
to rebuild your login.conf database

Would you like to run it now? y or n [n] y
Running /usr/bin/cap_mkdb /etc/login.conf

Some files that I chose to delete, the extra rc scripts which may have broken one of the Intel Wifi drivers. Also I decided not to install the *new* printcap file -> which if I had installed would have overwritten any printer setup I have done on my test machine.

One nice advantage is I have PC-BSD’s kernel stored in /boot/kernel.prev from the FreeBSD upgrade proceedure and the GENERIC FreeBSD 7.0-RELEASE kernel in /boot/kernel.old after installing my newly compiled custom kernel.

For extra safety, I’ll archive these in roots home directory with more normal names in case I need them later:

tar -cf - /boot/kernel.old | bzip2 -9 > /root/kernel-FreeBSD7.0-RELEASE.g
eneric.tar.bz2
tar -cf - /boot/kernel.prev | bzip2 -9 > /root/kernel-PCBSD1.4.2.smp.tar.
bz

I don’t know how to get BSD tar to adjust the compression level for gzip/bzip2 (-z,-j), assuming there is a switch for it. So I redirected tar’s output to bzip2 directly to enable maximum compression.

Sadly, on reboot my system would lock up when ever the kernel tried to probe /dev/da3. No matter how many times I try to boot it, it locks up on this. I booted the Windows XP installation on the machine, rebooted into PC-BSD again and it boots perfectly — This is a *standing* issue with this test machine.

Often FreeBSD will lock up during boot while probing my (internal) USB Card Reader when it gets to the memory stick slot and refuse to boot until I have booted another operating system on the machine. I have had this problem since FreeBSD 6.0-RELEASE, never tried any earlier ones.

Yes I hate this computer.

But otherwise my system however works bloody perfect πŸ™‚

pcbsd# uname -ai
FreeBSD pcbsd 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Sun Mar 2 16:27:13 EST 2008
root@pcbsd:/usr/obj/usr/src/sys/mykernel i386 TERRYP

Now to get X.Org and KDE back online, installed the ports tree from the FreeBSD 7.0-RELEASE CD-ROM, new enough for my needs. While that goes, lets back up a few things of interest:

tar -czf /root/old-ports.tgz /usr/local/etc /usr/local/share/{icons,config,config.kcfg,apps,applnk}
tar -cjf /root/linux-fc4.tar.bz2 /compat

These files are essentially our KDE icons and a few directories we might want to keep handy for later. Also I chose to backup the /compat directory that houses the linux files.

Now for the portupgrade business:

After telling the pkgdb what to do with it self, I checked the help and gave this a go after I got tired of the interactive:

pkgdb -fFi

The one thing I hate about dealing with portupgrade and friends on FreeBSD is the packages database — it’s a royal pain in the arse to deal with when you are not in the mood! After sorting out all of the crap that pkgdb had to shout at including the mother ****ing **** load of fonts mentioned in the sale dependencies I know I will __never__ do this again.

In fact, if I ever go back to maintaining a standard FreeBSD system for my workstation I’ll do this my way — use a list of programs needed, and do upgrades with out mucking with pkgdb and it’s friends lol -> less trouble I think to do it by hand the way my mind is thinking of it now hehe.

Now to fetch every thing needed before we start and prefer binary packages where possible to save on some compile time. -> Warning!!! Not my reccomendation, done here out of my lack of concern for breaking the test machine.

portupgrade -FDParR

Now to upgrade every thing preferring packages, go to splitsvile and read the log later.

portupgrade –batch -faPrR –results-file /root/portupgrade.log

Whether -a impiles -rR or not I don’t know, never really read the source code that much but I’m used to using all three switches at once for this. Portupgrade also crashed about 3 times during the installation, mostly from upgrading ruby and missing stuff in /tmp. It also fragged /var/db/pkg/pkgdb.db once or twice and shouted at /usr/ports/INDEX-7.db’s format. So I had to run the command several times taking about a day and a half to complete the entire operation as described here.

Now I remember why I don’t use portupgrade or mass software upgrades a lot on my stable machines.

I had to create a new xorg.conf so I did an

X -configure
X -config /root/xorg.conf.new

and it worked, a reboot and I was soon greated by KDE 3.5.8 running on X.Org 7.3 πŸ˜‰

I know I broke the PBReg program so I would expect most other custom programs that PC-BSD has needs a recompile from the source code. I also used as many packages as possible during the upgrade procedure to save time, not what I normally do on FreeBSD but it actually worked well enough. Tomorrow after work I’ll test out a few of the PC-BSD programs and the Firefox PBI I have installed on the test machine, and installing a PBI to see if any thing survived without a recompile needed. I also want to test the Linux ABI’s new abilities and see what happens when installing linux-flock binaries.

——————————————

Screen shot:

Free Image Hosting at www.ImageShack.us

Here is a copy of my kernel configuration:

# My PC-BSD v1.4.2 + FreeBSD 7.0-RELEASE kernel configuration

cpu I686_CPU
ident TERRYP

# To statically compile in device wiring instead of /boot/device.hints
#hints "GENERIC.hints" # Default places to look for devices.

makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols

#options SCHED_4BSD # 4BSD scheduler
options SCHED_ULE # ULE scheduler instead ;-)

# options from PC-BSD that I'll keep handy
options LIBICONV
options LIBMCHAIN
options CD9660_ICONV
options MSDOSFS_ICONV
options NTFS
options NTFS_ICONV
options UDF
options UDF_ICONV
options GEOM_UZIP
options DEVICE_POLLING
device iwi # intel wireless adapters
device ipw # intel wireless adapters

#### I want to use PF.
device pf
device pflog
device pfsync

options ALTQ
options ALTQ_CBQ
options ALTQ_RED
options ALTQ_RIO
options ALTQ_HFSC
options ALTQ_CDNR
options ALTQ_PRIQ
options ALTQ_NOPCC

# Memory card drivers I want to test:
device mmc
device mmcsd

# options in GENERIC
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options SCTP # Stream Control Transmission Protocol
options FFS # Berkeley Fast Filesystem
options SOFTUPDATES # Enable FFS soft updates support
options UFS_ACL # Support for access control lists
options UFS_DIRHASH # Improve performance on big directories
options UFS_GJOURNAL # Enable gjournal-based UFS journaling
options MD_ROOT # MD is a potential root device
options NFSCLIENT # Network Filesystem Client
options NFSSERVER # Network Filesystem Server
options NFS_ROOT # NFS usable as /, requires NFSCLIENT
options MSDOSFS # MSDOS Filesystem
options CD9660 # ISO 9660 Filesystem
options PROCFS # Process filesystem (requires PSEUDOFS)
options PSEUDOFS # Pseudo-filesystem framework
options GEOM_PART_GPT # GUID Partition Tables.
options GEOM_LABEL # Provides labelization
options COMPAT_43TTY # BSD 4.3 TTY compat [KEEP THIS!]
options COMPAT_FREEBSD4 # Compatible with FreeBSD4
options COMPAT_FREEBSD5 # Compatible with FreeBSD5
options COMPAT_FREEBSD6 # Compatible with FreeBSD6
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
options KTRACE # ktrace(1) support
options SYSVSHM # SYSV-style shared memory
options SYSVMSG # SYSV-style message queues
options SYSVSEM # SYSV-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
options ADAPTIVE_GIANT # Giant mutex is adaptive.
options STOP_NMI # Stop CPUS using NMI instead of IPI
options AUDIT # Security event auditing

# To make an SMP kernel, the next two lines are needed
options SMP # Symmetric MultiProcessor Kernel
device apic # I/O APIC

# CPU frequency control
device cpufreq

# Bus support.
device eisa
device pci

# Floppy drives
device fdc

# ATA and ATAPI devices
device ata
device atadisk # ATA disk drives
device ataraid # ATA RAID drives
device atapicd # ATAPI CDROM drives
device atapifd # ATAPI floppy drives
device atapist # ATAPI tape drives
#### XXX:
#### This option must be commented out for SATA drives to be
#### detected properly, e.g. ad0 not ad4 on boot up!
#options ATA_STATIC_ID # Static device numbering

# SCSI Controllers
device ahb # EISA AHA1742 family
device ahc # AHA2940 and onboard AIC7xxx devices
options AHC_REG_PRETTY_PRINT # Print register bitfields in debug
# output. Adds ~128k to driver.
device ahd # AHA39320/29320 and onboard AIC79xx devices
options AHD_REG_PRETTY_PRINT # Print register bitfields in debug
# output. Adds ~215k to driver.
device amd # AMD 53C974 (Tekram DC-390(T))
device hptiop # Highpoint RocketRaid 3xxx series
device isp # Qlogic family
#device ispfw # Firmware for QLogic HBAs- normally a module
device mpt # LSI-Logic MPT-Fusion
#device ncr # NCR/Symbios Logic
device sym # NCR/Symbios Logic (newer chipsets + those of `ncr')
device trm # Tekram DC395U/UW/F DC315U adapters

device adv # Advansys SCSI adapters
device adw # Advansys wide SCSI adapters
device aha # Adaptec 154x SCSI adapters
device aic # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
device bt # Buslogic/Mylex MultiMaster SCSI adapters

device ncv # NCR 53C500
device nsp # Workbit Ninja SCSI-3
device stg # TMC 18C30/18C50

# SCSI peripherals
device scbus # SCSI bus (required for SCSI)
device ch # SCSI media changers
device da # Direct Access (disks)
device sa # Sequential Access (tape etc)
device cd # CD
device pass # Passthrough device (direct SCSI access)
device ses # SCSI Environmental Services (and SAF-TE)

# RAID controllers interfaced to the SCSI subsystem
device amr # AMI MegaRAID
device arcmsr # Areca SATA II RAID
device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID
device ciss # Compaq Smart RAID 5*
device dpt # DPT Smartcache III, IV - See NOTES for options
device hptmv # Highpoint RocketRAID 182x
device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx
device iir # Intel Integrated RAID
device ips # IBM (Adaptec) ServeRAID
device mly # Mylex AcceleRAID/eXtremeRAID
device twa # 3ware 9000 series PATA/SATA RAID

# RAID controllers
device aac # Adaptec FSA RAID
device aacp # SCSI passthrough for aac (requires CAM)
device ida # Compaq Smart RAID
device mfi # LSI MegaRAID SAS
device mlx # Mylex DAC960 family
device pst # Promise Supertrak SX6000
device twe # 3ware ATA RAID

# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc # AT keyboard controller
device atkbd # AT keyboard
device psm # PS/2 mouse

device kbdmux # keyboard multiplexer

device vga # VGA video card driver

device splash # Splash screen and screen saver support

# syscons is the default console driver, resembling an SCO console
device sc

device agp # support several AGP chipsets

# Power management support (see NOTES for more options)
#device apm
# Add suspend/resume support for the i8254.
device pmtimer

# PCCARD (PCMCIA) support
# PCMCIA and cardbus bridge support
device cbb # cardbus (yenta) bridge
device pccard # PC Card (16-bit) bus
device cardbus # CardBus (32-bit) bus

# Serial (COM) ports
device sio # 8250, 16[45]50 based serial ports
device uart # Generic UART driver

# Parallel port
device ppc
device ppbus # Parallel port bus (required)
device lpt # Printer
device plip # TCP/IP over parallel
device ppi # Parallel port interface device
#device vpo # Requires scbus and da

# If you've got a "dumb" serial or parallel PCI card that is
# supported by the puc(4) glue driver, uncomment the following
# line to enable it (connects to sio, uart and/or ppc drivers):
#device puc

# PCI Ethernet NICs.
device de # DEC/Intel DC21x4x (``Tulip'')
device em # Intel PRO/1000 adapter Gigabit Ethernet Card
device ixgb # Intel PRO/10GbE Ethernet Card
device le # AMD Am7900 LANCE and Am79C9xx PCnet
device txp # 3Com 3cR990 (``Typhoon'')
device vx # 3Com 3c590, 3c595 (``Vortex'')

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device miibus # MII bus support
device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet
device bfe # Broadcom BCM440x 10/100 Ethernet
device bge # Broadcom BCM570xx Gigabit Ethernet
device dc # DEC/Intel 21143 and various workalikes
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device lge # Level 1 LXT1001 gigabit Ethernet
device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet
device nfe # nVidia nForce MCP on-board Ethernet
device nge # NatSemi DP83820 gigabit Ethernet
#device nve # nVidia nForce MCP on-board Ethernet Networking
device pcn # AMD Am79C97x PCI 10/100 (precedence over 'le')
device re # RealTek 8139C+/8169/8169S/8110S
device rl # RealTek 8129/8139
device sf # Adaptec AIC-6915 (``Starfire'')
device sis # Silicon Integrated Systems SiS 900/SiS 7016
device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet
device ste # Sundance ST201 (D-Link DFE-550TX)
device stge # Sundance/Tamarack TC9021 gigabit Ethernet
device ti # Alteon Networks Tigon I/II gigabit Ethernet
device tl # Texas Instruments ThunderLAN
device tx # SMC EtherPower II (83c170 ``EPIC'')
device vge # VIA VT612x gigabit Ethernet
device vr # VIA Rhine, Rhine II
device wb # Winbond W89C840F
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')

# ISA Ethernet NICs. pccard NICs included.
device cs # Crystal Semiconductor CS89x0 NIC
# 'device ed' requires 'device miibus'
device ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards
device ex # Intel EtherExpress Pro/10 and Pro/10+
device ep # Etherlink III based cards
device fe # Fujitsu MB8696x based cards
device ie # EtherExpress 8/16, 3C507, StarLAN 10 etc.
device sn # SMC's 9000 series of Ethernet chips
device xe # Xircom pccard Ethernet

# Wireless NIC cards
device wlan # 802.11 support
device wlan_wep # 802.11 WEP support
device wlan_ccmp # 802.11 CCMP support
device wlan_tkip # 802.11 TKIP support
device wlan_amrr # AMRR transmit rate control algorithm
device wlan_scan_ap # 802.11 AP mode scanning
device wlan_scan_sta # 802.11 STA mode scanning
device an # Aironet 4500/4800 802.11 wireless NICs.
device ath # Atheros pci/cardbus NIC's
device ath_hal # Atheros HAL (Hardware Access Layer)
device ath_rate_sample # SampleRate tx rate control for ath
device awi # BayStack 660 and others
device ral # Ralink Technology RT2500 wireless NICs.
device wi # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
#device wl # Older non 802.11 Wavelan wireless NIC.

# Pseudo devices.
device loop # Network loopback
device random # Entropy device
device ether # Ethernet support
device sl # Kernel SLIP
device ppp # Kernel PPP
device tun # Packet tunnel.
device pty # Pseudo-ttys (telnet etc)
device md # Memory "disks"
device gif # IPv6 and IPv4 tunneling
device faith # IPv6-to-IPv4 relaying (translation)
device firmware # firmware assist module

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device bpf # Berkeley packet filter

# USB support
device uhci # UHCI PCI->USB interface
device ohci # OHCI PCI->USB interface
device ehci # EHCI PCI->USB interface (USB 2.0)
device usb # USB Bus (required)
#device udbp # USB Double Bulk Pipe devices
device ugen # Generic
device uhid # "Human Interface Devices"
device ukbd # Keyboard
device ulpt # Printer
device umass # Disks/Mass storage - Requires scbus and da
device ums # Mouse
device ural # Ralink Technology RT2500USB wireless NICs
device rum # Ralink Technology RT2501USB wireless NICs
device urio # Diamond Rio 500 MP3 player
device uscanner # Scanners

# USB Ethernet, requires miibus
device aue # ADMtek USB Ethernet
device axe # ASIX Electronics USB Ethernet
device cdce # Generic USB over Ethernet
device cue # CATC USB Ethernet
device kue # Kawasaki LSI USB Ethernet
device rue # RealTek RTL8150 USB Ethernet

# FireWire support
device firewire # FireWire bus code
device sbp # SCSI over FireWire (Requires scbus and da)
device fwe # Ethernet over FireWire (non-standard!)
device fwip # IP over FireWire (RFC 2734,3146)
device dcons # Dumb console driver
device dcons_crom # Configuration ROM for dcons