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?
Computers
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 inindicate 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
Yippie Kai-Yay!!!
My laptops replacement (OEM) keyboard finally arrived; United States Postal Services, First Class.
Opened it up, and scratched my head, “Isn’t this supposed to have 1 keyboard holes?”, I unwrapped what’s left of my old one and confirmed it. A quick fitting with Dixie, showed the extra holes would rest freely, gotta love PC vendors. In order to get it to work, I needed to fold the ribbon to match the old one, and argue about getting the tabs under her bezel; but it finally works.
I feel like I just welcomed a love one home, from a really long trip…. and I can get work done again!!!!
I think, after I get my work done on Training Grounds #1/#2, I’ll probably be found with Dixie in my lap, and a smile on my face xD
Interesting finds
%Windir%system32 (typically C:WINDOWSsystem32)
clipbrd.exe — ClipBook Viewer
Big question, can I actually use it for anything? (Grrr, vim is better); windows clipboard management out of box seems to suck, or require finding a program almost no ones ever heard of :
ftype — manages file associates
very bloody useful – no more need to invoke explorer.exe to play with them.
systeminfo — quick print useful data
Gotta remember this next time I’m working on a system; msinfo32 provides more info, but for some dang reason always seems to need start.exe or rhe run dialog to launch it. systeminfo gives a good first look, and is easier to grep.
Windows XP does have some useful changes from DOS 5/6 based releases, but I’ve never actually found a lot that isn’t in my MS-DOS reference >_>.