Today we had Observation and Marksmanship training, did a little bit of a lecture at the start to make sure that the recruits new what we were doing as far as observation techniques. And then we did a few drills, not to different from what you might find at the US Armies Sniper School.

I took the Sgts with me to set up our ‘improvised’ shooting range and had Cpl Sniper lead them through one at a time to shoot at the targets we setup.

At Blades great idea they also had to call Tango Spotted; Threat Neutralized with the V-Commands when seeing and finally hitting a target. After that they had to give an account of it, number of targets and of what types, rounds, occasionally even if they saw the SNCO’s or how many hits.

We hide varying numbers of stuff and in differing spots to keep it a bit balanced. We also shot at them to make it a bit harder ;-).

After that I set up a single target down range and started patrolling. While each shooter took a turn (rotated by Cpl Sniper) to come sneak accross the tarmac, find a suitable firing position (enforced by Sgts Blade & JB) to fire from as indicated. Hit the target and sneak backout without being seen by me. Few people actually pulled it off but several got close…

The hard part was convincing Blade and JB not to kill them at will lol. I try to make things hard during training but I still try to keep it fairly doable for the Rcts… Most of the times any way hehe. I remember one of my training exercises in SWAT4, the Element almost failed each one and lost in the majority of it. But the exercise had been carefully crafted to push them to the limit, those missions were designed to be close to impossible.

Afterwards we did a tango hunt on one of the better sniping maps we had available working in sniper-spotter teams.

I hope people enjoyed it but I think I might have bored one of our poor troopers half to death :. I figured Observation & Marksmanship would give people a chance to do things we don’t do often in training, must of our time is focused on CQB (Close Quarters Battle) after all.

One thing that was quite nice is we had some team work going for a change. I’m quite used to managing things solo, 95% of my other training sessions I didn’t have help with. I liked today though because I had Blade and JB helping (yes I tend to sort names by Alpha 8=) )and we were able to contribute both our ideas to making things a better training session.

I hadn’t originally planned on taking 3 hours to do it but the afternoon was cleared in advance. I try to keep things moving quickly as I can while having to communicate with multiple people (questions/synchronization/etc) in the midst of it all. Usually when I schedule training I try to clear as large a time block for it as I can, because I don’t like to cut people short.

I don’t expect others to do so though, I do it because I find it works best for me. And I try to set the time frames so it is well balanced for the people involved… With [SAS] we currently have members spread across the America, Belgium, Canada, England, Denmark, Germany, and Norway just to name those that come to memory ! That’s including like up to GMT-4 to GMT+2 time zones or worse.

That’s one reason I try to keep a quick pace, I also don’t like to bore or tire people to much with an all day thing. Although I think the best trainings I’ve done in the past usually were over when we had all passed out :

Hmm, I remember when I was a Recruit. I’d join TG#1 and hook up with Rasa and Leon and we would train. Then an NCO would pop in for a bit and train us, like Relish coming in for 30-45 minutes to start us on some Dynamic Training. Then he’d pop off and we’d keep going as our time zones permitted us to. Really, we probably spent more time training together then with the NCOs lool.

Now’re days, were are probably not much better on the organizational level but there is a much better NCO -> Rct connection. Most of the things I ever learned in this business [so to speak] came from a mentors guidence or from the experience of training on my own. I remember Rand and Wiz played a big part in the former and the latter makes up 90% of things I’ve learned since I was given my Recruit Tryout.

Darn, I’m getting old… Hmm I think Miles was the first one we used the new procedures on.

Musings of language and writings

Not much of any thing got done today but I have been able to concentrate a bit more on matters of a linguistic flavor.

One thing that I do like about trying to translate texts between German and English is the challenge of it. For the less obvious parts I can generally use a dictionary to split a sentence apart into its words and gather an approximate meaning from it’s context. And even if I do manage to figure it out in my head, to try and express my understanding of it in English adds another level to it. Oddly enough, some times it is easier to understand without trying to repeat in English [as if to explain to another] but I enjoy the effort of it to some extent.

I spent some time for my studies but I’m afraid that I’ll never make much headway towards proper comprehension *without* having a dictionary handy… The cost of not speaking a language fluently I suppose. But where I live, it is quite simply you speak either English or Spanish and if you know both, much the better.

Often when I am thinking or speaking, if I know how to express it in Deutsch my mind mentally sub-titles it with the sounds and words. An attempt to form word-associations (German word -> known object/thing) and keep the sounds from drifting to far out of memory.

The spelling is not to hard, although I’m generally paranoid about it. With English, even if I can’t spell the word to save my life I can generally approximate either the spelling or the sound well enough — as long as I’m not using a pencil or pen xD.

The difference is, I have enough grasp of English to fudge the spellings without [unintentionally] changing the meanings. Any way you slice it, short of the Bart Simpson method I doubt I’ll ever fully be able to express myself verbally in German… In time perhaps I will be able to do so sufficiently in written form.

Although, I admit it is probably a darn good thing that beyond a keyboard I don’t write things in German. With my ‘chicken scratch’ I don’t think I would ever recover from it laugh out loud. A mild curse of using a keyboard at a typing pace which matches how quickly I can think words; the slow-downs are caused my brain keeping pace with my fingers, rarely if ever the other way around… When you start trying to use a pen/pencil to write things afther that it can get very messy. In my case, often around pauses caused by my hands falling to far out of sync with my mind or smudgification around typographical errors while I remember pens lack both the ability to insert words between words the way text editors can and there is no backspace key, only white-out ^_^

Is it a wonder almost all of my documents are written in Vim? I can’t read my handwriting two weeks later if it’s more then a few bits. The sad thing, before 40-60+ hours a week behind a keyboard became a norm for me, I used to have better handwriting then most people I’ve met but twice as bad spelling hahaha !!!

And even with how dilapidated my hand writing has become through computing, it is still clearer and more concise then my teachers handwritting :, hey at least mine can be legible if I paid attention <_<.

Finally a good day of sort.

slept in till 1400, nice considering the rest of the weekdays I have/will be getting up early :

Been toying around with Getopt::Long in Perl for a little ‘toy’ that I’ve had on the brain, worked on it a bit in my spare time. I’m used to working with tar, even gzip/bzip2 directly but occasionally have to work with zip/rar files and I find that I always need to look up the switches to use. So I was thinking about a script that would apply a uniform usage-style accross a varied set of such programs (tar inspired of course). I thought about using pax as a standard program, because for most stuff that I use I’ll generally leave it at TApe aRchives and skip the compression but I find generally speaking that using the pax utility is *annoying compared to the alternatives (when they work of course). KDE has an archiver program called Ark but I find it works poorly with /large/ archive files several hundred megs thick and there is no command line utility that I know of that has built in support for every format and runs both on NT and *Nix, the best I found in a short look require the Bourne Again Shell.

Enjoyed a few rounds on TG#1 with Jonsi and Rct Spawn. It’s good to get back into action again, I havn’t really played or trained much this week because of work. And I’m really looking forward to doing a training session on observation and marksmanship skills this weekend. I also managed to pop in to TG#3 and join Duke, Dallers, Chester, and the gang for a few before the DSL dropped out as usual.

I really wish I could tell Bellsouth to go suck an egg.

I think if I can find a day to do it and some time to print out the Gez Admin Mods command reference I might be able to setup a quick live op. I remember we have a hunt missing MI5 Programmer and a Russian Terrorist Cell on our Live Operations board that are still waiting for the green light. You know, the government should pay me for ideas lol, some of the live ops I concoct for our training are first rate !

For tonight, hmm on the basis of what hits me first. I need to get some stuff done that I told Gerard I’d take care of him on the documentation front. There’s the Perl script I’ve been toying with, and the age old issue of organizing my music collection +S

Every time I organize the damn thing I break my playlists, every time I update my playlists I usually spend more time either rebuilding them or s/search/replace/’in’g the entries instead of listing. What I really think would be best is if I just find or write a quick tag editor, use that to organize stuff. Then combine a script and a library to organize files according to the tags and regenerate my playlists when ever it is run.

I’m also thinking about switching to either MPlayer or VLC as a dedicated omni-purpose media player. The advantage of course being that they both run on any OS I’m likely to need them and can play darn near any thing ;-).

The only problem is I am used to Amaroks collection browser and playlist interface lol. I don’t really need much more then the basic features but aside from a handful (xmms/winamp, mplayer, vlc, amarok, kaffine) I’ve never really found a single Media Player that I am universally happy with but I suppose that is just the natural. One thing that I do like very much about MPlayer is there is a command line interface (very powerful one at that) and you can basically choose from any of several GUI Frontends, which I do really prefer to use for video operations but to be honest I’ve generally had better luck with VLC for DVD playback.

Hopefully work will get done before I loose concentration…

Egg on my face

Oh this is a shocker!

I noticed I had one of my quick bookmarks in konqueror that I never finished reading, some thing on command line arguments — a very poor name for a bookmark generally speaking.

So I opened it in another tab and parsed it at my usual rapid pace. Gradually I started lookinf around at other stuff on the site, intrigued by some of the other things I found, even things noted about the design of termcap/terminfo, fetchmail, gcc, etc and decisions involved with the problems the developers had to solve. About a half an hour and almost 3 chapters later and figuring it was probably some (good) book gifted to the WWW by a universities CS department I finally clicked the ‘home’ button and felt like popping myself in the head when I realized what I had been reading a mirror of:

The Art of Unix Programming

I remember I was reading it last year but I never had time to finish it. Hmm, I wonder where I left off? It is a very fine book but unfortunately not one I was able to inhale in my spare time :. I might be a strange person but when I find a good book, it usually makes a transition from eye to brain at a rate of 50-120 pages a day xD, time and energy permitting of course.

It’s a book I’d fully recommend for any one interested in problem solving or engineering’ish thinking.

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

The nights ramble

Spent some time to night to journal my thought, a brain dump if you will. To place my mind at a computational ease and to execute a back trace upon which to unravel the stack until some sense be made clear.

If I post it here for future reference, it will probably be fed through a caeser cipher with a rotation only those close to me could guess without brute forcing, just enough technological gain over LJ’s privacy controls to out-fox those who would read over my shoulder. I have a little less distinction then most others do between the public, personal, and private separation of things in so far as my life is largely an open book while I remain a skillful one at holding the secrets I have been entrusted within my life time and maintaining operational security for the things that I need secured. Wile yet remaining quite open about myself, as I have almost nothing to hide.

So the issue of posting it with what ever settings is mostly inrelivent because any harm that could be caused by allowing it to be read, would be by those that the task of decoding would be beyond their ability while no security measure available to avoid such a viewing regardless of posting options if it was not to be encoded.

And the closest of my friends generally know of what it would contain, although few among the living know from what rotations I would chose when selecting the key to a Caeser Cipher.

And I look forward to tomorrow, because I will hopefully have the time to play with upgrading the test machine in ways most definitely not supposed or intended by the systems designers hehe.

For now, I need some sleep and I suppose I can forget about the ~/brain-dump.backtrace file for now. I suspect odds are in the future I will add more to it,

 wc brain-dump.backtrace
# lines words bytes file
225 2344 12081 brain-dump.backtrace

So close, yet so farfetched.

I’ve begun implementing Style 1 for NPM’s user interface but it is much less functional then style 2. I think style 1 is a lot more conventional, it’s based on an idea I had a long time ago. After I installed Qt3 bindings for Ruby I thought about writing a ports front end with that kind of layout.

I personally like style 2, it has a ‘orthodox’ file manager like style to it, since I’ve never gotten to use such a file manager a lot that might be why I like it lool. I stil need to write the loading code but that won’t be difficult in python.

It is however the most obvious thing in the world to me that as soon as my family is up and about there is not even a snow balls chance in hell of getting further work done.

Which as this case proves, means it’s time to kill some time until bed time… So I can get back to coding in piece and start work on my PC-BSD test machine.

Yet that dream still naggs at my mind….

I figure for today, I can probably work on updating my PC-BSD test machine to using FreeBSD 7, for updating the ports that will likely have to wait for later. With luck I can leave it running over night.

I want to spend some time working on the user-interface for NPM, I know what I want but I am not sure what value it will have. Essentially my idea is for the user to select from several implementations of the main window including the ability to use custom made modules for it.

I also want to implement an option by which each module is checked against a given list of checksums, if the module fails the checksum it won’t be allowed to load. With this method one could theroectically restrict any non-NPM supplied window layouts from being loaded but it’s probably a useless feature but one I’d like to tinker with just for the fun of it lol.

I also know if I don’t get a few things out of my head I’m going to pop.. Maybe coding will help :.

Whistling FreeBSD 7

Hehe, as a friend requested a screen shot of when I got FreeBSD 7 up:

[click to enlarge]
Free Image Hosting at www.ImageShack.us

Well actually it is about an hour and a half to two hours after but I dunno how to take a screen shot of FreeBSDs system console without image magic, then again I could’ve always used the camera… But no one wants to stare at the command prompt but me <_<.

FreeBSD 7.0 booted incredibly fast for my exptation, even off the install CD I think it out paced PC-BSD 1.4 (which uses FreeBSD 6.3-stuff). As always I set a few of the install options before hand, low output while installing packages, debugging console on etc. Normally when I setup a FreeBSD box I do a custom installation and exact maximum control over what goes in. For this, I just chose to use the canned X-Kern-Developer installation set which is essentially FreeBSD + Kernel Sources + Xorg which is what I wanted, I’m not expecting to need any sources other then the kernels.

For the optional packages I picked out a bare minimal to get me started, zsh for my user account -> I can use any of the standard shells easy enough but I ‘like’ the zsh hehe. Also portupgrade to ease any installation issues and a desktop environment, I chose to go the gnome2 meta-route.

The install went very fast as usual and the whole time was basically spent installing X and associated crap. It did however bomb out on LibIDL not being found on disk 2 fragging the gnome install so it would seem and barfing at the ruby package on the disk set. I think this is rather /strange/ for having downloaded all 3 ISO’s to avoid things like that… But hey, I don’t mind. Usually when I install FreeBSD I only take off the CD-ROM’s what I’ll need to get the machine connected to the internet, usually nothing as far as whats in ports goes.

However despite the lack of a desktop and portupgrade utility I booted into an other wise fully functional system. Mounted my existing install on /mnt and merged my network config into the FreeBSD 7.0-RELEASE one and copied over the xorg.conf file, volia we have working internet and X.Org ! No need to even load kernel modules, although sound didn’t work because I never added the line to /boot/loader.conf for it: no problem on a test install. Whether or not sysinstall has gained the ability to handle WPA Encryption over the years I didn’t bother because setting up my well supported PCMCIA card is a breeze as long as you can use a text editor.

I then set the gdm_enable variable in /etc/rc.conf then I had to change the site to fetch packages from because ftp.FreeBSD.org was still shouting about to many connected users so I set PACKAGEROOT to ftp://ftp13.us.FreeBSD.org/ in roots .login file, logged in & out and proceeded to pkg_add portupgrade and gnome2.

That took about an hour !!!! A little toying with pkg_info and wc, and I would say that gnome depends on about 365+ things… Glad I got a working X.Org install off the CD-ROM… It took ****for freaking ever**** to download all of the packages for gnome but one console command and a single line added to the config file and it just /works/ out of the box after a reboot, although of course I already had the xorg.conf file hehe.

I’m a KDE user by taste not a Gnome one but I decided to install Gnome and while I don’t care much for Gnome I am glad to see that aside from the long wait that installing and setting up Gnome on FreeBSD is as painless as it gets thanks to the hard work of those maintaining the port. Now, customizing Gnome to do your evil bidding is some times problematic hehe. I only like two things about Gnome, that it looks nice (usually) and that it gets well the **** out of your way.

If that is worth the horrendous inefficient user interface they have for file open/save dialogs I dunno… But KDE is the best in that regard that I’ve ever seen.

There was just one small problem, since the FreeBSD 7.0-RELEASE install was going into a partition previously housing a linux distro I was testing a few months ago, it also took with it the GRUB configuration as was planned. So I had my GAG install CD ready before I started with FreeBSD because I knew I was going to be removing the boot loader I was using for PC-BSD (GRUB).

The problem, 2 OSes setup for booting in GAG but only the first would boot (FreeBSD 7). I even used the install disk to overwrite GAG with BSDs normal boot manager but no luck, it wouldn’t boot ad0s2a ! When ever I chose to boot off the second partition in GAG it would boot off the first, FreeBSDs boot manager would just beep at the second partition.

There is always more then one way to screw with a boot procedure, man I love thinking ^_^. Loaded up my trusty never wanta leave home without it Knoppix Linux LiveCD and used QTParted to unmark ad0s1a (FreeBSD 7) as active and to make extra sure I did the same to ad0s2a (PC-BSD 1.4) and set ad0s2a active again before commiting my changes.

Reboot and reinstall of GAG, PC-BSD boots fine and so does FreeBSD !

I know you’re only supposed to have one partition marked active and GOD and IBM only know what could happen if more then one ended up set active :. I figured that either GAG had to be goofing it up or there was some thing slagged. Sure enough QTParted told me both partitions were marked active..

I ain’t gonna ask how, not even if it is possible, so long as nothing explodes and my laptop works fully I am a happy spider hehe.

In my personal opinion, aside from my booting mixup I think any one able to read & understand English (I’ve never tried installing in another language) could get a working desktop in less then 2 hours if they sought after the suitable level of knowledge to configure there systems internet connection, for most wired users that is a cake walk during the install. And to setup an X.Org config file which is not a very hard task, when the proper values work that is lol.

PC-BSD on the other hand, 30-45 minutes time spent installing (mostly installing the files while you relax) and you have a fully functional KDE Desktop. That’s why I have PC-BSD on my laptop, because other wise I would have to install KDE manually… in which case I would probably skip it and just install amarok and friends 😉

With the increased performance in FreeBSD 7, I can’t wait to see PC-BSD 2.0 when they finally switch over. It should sure as heck boot faster for them then Ubuntu on a first date 😉

One thing I personally find weird, when I do have a problem 90% of the time if it makes sense I can figure out the problem eventually. The other 10% of the time, what makes sense doesn’t work 8=) so the only solution is to ‘fsck with it a bit.