Showing posts with label retardation. Show all posts
Showing posts with label retardation. Show all posts

2022-05-11

Remove Opaque Overlay and Label Button in Gmail.

Gmail now has an ugly overlay which obscuress any custom inbox image; this is a quick and dirty kludge for dealing with this $current_month Google UX mandatory decision (via developer console):

document.querySelector('.bkK>.nH').style.backgroundColor = "rgba(0,0,0,0)";

document.querySelector('.aAw.FgKVne').remove();

"transparent !important"; works for the backgroundColor, but not, for some reason, in a bookmarklet:

javascript:(function()%7Bdocument.querySelector('.bkK%3E.nH').style.backgroundColor%20%3D%20%22rgba(0%2C0%2C0%2C0)%22%3Bdocument.querySelector('.aAw.FgKVne').remove()%7D)()


Before:

After:

I have a lot of custom labels, so the second "More" is usually expanded, else that could go as well. 

2014-12-07

Notes to Self: FreeNAS 9.3-Beta SMBD mDNS log spam

smbd[28586]: dnssd_clientstub ConnectToServer: connect()-> No of tries: 2
smbd[28586]: dnssd_clientstub ConnectToServer: connect()-> No of tries: 3
smbd[28586]: dnssd_clientstub ConnectToServer: connect() failed Socket:32 Err:-1 Errno:2 No such file or directory

Despite having mDNS turned off, smbd seems to want to talk to it. (Looking for avahi?).  Seems unchecking "zeroconf share discovery" (System -> Services -> CIFS) would fix -- doing so makes no modification to /usr/local/etc/smb4.conf (assuming it should - FreeNAS-9.3-BETA-201412062137).   

Adding "multicast dns register = no" to Auxiliary Parameters, however, seems to sort it. 

Or, one could do as is suggested by a wonderfully helpful FreeNAS developer, and just re-enable the service: even if you don't need it, cause, why not? (symlinking /usr/local/libexec/nas/register_mdns.py to /bin/true does nothing to fix this, of course...)

Bug #4562 - Logs full off "dnssd_clientstub ConnectToServer" errors

2014-07-28

Ugly Windows Batch Kludge - ffmpeg / tr /

Dealing with certain Youtube files (ie, from Rhino Entertainment) requires trimming off the 15 or so 'also recommended' seconds at the end of every video.   The number of seconds and starting position varies, so it'd be tricky to script (perhaps with -af silencedetect), so I'm doing it manually.  And on Windows, for some reason. (Obviously, this is all trivial on 'nix, without requiring any kludges.)

I have the unixtools for Windows installed; the version of tr and sed in it reads pipes or redirects at the end as additional input; Windows inserts "" around filenames by default with tab completion. tr -d "\"" (and the sed equivalent of s/\"//g) both barf removing it... (and, there doesn't seem to be a way of directly setting the output of a command to a variable with batch files...) This is ugly, inelegant, and mostly an exercise in unnecessary complexity, because after an hour, it was personal.  With a little more effort, this could be even more spectacularly nasty.

trkludge.bat:
@echo %1 | tr -d "\""

ytstrip.bat:
@echo off
call trkludge %1 >> temp.tmp
set /p output=<temp.tmp
del /q temp.tmp
ffmpeg -hide_banner -t %2 -i %1 -c copy -map_metadata 0 output\%output%
mv %1 pending_delete\

Usage example:

\tmp\in\mvid\inc>ytstrip "RhinoEntertainment-All_Saints-Black_Coffee_Official_Music_Video[v0Xej6Sz5nU].mp4" 4:14

To be more absurd, an improvement would be to use 'for' to loop through all the desired files, prompting just for the time on each one... or, prompting for both pre and post cut (to handle kontor.tv and Spinnin' Record files as well.)



2012-08-30

Attenuating Linux dmesg USB Spam

For some reason, my usb mouse and keyboard, hooked up to a kvm, freeze intermittently when switching back and forth to the system. After wasting way too much time trying to figure out why, my workaround is to switch to a console before switching off system.

However, the console becomes flooded with the USB modules noisy spam, as does dmesg, of course.

Here are my naive, uninformed, lazy kludges to deal with this, and other noise.

First, an example of the usb printk noise:

[87934.587528] usb 2-2.2: USB disconnect, device number 20
[87944.107520] usb 2-2.2: new low-speed USB device number 21 using uhci_hcd
[87944.248817] input: Logitech Trackball as /devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2.2/2-2.2:1.0/input/input27
[87944.248917] hid-generic 0003:046D:C404.0014: input,hidraw0: USB HID v1.10 Mouse [Logitech Trackball] on usb-0000:00:1d.0-2.2/input0
[91382.140601] usb 2-2.2: USB disconnect, device number 21
[91390.507608] usb 2-2.2: new low-speed USB device number 22 using uhci_hcd
[91390.650062] input: Logitech Trackball as /devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2.2/2-2.2:1.0/input/input28
[91390.650176] hid-generic 0003:046D:C404.0015: input,hidraw0: USB HID v1.10 Mouse [Logitech Trackball] on usb-0000:00:1d.0-2.2/input0
A glance at /usr/src/linux/.config shows:
# CONFIG_USB_DEBUG is not set
# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
(this is for kernel 3.5.3)
And in /usr/src/linux/drivers/usb/core/hub.c:

#ifdef CONFIG_USB_ANNOUNCE_NEW_DEVICES
static void show_string(struct usb_device *udev, char *id, char *string)
{
        if (!string)
                return;
        dev_printk(KERN_INFO, &udev->dev, "%s: %s\n", id, string);
}

So, why the spam? Because these aren't wrapped:
        dev_info(&udev->dev, "USB disconnect, device number %d\n",
                        udev->devnum);

                dev_info(&udev->dev,
                                "%s %s USB device number %d using %s\n",
                                (udev->config) ? "reset" : "new", speed,
                                devnum, udev->bus->controller->driver->name);
Solution: Wrap:
#ifdef CONFIG_USB_ANNOUNCE_NEW_DEVICES
        dev_info(&udev->dev, "USB disconnect, device number %d\n",
                        udev->devnum);
#endif

For Xorg.0.log, every switch back and forth results in this:

[ 51354.054] (II) config/udev: Adding input device Logitech Trackball (/dev/input/mouse0)
[ 51354.054] (II) No input driver specified, ignoring this device.
[ 51354.054] (II) This device may have been added with another device file.
[ 51354.054] (II) config/udev: Adding input device Logitech Trackball (/dev/input/event6)
[ 51354.054] (**) Logitech Trackball: Applying InputClass "evdev pointer catchall"
[ 51354.054] (II) Using input driver 'evdev' for 'Logitech Trackball'
[ 51354.054] (**) Logitech Trackball: always reports core events
[ 51354.054] (**) evdev: Logitech Trackball: Device: "/dev/input/event6"
[ 51354.054] (--) evdev: Logitech Trackball: Vendor 0x46d Product 0xc404
[ 51354.054] (--) evdev: Logitech Trackball: Found 3 mouse buttons
[ 51354.054] (--) evdev: Logitech Trackball: Found scroll wheel(s)
[ 51354.054] (--) evdev: Logitech Trackball: Found relative axes
[ 51354.054] (--) evdev: Logitech Trackball: Found x and y relative axes
[ 51354.054] (II) evdev: Logitech Trackball: Configuring as mouse
[ 51354.054] (II) evdev: Logitech Trackball: Adding scrollwheel support
[ 51354.054] (**) evdev: Logitech Trackball: YAxisMapping: buttons 4 and 5
[ 51354.054] (**) evdev: Logitech Trackball: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 51354.054] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2.2/2-2.2:1.0/input/input24/event6"
[ 51354.054] (II) XINPUT: Adding extended input device "Logitech Trackball" (type: MOUSE, id 8)
[ 51354.054] (II) evdev: Logitech Trackball: initialized for relative axes.
[ 51354.054] (**) Logitech Trackball: (accel) keeping acceleration scheme 1
[ 51354.054] (**) Logitech Trackball: (accel) acceleration profile 0
[ 51354.054] (**) Logitech Trackball: (accel) acceleration factor: 2.000
[ 51354.054] (**) Logitech Trackball: (accel) acceleration threshold: 4

[ 58510.586] (II) config/udev: removing device Logitech Trackball
[ 58510.587] (II) evdev: Logitech Trackball: Close
[ 58510.587] (II) UnloadModule: "evdev"

The solution for this spam didn't require a recompile --- only digging through the usual delightful lack of anything resembling documentation for X.
$ X -help
yields:

-verbose [n]           verbose startup messages
-logverbose [n]        verbose log messages

Great! So, what should [n] be to do less log messages? Oh, right, who'd want to know that? 

It turns out it's somewhat similar to kernel logging, so higher numbers are noisier.  Based on the source:
/* Flags for log messages. */
typedef enum {
    X_PROBED,                   /* Value was probed */
    X_CONFIG,                   /* Value was given in the config file */
    X_DEFAULT,                  /* Value is a default */
    X_CMDLINE,                  /* Value was given on the command line */
    X_NOTICE,                   /* Notice */
    X_ERROR,                    /* Error message */
    X_WARNING,                  /* Warning message */
    X_INFO,                     /* Informational message */
    X_NONE,                     /* No prefix */
    X_NOT_IMPLEMENTED,          /* Not implemented */
    X_UNKNOWN = -1              /* unknown -- this must always be last */
} MessageType;
/* Returns the Message Type string to prepend to a logging message, or NULL
 * if the message will be dropped due to insufficient verbosity. */
static const char *
LogMessageTypeVerbString(MessageType type, int verb)
{
    if (type == X_ERROR)
        verb = 0;

    if (logVerbosity < verb && logFileVerbosity < verb)
        return NULL;

    switch (type) {
    case X_PROBED:
        return X_PROBE_STRING;
    case X_CONFIG:
        return X_CONFIG_STRING;
    case X_DEFAULT:
        return X_DEFAULT_STRING;
    case X_CMDLINE:
        return X_CMDLINE_STRING;
    case X_NOTICE:
        return X_NOTICE_STRING;
    case X_ERROR:
        return X_ERROR_STRING;
    case X_WARNING:
        return X_WARNING_STRING;
    case X_INFO:
        return X_INFO_STRING;
    case X_NOT_IMPLEMENTED:
        return X_NOT_IMPLEMENTED_STRING;
    case X_UNKNOWN:
        return X_UNKNOWN_STRING;
    case X_NONE:
        return X_NONE_STRING;
    default:
        return X_UNKNOWN_STRING;
    }
}

So, the easy solution to kill the spam:
$ vi /etc/X11/xinit/xserverrc
change
exec /usr/bin/X -nolisten tcp "$@"
to
exec /usr/bin/X -logverbose 1 -nolisten tcp "$@"

(YMMV. This is with Debian (#!) )
This allows the usual startup messages for debugging, but gets rid of the constant 'Look at me!" kvm switch messages.

And a bit of bonus irritation, on boot, I was getting these friendly messages:

udevd[25342]: failed to execute '/lib/udev/mtp-probe' 'mtp-probe /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2.2 2 20': No such file or directory
udevd[25656]: failed to execute '/lib/udev/mtp-probe' 'mtp-probe /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2.2 2 21': No such file or directory
udevd[26105]: failed to execute '/lib/udev/mtp-probe' 'mtp-probe /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2.2 2 22': No such file or directory
udevd[10556]: failed to execute '/lib/udev/mtp-probe' 'mtp-probe /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2.2 2 23': No such file or directory

My first thought was to remove mtp, since it's a worthless Microsoft abortion... but, since vlc, which is occasionally useful, depends on it, the more proper fix seems to be this:
$ vi /lib/udev/rules.d/69-libmtp.rules
and comment out this line:

# Autoprobe vendor-specific, communication and PTP devices
ENV{ID_MTP_DEVICE}!="1", ENV{MTP_NO_PROBE}!="1", ENV{COLOR_MEASUREMENT_DEVICE}!="1", ENV{libsane_matched}!="yes", ATTR{bDeviceClass}=="00|02|06|ef|ff", PROGRAM="mtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}", RESULT=="1", SYMLINK+="libmtp-%k", MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"

And done! Needles are easier to find when the haystack isn't augmented by rotten weeds...



2012-02-01

Making WMP Keep Its Hooks Off My Disc

Windows 7, x64: For some reason with my settings, Windows Media Player insists on handling a double click on the DVD drive. The behavior I want, is to be able to manually manipulate files under VIDEO_TS. What I definitely don't want is WMP taking its sweet time loading and trying to play the DVD. (And I don't want to have to remember to right-click each time and go to Open... especially since WMP is only still installed for those rare times when using it is necessary.)

I was befuddled, of course, since Autorun/Autoplay is disabled, as is Shell Hardware Detection. Turns out, WMP integrates itself as the handler for the drive:
HKEY_CLASSES_ROOT\DVD\shell\play\command
which has:
"%ProgramFiles(x86)%\Windows Media Player\wmplayer.exe" /prefetch:4 /device:DVD "%L"

While that whole key can be deleted, the elegant solution is to just go to:
HKEY_CLASSES_ROOT\DVD\shell and change 'Default' there from 'Play' to 'Open'.

2011-02-11

Speculations About Staples' Coupons.

This past Black Friday, Staples had a Western Digital Elements 2TB External Hard Drive for $134.99... with $65 off, making it $69.99, with free shipping.
To sweeten the deal, there was a 50 pack of DVD-R for $7.99; granted, Kodak, but it's good enough to keep coffee stains off one's desk.
Add 'em together, and that's $77.98.  Apply a $25 off $75 coupon, and that makes the complete order $52.98.  Good times?

I had four such orders, having bought 3 coupon codes in addition to one that was mailed to me.  All 4 orders went through; however, this being Staples, a day later, I got a nice notice that they'd oversold their inventory; basically, advertised items, allowed people to buy them, and then, "Oops, sorry!"  (Well, mostly; they still would have sold me just the media for... $20.23.  Normal price, plus shipping, and no coupon applied since it was under $75)

It goes without saying I was somewhat ... "bummed"; I mean, selling items they couldn't actually present (realize checkout was completed) seems like a bad business move, if not fraudulent; I think it's enough to sour me from bothering with purchasing from Staples ever again, in fact.

But, trying to make lemon pepper marinade out of the pungent lemons, I looked at the (non-refundable... ) Staples coupons, and noticed they seem to be created thusly:

5 digit coupon code + 10 digit "Staples Rewards" account number + 1 digit checksum (Luhn alogrithm).

So, in theory, if you knew a 5 digit code for a non-expired coupon, you could simply apply that to your Staples Reward Card account number, and potentially have a valid coupon.  I wonder if that's what the people who sell the coupons are doing?

It turns out it's really just this simple, but only when [unknown].

Ancedotal evidence suggests for any given account, one can use 2 coupons of [x] off [y].  My accounts are geographically similar, but have a large gap (4XXXXXXXXX vs 6XXXXXXXXX) between them. Another account, geographically on one of the coasts and in the CCCCCCCCCC range, at one point had the exact same expiration date and 5 digit code, but doesn't appear valid right now with a 47128 coupon (or any of the others).

Since the large gap between numbers (assigned based on when someone signed up for a Reward card?) doesn't seem relevant, I'm leaning towards various coupons being applicable only to certain areas at a given time.

It's also possible the codes are distributed randomly or allocated some other way.

Since it can get tedious doing the Luhn calculations by hand, the Interwebs come to the rescue: http://www.ee.unb.ca/cgi-bin/tervo/luhn.pl

Here is a list of my observed data (obscuring private accounts... non-obscured ones were publicly posted to Fatwallet's forum.)

$25 off $100 EXP 09/27/10 86427 BBBBBBBBBB -
$10 off $40  EXP 11/01/10 18053 AAAAAAAAAA -
$10 off $40  EXP 11/01/10 18053 CCCCCCCCCC -
$25 off $75  EXP 11/30/10 75749 DDDDDDDDDD -
$25 off $75  EXP 11/30/10 75749 EEEEEEEEEE -
$25 off $75  EXP 11/30/10 75749 FFFFFFFFFF -
$25 off $75  EXP 11/30/10 47937 GGGGGGGGGG -
$25 off $75  EXP 11/30/10 47937 HHHHHHHHHH -
$25 off $75  EXP 11/30/10 47937 IIIIIIIIII -
$25 off $75  EXP 11/30/10 47937 JJJJJJJJJJ -
$25 off $75  EXP 11/01/10 57057 AAAAAAAAAA -
$25 off $75  EXP 11/01/10 57057 CCCCCCCCCC -
$25 off $75  EXP 11/01/10 60933 CCCCCCCCCC -
$25 off $100 EXP 12/13/10 81670 AAAAAAAAAA -
$25 off $100 EXP 12/13/10 94744 CCCCCCCCCC -
$25 off $100 EXP 12/27/10 49704 AAAAAAAAAA -
$25 off $100 EXP 12/27/10 60788 CCCCCCCCCC -
$25 off $100 EXP 01/15/11 95928 CCCCCCCCCC -
$25 off $100 EXP 01/15/11 95928 4080118658 0
$25 off $100 EXP 01/16/11 47128 6410756537 6
$25 off $100 EXP 01/16/11 47128 6410756461 9
$25 off $100 EXP 01/16/11 47128 6410756446 0
$25 off $100 EXP 01/16/11 47128 6410756412 2
$25 off $100 EXP 01/16/11 47128 6410756420 5
$25 off $100 EXP 01/16/11 47128 6410756438 7
$25 off $100 EXP 01/16/11 47128 6410756453 6
$25 off $100 EXP 01/16/11 47128 6410756479 1
$25 off $100 EXP 01/16/11 47128 6410755448 7
$25 off $100 EXP 01/22/11 27702 4042459943 5
$25 off $100 EXP 02/05/11 20797 5764615000 0
$25 off $100 EXP 02/28/11 53136 2001299318 0
$10 off $40  EXP 02/28/11 90427 2001299318 0
$10 off $40  EXP 02/28/11 22258 AAAAAAAAAA -
$25 off $75  EXP 02/28/11 47128 AAAAAAAAAA -
$25 off $75  EXP 02/28/11 47128 BBBBBBBBBB - <- Correct Guess!
$25 off $75  EXP 04/06/11 61774 AAAAAAAAAA -
$25 off $75  EXP 04/06/11 61774 6410755448 9 <- Correct Guess!
$25 off $75  EXP 04/06/11 61774 6410756438 9 <- Coreect Guess!
$25 off $75  EXP 04/06/11 61774 6410756453 8 <- Correct Guess!
$25 off $75  EXP 04/06/11 61774 6410756420 7 <- Correct Guess!
$25 off $100 EXP 05/15/11 66783 2001299318 4

2010-11-11

In Defense Of Mr. Rogers

I was reading an article on cracked.com, entitled The 7 Most Random Celebrity Duos Who Hung Out Before Fame which mentions a relationship between George Romero and Fred Rogers, and that Mr. Rogers actually sat through a Dead movie.

Impressed with this, I was inspired to learn more about him, as, like many in my generation, I grew up watching Mister Rogers' Neighborhood.

One link or another led me to a delightful video, where a bunch of wankers on FOX & Friends (no doubt the network's answer to the hags on The View) state how evil Mr. Rogers is:

FOX News Thinks Mr. Rogers is Evil

I don't disagree with the message: most people, especially children, are angry, self-absorbed and selfish twits, whose only chance at 'specialness' is likely growing up to being a commentator on a cruddy TV network.  What this has to do with Mr. Rogers, though, eludes me.

I certainly think the entitlement mentality tightening its stranglehold on our society bites, but that's not what Mr. Rogers was all about.

While the concept is no doubt beyond the grasp of the parties involved with FOX & Friends, Mr. Rogers felt he needn't talk down to his audience; rather,  that they deserved to be treated with the same respect and dignity he, himself, would wish to be shown. 

Coming from the era of the equal rights movements, a guy on TV saying you were alright however you born; whatever color you are, whatever gender you happened to be, was a unique message. It wasn't about achievement or hollow awards and recognition; heck, in our society, quality of effort is rarely rewarded over the spectacle of cheap amusement; Lady Gaga serves to illustrate this, and bad taste in general: I wonder if she would be more the ideal FOX & Friends would prefer for our children. 

Or, perhaps, we need more animated dinosaurs?  More violent cartoons? 

Should we simply tell children the truth about themselves... that they're nasty little brats whose existence is likely to never amount to much more than breeding the next batch of cretinous parasites, who, in turn, will simply grow up to occupy space, as well?

I find it odd there'd be this sort of attack on Fred Rogers from FOX & Friends.

Here's a guy who was a devoted Christian his whole life; an old white man; straight, married, wealthy, hard-working (and pushing the same on his show, where the characters he visits all must work hard to obtain what they have).

But, then, Mr. Rogers was also truly a devout Christian: not just in word alone, but deed as well. 

According to those who knew him, he was the same off set as on; a kind, caring, compassionate human being, who looked for the good in everyone, no matter how cruel and petty they insisted on being. 

This, no doubt, is what must have fueled the ire of the crass hypocrites over at FOX News: such an alien thing, this looking for the positive attributes buried under the cesspool of hostility and malice in people, versus looking for someone or something to blame all of one's own shortcomings and faults on.

Fred Rogers is an aspiration for people with a soul; even for cynical, sarcastic people like me, it's encouraging to know there was someone like him: someone who made an effort to find that one thing good about you, no matter how much of a shit you are.

It's sad such people are so rare in our society, and sadder still they're mocked for displaying the very traits many of the hyenas barking from under the flaps of the conservative tent profess to admire and value.

From PBS' FAQ about how Mister Rogers' Neighborhood helps children get ready to attend school,

"Just as importantly, the programs foster the social and emotional "tools" for learning self-esteem, curiosity, self-control, the ability to pay attention, to handle mistakes, and deal with anger. Children are more able to use their energies for learning if they feel good about themselves, can deal with their feelings, and get along with others."

No doubt useful for life in general, too.  What a shame Gretchen Carlson wasn't fortunate enough to have watched Mr Rogers' Neighborhood when she was a child.

Further reference and perspectives:

PBS FAQ about Mr. Rogers
Snopes Article About Mr. Rogers
Time Article on Mr. Rogers
A More Personal Glimpse at Mr. Rogers

2010-03-24

Microsoft programmers need to be shot first.

I finally get the inside joke: Vista is Microsoft's foray into Clockwork Orange type movie-making; except, instead of being entertaining, it simply leaves one with only the homicidal rage.

This sentence shows considerable restraint, and has replaced 20 pages consisting entirely of obscenities.

I've already decided to limit my exposure to Vista/W7 as much as is possible, and am copying off all my data from the Vista system, so I can wipe it and put on a real operating system (it's a toss up between FreeBSD and a linux strain; ashame Haiku is still not an option).

Vista can barely copy.  Removing a directory around 5gb with tens of thousands of files on XP takes nearly no time at all; on Vista, it's still calculating, ('discovering') 5 minutes later.  That's pathetic.

Vista likes to add the current computer name to your credentials for CIFS shares.  That's pretty aggravating; screwing with local security policies 'sort of fixes' it.  Apparently, Microsoft's rightly decided people shackled with its crappy OS are too stupid to properly provide a domain name when required.  Shrug, I got past it.

But, dear reader, this rant is on account of the fact that Vista CAN'T EVEN PROPERLY COPY TO A DEVICE!

Augh!

There's never a good time for your NAS to die, but when you've just filled up almost two terabyte worth of platterverse with valuable data, ... certainly leans towards 'a worse time than most'.

I'm pretty sure my playing with installing silly SCM addons like Git was to blame; no biggie, right?

(Update 2010-03-25: It was a biggie; I lost everything --- my ReadyNAS is one of the Sparc-based ones; I finally coaxed a Ubuntu livecd into compiling ext2fuse so I could deal with the file system that likes 16k page sizes, only to find lvm wouldn't give me any love by finding a valid volume.)

Well, except, my old ReadyNAS doesn't exactly recover gracefully from having its config files manually edited.  No worries, I'll just use the TFPTD recovery method.

Or not.  Well, no worries, then, I'll just yank the CF card out and dump the raw image to it.

Enter The Vista.

Vista CANNOT concurrently copy files!  I'm typing this in 2010.  15 years ago, on a 386, I could copy files to a floppy drive AND a secondary hard drive.  Really!  And... and... just 5 years ago, I could copy files from two optical drives to multiple hard drives, all at the same time... EVEN on Windows XP!

But, here we are, and Vista shits itself ... oh, my, there's my profanity rearing its ugly head again.

I've been backing up what's left on the Vista system to a crappy Maxtor external drive (truly only slightly better than nothing, but since two of the four drives on the Vista system are also dying... gotta shove bits somewhere) and its been at it for some hours.  Trying to copy the firmware for the NAS to its CF kept resulting in errors writing sectors.  The card reader is hooked up to one of the motherboard's usb headers; the external drive is going direct to soldered usb connectors (and not the one in the card reader, nor any other expansion ports <-> headers).

After failing with Sector Edit (from the same guy who wrote Unstoppable Copier --- and which, oddly enough, doesn't keep copying when faced with an error) and even trying to use Hex Workshop's "Open Disk..." tool to try to copy, I gave in and snagged NTRawrite.

It failed.


D:\tmp>NTRawrite.exe
NTRawrite v1.0.1 by Blake Ramsdell


Please type the image pathname: RAIDiator-3.01c1-p6
Please type the diskette drive: M:
Please insert a diskette and press any key.
Copying image file RAIDiator-3.01c1-p6 to floppy drive M.
........................................]
NTRawrite: The request could not be performed because of an I/O device error.

Went through that hoop a few times, until I got a clue, and realized I could just put it on the command line:


D:\tmp>ntrawrite -f RAIDiator-3.01c1-p6 -d M: -n
NTRawrite v1.0.1 by Blake Ramsdell


Copying image file RAIDiator-3.01c1-p6 to floppy drive M.
*****...................................]
NTRawrite: The request could not be performed because of an I/O device error.

If at first you don't succeed, keep trying... (snipped slightly)

D:\tmp>ntrawrite -f RAIDiator-3.01c1-p6 -d M: -n
Copying image file RAIDiator-3.01c1-p6 to floppy drive M.
****....................................]
NTRawrite: The request could not be performed because of an I/O device error.


D:\tmp>ntrawrite -f RAIDiator-3.01c1-p6 -d M: -n
Copying image file RAIDiator-3.01c1-p6 to floppy drive M.
*******************.....................]
NTRawrite: The request could not be performed because of an I/O device error.


D:\tmp>ntrawrite -f RAIDiator-3.01c1-p6 -d M: -n
Copying image file RAIDiator-3.01c1-p6 to floppy drive M.
**......................................]
NTRawrite: The request could not be performed because of an I/O device error.


D:\tmp>ntrawrite -f RAIDiator-3.01c1-p6 -d M: -n
Copying image file RAIDiator-3.01c1-p6 to floppy drive M.
**************..........................]
NTRawrite: The request could not be performed because of an I/O device error.

Good clean fun, especially when one doesn't have any paint to be mesmerized by as it dries.  At this point, logically, I figured it was time to order a new CF card; after all, this one must be corrupted, if nothing can write to it.  But, then... my copy to the external drive finished.  As a ditch effort, I started shutting down all my open windows, in preparation to try a boot disc (Hiren's or a linux livecd, whichever was handier), and figured I'd give it one more go:

D:\tmp>ntrawrite -f RAIDiator-3.01c1-p6 -d M: -n
NTRawrite v1.0.1 by Blake Ramsdell


Copying image file RAIDiator-3.01c1-p6 to floppy drive M.
****************************************]
Verifying image file RAIDiator-3.01c1-p6 with floppy drive M.
****************************************]
Completed!
D:\tmp>

Yup.

Worked without a single hiccup.

System's a core2duo; I'm positive it can handle copying through two usb ports at once. The external drive, of course, is powered with a wall wart, and not via the usb cable.  I have absolutely no explanation for this; while there must certainly be a rational reason involving gremlins and fairy lanes, I'm going with the obvious: Vista's device stack SUCKS.  In the interest of my own piece of mind, I plan on obtaining another CF card, and dd'ing in 'nix while copying to the same external hdd.  I'm betting it'll work without any issues whatsoever, on the exact same hardware.

Data's important.

Eyecandy isn't.

Microsoft's really taken to heart the success of the mediawhore darlings of Hollywood, and crafted their latest OSes to be pretty (debatable) and useless.

I say good riddance; even Apple's running a modified BSD core these days, and Macs have typically been the machines for the absolutely computer illiterate.

Life's too short to waste time with operating systems that can barely copy data.

[This sentence continued the thought about the shortness of life, but my lawyers informed me it entered the realm of 'real threat' and as such, I was forced to remove it.]

2010-03-02

Vista/Windows 7 - Can't Stop Itself From Being Fresh

Here's the scenario:  I've got two folders open, one with sorted folders, and the other one containing over 500 files that need to go into the sorted folders.  Many of the files need minor correcting: say, a file is named SOMEJUNK-And_The_Rest. It needs to be just And_The_Rest.  So, I hit F2, slash off SOMEJUNK and... my file disappears!  It's gone up to the 'A' section of the file list, while my view is still in the 'S' part.  I then need to go to the 'A's, select the file, and move it to the folder with the sorted directories.

This is annoying.  In XP, editing a name left the file where it was, until you hit F5 to refresh the folder, or changed the sort order by clicking on a column name.

Turns out, there's no fix for this behavior in Vista and Windows 7; no setting to revert to not auto-refreshing/auto-arranging Explorer fews.  According to a Microsoft employee:

"Windows Explorer in Windows 7 uses a new custom list view control that doesn't support custom ordering like the old one did. So in folder views you can no longer drag items around to rearrange them. Basically, pretty much nobody used this (except on the desktop, where it is still supported), and re-implementing it in the new virtualized list view wasn't worth the cost.

You can sort the items by any of their properties, such as name, date, etc.

Why do you want to arrange them differently?
"
(source: Brandon Live's post at http://www.neowin.net/forum/topic/813020-rearrange-folders-in-the-user-folder/)

I especially enjoy the last bit; this is a developer on the Windows Desktop team that asserts no one used a feature, and can't fathom why anyone might have wanted it.  Except, a quick google search on terms relating to turning it off reveals quite the opposite: people are butting their heads against this and desperate for a way to turn off this new 'feature'.

Some further digging shows that Microsoft sort of documents this on MSDN:
"By default, the Windows 7 item view does not support custom positioning, custom ordering, or hyperlinks, which were supported in the Windows Vista list view. Use this interface when you require those features of the older view. If, at some later time, the item view adds support for those features, these options will automatically use the newer view rather than continuing to revert to the older view as they currently do."
(source: http://msdn.microsoft.com/en-us/library/dd378351(VS.85).aspx)

So, Vista and Windows 7 both not only get confused and occasionally can't be bothered to refresh media in one's optical drive, but when it comes to folders, there's no way to stop it from refreshing.  There's a very nice explanation from the Classic Shell developer(s) FAQ:
"Can Classic Shell disable the "Auto-arrange" feature in Explorer?
No. The Auto-arrange is not a feature, but rather the absence of the feature to "remember the position of any icon in any folder". As far as I know there is no switch to turn on and the feature has to be implemented from scratch. This is further complicated by the fact that Explorer in Windows 7 uses a new undocumented control "DirectUIHWND" instead of the documented "SysListView32" control like all the versions before it. Most likely when the functionality was moved from the old control to the new, this feature didn't make it.
I understand many people are upset about this (since it worked fine on Vista and before), but I don't believe this can be solved by a shell extension. You have a better chance complaining to Microsoft about it."


I become more disgusted with Vista daily, but there is a work around on it; in a folder where you're working on your files, simply select one and move it 'out of order'.  This prevents Vista from refreshing after every rename --- for that folder, until you close it.  

The long term solution, obviously, is to use a replacement explorer, or, for those adventurous sorts, buy a Mac or run a 'nix and leave the Redmond nightmare behind.