Day dreams

Recently, I’ve been drueling a bit at the T-Mobile G1, if I had the money to spare, it would really be worth it, in it’s own way lol. Especially the fun of bending it to the functionality I require from such a gizmo, although honestly; I don’t care much for such mobile devices. In America, we’re stuck in a country where it pays more to rehash last years crap then be innovative; just look at Microsofts last 30 years of products.

I doubt, if I’ll ever meet a gizomo smaller then a laptop but bigger then a pen, that I won’t consider unneccessarily “downgraded”, short of importing an old Zaurus PDA or building something myself. Heh, if I had the kind of cash Mark Shuttleworth has, I would really have some fun :-). Enough cash to cover the educational-in-betweens, and the cash to see just what is possible with modern technology…

And then sale it and go broke in the process of competing with same ol’craps that tries to set the users expectations, not go for the gold.

Days thoughts, thus far

Managed to get to bed early last night, was only up to around 0330R haha. Dreams were a mixture, of pleasant and unpleasant; the former parts still being on my mind. I also woke up to some good news: an unexpected day off work! Which is good, because tomorrow will likely be a living hell…. as usual.

I’m tired, and it’s only 1736R. Really, I think the dog is the smart one lol, Willows been sleeping all day >_<. Last night, I posted on Daemon Forums asking for suggestions on a lightweight web browser to replace Firefox3. I've used Firefox for a really, really, really long time; but 1.5.x was the best hehe. I found Fx2 disappointing in terms of usability, and Fx3 has been totally useless for me on Windows, and a major pain in the ass under FreeBSD. I also went through Links 2.2, and tested it thoroughly; I could live without CSS support, if only it supported tabbed browsing in the GUI. Links is really a very nice browser on the user side, it also boats great speed and highly legible display. Today, I did some heavy testing on the FreeBSD and Linux builds of Opera 9.63. For a long time, I used Opera, first in the 8.5x and later into the early 9.x before switching defaults. Dillo2, Arora, and Midori are next on my hit list; but it would be awesome to adapt Opera as my standard browser again. I'm a person that very much likes to use his own personal environment, rather then someone else’s can of spam.

I also enjoy software that are both portable, easy to manage, and don’t make you unlearn things just for changing Operating Systems. One of my big beefs with Firefox for example, Unix edit->preferences Vs Windows tools->preferences. It adapts to what the user would expect, which is honourable for such a program I guess, but pisses me off ^_^.

Opera is one of the better proprietary products I’ve encountered, and one of my favorite web browsers. Unlike Internet Explorer and Mozilla Firefox, there is no need to extend it in order to get the most bang for ya buck either 😉

I really hate to tell people how to do their job

I really hate to tell people how to do their job, especially when they are the ones who should be getting paid to do it; but sometimes I can’t help but wonder, if some people have ever heard of the words race condition or predictability, being used in the same sentence as exploit or security vulnerability?

Getting playful

I’ve been experimenting with extracting PC-BSD PBI on FreeBSD; mainly because I would like to do a little postmortem analysis on a couple of PBI’s, to see if the “Officially sanctioned” PBI Developers are still following the rules.

The process is actually a lot simpler then I thought it would be, the only problem is doing it in a chroot lol. Already more then 200MB in files in /tmp/chroot, and I’ve found that PBI must “assume” the presence of a lot of shit, because it will segfault if even simple things like awk or whoami are missing, let along bigger things 8=), what ever happened to error checking? But anyway, it’s a fairly easy thing to sort out, even with having to take a fair number of libraries and programs into the chroot, in order to fool the thing into -extract’ing. So far, I’ve only hit one snag:

/home/0/.PBItmp/.pbistart: ./PBI: not found

which I have not figured out yet.

I think I’ve also found the origin of one of the more stupid elements of the PBC Sh API, and it seems to reflect the PBI sub systems source, judging by what I see in PC-BSDs Subversion >_>. It also reminds me, that some people seem to have never heard of a symbolic constant in their entire lives…. which also explains a few other things about the PBI Creation process and PC-BSD in general. Since PC-BSD, unlike a *real* BSD system, does not believe in documenting anything. I’ve had to go straight to the (also undocumented) source for answers, it also temps me to write a detailed review and commentary – but I’ll keep my mouth shut for now. The number of people they will probably buttfuck in the long run is their own concern, I’ve already left. I’m not really interested in shifting through several thousand lines of intermixed Bourne, Bourne Again, and C++ code just to audit a few PBI; let some other poor schlep, eh Good Samaritan deal with this schlockware.

If my post doesn’t make it obvious by now, the reasons why I was conducting the tests within a chroot environment, rather then sparing myself the trouble -> I wouldn’t let the PC-BSD developers, or most peoples PBI touch one of my systems with a ten-thousand foot cattle prod, and I don’t have time for setting up a jail. That is the kind of feelings I’ve got for the project, after using PC-BSD for years; now OpenBSD, FreeBSD, and NetBSD on the other hand, them I trust… and have seen the resulting work to warrant it lol.

– A strict son of a bitch.

Score: Spidey 1, Windows 0;

0/ Registry fixed
1/ Paths fixed
2/ Browser profile fixed
3/ UserProfile changed
4/ Permissions fixed
5/ Twisted Windows arm into obedience
6/ Shim wedged into place
7/ Look how many issues get fixed, if you just kick Windows in the teeth >_>

What a morning, lol.

Well, it’s been on my list for awhile, but I finally got around to posting it on the PC-BSD forum. Poll: Common problem/questions FAQ for each release branch. It was one of the things on my list of project short comings, that reminds me… I need to add more >_>

One reason why I use FreeBSD and OpenBSD on my machines, they do a professional job of things lol. Maybe it’s the nature of projects like PC-BSD and Ubuntu, to pay less attention to things then the systems they’ve ripped use Both FreeBSD and Debian do a much better job them PC-BSD and Ubuntu at many things, hell even Slackware and Windows does better lol.

As to the thread I started on forums.pcbsd.org, I also sent out a PM to 20~30 people in the forum regular, semi-regular, and past regular visitor range, asking for their inputs. With a little luck, between anyone that actually reads their PMs and our current crowd, that’ll help contribute feedback in the thread, to prove I’m not just talking out my ass…

Hmm, I was dreaming about being involved in a proper SAS assault this morning, nothing like that to get ya blood pumping before work lol. Managed to survive work, cut my other thumb (for korn skae!), got off work late and missed a tea appointment :, got dragged out grocery shopping *again*,m and I think my mothers finally finished spending all forms of savings lol; she also owes me money >_>.

I’m like the only one in my family that knows how to save money lol. Not looking forward to the rest of th eweek that much, but I’ll be off much of next week; I am really not looking forward to Christmas lol.

On a lighter note, I’ve been promoted from Moderator to an Administrator on forums.pcbsd.org along with jnixon. Kris Moore and James (jnixon) have been improving the spam protection, much to the relief of forum regulars; and there is now the big red button I’ve been longing for in dealing with spammers! With luck, jnixon will keep some activity on forum matters, so I won’t be the only active admin, which probably wouldn’t much nicer a task then being the only active moderator was lol. Admin on the forum, is a bit of a closer association then I want with the PC-BSD project…. but I also don’t want to see the forums go to pot, so I ain’t arguing. I personally prefer newsgroups (USENET) for such matters, but most PC-BSD users seem to hit the forums when they need help. Hmm, that reminds me, I need a new news reader lol.

Hmm… maybe, this means we can finally get a proper (sticky) F.A.Q. and Common Issues thread going when new releases come out; although me ablibing it myself, wasn’t my idea of how to fix the problem lol.

When asked if this information was helpful by Microsoft:

NO

0.) Change windows to actually let the user see the stop error when it happens

1.) Provide a list of explanations for the errors that occur

In my case, looks like an DRIVER_IRQL _NOT_LESS_OR_EQUAL problem and a null pointer dereference. [Censored] is more helpful then your website ever is…. Now to go off and test my memory and screw with the pagefile.

TexLive 2008 on FreeBSD

First download the ISO image, and compare the checksums (both md and sha based on avail); alternatively, buy the sucker on DVD :-).

Since I can’t afford a yearly DVD, and don’t have a spare disk; I need to unpack the ISO and mount it directly. If you bought the disk, mount it as normal. For me, this procedure required:

dixie# lzma d texlive2008-20080822.iso.lzma texlive2008-20080822.iso.lzma


LZMA 4.60 beta Copyright (c) 1999-2008 Igor Pavlov 2008-08-19

dixie# mdconfig -a -v -t vnode -u 10 -f texlive2008-20080822.iso


dixie# mount -t cd9660 /dev/md10 /mnt


dixie# ls /mnt


.mkisofsrc index.html source

LICENSE.CTAN install-tl support

LICENSE.TL install-tl.bat texmf

README install-tl.bat.manifest texmf-dist

README.usergroups readme-html.dir texmf-doc

autorun.inf readme-txt.dir tl-portable

bin release-texlive.txt tl-portable.bat

doc.html rr_moved tlpkg

Now that the ISO is ready op, we can start the installation. TexLive uses a nice Perl based installer, if you’ve got the necessary TK GUI modules for Perl installed, you can use a a -gui switch; me, I’m fine with the perl script.

Obviously, you will need lang/perl5 installed, along with the necessary dependencies for programs shipped in TeXLive. I don’t know what release of FreeBSD i386, the binaries in TexLive 2007 were compiled against, but 2008 used FreeBSD 7:

Terry@dixie$ file /usr/local/texlive/2007/bin/i386-freebsd/pdftex          0:11
/usr/local/texlive/2007/bin/i386-freebsd/pdftex: ELF 32-bit LSB executable, Intel 80386,
version 1 (FreeBSD), dynamically linked (uses shared libs), stripped
Terry@dixie$ file /usr/local/texlive/2008/bin/i386-freebsd/pdftex 0:13
/usr/local/texlive/2008/bin/i386-freebsd/pdftex: ELF 32-bit LSB executable, Intel 80386,
version 1 (FreeBSD), for FreeBSD 7.0 (700055), dynamically linked (uses shared libs),
FreeBSD-style, stripped
Terry@dixie$ 0:13

Several of the programs used in TexLive are sh/cmd wrappers, but once installed, you can get a general idea of dependencies with the following command:

Terry@dixie$ ldd /usr/local/texlive/2008/bin/i386-freebsd/* 2>- | pgr      0:17

N.B. 2>- means to close the standard error stream, what you need to type, may vary depending on shell; 2>- works on Bourne style shells (ash/dash, bash, ksh, zsh). In the case of shell script wrappers, you’ll need to open them, and manually parse to find anything hidden; most people don’t need to do this.

For the most part, the depends are on the systems C and C++ libraries (libc, libm, libstdc++), a few require other things, such as ncurses, zlib, the new libthr, and gcc related stuff – all this comes with FreeBSD 7. Some programs require X-related libraries (such as MetaFont), fontconfig, and freetype. If you have a working install of X.Org 7.3, you will probably be fine, while disk space holds out lol. The need for handling #!/bin/sh and ‘#!/usr/bin/env perl’ are of course a prerequisite. On my X based system, everything is ready. Checking all this out, shouldn’t be necessary, and any “missing” perl modules or libraries can be installed later: when required.

Anyway, let’s get to actually installing this sucker:

dixie# cd /mnt; ./install-tl


Platform: i386-freebsd => 'Intel x86 with FreeBSD'

Distribution: live (uncompressed)

Directory for temporary files: '/tmp'

Installer directory: '.'

Loading /mnt/tlpkg/texlive.tlpdb

======================> TeX Live installation procedure <=====================



=======> Note: Letters/digits in indicate menu items <=======

=======> for commands or configurable options <=======



Detected platform: Intel x86 with FreeBSD



<B> binary systems: 1 out of 15



<S> Installation scheme (scheme-full)

83 collections out of 84, disk space required: 1720 MB



Customizing installation scheme:

<C> standard collections

<L> language collections



<D> directories:

TEXDIR (the main TeX directory):

/usr/local/texlive/2008

TEXMFLOCAL (directory for site-wide local files):

/usr/local/texlive/texmf-local

TEXMFSYSVAR (directory for variable and automatically generated data):

/usr/local/texlive/2008/texmf-var

TEXMFSYSCONFIG (directory for local config):

/usr/local/texlive/2008/texmf-config

TEXMFHOME (directory for user-specific files):

~/texmf



<O> options:

[ ] use letter size instead of A4 by default

[X] create all format files

[X] install macro/font doc tree

[X] install macro/font source tree

[ ] create symlinks in standard directories



<V> set up for running from DVD



Other actions:

<I> start installation to hard disk

<H> help

<Q> quit



Enter command: i


Installing: [name of package]
.... repeated for each one, have fun waiting on z
running post install action for bin-texdoc

running post install action for bin-texlive

running post install action for texlive-cz

running post install action for texlive-de

running post install action for texlive-en

running post install action for texlive-fr

running post install action for texlive-pl

running post install action for texlive-ru

running post install action for texlive-zh-cn

running post install action for texlive.infra

running post install action for xetex

running mktexlsr /usr/local/texlive/2008/texmf-dist /usr/local/texlive/2008/texmf

mktexlsr: Updating /usr/local/texlive/2008/texmf-dist/ls-R...

mktexlsr: Updating /usr/local/texlive/2008/texmf/ls-R...

mktexlsr: Done.

writing fmtutil.cnf data to /usr/local/texlive/2008/texmf-var/web2c/fmtutil.cnf

writing updmap.cfg to /usr/local/texlive/2008/texmf-var/web2c/updmap.cfg

writing language.dat data to /usr/local/texlive/2008/texmf-var/tex/generic/config/language.dat

writing language.def data to /usr/local/texlive/2008/texmf-var/tex/generic/config/language.def

running mktexlsr /usr/local/texlive/2008/texmf-var

mktexlsr: Updating /usr/local/texlive/2008/texmf-var/ls-R...

mktexlsr: Done.

running updmap-sys... done

re-running mktexlsr /usr/local/texlive/2008/texmf-var

mktexlsr: Updating /usr/local/texlive/2008/texmf-var/ls-R...

mktexlsr: Done.

pre-generating all format files (fmtutil-sys --all), be patient...done



See

/usr/local/texlive/2008/index.html

for links to documentation. The TeX Live web site (http://tug.org/texlive/)

contains any updates and corrections.



TeX Live is a joint project of the TeX user groups around the world;

please consider supporting it by joining the group best for you. The

list of groups is available on the web at http://tug.org/usergroups.html.



Add /usr/local/texlive/2008/texmf/doc/man to MANPATH.

Add /usr/local/texlive/2008/texmf/doc/info to INFOPATH.

Most importantly, add /usr/local/texlive/2008/bin/i386-freebsd

to your PATH for current and future sessions.



Welcome to TeX Live!



./install-tl: done.

Logfile: /usr/local/texlive/2008/install-tl.log

After that completes, be it 10 minutes later or 10 hours, depending on your hardware…. If desired, one can customize the installation process. If the command prompt scares you, use install-tl -gui instead. You probably will want to setup your installation afterwords, the tlmgr program will be of use, and supports a -gui option I think. For me, all I do is set the default paper type, and update my environment so I can use TeXLive binaries, manuals, and info pages.

dixie# setenv PATH "/usr/local/texlive/2008/bin/i386-freebsd/:$PATH"
dixie# /usr/local/texlive/2008/bin/i386-freebsd/tlmgr paper a4


N.B. the default shell for root on FreeBSD is (t)csh. My interactive shells always sources ~/.site_shrc at the end of it’s setup, so this is where I set my environment, others would probably want ~/.bashrc or other shell specific file:

# TeX Live stuff
PATH="/usr/local/texlive/2008/bin/i386-freebsd:$PATH:/usr/games:/usr/local/bin:/usr/local/sbin:${HOME}/sh:${HOME}/bin"; export PATH
MANPATH="/usr/local/texlive/2008/texmf/doc/man:/usr/share/man:/usr/local/man:$MANPATH"; export MANPATH
INFOPATH="/usr/local/texlive/2008/texmf/doc/info:/usr/share/info:/usr/local/info:$INFOPATH"; export INFOPATH

and resource the file. As root, one can also add the manuals from TexLive to /etc/manpath.conf (read the comments in it), which will update the man commands search path, Updates to the environment can also be done to the various files in your skel system if desired, and mail existing users about the update. I’m not aware if there is a file to configure the info commands search path, probably is, but I don’t use info pages that often ^_^. I require each user account to adjust their own environment before using TexLive, which suits me fine. Once TexLive 2008 is ready op, and one is satisfied, /usr/local/texlive/2007 can be rm -rf’d, recovering around 1.1GB, depending on what you had installed. Also, my 2008 install is ~1.7GB. I generally opt-in to the defaults, but I expect many people would want to setup a more localized-only set of files. Now to clean up:

dixie# umount /mnt
dixie# mdconfig -d -u 10

Happy trails

major sigh of relief

The word that comes to my mind, is one my grandfather would probably understand, but I can’t actually spell it lol. I guess in English, it would be along the lines of caress her gently.

I’m that happy to have my laptop working again lol.

I’m sitting on the bed, comfortably :-). Dixie is on the chestboard, on my lap, and I’m typing away without any impedance — it’s back to getting things done xD