Monday, June 30, 2008

Helping people move != for the lazy

I'm bushed ...


My sisters finally moved out, so most of the day was spent helping her. Although I did get ome break time with Dixie to work on a little Qt'coding. After the end of that, I got stuck helping ma re arrange stuff here (oy). Including having to take apart a bed, move a sewing machine, etc.


Had a couple rounds of SWAT4: TSS on PG#3 with Chester before dinner, and a good nap after that! Sitting here watching Tango & Cash,

zzzZzzzzZzzz

So tired...

The [SAS] Killhouse Redux is coming along nicely, haven't been able to figure out one of the extra's I wanted... but level 1A is now feature complete, pardoning the stairs. Level 2A is aout 40% done, the second wing, ladies room, and two more hotel rooms need furnishing + a wee bit of work in the hallway (decorations).


So far, the map is coming along pretty nice all things considered. I've also got some plans for a few 'secret' area's just to make things interesting. Hehe, if I'm the smoe making the map, why not have a little fun?


The question is how long will it take the membership to find them ^_^




On another note, I've been trying to replace Konversation as my IRC client for *nix. Many KDE apps on my laptop seem to suffer greatly on performance when being run under fvwm instead of a full kde session. I tested out tirc, which is nice and handy -- even has Vi based key bindings ^_^. The only problem is the bus error when forcing a nick greater then the 9-char standard and doing a call to the nickserv bot.


So far, it looks like it will probably boil down to learning either BitchX or irssi.


The only IRC clients I've really liked in the past have been, Konversation (the best!), Chatzilla, and X-Chat. But I'm not really in the mood for needing a web browser to run an IRC client, nor in using X-Chat again. Nice client but eh, kinda boring.



I really need to get some time to focus on KDE4, between family, life, and work. I'm behind schedule on everything these days :\


Dang it... I need a vacation !!!!

Saturday, June 28, 2008

Hmm, all in all quite a fun day.


Us guys went out, knocked over a Gandolfo's Delicatessen for a couple nathan's coney island dog (bad sadly without sauce :-(). I'm not exactly a big fan of hot dogs but when it involves Nathan's famous dogs -- I'm up for it >_>.


Three of us wandered around town for a couple hours before Uncle Pat and Aunt Ruth went off to Mass. Me and my brother sat outside, him smoking and I pacing while we talked lol. I wish he wouldn't smoke but, better sugars then cigarettes I guess :\. Afterward he played a bit of BF2 on my PC, he's a good sniper but heck... Tactically and technique wise, I think if he ever took one of our tryouts in [SAS], he'd probably score below the no retake mark lol.


Once everyone got here, we went out to Red Lobster for diner. In my case, riding with my bro and listing to Nickelback on the way. To be honest, I think I am the _only_ one in this family that doesn't blast music +S. It's good music but, I kinda would like to avoid hearing damage >_>


Just like our mother, he blasts it loud as it will go... Me, if someone walks through the hallway I turn it down or mute it when I've got music going lol.

Friday, June 27, 2008

The nights travels

Just got home a couple of hours ago, my mothers GOD parents came down to celebrate my Birthday during their travels.


Another all you can eat night ;-)


I probably shouldn't have had a huge lunch, but I enjoy the food anyway lol.


Looks like tomorrow it will probably be me, my brother, and ma's GOD father out bowling and then the entire family out for dinner later on. I can't bowl worth a Russian modem but. Who knows, might be fun.


Since Ma hasn't been included much in the plans as far a her original plans, she's a bit pissy. I hate to say it about my seniors but I'd describe it as childish behavior :\. Either way, tomorrow promises to be a full day...


I really need a vacation

Thursday, June 26, 2008

BSD Forever

Well, my Darling Dixie is now running FreeBSD 7.0-Release :-)


I finished last minute backups of files and off loaded them to Vecta, just in case hehe. Unlocked my wireless network and installed from the three CDs I have for FreeBSD 7.0-Release. Since I don't use the CD sets to install more extras then X.Org, I only needed disk one as usual.


I almost always use a custom installation of FreeBSD because I find it more expedient and very concise. Used sysinstall to finish the last bit of configuration before the first boot: nfs client on, sshd on, dhcp on ath0, set root password.


With the first boot I mounted my backups over NFS, copied the over and unpacked for reference -- rc.conf, rc.conf.local, xorg.conf, and wpa_supplicant.conf. I also setup my users and groups via pw and edited loader.conf to load my sound driver.


Merged changes as desired into rc.conf and an xorg.conf file generated via X -configure. Then copied over a small script I had made to automate installing most software I use and started a review of it while running porsnap on anohtr vtty.


While the script ran, I poked around /usr/src with vi to pass the time. All went well until I started getting funky errors from pkg_add. Killing the script, I checked with df and sure enough, / was showing at 107% of capacity! Now that all is said and done, it seems I miscalculated about 600MB of dependencies lol.

mv /root/pkgs /usr/pkgs
sh
for JUNK in `du -ch /usr/pkgs/* | grep 0B | awk '{ print $2 }'`; do rm $JUNK; done

problem solved. I also found out the hard way that the csh is a pain in the ass, hence starting a new shell to handle the removal of empty packages. Used the scroll lock to check the terminals backlog for the last successful package add and modified my script to pick up where it left off.



/usr/pkgs is 834M of packages -- just in case I need to reinstall, I won't have to download them from my $PACKAGEROOT again, I can just bring them over from Vectra and save bandwidth for both my favorite mirror and myself.

I also had a bit of a problem with some port installations failing with strange pkg-descr missing messages, found out today while wrapping up that it was referecin $PKGDIR => /usr/pkgs :\.



my packing list so far:

#!/bin/sh

cd /where/ever

# environment / compat
PKGDIR="`pwd`/pkgs"; export PKGDIR
GCC_VER="42"
PHP_VER="5"
MYSQL_VER="50"
pkg_add -Kr compat6x-i386

# languages
pkg_add -Kr javavmwrapper
# manual install needed for JDK/JRE
(cd $PKGDIR; pkg_add diablo-jdk-freebsd6.i386.1.5.0.07.01.tbz)
(cd $PKGDIR; pkg_add diablo-jre-freebsd6.i386.1.5.0.07.01.tbz)
pkg_add -Kr gcc${GCC_VER}
pkg_add -Kr perl
pkg_add -Kr python
pkg_add -Kr php${PHP_VER}
pkg_add -Kr ruby 
pkg_add -Kr rubygem-rtags && pkg_add -r rubygem-rake
pkg_add -Kr guile
pkg_add -Kr scheme48

# libraries
pkg_add -Kr qt4
pkg_add -Kr gtk-2
pkg_add -Kr p5-DBI
pkg_add -Kr p5-DBD-mysql${MYSQL_VER}
pkg_add -Kr p5-DBI-SQLite
pkg_add -Kr p5-DBI-CSV
pkg_add -Kr p5-Digest


# development tools
pkg_add -Kr gmake
pkg_add -Kr ctags
pkg_add -Kr cscope && pkg_add -Kr kscope
pkg_add -Kr webcpp
pkg_add -Kr subversion

# games
pkg_add -Kr kdegames
pkg_add -Kr xgalaga
pkg_add -Kr prboom
pkg_add -Kr doom-data
pkg_add -Kr wesnoth
pkg_add -Kr supertux
pkg_add -Kr chromium

# graphics software
pkg_add -Kr gimp && pkg_add -Kr gimp-gap
pkg_add -Kr inkscape
pkg_add -Kr xv
pkg_add -Kr kdegraphics
pkg_add -Kr dia

# browsers
pkg_add -Kr linux-flock
pkg_add -Kr lynx

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

# kontact and related
pkg_add -Kr kdepim


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

# install vim / emacs
pkg_add -Kr emacs || pkg_add -Kr xemacs 
pkg_add -Kr mg
(bunzip vim-7.1.tar.bz2; tar -C /tmp -xf vim-7.1.tar; cd /tmp/vim71/src; \
  ./configure \
 --enable-perlinterp --enable-pythoninterp --enable-rubyinterp \
 --with-x --enable-cscope --enable-fontset --enable-gnome-check \
 --with-features=huge --enable-gui=gtk2 && gmake && gmake install)

# multimedia
pkg_add -Kr nspluginwrapper
pkg_add -Kr libdvdread
pkg_add -Kr libdvdplay
pkg_add -Kr libdvdnav
pkg_add -Kr cdrtools
pkg_add -Kr mplayer
pkg_add -Kr linux-mplayerplug-in
pkg_add -Kr xmms && pkg_add -Kr xmms-pipe && pkg_add -Kr xmms-skins
pkg_add -Kr k3b
# this is an rpm
(cd /usr/ports/multimedia/linux-realplayer && make install clean distclean)

# documents
pkg_add -Kr gnumeric && pkg_add -Kr abiword
pkg_add -Kr koffice

# personal
pkg_add -Kr zsh
pkg_add -Kr rxvt-unicode 
pkg_add -Kr terminus-font
pkg_add -Kr windowmaker
pkg_add -Kr blackbox
pkg_add -Kr bbkeys && pkg_add -r bbrun && pkg_add -r bbpager
pkg_add -Kr docker
pkg_add -Kr hsetroot
pkg_add -Kr fastest_cvsup
pkg_add -Kr psearch

# misc
pkg_add -Kr bsdstats
pkg_add -Kr amarok
pkg_add -Kr lzma
pkg_add -Kr unrar
pkg_add -Kr zip
pkg_add -Kr e2fsprogs
pkg_add -Kr pdksh
pkg_add -Kr sudo
pkg_add -Kr v7sh
pkg_add -Kr xcb


I had to install the ports manually because of the $PKGDIR thing, did that this afternoon. Which amounted to multimedia/libdvdcss, x11-wm/fvwm-devel, sysutils/gkrellm2, and just for the heck of it, www/linux-flashplugin9 and www/flashplugin-mozilla hehe. I also had the JDK and JRE packages in cold storage from my last installation, so no need for manual fetching them.

Some last minute additions were gdm and trayer -- I actually like Gnomes Display Manager. I still need to compile mencoder, maybe install a few Perl/Python/Ruby binndings for good measure, etc but I'm basically done.


One thing that shocked me, The flash plugin v9 is working !!! I installed it just to see if the thing would crash my webbrowser but it works :\


I need to get pf, sshd, and my kernel configuration setup and probably play with freebsd-update (I've never used it) but I'm essentially ready to rock and roll, it only took about 4 hours, because I downloaded all of the packages I wanted.


Compared to reinstalling Windows XP? Hahahahhahahahah !!!!


If I ever reformated my XP machine, it would take 3 hours to install XP from the vendors disks, 2 weeks to download all of the hotfixes, updates, and patches and crap, reinstall my firewall and ruleset from backup, then systematically install all of my games, programs, and such by manually visiting each website or inserting each disk -- then spend time re-shoehorning XP into something livable with all of the little setting tweaks here and there.


FreeBSD, back online in a flash -- hehe.

Tuesday, June 24, 2008

Map making time?

Spent 90% of the day working on trying to make The [SAS] Kill House Redux map a reality. I'm a couple months ahead of schedule so far, most of Level 1A is complete and who knows what will become of Level 1B... hehe.

I think the hardest thing probably has been the lighting, it has to be reasonably realistic. But at the same time, it really would help to not need a flash light just to see the weapon in your hands >_>. When you ain't got one to choose from design wise, ya never realize how useful windows really are !!!



Level 1A is pretty simple, spawn point, ~30m long hallway ending in a T-Junction. And a number of small to large rooms; exploring center doors, corner doors, threat points, multiple entries, etc. In a very basic manor, just perfect for basic training work. Level 2A, is meant to be more of a "simulation" environment then a clean room.


Decorating the spawn point, since most of Level 1A is meant to be unfurnished was kind of fun. The desks are kind of personalized to my tastes hehe. I also put a sign up which I feel fits quite well in several meanings of it, only I know them all ^_^.


Just for the heck of it, I'm considering putting in a secret room... Hey, why not have an office or something hehehe.



I'm looking forward to Level 2A and the challenge involved but joining my teammates in training on it will be sweeter still.

Sunday, June 22, 2008

Recent activities.

Havn't had a lot of spare time lately :\


Survived my 20th birthday on the 20th, makes me wonder if I'm starting to get old in my own way lol.


My brother called and wished me a happy birthday, was good to talk with him even if I had to put up with a 'lecture' 8=). I know the old axim is "those who can't do, teach" but in my families case it is lecture >_>.

Night before my birthday I managed to polish off one of my favorite burgers from Ruby Tuesdays. I remember the first time I had one, hehe a few years back I was the only guy involved in a project. So the girls had to throw a birthday party and what else but The Ultimate Colossal Burger xD

They always did know how to throw a party lol.


Ma also made 2lbs of Chili, so I've been feasting on that for the past couple days, hmm now that I think of it.. A little chili would hit the spot about now ;).


I spent most of my birthday eating, sleeping, and coding -- three good things, especially since sleep is a premium for me +S. I ain't done much of anything in C++ in about 3 years, sad considering November will be my fourth anniversary. But I've really been enjoying the C++/Qt4 work of late, even better I've got suitable development environments on my laptop and desktop. Lunch was a trip to the best all you can eat joint in town, so that went well hehe.


Still, it's all overshadowed by one thing... But I guess that's a different subject.



I've managed to get a bit of training in this weekend, been concentrating on the fundamentals of room clearing for Jonsi's training. One nice thing about teaching it, I've been doing it enough in the virtual world, that I parts of it flow into the real world lol.


Ok, so is it that bad if you tend to stack on doors and button-hook entries ? haha



Started work today on a diagram for a new swat4 map, The [SAS] Killhouse Redux. I've got over 25 rooms and two floors with concepts for adding another wing on the first floor. What I like the most about the design, it's trivial to build it in bits and pieces. Level 1As first wing, then the other wing or Level 2A, etc. My original "dream" for the ultimate training facility included like a 5-6 floor shooting house but no map maker got into the project.


The only big problem is me and the Unreal Editor used mix like water and oil. I should be happy though, as crappy as SwatEd is it really is less bothersome then the UnrealEd build shipped with Raven Shield. Although I'm more used to the Rvs build... At least the S4 one doesn't crash so often!



I can do almost anything I set my mind to, it's just a matter of time. Tomorrow I need to inhale one of the tutorials and set to work on more of the map. The main problem atm is adjusting the objectives, although I reckon I could always make a room in the middle of no where full of tangos lol. The old [SAS] Killhouse in RvS that we used to use before I even got here, had a lone tango hidden behind boxes. But that was more so because of issues with the game design, Swat4 is a little less, ehh irksome.



Today I also got some time on the SWAT4:TSS server for the first time in a good while, I really miss that game lol. The only bad thing I can say, is the MP5s don't support full auto. I'd rather have a trusty MP5N but hey, the devs had to make it more 'balanced' :\. The UMP.45 fires at about 300 RPM on their own scale and on full auto, while the MP5 is limited to three round bursts as respective alternatives to semi automatic.


I really prefer full auto because I can control the bursts. In RvS, I often like to use the MP5/10A2 because the way it was implemented. You can't hit shit past about 30 metres and if you fire more then 2 rounds at a time, you won't (consistantly) hit shit to start with ! The FAMAS G2 also has such a high rate of fire, that it's great fun to put on full auto and try to fire one round from it per trigger pull.


SWAT4 has one of the worst simulations of ballistics I've ever seen but, Rvs has good shooting but the worlds most unreal physics.


Tomorrows plans, map making and training ops. With how long it's been since I've really played SWAT4, I think I should take some drill time to work on my usual reflexive plan.


3-round burst to centre mass then follow up with a double tap or another burst to the noggin.


Me, I fire a lot of rounds per kill -- because I keep firing till the f****er goes down. The advantage of video games is, once they die they start to fall over dead (realistically or not). The disadvantage is unlike the real world, getting shot doesn't have much effect on the enemy. At the best you might jar their shots (rvs) or stun them briefly (swat4) for another follow up shot.


What I really would love to do some day, is set up sensors on the monitor and a laser pointer on a model weapon. And have the sensors on the screen detect the movements of the laser beam across their own beams and use that to generate mouse movement-input for the operating system.

That would make aiming a lot more reflexive then a mouse lol.

Tuesday, June 17, 2008

Days webbings

Ahh, home sweet home.

Well, not exactly but close enough ^_^


Was late getting to work but got off on time, luckily there was a little less to do today then normal. Got 'ambushed' by a Spider above the door, no sign of where the little bugger escaped to but I should probably thank'em.


Hit the shower and a quick shave without the usual delays. When your usually third in line for the bathroom and spend nights workin', and time off work busy. It pays to take advantage of every opportunity for a bath lol.


I spent yesterday taking a day to myself (a rarity sometimes). I was building a prototype in Python with Qt3 bindings then after dinner. I spent the night writing the finished version in C++ with the Qt4 libraries I have installed. I haven't really used C++ much in at least 2 and a half years or so but it wasn't a problem. Qt is arguably the easiest GUI toolkit I've ever seen but I'm only used to the Python bindings to Qt3. So the issue with using the concepts from the prototype to build the project in C++, the biggest problem I had was the slight differences between Qt's bindings to C++ and Python.


Although I wouldn't want to have to do anything useful in assembly language, I think in a way that I can use just about any computer language given enough time. I do rather find working in Python, Perl, and PHP much more comfortable though.


The programs pretty simple, the whole point of it is just to handle a Bourne Shell script based init system to populating my workspace with applications.


I've also considered breaking it down & posting it just for an example in Qt programming.

Monday, June 16, 2008

Been very tired lately... Either workin' a lot or idle as can be for not being able to get work done, pisses me off :\


No one was hungry after this afternoons huge lunch, so there was no official supper. I ended up with a can of cream of mushroom and leftovers lol. Contrary to popular believe around here at times, I actually do know how to make condensed soup ^_^.


With the amount of flibin' salt in those things, I think it would be worth while to do it by hand and skip the can :|, just more costly!


Two things I really need.. Doubt either of them are likely in the immediate future but work also has to get done...

Sunday, June 15, 2008

Does Python or PyQt3 have a pox on C++?

This is illogical as I've seen Python get.

Terry@dixie$ cd code/C++/src/qsm                                           0:11
Terry@dixie$ python                                                        0:11
Python 2.5.2 (r252:60911, Apr 17 2008, 16:34:02) 
[GCC 3.4.6 [FreeBSD] 20060305] on freebsd6
Type "help", "copyright", "credits" or "license" for more information.
>>> from qt import *
>>> QDialog
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'QDialog' is not defined
>>> 
Terry@dixie$ cd $HOME                                                      0:11
Terry@dixie$ python                                                        0:11
Python 2.5.2 (r252:60911, Apr 17 2008, 16:34:02) 
[GCC 3.4.6 [FreeBSD] 20060305] on freebsd6
Type "help", "copyright", "credits" or "license" for more information.
>>> from qt import *
>>> QDialog
<class 'qt.QDialog'>
>>> 


Maybe there is a reason for this and I've just got to much of a headache from today to notice it, but WTF man? lol. It's almost as if Python has a pox on running a script in that directory :\




I wanted to test an idea for a dialog quickly, so I started a new python script. Only to have NameError's whenever trying to reference a member of the qt module. So i copied over one of the py-qt3 example programs that came pre-installed and tried that, same barfing results.

Then I tried interactively with python, no go -- changed directories to home and tried both, and they fucking work !!!!


I don't know whether I should laugh out loud or start hex editing maliciously lol.

Another commit to NPM

Well this was a fun one, for the first night in quite awhile I've spent some code-time on one of my own projects instead of [SAS] related business.


After someone on daemonforums pointed me at a few make targets (depends-list, showconfig). I put it on my to do list to refactor NPM to make use of such things.


As it turns out, depends-list is not documented and doesn't seem to work on every port. The included makefile that implements showconfig however, does list a lot of make targets that I can count on (more then the ports manual page), including suitable *-depends-list targets.


NPM's way of handling port build options in the trunk, I've never been very happy with... Because although it works, the whole thing hinges on a method of pulling out the OPTIONS variable from a specified ports Makefile. The code to do it, should we say gives me a queezy feeling when I think about it.


I also had planned on writing a small module to handle calculating a programs dependencies through the ports INDEX file but never finished it. I had gotten as far as processing the index and scratching my head over a couple of the rarely used segments of the file. The various m/.*-depends-.*/ targets solve that problem already, so we're in cake land ;-)


It's much easier to just read the information through a pipe and process it into something manageable. I'm to exhausted atm to keep working on things in a sound frame of mind... Else I would probably be awake for another 3 or 4 hours, passing out around 0700~0800.


Some stuff I would like to do on the next round of commits,

process data received from the pipes while reading them, not after reading it all (not that this is likely to be a noticeable improvement in response time for big jobs)


figure out exceptions to be raised

get it finished

get it tested

get the program using it

test that

pass out again.

Saturday, June 14, 2008

Wireless networking options

I'm contemplating *trying* to move my desktop PC to my room... Which means access to the 'net will only by available via wireless. The computer doens't have a wirfi card, just ethernet so that means shopping is involved.

It primarily runs Windows XP for gaming and has space reserved for testing GNU/Linux distros and BSD systems. Being a BSD-aware and manual reading shopper, I always crack open my operating systems manuals and look at what cards are supported by the drivers when I go looking for a product.


Since the only principal markets available to me off the web are Best Buy and Office Depot, those are where I looked online first.


The cards:

NETGEAR - 802.11g PCI Card Model: WG311

Pro's:
Supported by ath drivers.

Same brand and chipset as my PCMCIA card (WG511T)

Con's:

Old (or cheap) product, only supports WEP (which I don't use)

Newer revisions may not be totally compatible with existing drivers (I suspect).


Belkin - Wireless-G USB 2.0 Network Adapter, Model: F5D7050

Pro's:

Version 3 is supported by the rum driver and v2000 by the ral driver.

Con's:

Reviews suggest bad gaming performance due to burst based transmissions

The rum driver is new to FreeBSD 7.0-Release (ported from OpenBSD)

GOD only knows what revision/version you might find at the store...

Hawking Technology - Wireless-G USB 2.0 Network Adapter,
Model: HWUG1 at best buy and at OfficeDepot

Pro's:
Supported by the rum

Removable aerial and possibly good signal strength if you don't have problems with it.


Con's:

The rum driver is new to FreeBSD 7.0-Release (ported from OpenBSD)

May be hard to find (lesser known brand, at least from what I've seen of consumer (non enterprise) products).

Just look at Hawking Technologies website... (ugh)


Linksys Wireless-G 802.11g PCI Adapter, Model WMP54G at Office Depot and Best Buy

Pro's:

Supported by the ral driver.

It's cheap

It's available while it is still on the market

It's the same brand as my router (which is _not_ a plus in my book...)

Con's:

More stores are carrying similar but newer models for Wireless-N and variants of the both (802.11g and 802.11g/n) proprietary speed boosting technology, which of course is unsupported.

It's the same brand as my router (which I don't care much for!)



MISC:

Driver support on OpenBSD and FreeBSD at release levels...


ath == OpenBSD 3.7, FreeBSD 5.2, NetBSD 2.0 (more recent modules don't use a binary blob, at least the OpenBSD drivers that is (-;)

ral == OpenBSD 3.7, FreeBSD 6.0 and may require PCI 2.2 compatible mother boards.

rum == OpenBSD 4.0, FreeBSD 7.0

ural == OpenBSD 3.7, FreeBSD 6.0 and may have issues with communicating transmission speed (OBSD manual is more specific).



All of this is posted for my own reference and anyone else who may find use for it.

Converting FreeBSD into PC-BSD

Abstract


This post describes an example of how one can manually convert a FreeBSD installation into a PC-BSD one using the install disk. There are more elegant ways of doing it, such as pulling things from PC-BSDs SVN and compiling only PC-BSD specific components.



Disclaimers and warnings


This was done purely for 'fun' to see if the programs would work reasonably well. Which is why FreeBSD 7.0-Release was used as a base and PC-BSD 1.5.0 as the overlay (which is based on an old build of FreeBSD 6.3). I do not recommend, endorse, or even suggest actually doing something like this beyond exploratory or playful thoughts at heart !!!


If anyone actually tries this, your on your own.


If someone actually tries this they should probably use a PC-BSD 1.5.1 disk build, the files are newer.


Installing the PC-BSD v1.5.0-v1.5.1 update will install FreeBSD 6.3 files and may break your system -- note that I didn't enable the updater for my user account during this process.



Now that you are warned...


My test partition is reserved fro testing various alpha/beta/rc releases of operating systems I wish to test. So I wiped it clean and set out to install a basic working FreeBSD system.


I Installed FreeBSD 7.0-Release via CD-ROM, using the express option, auto
partitioning to save time, X-Developer dist set, and configured the system
lightly (set root pw, network services etc).


You want the X.org and related drivers from the disk, so they match your release level -- you also want source code for later to build a custom kernel (optional)


Booted the system and logged in as root, one vtty for work and one for logging my notes in vim over ssh.


Then began converting the system to a FreeBSD-PC-BSD hybrid. Since the FreeBSD auto mode for partitioning the slice only gave me a 512mb / and 512mb /tmp, I created a /usr/work directory to use.



NOTE:
actual PC-BSD systems require several gigs of space for / to ensure safe updates and this is noted during previous upgrade notes. My guess after reading some of the 1.4/1.5 scripts is the developers have 'yet' to figure out how to use mount -a for mounting the needed file systems before extracting files and reserved storage places with the default partitioning scheme


pkg_add -r lzma && rehash  # to unpack pc-bsd files
mount -t cd9690 /dev/acd0 /mnt  # mount pc-bsd disk 1
mkdir -m 0700 /usr/work
lzma d /mnt/PCBSD.tar.lzma /usr/work/PCBSD.tar
 ...
     # lzma has fast decompression speeds but
     # this is a ~451mb lzma file being
     # unpacked into a 1.9gb tar file!

tar -C / -kpf /usr/work/PCBSD.tar # extract files without overwrite 

cp /etc/rc.conf /etc/rc.conf.local # fix rc.conf
tar -C /tmp -f /usr/work/PCBSD.tar -px './etc'
cp /tmp/etc/rc.conf /etc/rc.conf
cp /tmp/etc/devfs.conf /etc/devfs.conf # modified in pc-bsd

vi /etc/ttys    # start x on boot up
 ...    # note the ttyvNum is arbitrary
 #ttyv8 "/usr/local/bin/xdm -nodaemon"  xterm   off secure
 ttyv8   "/PCBSD/bin/pdm"                xterm   on secure
 ...
X -configure && mv /root/xorg.conf.new /etc/X11/xorg.conf

#
# create users and groups that come with PC-BSD 1.5.0 but not FreeBSD
# 7.0-Release. Numerical values for -u userid and -g groupid are taken from
# viewing a unified diff of the group files.
#
pw groupadd -n haldaemon -g 560
pw groupadd -n cups -g 193
pw groupadd -n cyrus -g 60
pw useradd -n haldaemon -u 560 -g 560 -L daemon -d /nonexistent \
  -s /usr/sbin/nologin
pw useradd -n cups -u 193 -g 193 -L daemon -d /nonexistent -s /usr/sbin/nologin
pw useradd -n cyrus -u 60 -g 60 -L daemon -d /nonexistent -s /usr/sbin/nologin

#
# add my own user with the bash shell as a test (because it. Note that I typically set
# user/group id numbers by year of birth.
#
pw groupadd -n Terry -g 1988
pw useradd -n Terry -u 1988 -L default -m -s bash -g Terry \
  -G wheel,operator
passwd Terry
 ...

#
# now build a custom kernel merging GENERIC with /PCBSD/conf/PCBSD.i386
# I find Micro GNU Emacs (mg) to be both light and effective for this task.
# -- normally I would use vimdiff
#
pkg_add -r mg && rehash    # if using mg !
cat > ~/.mg
auto-fill-mode
set-fill-column 78
global-set-key "\^x\^f" find-file
global-set-key "\^h" delete-backward-char
set-default-mode blink
^D      # end of ~/.mg

diff -u /usr/src/sys/i386/conf/GENERIC /PCBSD/conf/PCBSD.i386 > /tmp/kern.diff
cd /usr/src/sys/i386/conf
mg KAI
 ...    # kernel config attached at EOF
     # used GENERIC and /tmp/kern.diff to
     # write the file if needed.

cd /usr/src    # compile & install kernel
make -j12 buildkernel KERNCONF=KAI
 ...    # roughly 10 minutes later..
make -j12 installkernel KERNCONF=KAI
 ...    
umount /mnt && cdcontrol -f /dev/acd0 eject
reboot     # let's rock it and roll on to KDE


On reboot, I was greeted with KDM, PC-BSDs login theme, and a clean startup of KDE (no error message popups). I was able to install and use the Firefox PBI from PBIDir without problems. But as one can see in the screen shots, there are sound system related core dumps


Free Image Hosting at www.ImageShack.us

Free Image Hosting at www.ImageShack.us

Free Image Hosting at www.ImageShack.us


I was also interested to see that there is now a 'snd_emu10kx' driver added in FreeBSD 7.0-Release which supports my card. So I guess I won't have to manually compile the 'outdated, unmaintained, etc' audio/emu10kx port to get working sound, the manual page seems to suggest it is the same driver more or less. I only had to add an entry to my loader.conf file to get it loaded before PC-BSD sound detection system, just like audio/emu10kx from ports it won't work (for me) if kldload'ed later on.


I found that although everything I tested was working fine, audio and video related apps were dumping core (mplayer at start, kaffeine during playback). So I did a pkg_delete on kaffeine and kaffeine-mozilla and reinstalled from packages and soon was blasting MP3's from a FAT32 partition ;-)


MPlayer needs to be recompiled as expected, The KDE sound system will likely need that to but otherwise I've observed no real breakages. Not that I've taken the time to test every single program!



Personal Opinions


If like me, your primary reason for using PC-BSD is a quick way of grabbing KDE -- you would be better off installing PC-BSD! As far as setting up a working desktop system, one can do that easy through FreeBSD. If one doesn't want to go into configuration details for 'extra's like PF or X11 using PC-BSD or DesktopBSD is a better idea anyway.



If all you want is PBI, export, compile, and install the necessary files from PC-BSDs SVN repository.




Kernel Configuration: KAI


Note to SATA hard drives out there, the ATA_STATIC_ID option effects device numbering. FreeBSD GENERIC kernel configuration uses it and detects my SATA drive as 'ad4', PC_BSD kernel configuration has it turned off and detects my drive as 'ad0' -- I only have one SATA II hard drive installed.


Changing the ATA_STATIC_ID kernel option means you will havve to make sure /etc/fstab is in working shape unless you want to see a mount root prompt.


#
# Custom FreeBSD 7.0 kernel based on PC-BSD 1.5 Kernel config for FreeBSD 6.3
#

cpu  I686_CPU
ident  KAI



#options  SCHED_$BSD  # 4BSD scheduler
options  SCHED_ULE  # ULE scheduler ;-)
options  PREEMPTION  # ENABLE KERNEL THREAD PREEMPTION
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
options  ATA_STATIC_ID # STATIC device NUMBERING
device   atapicam # Atapi CAM support

# 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  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  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


#
# from PC-BSD conf
#
options  LIBICONV
options  LIBMCHAIN
options  CD9660_ICONV
options  MSDOSFS_ICONV
options  NTFS
options  NTFS_ICONV
options  UDF
options  UDF_ICONV
options  GEOM_UZIP  # read only compressed disks
# wifi
device  wlan
device  wlan_wep
device  wlan_ccmp
device  wlan_tkip
device  an
device  ath
device  ath_hal
device  ath_rate_sample
device  awi
device  ral
device  wi
device  iwi
device  ipw
device  firmware
options  DEVICE_POLLING
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

Friday, June 13, 2008

Family Memories

Hmm, a rare surprise in the mail today. My Aunt sent me some family photo's, mostly of when my Father was younger and a couple of when I was little. My Mother also gave me a few more photo albums, ones that belonged to my Dad.


Spent some time tonight looking through them, basically covering 1946 through 1963 with a couple gaps in between. One thing that really stuck out, a picture of my Dad about 4 years old sitting on their front step with my Aunt. He had his leg crossed in just the same way that I usually have mine crossed lol. Guess it goes back further then I thought >_>


As fate would have it, I know a lot more about my Mothers side of the family then my Fathers... But his albums are also a bit neater, well annotated, I think someday it would be nice to go through them with my Aunt and see what she can remember of some of their vacations and stuff. One thing that I found out when looking through the photos; that I never knew before, my Dad was in the boy scouts when he was a kid.


I was also looking through a book from when he was doing the recruit training/etc in 1963, of course I looked through the company photographs to find him (y). Some of the pictures my Aunt sent me were of him in his summer whites, most of the ones we have are in the winter blues. I think the USN is dealing away with those now're days, oh well :\. In side the pages I also found a greyhound envelope with bus tickets from the time and a few photo's of aircraft.


I know he hated the Navy more or less, he was supposed to be stationed in Texas close to home but wound up in Florida -- someone out of state got Fort Hood, and then later shipped off to Midway when life was going a bit better. Talk about getting the short end of the stick lol. But then again, if it wasn't for that I probably would never have been born ~20 years later ^_^


I'm a somewhat sentimental kinda guy, not exactly a big person on photo albums but it's good to be reminded every now and then of where you come from. It's sort of like looking at a small picture into another time, another place. Some of the older photo's are quite faded but I guess 60 years or so will do that to a photograph. But all in all most of them were in pretty good shape, quite a pleasant stroll you could say.

One thing that was a bit odd, one of the Christmas photos showed my Dad getting a tub of "American Plastic Bricks", they look like a cross between something simpler I used to play with as a boy when I was a few years younger and the LEGO bricks so ubiquitous with much of my generation. I also sighed at the sight of my Dad and Aunt sitting around the tree with a new record player -- someone was telling me the other day that they were looking for an MP3 Player >_>.


I was born in '89 and my memory goes about as far back as 1990~1991 and I don't think I've really seen a record player in years. Heh, now this makes me feel old myself... When I was a lad we had Walkman and similar products with your choice of ear buds or or supra-aural headphones -- now they are selling WIRELESS HEADPHONES !!! Not to mention that Compact Disks (CDs) and now more modern iPods and flash based devices are becoming common... The Compact Cassettes of my day are probably long dead and buried by now.

I wonder what my Dad would think of this new fan dangled technology, personally I think I would stick with the record player if it wasn't for computers.


One of these days I really would like to get everything scanned, organized, and tagged on the computer. Because unlike a photograph, a file doesn't fade out so easy. If I ever have kids, I know I would like to be able to show them about their ancestors. My ~/Pictures folder is only ~255mb so adding about a dozen photo albums can't hurt that much, can it?

Tuesday, June 10, 2008

DI Planning Phase

Just finished my notes, I figure I can make the encrypted file available to the other NCOs to save me time reiterating it vocally. It's mostly an outline of what ground I'll have to be covering as a drill instructor.

My planned format is much like that my greatest teachers used for me, Rand, Wiz, and Relish.


I know my work on Tuesdays now (formally Mondays job) is almost a total washout when it comes to computer time. I kind of would like to get at least 3 or 4 days of the week going for training an hour or 2 per if possible. Time issues will tell the tail I guess. One thing I like about most of my work, I'm usually home some time in the local afternoon which generally works well.


I really prefer Zulu time but I kinda like my time zone. It balances out to an interesting inter-mix of times when syncing with other countries, I usually get to see people in several very different time zones during my online time lol.

The smaller portions of my training phase need to be taken day by day more so. I like what I have so far, a fairly ironed out wave of it but still a lot of breathing room to swing with whatever I end up. One thing I need to do is get this TeX file setup for printing so I don't crash from all the alt+tabing lol.


I always felt [SAS]_Cpl_Spidey01 had the best ring to it in my time thus far, although I admit SSM/RSM/WO1 has enabled me to do a lot more then I otherwise would've been able to... but it's the Corporals that fill many of my favorite tasks in [SAS].

Good to have my butt back on the virtual training grounds doing training!

Monday, June 9, 2008

days notes

Ahhh... A busy, stressful, but reasonably productive day I guess...


TG#3 problem should be el'fixo.


The RSM finally posted the reply to my volunteering to the be our new Recruits drill instructor.


Tonight I need to take some time out and finish prep work. It's been a good while since I've focused on this sort of thing, having never filled the position in the past. I'm a wee bit apprehensive but looking forward to it a lot.


Back in my day, we didn't have such an arrangement and by the time we did: I was a bit to highly placed to get a chance :\. Oh well, it's about time I guess lol. I'm lucky though, I've got a good recruit to work with so the biggest problem will probably be not boring him to death during training >_>.



As an NCO and SNCO on the team I have usually planned out my training sessions in advance, complete with a lesson plan. One thing I kinda liked about being an RSM/SSM is the chance to do more 'off topic' trainings, covering advanced stuff and things that we don't train as frequently on.


For Drill Instructor, I want to continue to apply the level of expertise but not in quite the same way. I figure, for this since it's more of a one to one / two to one approach... And I'm very much used to training in groups, I think I'll try and follow the format that thought my generation the techniques of the trade.


I'm used to doing trainings in a more structured class. I usually would line it up so I could have 2 or 3 recruits around and bring in a few promising candidates when I could. Walk us through it, refine it, and where possible a lot some time for practicing it without the instructors interventions. Most times I'd be dealing with 3 to 7 people and if ever a stroke up luck, someone to back me up lol.


Me, well I was trained quite a bit differently hehe ;-)

Sunday, June 8, 2008

quick app

Well, it's more of a chewing gum solution then a perfect fix... But I think I've got a small app to deal with the TG#3 problem. As soon as it is deployed it'll kick start her whenever she goes offline.

At least, assuming that it follows a single common assumption but the game server should. At least one of the development teams that worked on SWAT4/SWAT4:TSS seem to have had some background in C++ for better or worse.


I don't expect any problems though, it's not like it's a Ubi product haha. Oh man, Raven Shield is some crazy shit. I don't know if it's just an Unreal 2.x thing, the people Ubi get to write this stuff, or the rushed development but that's one game I'd say has "ghosts in the machine". It's like, you could install the same game, into identical systems, do the same exact things to them. And then watch both system develop their own unique quirks and anomalies.

It's like, no two installs of RvS are the same (especially servers) even through it's the same bloody program!


The little funkieness yesterday that we had with the Rvs servers, ain't even supposed to be possible rofl. But like most Windows crap, restart it and it'll fix most problems until the next thing pops up :\


DOS drools, NT sucks, but UNIX rules forever,

Eureka!

A light bulb moment as I wake up:


create new tables within a private namespace

use old tables to populate them with data

use new tables in reworking the mighty page


when complete, port other scripts to new db tables

when that is done, delete old tables, rename new tables ubto the production name space.


And the have a root beer ;-)
Been working on rewriting the mighty page... (ugh)


Personally, I think the entire website would be a hell of a lot faster if we reorganized the entire private database into some thing more consistent, stripped out some of the (abused) use of <table> tags, and moved more presentation issues into per-unit style sheets... But thanks to our original designer(s), whoever he/she/they may be coupled with my family, that would take months instead of hours to do without breaking everything.


Although I've always felt database normalization eventually just "goes to far" when done well, I'm beginning to think it is a pretty dang good idea just for the sake of flexibility.


The big problem is when you have code in use, that's so old no body remembers who the heck wrote it, and whoever wrote it assumed they were the GOD of a database that would never change it's structure in the slightest, less the entire thing need fixing in every sub system.


And I'm the one without the college education here? WTF.


Working on the mighty page is a bit prickly since, we've got disorganized data to suck in, organize into some thing we can actually use, iteratively display the data, and sadly I'm not interested in leaving code behind that'll break if the next guy so much as sneezes at it loool.


Well, at lest all of the _big_ problems were fixed two weeks ago...

Saturday, June 7, 2008

I never thought we'd be friends -- Me & FVWM

Well, I have been looking for a suitable replacement for KDE3 of late on my laptop -- tried enlightenment and chucked it. Nice desktop, very elegant feeling but just not my bag :|. Kicked through and finished working with FVWM, I chose to install the unstable 2.5.x build in port.

Normally I'll only use stable releases unless I'm testing or in need of a 'sneak peak' but this time I opted in. I figure, it should be fairly stable with how long FVWM has been around. The original code base of FVWM 1.x was born in 1993 making it about as old as FreeBSD lol. FVWM 2.5 has newer features and I don't mind a few quirks really, as long as my session doesn't die or the entire system lock up.

Free Image Hosting at www.ImageShack.us


So far FVWM is really proving it's possible to have a desktop *your way* without having to kill someone in the process !



I've always thought that if I'm ever going to find a window manager I truly love; I probably would have to write my own. I like programs that are powerful, configurable, and extensible -- that's one of the reasons I use Vim in the first place >_>


I have my pager and a useful means of employing my laptops limited screen space. The way The Flibin' Virtual Window Manager as I call it, handles virtual desktops is actually quite nice. The M by N thing and configuration options have given me a very nice arrangement for working with many programs. Especially in my case, since I need to work with windows that are some times larger then my screen resolution!

Rather then resize the program (scroll bars, ugh) or rescale it as the situation may offer. I can just scroll my screen between the pages and vola! The illusion that the desktop is much bigger then it really is, really fits with the way I use programs.


I installed x11/trayer to get myself a (transparent) system tray, I actually like how FVWM handles iconifing windows but for some apps a system tray is helpful (pidgin). Notice that I do not have a taskbar, desktop icons, or a 'panel' -- don't need them nore want them most times.


I like to keep my workspace very thin, it's for running programs not holding up bells and whistles everywhere. I fI wanted to look at bells and whistles (or unhide them when going to the screen border) I'd run them outright. And covering or autohiding the panel (KDE, Gnome, Windows) is a poor solution for my habits +S.

I have my FVWM configuration launching a program to auto-rotate my wall paper, need to properly daemonize it someday soon. I'm considering giving the X Session Manager (xsm) a whirl as well, worth a try judging by the manual page. I still have some more work to do but so far, I like how it has come out in such a short time.


Why didn't I ever try the F* Virtual Window Manager before? lol.

Friday, June 6, 2008

thoughts of home...

Trapped in hell

Another day, home from the long toils of the field

Only to be beaten down, pounded into dust

Yet another season gone, never to return

Spent all for the sake of my torment

At the pleasure of those who should care

That a tiny bit of me passes away into nothingness

Day by day, never to return.

Another day, wasted and trashed before me

Spent all on the monsters whims.


Never again to grace the sky,

That free spirit, flying so high.

Soaring on the airs of its discoveries

To face that same fate....


To be dragged, drowned, stomped into the ground

All for the tormentors pleasure -- and my souls destruction.

It's just another day in hell,

Trapped in that pit so deep, without an escape.

Watching my existence being ripped away,

Thrown into the flames, forever more

To burn in agony.


Oh why, oh why didn't I flee this place while I had the chance.

Thursday, June 5, 2008

JavaSwing.strange()

This is very funky. I downloaded a tutorial file from sun for Java's Swing toolkit and it compiles fine but can't find the main thread when compiled & run as directed.

I comment out the 'package start;' at the top, recompile and it runs fine >_>


To be honest, I think I'm sort of happy I've never written a lot of Java code... Especially because most encounters whereByPeopleWhoHaveTypeNames andVarNamesThisLong which kind of pisses me off lol.


I do have Qt Jambi installed on my desktop but the problem is family really makes it easier to write code off my laptop, since I get get further away from the line of fire... Which means without a fair bit of tinkering, it'll be easier to write the GUI in Javas Swing.


I did learn a little of AWT way back when but I doubt any of it is still good by now lol.

Writer's Block: Funniest Thing Ever.

Out of all the funny things that have ever happened to you, which experience still cracks you up?
Live Journals Writer's Block


Without a doubt?


Cored in a second flat!



I was in a casual game of MechWarrior 4: Mercs with a friend, her smoke signals host (AOL Dial up), and the Op4 was three of her killer 'Mech configs piloted by level 9 bots (the hardest mode). I was piloting my Shadow Cat, a 45 Ton medium 'Mech and iirc she had her Black Knight.

I was like, "Ok I'll go destract them you go flank" and before she could warn me, I jump jetted over the wall and BAM


My 'Mech exploded as they cored out my Shadow Cat about as fast as my legs cleared the wall hahahaha !!


Crap, we were laughing till it hurt after that one lol. Normally bots can't fight worth a darn on any difficualty level let along the maximum but when shes the engineer -- RUN FOR IT !!!!!!!!!!!!!!!!!!!!!!!!!!


Hmm, it's been awhile since I last thought about the 'cored in a second flat' thing hehe. That's one thing I always liked about playing with Lioness, she was brilliant at putting together strike packages. Blending the perfect mixture of weapons payloads to balance both human and bot skills with the desired effect, and to top it off grouping them into strike groups of demi-lances or larger. Often 2 assault 'Mechs and a heavy or a med, hvy, and aslt.


Some of those configurations were scary :\


And I'm a guy who used to train versus like 12 level 9 bots lol.


My favorite part about Mech Warrior was the ability to design 'Mech configurations. I was never really happy that in competitive play, I usually ended up in 'Mechs designed for the more natural 'stand up fight' of a league drop -- weapons were largely limited to the heaviest hitting ones grouped in mass, alpha striking was the goal. Like the common street-fight Highlander every body used for short to medium range work and urban ops.

About 90 tons of jump 'Mech with low slung arms, big torso sections and tall legs. But that sucker could pack a heavy gauss rifle (the biggest gun back then) plus still cram in clan guass, light gauss rifle (basically super long range), and a capacitor packed particle projector cannon (PPC) -- meaning one big alpha strike. It only had a 600 Metre rang eon the heavy gauss but the closer you got, the harder the gauss rifles hit. Heck if you got as close as 400m the heavy gauss would probably critical most heavy 'Mechs in one center torso shot.


That's how competitive MW4 play was, speed was a luxury for most, heat sinks dead weight, armour was cheap compared to guns. And if it couldn't destroy any 'Mech in the game with two direct hits, your 'Mech was too weak for combat. Although of course in games where we got points by damage done rather then kills (never very popular) people would mix in some shredders using short or long range missiles.


The only big difference between long range and short range combat was for brawling we took shotguns (LBX Autocannon) and heavy lasers most times, for sniping we took Gauss rifles, PPC, and ER Large Lasers :\. So what if I could work a 70 Ton Nova Cat with 7 ER Lasers, minimal reflective armour, 90+ KPH engine and no heat sinks what so ever, and go hill-humping as the Nova-style sniping was nick named, blasting away 'Mechs ? I much rather have been in a little ol' Shadow Cat or a Raven zigging and zagging through the battlefield.


In some ways, I envy my old partner in the engineering wing. She never played competitively (good for me because her personal 'Mech was the Queen of Alpha Strikes) but she also always used the style of 'Mechs that she preferred to bring into virtual combat (y).


She was always a great one at designing 'Mechs for all range combat, a skill very few people ever developed well. My own line of bots got used for training but were never quite up to par with Lionesses monsters from a Doom speed run lol.


Although, I did work together a group of bots that cored my shadow cat in half a second once lol.


They were never quite up to that same nightmare configs that she cooked up :-(.


I remember she once gave me her personal 'Mechs configuration, a 75-Ton Black Knight that had an alpha strike that put 100 ton 'Mechs to shame!!! When I brought it to bare against' my friends 'Mechs they couldn't believe it hit so hard haha. It was like bringing a midget to a sumo match and packing the death stars super laser !

With Lionesses very much respected permission, I eventually gave my buddies the config so they could stop (wrongly) trying to reverse engineer it on her >_>.



*shakes head*, that girl was a bloody genius of 'Mech Engineering!

Wednesday, June 4, 2008

Double nightmares

Hit the hay early, to tired to get back to finishing my program. Caught most of Matrix Reloaded but dozed on/off through the end of it, and finally woke up after whats essentially a double nightmare :\



First off...Family driving me bonkers about things but as it works out.. Some time of peace and a party due later.

Ended up on a date with a very beautiful woman ^_^


The nightmare? I was too freaking busy going to and fro, that I was stuck wasting what was otherwise a perfect situation lol. That really was a nightmare... just horrible +S Like one of those times you would need brain damage for it to not go well... But stuck working on everything and so there it goes out the window figuratively speaking. That was a torturing dream to have to go through...



Second off... Well, not really a nightmare so much asa more normal dream +S. Stuck following in a News crew and Canadian SWAT team armed with suppressed FAMAS G2's going for an assault on a large TV-like building (ala Gremlins 2 style). But guess what? A Predator on the roof pumping them all full of Plasma by the time we hit the lobby, plus terrorists all over the place with machine gun emplacements setup inside to finish the job -- just great!!!


After getting knocked cold in a "smashing" fight with one, ended up stranded with the camera crew running off scared of the predator, and only a treasure seeking trooper turned tomb raider wanta be for company. In search of an ancient Egyptian tomb hidden under the building. Maanged to get past the terrorists fine but stuff in the building has come to life and started to run amuck.

Not to mention once we got to the area, after a few mishaps... It's guarded by like a dozen leopards who are very pissed off at us trespassing... The plan of getting through them with ignitables and fire didn't go so well and we nearly got scratched to death and chewed on before finding a way up, up, and away from them lol. Finally reach the goal.. but decide it's not morally right and leave the tomb raider to plunder it while I search for an exit without more hungry or plastic creatures in the way.


*shakes head*


I have the craziest dreams don't I? The second one I don't mind so much but the first...


Maybe my friends are right, I work to damn much lol.



The ironic thing of it all? It's 0500 in the morning and if I don't get back to sleep, to get up for work on time, my goose will be cooked !

Tuesday, June 3, 2008

Writer's Block: Some words to live by...

What words do you find wise enough to live by?
Live Journals Writer's Block


Recognizing that I volunteered as a Ranger, fully knowing the hazards of my chosen profession, I will always endeavor to uphold the prestige, honor, and high esprit de corps of my Ranger Regiment.

Acknowledging the fact that a Ranger is a more elite soldier who arrives at the cutting edge of battle by land, sea, or air, I accept the fact that as a Ranger my country expects me to move farther, faster and fight harder than any other soldier.

Never shall I fail my comrades. I will always keep myself mentally alert, physically strong and morally straight and I will shoulder more than my share of the task whatever it may be, one-hundred-percent and then some.

Gallantly will I show the world that I am a specially selected and well-trained soldier. My courtesy to superior officers, neatness of dress and care of equipment shall set the example for others to follow.

Energetically will I meet the enemies of my country. I shall defeat them on the field of battle for I am better trained and will fight with all my might. Surrender is not a Ranger word. I will never leave a fallen comrade to fall into the hands of the enemy and under no circumstances will I ever embarrass my country.

Readily will I display the intestinal fortitude required to fight on to the Ranger objective and complete the mission though I be the lone survivor.

Rangers Lead The Way!

While I don't consider myself to live by it (I'm not a Ranger, nor a soldier), I do however think the Ranger Creed is a good starting point.


I have much respect for the 75th Ranger Regiment.

Monday, June 2, 2008

Oy these trouble makers are starting to get insulting!!


I figured at first, fine let the babies have there candy... Now they are just asking for a spanking.


So far it seems they can try stealing copyrighted content, insulting us, disrespecting us, and personally disappointing the WO1, insulting the major, but one thing they can't do?


Is actually prove they have more maturity then that stupid character always following SpongeBob SquarePants around, man I'm glad I'm not working at that one clients anymore... The bosses grandkids were nuts about that show (and I'm not) :\


After what Wiz did to ol'Snipe, that should at least keep the whipper snappers busy for a little while, but I still wish they would GROW UP.


It makes me sick to think about how some of these peoples actually used to be a decent example of conduct lol.
Oy these trouble makers are starting to get insulting!!


I figured at first, fine let the babies have there candy... Now they are just asking for a spanking.


So far it seems they can try stealing copyrighted content, insulting us, disrespecting us, and personally disappointing the WO1, insulting the major, but one thing they can't do?


Is actually prove they have more maturity then that stupid character always following SpongeBob SquarePants around, man I'm glad I'm not working at that one clients anymore... The bosses grandkids were nuts about that show (and I'm not) :\


After what Wiz did to ol'Snipe, that should at least keep the whipper snappers busy for a little while, but I still wish they would GROW UP.


It makes me sick to think about how some of these peoples actually used to be a decent example of conduct lol.

Sunday, June 1, 2008

Woot woot !!!

*does the happy crazy coder dance*


This thing freaking works !!!!


Oh man, this opens up sooooo many possibilities, xD


I wish I had time to take a picture of the ear to ear, shitting eatingest, tha Grinch style grin on my face >_>


Hooah !

days notes

Crashed and burned last night... Woke up, put Dune on, fell asleep during the prologue, woke up >4 hours later, turned it off, fell asleep, woke up some time after 0900.

To get dragged out on a shopping trip, multiple stores during an expedition that was planned for Monday.

To get stuck running ragged most of the day with this and thats.

To end up setting up new lamps and doing everything else under the sun when I was just about to hit code, 6 hours late.

To have a cheapo General Electric 60 watt light bulb 'pop' in one of the new lamps

To have said light bulb break off the base 'cup' that screws into the socket -- a first for me.

To trying to remove the dang thing from the socket, no luck

To try dismantling it in an attempt to get a better method, no dice

To trying to twist it out by the piece that the filaments feed through, nice glass fragments gone airborne...

To people trying to pilers out the thing and setting glass zig-zagging in front of my face

To using every tool within hands reach to work on solving the problem, including a nutpick

To having to 'ride along' to the store to exchange it.

To getting a refund because they were out of them.

To having to change all of the light bulbs in remaining lamps to another brand of cheap 40 watt'ers because the others were to bright.


To it being a quarter after minute and still having nothing the fuck done, that was supposed to be finished two days ago.


To writing the blog post and wondering if I've got the engery to work on things tonight, let along the probability that one would have to out-pace a hacker to have a snowballs chance in hell of finishing the workload before Monday; switch over date to the 'next' project. Never mind the fact that I'm about ready to crash as far as being able to concentrate on digging into poorly written and undocumented amount of code. And we are talking > 6,000 lines of code with less then a 100 containing comments, mostly reminders who to send the bill for a catscan to when your done sorting out there crap and the network protocol used.


To thinking, maybe a great night of actually sleeping for once was ill-timed, or perfectly timed but that's a matter of opinion.


And my mothers got the nerve to say she's not been able to breath all day... When ~15 hours later I've not even been allowed to start on what I was supposed to have FINISHED long ago.


*shakes head*

Some times life here really pisses me off. I think, if I didn't love my family... I'd tell'em to go to hell and fuck themselves along the way, but unfortunately I love them... So I'm fucked lol.


I just keep marching forward, till I can't see the trail of foot steps behind me. And I wonder here as I keep on going like a jet costing on flumes, how much longer before things get done?



It really would be wonderful, if people could respect the fact that I might actually have something important to do, or that thins I need to get done might actually have value... Although I'd probably settle on not being treated like a sub-human or an ignoramus around here :\


I hope Sunday, will at least be a day where stuff can get done... If not, I think I'm sitting my ass down and refusing to lift a finger unless it involves

C_O_D_E