Solaris 11: Where is /usr/ucblib? Quick tips to install ‘ucb’ package

Well… I finally figured out that the ucb package isn’t installed on Solaris 11 by default (resource). Unfortunately, the Oracle docs are confusing to follow. Here is a cheatsheet for installing the ucb package on your shiny Solaris 11 install.

    1. Figure out the IPS installer, read man pages, get frustrated at lack of detail, run to Google.
    2. Find the package you want on http://pkg.oracle.com/, in this case compatibility/ucb
    3. Add the publisher link to your config, by the way, this link is not documented that I can find so I had to guess and check. A publisher is a package list of sorts, I guess.
      # pkg set-publisher -G '*' -M '*' -g http://pkg.oracle.com/solaris/release solaris
    4. Install the package, # pkg install compatibility/ucb

# pkg install compatibility/ucb
Packages to install: 1
Create boot environment: No
Create backup boot environment: No

DOWNLOAD PKGS FILES XFER (MB)
Completed 1/1 80/80 0.4/0.4

PHASE ACTIONS
Install Phase 166/166

PHASE ITEMS
Package State Update Phase 1/1
Image State Update Phase 2/2

  1. Behold, that you now have the compatibility libs for software that may need to use them

Whew…now, you might wonder what is so hard about that. Well, traversing Oracle docs is the hard part.

Here are the docs that I had open in my browser, they may or may not help and I fully expect the links to break in the future because Oracle is good at that.

Skydive Arizona: 2011 Holiday Boogie

(I realize that I go on 7-8 skydiving “trips” per year and I often don’t write about them. It may be fun to read about the special events later, so I’m going to try my best to publicly write about my adventures. For an aggregation of random skydiving blogs, check out planetskydive.net)

A few weeks ago, I returned from a 12 day skydiving trip to Skydive Arizona. The highlights of this trip were 2011 Holiday Boogie, freefly load organizers, an hour of tunnel time, getting food poisoning, and a CRW Bigway camp. All while meeting new and old friends. This was my first far-away skydiving trip that I went on by myself, it takes abit to figure out who to jump with but just introducing yourself to the load organizers helps with that. Soon, they are seeking you out to jump because it is their job to encourage you to spend money :)

So, a great success overall. I made 53 skydives in 10 days (minus 2 days for the food poisoning incident) and had a great time. There are pictures of the CRW camp, here. A couple of my favorites are these…

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

And of course, my cutaway…

My IFR Checkride Experience

(Preface: I’m writing this for my own recollection and because I found it useful to read other people’s experiences as well)

Dec 6 2011: Planned: 9am meet the DPE (referred to as ‘she’) at KANE hangar. I went to KMIC to get the plane ready, it was snowing and forecasted to rapidly improve. However, time was not on my side here and I had to make a decision about my flight to ANE. I called off the flight after some AWOS phone calls when conditions of the minute were below VFR. The ironic thing here is that I could have made the flight under an IFR flight plan and the conditions did improve as forecasted, but… oh well. In chronological order, the best I can recall.

  1. We first started with the 8710 form, which I didn’t fill out properly. Note: fill out all hours including private pilot minimums (night, solo XC, etc). ID, paperwork verification, logbook, etc. Two snags: a) missing 1 of 2 endorsements from instructor, b) “Long XC” may not have had 3 different approaches. Lesson: read the FARs and be precise. Paid fee, moved on.
  2. AC & Engine logs. I bookmarked the a) annual, b) ELT, c) ELT battery due date, d) pitot-static check. This helped. I was also asked what ADs were and if there was any recurring (seat rails). This was quick and painless.
  3. W&B. I “just” printed off the spreadsheet that the club provides with our weights in there and fuel burn. This was acceptable, however there were questions about the validity (check POH) and utility vs normal, then questions about SPINS…uhh. I haven’t thought about spins or G forces in years. So, she refreshed my memory on spin recovery (PARE) – she was happy to ‘teach’ me on this. What a first question though….got me abit nervous.
  4. She had me plan a XC to KGFK. I used FltPlan.com (she questioned the use of fltplan – don’t think she has used it and wrote down the website) and printed out everything I could (NOTAMs, METARs, TAFs, etc) – I forgot to bring the actual flight plan though. Doh. So, I “recreated” it, verbally, just a casual discussion. This was acceptable.
  5. While the enroute chart was out. We talked for a good amount of time about my proposed route (I drew a line direct ANE, GFK). She said this was fine but not ideal and we talked about many circumstances, she helped me understand why it was less than ideal in the end. Some points: a) active RA/MOA – while IFR, vectored around. She seemed impressed that I knew this b) Filing direct is more SRM than a route when ATC gives you curves vs ‘as filed’ c) know your alternates, I picked KTVF (41nm away). It had a A-NA ILS and non-precision approaches – if you have to use an alternate you should prefer a precision approach but that wasn’t available to me. The next closet alternates made me uncomfortable with available fuel. She did some fuel calculations on paper with me and I came up with my own conclusions. She liked that I said that if I had to file an alternate, I would stop for fuel enroute as that gave me more options. d) RAIM prediction – what, how, etc. e) FDC NOTAMS, f) My aircraft’s de/anti icing equipment, I started with ‘not much’ then listed pitot heat, carb heat, defroster. She was impressed with the latter. Flight into ‘known icing’ ? I said well, don’t fly in clouds when it is cold and was quickly interrupted – ‘that is POSSIBLE icing’ – ‘oh, PIREPS is KNOWN icing’ g) picked random things on enroute chart, MEA, MEA-G, MOCA, MRA, MCA, center freqs, just random things on the chart that she was looking at and asking me about, no specific items really h) lost comms procedures – this was fun. Emphasis on when to hold vs ETA, etc. The scenario was pretty easy – ‘you are halfway to GFK, can’t turnaround, radio dead (not pilot error)’ She liked my answers: squawk 7600, continue to GFK in IMC or land if VMC, hold at GFK VOR if not at ETA – convo went into IAPs
  6. IAPs, we talked about the hold at GFK, ILS 35 and how to leave that hold (with lost comms). Then went into some other stuff that proved I could read a IAP, casual convo and she helped on some finer points. Then looked at KTVF, the ILS A-NA thing came up here.
  7. Some other topics were sprinkled in. t/o minimums, alternate mins, VOR checks, Garmin 430 DB, RAIM outage on IAP, IFR currency, FDC NOTAMs
  8. Nothing or not much about: medicals, weather (besides icing), available weather charts, instrument systems, VORs, ATC (besides a quick empathsis on asking for clarification/help if needed)
  9. I was over prepared on some topics. I didn’t ‘offer up’ too much info except a few times to steer the convo away from my less strong topics, this just came natural to me and I can’t remember anything specific except that I know it happened.
  10. Bottom Line: She was interested in a conversation with me. It took about 2 hours and ended with, “Well, we can talk about this for weeks, good job I wish we could have flown too”


Skip forward to Dec 14, finally find out that the “Long XC” did not fit the requirements..Time to fly again for 3 hours with my instructor. Set up flight with DPE on Dec 21 after completing a ‘valid’ long XC.

Dec 21 2011, flight in the afternoon with DPE. Weather conditions were forecasted to deteriorate as the day went on. We needed VFR conditions to do the flight safely. I get to the airport and find that the plane owner has not updated the nav database on the Garmin 430 – so now my GPS is a VFR GPS only and not allowed for IFR flight. At least, now, I know what approaches I’ll be flying because I only need 3 and the plane is only equipped for 3 – VOR, LOC, ILS. For the flight:

  1. I fly to ANE, she is outside her hangar and directing me where to park. We go inside, we have to complete some paperwork then proceed to check the weather for our flight. There are some passing snow showers to the north – St Cloud, Princeton, etc. Should not be an issue for our flight around the metro area.
  2. She gives me a ‘clearance’ to read back – then we proceed on course to Grand Forks via Gopher VOR, V2. I’m to ‘report’ established on V2. So this proves that I can intercept and track a VOR.
  3. After reporting established, she did two unusual attitudes. These were easy and my instructor’s unusual attitudes were much more extreme – these seemed mild, almost as if I was recovering wrongly because the plane was straight and level so quickly.
  4. Next, called up MSP approach while she was flying the plane to get a VFR code for practice approaches at ANE. Request published hold for the VOR 9 approach at ANE
  5. Execute hold multiple times around to prove that I can make adjustments – actually the first outbound leg I had the opposite wind correction angle. It was acceptable to her that I was able to correct for this the next time. 2 times around then requested to continue with the approach, was told to go around again by MSP.
  6. Come inbound, keep VOR needle mostly centered – it was off course by 1-2 dots at the worse. Acceptable. About halfway through, I was expecting a question like “when are you going to execute a missed?” since I forgot to take the time at the FAF – luckily, that didn’t come up.
  7. Go missed, request vectors for the LOC 27. This went fine, big emphasis on the step down fix for this approach. Nothing crazy happened here.
  8. Go missed, request the 23DME ARC for the ILS 27. This involved abit of flying and was eventually cleared ‘direct BLAYN’ – I had GEP for DME in the GPS so I couldn’t easily fly there via GPS, instead intercepted the intersecting radial off GEP. I flew a really nice ARC, I was +/- .1 mile. Then intercepted the localizer and flew that in. Having just down the LOC approach, this was easy – I already knew the correction needed, etc. She placed emphasis on flying ABOVE the glide slope such that if I had a GS malfunction, I would be immediately aware because the GS would snap to the center (as opposed to flying ON the GS and then not knowing about a GS malfunction right away). Circle to land on runway 36 – she had some tips for me on my circle to land.
  9. About 1.6 total flight time, about 1.0 simulated instrument time

Maybe the flying portion was easy but more likely was that I was extremely prepared (thanks Kevin!). The flight felt like a conversation (again) in the air and she was more than helpful and provided subtle hints, like “now we just be sure not to peg the needle” or something akin to that. I PASSED.

Now, the fun part was trying to get home. In the meantime, the snow started creeping south and now we had a full fledged snow storm on our hands, 1.25 mi visibility, heavy snow, light ground winds. I could have flown IFR home – it was only 8 mi flight, but I was not excited about the circumstances. So, after listening to AWOS at ANE and MIC, I ask ground control for directions to the FBO – I love talking to ATC, they are often nice. When asked which FBO I had to laugh and say one with a lounge please (since I didn’t know ANE at all). Anyway, I ended up at Cirrus Flight Operations – and I just have to put a plug in here because even though I didn’t need to buy anything, the staff treated me as a first class citizen, buying ME a soda and pizza – what a way to de-stress the situation, awesome. Eventually, I did make it home at sunset. It wasn’t my most favorable flight but it was safe and legal VFR. Whew.

Gentoo: Colemak keymap support

Colemak is my new keymap of choice. Luckily, Gentoo Linux supports it well. Unlike some of the crazy instructions people have posted out there, you only need to edit 2 files to convert your console and Xorg server. Note, I’m taking the time to write this because I couldn’t find easy instructions out there…


% cat /etc/conf.d/keymaps
# Use keymap to specify the default console keymap. There is a complete tree
# of keymaps in /usr/share/keymaps to choose from.
keymap="en-latin9"
<...>


% cat /etc/X11/xorg.conf.d/30-keyboard.conf
Section "InputClass"
        Identifier "keyboard-all"
        Option "XkbVariant" "colemak"
EndSection

Tip: “Intelligent” bugzilla mail threading in GMail using procmail

(Preface: Target audience for this post is Gentoo Devs + GMail WebUI users, however, anyone that forwards bugmail to GMail and has procmail between them could also use this.)

I find it annoying that the GMail web interface chooses to thread messages based on subject name alone, this creates two threads for every new bug report sent to you from bugzilla. Sadly, we can’t control the threading that Google tells us is “the only way” (subject based threading or email header based threading, which bugzilla does correctly). If you want to follow the rabbit trail that I went on regarding this subject, I won’t stop you…

Or you can use procmail to rewrite the subject, that is, remove “New: ” from the first email:

# Remove "New: " from the subject so threading in gmail works
SUBJ_=`formail -xSubject: | expand | tr -d '\n' | sed -e 's/^[ ]*//g' -e 's/New: //'`
:0
* ^From: bugzilla-daemon@gentoo.org
{
    :0 fwh
    | formail -i"Subject: ${SUBJ_}"
}

Tangentially related that may be useful, is this rule that kills duplicate messages when you report a bug and are assigned the same bug (or in CC). The bugzilla software has no way of knowing what email aliases you may be in.

# Kill duplicate messages. If I am the reporter *and* the bug is assigned to a
# team I am in, delete the mail to me directly
:0
* ^To: username@gentoo.org
* ^From: bugzilla-daemon@gentoo.org
* ^X-Bugzilla-Reporter: username@gentoo.org
* ^X-Bugzilla-(Assigned-To|CC):.*(team1|team2)@gentoo.org
/dev/null

I like the GMail WebUI. I use it. Please don't suggest that I should use other clients, I already know that other clients can handle the threading fine.

Gentoo: Removing USE=”python perl” from the default profile

Well, I got sick of setting -python -perl on my Gentoo hosts, I even consider them “questionable defaults” for a majority of Gentoo users..

So, let this be an advanced notice that you may see some rebuilds for useflag changes. There has been sufficient testing such that there should be few to nil problems, but we can’t test everything. Please file bug reports, if needed.

See also:

Gentoo: per-package PORTAGE_TMPDIR settings

I don’t know how many people know about per-package environment variables in portage since 2.1.9 or so. (ref: bug 44796) It is a worthwhile enhancement to know about, regardless. Like most people, I have my PORTAGE_TMPDIR on tmpfs to speed up compilation times and reduce I/O usage. My 2G tmpfs mounted on /var/tmp/portage is large enough for almost all packages, even multiple jobs at once, however, not all. Solution:

% cat /etc/portage/package.env
app-office/libreoffice notmpfs.conf
% cat /etc/portage/env/notmpfs.conf
PORTAGE_TMPDIR=”/var/tmp/notmpfs”

(More info available in the portage man page)

Now, when I find my next package that needs notmpfs, it is as easy as: echo "cat-egory/pkg notmpfs.conf" >> /etc/portage/package.env which is much easier than bashrc hacks or something else insane that I have seen. Of course you can extend that to most make.conf settings, hope that helps someone.

Linode: Migrating from HE.net IPv6 tunnel to native IPv6

A few days ago, Linode.com announced native IPv6 roll out in their datacenters. Now, while I haven’t wrote about Linode in the past 6 months, I am still a happy customer. I am documenting the steps I took to migrate away from my HE.net tunnel.

  1. Set the TTL low on any DNS addresses that you will be changing. Ideally, do this a fair amount ahead of time.
  2. Send in a support ticket to get your /64 allocated. Sidenote: response time: 4 minutes
  3. Reboot ‘node so the backend system deploys your IPv6 after it was allocated. Verify IPV6 status on your ‘node.
  4. From a different IPv6 host, run nmap -6 on the existing address to verify listening services.
  5. Update DNS, define static networking, be happy.