the nights antics

I was rather happy to see that SourceForges SVN services were back up to a decent speed, other wise I probably would’ve gone to bed instead of getting back to work :

I managed to finish the work on the project file, I had inhaled the qmake manual before dinner ;-). I knew exactly what I wanted, test works all been done in a ‘one lump sum’ directory… Which is the style that I really hate, to much crap to visually grep through when looking for parts of the project.

The build format that I desire is basically like:

Makefile -> top level, non recursive make
doc/ -> documentation files
dist/ -> files ready to install (all done)
obj/ -> object files and crap from moc / building docs, etc
src/ -> source code files
src/module/ -> source code files for module

Which is basically what I’ve setup, maybe I’m just spoiled by the layout of FreeBSDs source tree and build system… hehe.

I was quite happy to find that as usual, Qt makes life easier not harder xD. It only took the fine (if short) manual and a little bit of trial time to get more or less what I wanted out of it, all the better! Without having to worry about a recursive trail of makefiles. When it comes to recursive makes, I have no problem with the concept, I just don’t care much for it.

I figured that if I couldn’t get what I wanted out of qmakes project files that I would have to do things manually. I don’t really have a problem with hand crafting makefiles but I really prefer not to have to maintain them, let along risk leaving something behind that needs a Bachelors of GNU Makeology to understand fully.

I did manage to get one module (essentially) imported into the SVN tonight and I’ve almost got another ready to go in. But before I commit it, I want to get the things refresh() slot sorted out. To do that, I just need to clear the m/v I guess but that can wait until tomorrow’ish.

As I often have said, laptops make poor pillows !

There’s about 5 more modules to import, as soon as they are adapted and ready to roll that is. Right now I’m in advantageous territory code wise but as usually, my working environment is, uhh… “Hostile” to say the least to productivity.

Maybe if anyone in this fuckin’ family knew an ounce of computers, let along programming, the bastards would let me work in peace rather then in pieces !!!!!!!

Source Forge SVN slow !!!

Bah humbug !!!

Tried to checkout a working copy of Neo Ports Manager over SVN, that took twenty minutes or so… Created an independent branch and the starting directory structure for the work I need to get imported, plus copied a few files from the trunk that I also want there.

That took at least 10 minutes to commit..

Looking on Source Forge, I can see that two other people have filed about the SVN services being so dang gum slow.

Looks like it might be awhile before I finally get my latest stuff under revision control +S.

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.

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.

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

Hmm, I’m rather getting interested in giving some thign ‘odd’ a go.

Installing FreeBSD 7 on the test machine, then converting it into a fully functional PC-BSD system.

It’s doable, just takes time and effort, and well, I like to tinker with programs from time to time ^_^.

Yes, I’m that bored trying to pass time between /actually/ being able to work lol.

I need a vacation…

Dails efforts…

Finally a productive day… Because every one else but me slept through most of the afternoon ^_^

I finished adding a summary mode to my script, later I want to put in user agent exclusions among other things; so it can be tuned to more automated traffic hehe.

I also managed to install Ubuntu 8.04 on SAL1600 today, I’m very happy to say that the boot time is a heck of a lot better then 6.06 was when I inertially tested the distribution. The installer is more complex then PC-BSDs but still quite simple, last time I needed to use an ‘alternate’ install CD with a hacked debian installer in order to get GRUB in Ubuntu’s / rather then screwing with GAG. This time, I only had to scratch my head enough to choose the ‘advanced’ button before commiting to the format & install — and select the location to install GRUB to hehe 😉

Got done in about a half hour, counting setting up a few packages (nVidia drivers, g++, JDK, zsh, etc) and I can finish the rest later. I’m not very partial to Ubuntu although I do greatly like the human theme for Gnome they use. While both FreeBSD 6.x and Linux 2.6.x are fully able to support my desktops hardware: FreeBSD works perfectly out of the box other then sound, which is just a driver away. Most Linux distro on the other hand, need me to screw with things. Debian Sarge for example tried to convice me I had no hard drive controller or network interface, for which NetBSD agreed and Slackware concurred about the NIC ^_^.

I want to test CrossOver Games to see if I could get Rvs or SWAT4:TSS working in it… There is a trial for PC-BSD but the Linux version is supposed to work better and is officially supported. I’ve heard that WINE has improved greatly on FreeBSD (and PC-BSD 1.5.x includes patches to aid it afaik). Even with the gripes of WINE working much better on Linux then FreeBSD, I only tested it on FreeBSD two years ago and threw it out as useless for even light duty gaming.

I’d really prefer to be running Slackware or Gentoo if I had to run a GNU/Linux distro off my desktop… But I don’t have time to muck about just for testing this thing, hence the Ubuntu installation lol. I expect it will fail horribly and I’m not expecting much more then being able to get RvS installed but I’ll give it a go. And to be frank, with how poorly done Rvs and SWAT4 are from a software perspective… I’m really supprised people can run then on Vista, hell we have to side-step problems the games have with modern graphics cards (and SWAT4:TSS ain’t that fucking old!)

To be honest, I think I would have to create my own “Linux From Scratch” system to ever truly be happy with a Linux distro, that or just install OpenBSD instead and be perfectly happy hehe xD. But, in terms of having to run a specific OS, I’d be much more happy with GNU/Linux then I am with Windows XP. The only reason I’ve never removed WinXP from my desktop is I need one game box, you could say… If I wasn’t in [SAS] then I would be totally and 100% free of Windows for the rest of my days. But I love my team to damn much to leave, even if it means having to keep one working copy of Windows around.

The thing that really pisses me off, I can run FreeBSD and Linux on my desktop and it is rock solid for all I need it to do (y). Running Windows XP on the same machine, I only *wish* I could say the same hahaha. Between the nVidia drivers, Direct X 9, and Creative Labs + Raven Shield not playing nicely together it loves to get blue screens of death under XP.

At least when a machine has problems with running BSD or Linux, you generally get what you paid for but when Windows has problems, it blows because you got charged by every bastard along the way and his dog too!

urxvt & utf-8

Found an interesting problemo tonight with using vim in rxvt-unicode. Since the German umlauts and the old double-S (ä ö ü ß) are a bit tricky for me to make without a copy/pasting then where needed I usually use the alternative (ue oe ue ss) where possible. Since vim 7 has spell checking, I’ve got spelllang set to handle US and British english plus German in the spell checker. Which really works very nice because my spelling is a bit of a hodge podge for those ‘differences’ in English spelling.

While I was working on the translation last night, I employed both Vims spell checker and a translator program to help me with the grammer. Vims spell checker has the lovely ability of being able to correct things, taking the form I can easily get out of a US QWERTY board and replacing with the proper characters (ä ö ü ß), I knew there was some thing I loved about vim xD

The only thing is, trying to open the file again with vim caused it to display weird, all of the umlauts replaced with strange characters. I checked Vims idea of the files encoding and it was UTF-8, just like my system locale settings should be saying.

Yet, (n)vi, cat, and other utilities were showing them fine. Setting the terminal encoding in vim or launching it with LANG=de_DE.ISO8859-1 got them to display properly but still senseless :. My ~/.zshrc sets LANG to en_US.UTF-8, why nothing seemed to work right i dunno. Forcing urxvt (rxvt-unicode) to run with the C locale set (LC_CTYPE=”en_US.UTF-8″) got it working fine.

I’m not familiar with that end of C++ but I wouldn’t be surprised if it relied on the same setlocale() routine as C apps tend to. The FreeBSD handbook said to set LANG and MM_CHARSET and not LC_* variables for the environment. I’ve fixed it so the system kicks urxvt off with the right locale settings so the problem is fixed.

still a little odd imho lol

days rumble

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

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

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

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

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

*passes out*