Archive for category Tech. Support
Kermit the Blog: That’ll be… Aw, heck. No charge.
Posted by dAVE in Consulting, Rant!, Tech. Support on 08/25/2005
Over on the Kermit the Blog he’s having one of those days. Another friend gets free computer help, and now he’s wondering if he’s too nice or just a sucker.
Kermit the Blog: That’ll be… Aw, heck. No charge.
My take:
One of my clients, who runs a very successful jewellry business, explained it to me: When you charge little or nothing then there is no associated value. Which means there is no way to compare what you are really giving them to anything else they are familiar with.
So the next time you get a call to a ‘family or a friend’s’ house to fix something, interrupt them and tell them up front: “I am no longer able to help you for free. $$$ an hour, minimum one hour. When should I come by to fix things?”
Then things get really interesting! ;-)
As he says “What’s your take?”
QuickTime (Part 3)
Posted by stany in Mac OS X, Software, Tech. Support on 07/24/2005
Background
I have an iBook G4, that has a 32 meg Radeon 9200 mobile video card, that is below the minimal requirements for CoreImage. Technically CoreImage is supposed to be scalable, and if it can’t do a particular efffect on the video card GPU, it should try doing it on AltiVec unit of the processor, and, in event that the system lacks an AltiVec unit, it should fall back to the CPU.
In reality lack of CoreImage support doesn’t cramp one’s style all that much. I miss some graphical features of the GUI, which is cosmetics. However, occasionally it interferes with productivity, and pisses me off.
Consider the following example:
QuickTime 7 Pro and video adjustments
QuickTime have been coming in “free” and “pro” variety for a long while. The features that 29.95 USD Pro version has are numerous, but amongst the most notorious are:
- ability to save some of the streamed media to hard drive
- ability to export files to different formats
- ability to do some rudimentary merging of video tracks using cut and paste
- ability to adjust brightness, tint, contrast and colors of the video
- ability to correct audio balance, etc.
All of the above features work reasonably well under QuickTime Pro 6.5.2, although color corrections are rather clunky and are represented as a slider on screen. However you can see the adjustments as the movie plays. Here is what it looks like (220K).
Tiger came with QuickTime 7, and once I entered the QT7Pro license key, one of the things that didn’t work on my iBook was color corrections. Apple-K presented me with options to modify the audio settings, but not the video settings.
Technically you can get video adjustments to work by performing the following steps: Export -> Options -> Video Filter and doing a bunch of adjustments there, however there is no fun in waiting for a few minutes in order to see if your guesswork was correct.
This is Broken[TM].
So I did some digging. Inside QuickTime Player.app there are two files: AvControls.nib and AVcontrolsMinimal.nib. One gets used when the system detects CoreImage supported video card, and the other one when it doesn’t.
My hypothesis was that if I were to swap the two around, I’ll get access to video controls:
First I copied QuickTime Player to a different directory, and then dropped to command line:
stany@gilva:~[05:11 PM]$ cd /Applications/extras/QuickTime\ Player.app/Contents/Resources/English.lproj/ stany@gilva:/Applications/extras/QuickTime Player.app/Contents/Resources/English.lproj[05:11 PM]$ ls -dal AV* drwxrwxr-x 5 root admin 170 Jun 5 08:09 AVControls.nib drwxrwxr-x 5 root admin 170 Jun 5 08:09 AVControlsMinimal.nib stany@gilva:/Applications/extras/QuickTime Player.app/Contents/Resources/English.lproj[05:11 PM]$ stany@gilva:/Applications/extras/QuickTime Player.app/Contents/Resources/English.lproj[05:14 PM]$ sudo /bin/bash Password: root@gilva:/Applications/QuickTime Player.app/Contents/Resources/English.lproj[05:14 PM]# \ mv AVControls.nib AVControls.nib_ && mv AVControlsMinimal.nib AVControls.nib && mv \ AVControls.nib_ AVControlsMinimal.nib root@gilva:/Applications/QuickTime Player.app/Contents/Resources/English.lproj[05:14 PM]#
After adjustment, on a non-CoreImage enabled system Apple-K menu looked like this.
Sadly, under Tiger the sliders for video correction still do not work, as they are dependent on CoreImage. However, I wonder if they do work on Panther (10.3). If they do, then likely this is the solution that would work for folks who haven’t upgraded yet. You see, there might be a reason to be a struggler. Comments, please.
Lastly, I wanted to give my modified version of QuickTime Player.app a different version string, so that I could see it when I ctrl-click on the movie, and select “Open with”. In order to do that, I ctrl-clicked on the QuickTime Player.app, and selected “show package contents”. Inside Contents folder, I’ve opened version.plist and Info.plist in Property List Editor. In Info.plist Root, I’ve changed CFBundleGetInfoString so that I know it was changed by me when I get info on the application, CFBundleShortVersionString and CFBundleVersion both to 7.0.1-stany and saved Info.plist. In version.plist I’ve modified CFBundleShortVersionString and CFBundleVersion to match the changes I did in Info.plist, leaving the rest of the properties the same.
Now, If I ctrl-click on a file QT recognizes, and scroll to “Open with”, it looks like this.
Last paragraph is the usual step needed to change a version of any application as recognized by the operating system. I should probably do something like this to all of those pesky Real Players, that I’ve been dealing with.
In closing, inside Info.plist it’s also possible to adjust the filename extensions and the icons that QuickTime is supposed to be able to handle. So you can rename your .mp3 files to, say, .jd, and associate just QT with these files (Barring presence of resource fork, etc, of course).
Promise UltraTrak100 TX8 and rebuilding RAID
Posted by stany in Consulting, Tech. Support on 07/10/2005
This is from memory, as it happened about a year ago, but I figured I’d document it, in case it helps someone.
I own a Promise UltraTrak100 TX8 SCSI to IDE RAID array. If it helps, here are local mirrors of product manual and specifications.
I had a case once, when I shut the array down, and one of the drives did not spin back up.
Situation:
disk0: Good disk1: Good disk2: Did not Spin up disk3: Good disk4: Good disk5: Good disk6: Good disk7: Good
Array (configured as 8 disk RAID5, Maxtor 120 gig drives, 800.5 GB of formated disk space) of course started beeping, so I grumbled, yanked a cold spare off the shelf, and put in in place of “failed” drive and went to sleep.
Situation:
disk0: Good disk1: Good disk2: replaced with good one, put onto shelf, resyncing disk3: Good disk4: Good disk5: Good disk6: Good disk7: Good
About 3 hours into raid resync (no, UltraTrak100s are not really speedy), array instead of short beeps raised a rucus, and it’s crying woke me up. Turned out that another drive failed while into resync. So the nightmare happened – there were two failed drives in a RAID5, and of course the array is not designed to handle this.
Situation:
disk0: Good disk1: Good disk2: resyncing disk3: Good disk4: Good disk5: failed with bad sectors disk6: Good disk7: Good
I had not backups. As an aside, when you have 800 gigs of on-line storage, all used, how do you back it up? DLT7K (which I also have) would take maybe 3 days, and at this point, do I trust the tapes? After all, when you have 20 tapes, probability of tape read failure would be raised to n^20. Then there is dust in the drive, SCSI cables (differential SCSI in my case), power fluctuations, etc. The only way to back up 1 TB is to put a second 1TB array near it, and mirror them, and start using filesystem snapshots (like NetApp does, or Solaris 8 and newer). Any way, backups are a subject of a rant of it’s own.
So I grumled, and cursed, but went ahead and examined the original drive, one that didn’t spin up. SMART was complaining that the drive takes too long to spin up, but in the end I managed to convince it to spin up. So now I had a case where I had an array with two “bad” drives, yet one drive was actually “good”, only market as bad in the NVRAM of the UltraTrak.
After a while on long distance calls to Promise, I got to talk to a chinese guy who actually was one of the developers. He told me of a magic way to try as last resort.
So don’t do this at home, this is serious evil, etc.
He told me to turn array off, yank all the drives out of the array, and put one new drive into it.
Upon power on, array would complain about lack of the original drives. Then he told me to delete the existing configuration, and power the array off.
After that, he told me to put the drives including drive that was originally having problems spinning up back into the array in the original order:
Situation:
disk0: Good disk1: Good disk2: Drive that not Spin up originally, but got convinced to spin up again disk3: Good disk4: Good disk5: failed with bad sectors disk6: Good disk7: Good
Then he told me to go and configure the array again from scratch, RAID5, whole disks, etc.
At the moment when I were to commit the configuration of the array I had to be careful. Essentially at that point all of the lights on the disks in the array would flash in sequence, as the configuration of the array would be written to disks. After that there would be a 1 second pause. During it, I had to turn the array off.
This is a once time shot. If one doesn’t turn the array off at this 1 second interval, the array would proceed with formatting the disks, and all of the data would be lost.
As I did it, array wrote configuration of the array to disks, matching the configuration that I had before, but did not re-initialize the array. So the data was still there.
When I powered the array on, it span up all the drives, and proceeded to claim that it’s fully functional.
So I manually failed drive 5, that had bad sectors on it by yanking it out of the array, and replacing it with a cold spare.
About 10 hours later array re-initialized. Then I failed disk2, that had issues spinning up, and replaced it. Array re-initialized.
You have no idea how stressed I were until the first rebuild was done.
Any way, maybe this will help someone. Obviously this is not exactly a technique for the faint of heart, and is not supported by Promise. But it saved my ass. If you have spare disks, try building a test array (of like 2 disks) and practice on it first. And, have good backups.
This should work on UltraTrak100 TX4 as well, but I have no idea about any other models. Probably not. Talk to Promise, they can be nice to you.
Installing Roundup on Mac OS X
Posted by dAVE in Software, Tech. Support on 07/04/2005
I decided that I needed to install an issue-tracker for the support work I am doing, as jobs were trying to fall through the cracks.
This is the process I went through to install Roundup on Mac OS X 10.4.1 client, minus all the swearing, googling and reading the mailing list archives.
I grabbed the latest version, roundup-0.8.3.tar.gz, from Sourceforge and extracted it into a temporary directory. The README.txt led me to the Install Guide located in the doc folder.
From there I:
loki:~$ python run_tests.py
Which gave no errors..
Then I went back and followed the Basic Install steps:
loki:~$ sudo python setup.py install --install-scripts=/Users/davidr/bin
This installed everything as normal, except the administration scripts, which were installed in my bin/ directory.
I then created the storage space form my trackers:
loki:~$ mkdir ~/Documents/roundup/trackers
This is where the Support tracker will live, and any others in the future…
Then I installed the tracker:
loki:~$ roundup-admin install Enter tracker home: /Users/davidr/Documents/roundup/trackers/support Templates: classic-demo,minimal, classic Select template [classic]: Back ends: anydbm Select backend [anydbm]: You should now edit the tracker configuration file: /Users/davidr/Documents/roundup/trackers/support/config.ini ... at a minimum, you must set following options: [mail]: domain, host [tracker]: web loki:~$
This is where things got confusing, as the references in the Documentation are to “MAILHOST, TRACKER_WEB, MAIL_DOMAIN and ADMIN_EMAIL.” Which do not exist by these names in the config.ini file.
Since the tracker will only be used by me, I am putting it on localhost, and email will be disabled.
I opened /Users/davidr/Documents/roundup/trackers/support/config.ini and edited the following:
instant_registration = yes
# Avoids email confirmation for new users
web = http://localhost:8080/support/
# This is where I will access my tracker
In the section [mail] I also had to set these so the tracker would run, even though I will not use email;
domain = local
host = loki.local # my machine’s local name
Then in the [nosy] section I also changed:
messages_to_author = no
add_author = no
This is likely not needed as nosy gets disabled soon…
Now to initialise the tracker database:
loki:~$ roundup-admin initialise Enter tracker home: /Users/davidr/Documents/roundup/trackers/support Admin Password: (You need to create one!) Confirm: (re-enter the same one from the previous line)
After that you need to get to the web interface, I decided to use the built in server and so all I did was to run:
loki:~$ roundup-server support=/Users/davidr/Documents/roundup/trackers/support/
and that notified me that it was running: “Roundup server started on :8080″, so I went to the page I defined in config.ini: http://localhost:8080/support/
Create a new user, and you are almost ready to use the system.
After that I needed to disable the email, and create a more automatic way to launch the server:
Disabled the use of ‘nosy’ ie. the email interface, see FAQ.
loki:~$ mv /Users/davidr/Documents/roundup/trackers/support/detectors/nosyreaction.py /Users/davidr/Documents/roundup/trackers/support/detectors/nosyreaction.py_disabled
I then created a double-clickable terminal file which will launch the Roundup server. Open a new terminal window, and then go File:Save as: and named it “Support Roundup Server” and set ‘Execute this command’ to
/Users/davidr/bin/roundup-server support=/Users/davidr/Documents/roundup/trackers/support/
I also checked the ‘Execute this command in a shell’. Now when I double click the file it launches the roundup server and I can watch the log as it goes by. Once I get tired of it and am convinced it works without me looking at it.. I will figure out a way to launch it when I login, and run it in the background and have errors go to a logfile.
MacOSX: Upgrading firmware for Pioneer DVD drives
Posted by stany in Consulting, Software, Tech. Support on 06/19/2005
I did a large and opinionated post earlier about benefits of using cheap DVD drives over things like Pioneer. There is a benefit of paying for Pioneer drive too – ability to flash the firmware under MacOS X.
The software one needs for it is DVRflash compiled for Mac OS X, and a firmware image containing the kernel code necessary to get the drive into kernel mode (that permits flashing) and the (patched) firmware. Kernel code from any version of the firmware would do, as it is only used during the flashing to get the drive into receptive state. Firmware, on the other hand, should probably be either newer then the one you have already, or at the very least same version but with different features.
For the firmware for your particular model of the drive, you should probably look at RPC1.org web site. Also worth looking at are Pioneerdvd and Gradius’s web pages.
Here is the actual flashing session.
#include <stddisclaimer.h> /* Not responsible for anything! */
I’ve put the Pioneer DVR-105 drive into an external USB/FW enclosure connected over FW. Operating system is MacOS X 10.4.1 (Still PPC, not yet mactel :-), drive is connected over firewire.
First I determine that the software sees the drive (as root):
root@gilva:~/Desktop/DVRFlash_2.0/DVR-105 v1.33 - RPC-1 + 2xDVD-R + 12xRip[05:16 PM]# ./DVRFlash
DVRFlash v2.0 : Pioneer DVR firmware flasher
by Agent Smith et al., July 2004
Commandline:
./DVRFlash
Device parameter was not given, detecting all DVR drives:
Device : B:
Vendor : PIONEER
Model : DVD-RW DVR-105
Revision : 1.00
Now run DVRFlash again, from the command prompt, using
one of the device(s) listed above as first parameter
Press the Return key to exit
root@gilva:~/Desktop/DVRFlash_2.0/DVR-105 v1.33 - RPC-1 + 2xDVD-R + 12xRip[05:19 PM]#
At this point I know that drive B: is the drive I want (Drive A is presumably the built in Matsushita combo), so I run the software again, this time with the right arguments:
root@gilva:~/Desktop/DVRFlash_2.0/DVR-105 v1.33 - RPC-1 + 2xDVD-R + 12xRip[05:19 PM]# ./DVRFlash \
-f PIONEER R5100004.133 R5100104.133
DVRFlash v2.0 : Pioneer DVR firmware flasher
by Agent Smith et al., July 2004
DISCLAIMER
THIS PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE.
THE ENTIRE RISK AS TO THE ABILITY OF THIS PROGRAM TO FLASH A
PIONEER OR COMPATIBLE DVR DRIVE IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY
SERVICING, REPAIR OR CORRECTION.
THIS PROGRAM IS NOT ENDORSED BY PIONEER CORPORATION OR ANY
COMPANY RESELLING PIONEER EQUIPMENT AS THEIR OWN BRAND
IF YOU UNDERSTAND THE RISKS ASSOCIATED WITH THIS PROGRAM AND
DISCHARGE BOTH THE AUTHOR AND PIONEER CORPORATION FROM ANY
DAMAGE OCCURING AS THE RESULT OF ITS USE, PLEASE INDICATE SO
BY ANSWERING THE FOLLOWING QUESTION:
Do you understand and agree to the statement above (y/n)?
y
Commandline:
./DVRFlash -f PIONEER R5100004.133 R5100104.133
Drive Information:
Description - PIONEER DVD-RW DVR-105
Firmware Rev. - 1.00
Firmware Date - 02/10/10
Manufacturer - PIONEER
Drive is in normal mode.
Are you sure you want to flash this drive (y/n)?
y
Switching drive to Kernel mode:
Description - PIONEER DVD-RW DVR-105
Firmware Rev. - 0000
Firmware Date - 00/00/00
Manufacturer - PIONEER
Drive is now in Kernel mode
Now sending the Kernel part...
Now internal Kernel reflashing. Please wait... OK.
Now sending the Normal part:
0% 25% 50% 75% 100%
|============|============|============|============|
Please hold your breath for about 30 seconds...
Now internal reflashing. Please wait... OK.
Updated Information:
Description - PIONEER DVD-RW DVR-105
Firmware Rev. - 1.33
Firmware Date - 03/05/26
Manufacturer - PIONEER
Flashing operation successful ;)
root@gilva:~/Desktop/DVRFlash_2.0/DVR-105 v1.33 - RPC-1 + 2xDVD-R + 12xRip[05:20 PM]#
So after holding my breath for about 30 seconds, it finished. I went ahead and verified that firmware got updated:
root@gilva:~/Desktop/DVRFlash_2.0/DVR-105 v1.33 - RPC-1 + 2xDVD-R + 12xRip[05:20 PM]# ./DVRFlash
DVRFlash v2.0 : Pioneer DVR firmware flasher
by Agent Smith et al., July 2004
Commandline:
./DVRFlash
Device parameter was not given, detecting all DVR drives:
Device : B:
Vendor : PIONEER
Model : DVD-RW DVR-105
Revision : 1.33
Now run DVRFlash again, from the command prompt, using
one of the device(s) listed above as first parameter
Press the Return key to exit
root@gilva:~/Desktop/DVRFlash_2.0/DVR-105 v1.33 - RPC-1 + 2xDVD-R + 12xRip[05:21 PM]#
Tiger: Disabling dashboard
Posted by stany in Consulting, Tech. Support on 06/12/2005
Adam e-mailed me this, so I am preserving it here for posterity.
Since I've not actually found a use for Dashboard: $ defaults write com.apple.dashboard mcx-disabled -boolean YES
You need to restart the Dock.app (I just killed the process and it came right back.)
Once this is done, you can poof the dashboard app off your dock, as it now does nothing.
Note that this is per user setting, however I am happy, as Dashboard widgets wanted 35 or so megs of real RAM in default configuration.
As an aside, the only widget I were actually using was the weather, and it was talking to american weather site, that was giving me incorect information most of the time.
Tiger: Disabling Spotlight
Posted by stany in Consulting, Tech. Support on 06/12/2005
Spotlight introduces a fairely large performance hit on to the system, especially if the files you are working with are both large and have the Spotlight plugin, and thus can be indexed. Performance hit might be less noticable on the desktop system with fast drives, however on my laptop with 4200 rpm drive, and constantly dealing with megabytes of source code and compilations spotlight introduced less of a benefit and more of a hindrance.
So, without further ado, in order to disable spotlight, one has to edit /private/etc/hostconfig, find the line that reads SPOTLIGHT=-YES-, change it to SPOTLIGHT=-NO-, and rebooot.
This will prevent MetaData Service, / System / Library / Frameworks / CoreServices.framework / Versions / A / Frameworks / Metadata.framework / Versions / A / Support / mds from starting on boot time.
Note that this will not disable file change notifications in the kernel, as can be checked using Amit Singh’s fslogger. On the same page there is some more in depth information on the kernel notification service that Spotlight (and fslogger) subscribe to.
A perty GUI called Spotless was written by someone, but I am not sure I’d trust a GUI to parse and edit a text file.
If you want to get rid of the looking glass icon in the top right hand corner as well, you might want to either remove (perferably just move out of place) or chmod -R 0000 /System/Library/CoreServices/Search.bundle (Key file. Actual parts of Spotlight are: /Library/Spotlight /System/Library/Spotlight /System/Library/CoreServices/Search.bundle /System/Library/PreferencePanes/Spotlight.prefPane /System/Library/Services/Spotlight.service /System/Library/Contextual Menu Items/SpotlightCM.plugin /System/Library/StartupItems/Metadata plus /usr/bin/md*, although I’d argue that metadata tools in /usr/bin/md* are actually useful.)
Changing permissions means that if at some point you want to undo the changes, you can always repair permissions. In any case, little looking glass in the corner doesn’t bother me much.
Technically one can probably selectively start and stop Spotlight by killing or startng mds and mdimport, however a way Apple recommends is using mdutil -i off / to turn off indexing of the boot volume (ie existing databases would be preserved and accessible through spotlight).
If you ever want to blow away your Spotlight database, and force reindexing (assuming mds/mdimport run), you can do mdutil -i off /, mdutil -E / , mdutil -i on /
Note: Apprently killing spotlight interferes with find in Finder and in Mail.app. As I never use either (locate or find . -name “*foo*” -print on the command line is much more powerful, plus gives me an -exec stuff {} \; option), it doesn’t bother me, however ocdinsomniac has some nice additional information and a script that purports reverting Finder’s find to the Panther style behavior.
Finicky Airport Hubs
Posted by dAVE in Tech. Support on 10/18/2004