Archive for March, 2008

How to install Midnight Commander under Mac OS X (the easy way, using Rudix)

I have to admit, I am one of those people who dislikes Linux for one major reason: Whenever you ask for help in any online forum, the knowledgeable people all seem to be command-line devotees, and they invariably give you instructions that involve typing long, arcane commands into the command line. I hate using the command line – if I had wanted to use a command line, I’d never have moved away from MS-DOS, and i cannot understand why Linux geeks insist on using it, and on trying to get others to use it.  Even users of Linux distributions such as Ubuntu have found that when they go online asking how to do some function that could easily be accomplished using one of the GUI tools, often some obnoxious twit helpful person will reply by giving a bunch of stuff (that makes no sense at all to the uninitiated) to type in at the command line. One of the things I like most about Mac OS X is that you almost never have to do anything from a terminal prompt if you don’t want to, and Mac users seem to have a healthy disdain for using a computer as if it were still the 1970’s.

Long ago, when I was using MS-DOS, there was one tool that I had to have on any system I was using: Norton Commander.  The original, dual-pane file manager that made it oh-so-easy to do typical file manipulations like copying and moving files, viewing and editing text files, launching executables, etc.  without typing in DOS commands.  Norton Commander was such a great program that it inspired similar programs on other platforms, such as Total Commander under Windows, and the cross-platform muCommander that runs on just about anything (if it has Java installed).  In the Linux world, KDE users have Krusader, and Gnome users have Gnome Commander. Mac OS X users have a number of choices, including the aforementioned muCommander and Xfolders, both of which are free (there are other options that cost money, and that I frankly think are overpriced).

However, despite your best intentions, there may come a time when you find yourself working at a shell prompt.  Maybe you are working with a Linux server, or on a Mac, maybe you can’t get OS X to come up but you are able to get to a terminal prompt (sadly, this has happened to me twice after Leopard upgrades – Leopard is better in many ways than Tiger was, but the first two versions were definitely not as stable, which makes me wonder why Apple is so willing to cast stones at Vista in some of their online advertising – but I digress). More commonly, you are getting a permissions error on some file and can’t understand why – that’s very rare on the Mac, but it happens, and now you find yourself in the terminal trying to remember how to change permissions or ownership on a file (by the way, in most cases you should be doing this by right-clicking on the file in Finder,  then clicking on “Get Info” in the context menu, and then using the Sharing & Permissions section at the bottom of the information panel. But there are occasions when nothing else seems to work, and you want to go a bit deeper into the guts of the system). It is at those times when Midnight Commander may be the tool you want.

However, up until now there has not been a really easy way to install Midnight Commander on a Mac running OS X (at least not that I’ve seen).  But now, there is a package by Rudá Moura called Rudix, which is described this way:

Rudix features a world class collection of pre-compiled and ready to use Unix compatible software which are not available from a fresh installation of Mac OS X but are popular among other Unix environments. Here you can find utilities, programming languages, libraries and tools delivered as standard Mac OS X packages.

Now, I hear some of you “cut-my-teeth-on-Unix” types screaming, “What about MacPorts? What about the Fink project?”  Those are all well and good if that’s your cup of tea, but they require a much higher lever of Unix “geekiness” to install, and they add a lot of code that the typical user doesn’t need.  Rudix will let you add a whole bunch of Unix utilities if you really want to do that, but if you only want a few needed utilities then the “Custom Install” button in the Rudix installation lets you select exactly what you want, and no more.

So here is how you would install Midnight Commander in Mac OS X, using Rudix:

  1. Go to http://www.rudix.org/ and download the installer package.
  2. Once you have it downloaded, double click on it to begin the installation.  Don’t worry, you don’t have to install the entire package if you don’t want to.  You should see a screen that looks like this (click on the thumbnails to enlarge):
    Rudix installation screen #1
  3. Click on Continue and you may get another screen asking you which volume to install the software on – if you get that, make a selection and then you should get this screen:
    Rudix installation screen #2
  4. Click on Customize – do not click on Install or you will get the whole thing, which is probably not what you want!  That will get you to this screen:
    Rudix installation screen #3
  5. One minor nit about this program – when you click “Customize” you obviously want to select certain packages, so why is everything checked by default? Anyway, go through and UNcheck everything but gettext, glib, and mc.  gettext and glib are dependencies that Midnight Commander needs to run, and are shown in the above screenshot (note they indicate an upgrade only because I had already installed everything when I took these screenshots – for you, they should indicate that these packages are being installed). Then you will want to keep scrolling down and unchecking everything else, except mc:
    Rudix installation screen #4
  6. Now click on Install (not “Standard Install”). You will get a popup window asking you to enter your password, so do it and then sit back and wait a few seconds. When the installer is finished, try typing mc from a terminal window, but note that you may need to complete step 7 before it will work correctly.
  7. The Midnight Commander package (if you view it individually) advises this:

    Post installation

    Open a Terminal application and become root to edit file /etc/profile. Add /usr/local to $PATH environment variable. The profile should appear like this:

    # System-wide .profile for sh(1)

    PATH=”/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin”
    export PATH

    if [ "${BASH-no}" != "no" ]; then
    [ -r /etc/bashrc ] && . /etc/bashrc
    fi

    This does NOT mean you should copy the path line shown above verbatim.  Go into a terminal window and enter this:

    echo $PATH

    This will show you your current path.  What they are telling you is to make sure that /usr/local/bin and /usr/local/sbin are already in your current path (in practice I found that only /usr/local/bin needs to be there, so it’s up to you whether you wish to add both), and if they are already there then you obviously don’t need to do anything to add them. But if they are not there, you can add them in /etc/profile by adding just the two lines that begin with PATH= (but use YOUR path with the necessary additions), and export PATH.

    Or, better yet, you can use
    export PATH = $PATH:/usr/local/bin:/usr/local/sbin
    to append those two directories to the existing path. But, don’t duplicate any directories that are already in the path. (Thanks to fyngyrz for the comment that inspires this suggestion.)

    I found that the easiest way edit /etc/profile from a command prompt was this:
    sudo nano /etc/profile
    But, of course, you can use your favorite plain text editor in place of nano. After making your edits (don’t forget to make sure you have the opening and closing quotation marks in the appropriate places if applicable), close and re-open the terminal window (so it will use the newly-modified path), then try mc again.

Once you have installed Midnight Commander, you will realize that Rudix can be used to easily install many other utilities commonly found on Unix/Linux systems. Personally, I would not go hog wild on this – I’d only install the utilities you actually need, as you need them.  It is easy enough to re-run the Rudix installer when you need another package or two. One of those available packages is inadyn, which is described as “a free, small, easy portable DynDNS client”, and which was the subject of a previous article on this site. I didn’t install that on my Mac, but I did install wget, because so many scripts (such as those written in Perl) expect it to be present.

Three more quick points:  The Rudix installer package doesn’t have an uninstaller.  However, if you use the Rudix installer to install the package named “Rudix”, described as “Command line tool to manage Rudix’s packages” (oooh, how I hate even mentioning that!) you can then uninstall any package by using this syntax from the dreaded command prompt:

sudo rudix -r unwanted.pkg

Also, if for some reason you really can’t (or don’t want to) get the entire Rudix installer, you can grab the individual packages.  There is a list here and the downloads are at Sourceforge.

Finally, if after installing a package you get a message like dyld: Library not loaded: /usr/local/lib/…, that means that there is some library that needs to be installed (such as gettext and glib with Midnight Commander).  If you are totally stuck, you can send the author of Rudix an e-mail (see the last Q&A in his FAQ for a link) and maybe he will be able to tell you which packages you need.  I wrote to him when Midnight Commander wouldn’t install and got a speedy reply telling me which additional packages I needed to install – YMMV, but I have a feeling that most of the packages are either complete, or will make it obvious which libraries they are missing. Midnight Commander is a bit more complex than your average command line tool, after all, so it doesn’t surprise me that it’s a slight bit harder to install (but still very easy if you know how, and hopefully this article has shown you how!).

Edit March 28, 2008: I made an interesting discovery tonight.  Normally I use iTerm as my terminal program, and Midnight Commander runs fine in that. What it does not seem to run so well under is the Terminal.app program that comes with OS X. What specifically does not work in Terminal.app, at least on my system, is the mouse.  Under iTerm, mouse clicks get passed to Midnight Commander in the normal manner, but under Terminal.app that doesn’t seem to be the case.  So, for the “best user experience”, so to speak, I’d suggest downloading and installing iTerm, which has a lot of other nice features you’ll probably appreciate (and did I mention it’s free?).

Edit April 1, 2008: If, for some reason, you want to modify the color theme of Midnight Commander, here are a couple of blog posts that show how to do that:

And, the Midnight Commander manual is another good source of information on this subject.

Command line haters of the world, untype!

Comments (19)

BETA Perl script for Caller ID popups when using Linksys/Sipura devices

Creative Commons License photo credit: bcostin

PLEASE NOTE: This  article has been updated as of December 30, 2008.  This now works with a Mac or Win32 computer (and Linux computers with libnotify installed or readily available, such as those running Ubuntu) and has been updated to reflect that fact. Also, please note that previous versions may have failed on devices/phones with more than two lines – this is (hopefully) fixed as of version 0.7.

If all of the following are true:

You have a Macintosh computer with OS X installed, or a PC with any 32-bit version of Windows installed (basically Windows ‘98 through XP), or any version of Linux with libnotify installed

You have Growl (if you have a Mac) or Snarl (if you have a PC) notifications installed (Note: There is now a version of Growl for Windows but the Windows script has not been rewritten to use it – e-mail me if you would like this, it should only require modification of a few lines of code)

You have a Linksys or Sipura VoIP adapter on your local subnet or home network and receive calls over it

You would like to see Growl, Snarl or libnotify popups on your computer when a call comes in, showing the caller’s name and number, along with the line that the call came in on and the time and date the call arrived (in case you are out when the call comes in)

You have previously run Perl scripts on your computer, OR are reasonably good at following instructions and problem-solving

AND you are willing to run a script that comes with NO WARRANTY whatsoever (if it breaks, you can keep all the pieces)

Then download this file (now at version 0.92), unzip it and read the Instructions.txt file in the folder appropriate to your computer.

This script is being offered under the GNU General Public License, so if you want to modify it to work on other platforms, you can do that under certain conditions (see the Instructions.txt file for details). Mainly, I’d hope that you’d contribute the modifications back (and please leave a comment on this article if you do that).

I don’t have any kind of regular web page up for this yet, for one thing it’s very rough (very little error-checking) and for another I’m very tired, having spent way too many late nights trying to get this to work. So this post will be more terse than most of my posts, but I think most everything you need to know is in Instructions.txt (and for Mac users, the “How to run at login.rtfd” file) inside the .zip file. Feel free to repost this information to other forums if you think anyone else might be interested.

For those Mac users that wish this were an app: I understand that there is an app called Platypus that allows Perl scripts (and any other types of scripts) to be converted to OS X app bundles. However, what it does not seem to include is any way to specify the command line options, or to load any missing Perl modules. So for now, this script will probably only be useable by those with sufficient knowledge to run a Perl script on their Mac. If I were a bit more knowledgeable, I’d build a preference pane to go in System Preferences, and then have the script read that for its configuration options. But I still have no idea how to make an app install missing Perl modules, particularly when OS X does not come with “make” installed until and unless the Developer Tools are installed.

Starting in Version 0.7 there is a minimal logging function, allowing all detected incoming calls (whether answered or not) to be saved to a text file and/or a comma-quote delimited file. I probably could support other simple formats, but don’t even think about asking for anything more complex (like a rather humorous friend of mine who asked for MySQL integration – considering that he knows how little knowledge I have about Perl programming, and that I have even less knowledge about databases, I’m sure he thought it extremely amusing to make that request). The one thing I really don’t like about offering these scripts in Perl is that it requires the user to know how to install modules from CPAN (or an alternative source if using Win32), but I barely know how to do this stuff in Perl and don’t know any other languages (well, except for QBASIC under MSDOS, but that’s even less compatible across platforms than Perl!).

Starting in Version 0.9 you can use a plain-text file of number-name substitutions, so (for example) if calls from a particular number always display a cryptic Caller ID name, you can change them to say “Uncle Bob” (or some other name if Bob’s not your Uncle, or it’s someone else’s number!). Read the sample config file to see the file formats. Note that the plain text file of number-name substitutions is a separate file, not a section of the optional configuration file, and also note that you must enter the numbers exactly as your VoIP provider sends them (in other words, if they send 8005551234 and you use 18005551234 or 800-555-1234 it will NOT match!).

Starting in Version 0.91 you can use a plain-text file of number-path/file substitutions, so (for example) if calls from a particular number are always from Uncle Bob, you can display Uncle Bob’s picture as the icon whenever a call arrives from that number. Read the sample config file for more information. Note that the plain text file of number-path/file substitutions is a separate file, not a section of the optional configuration file, and also note once again that you must enter the numbers exactly as your VoIP provider sends them.

Version 0.92 sets a rather short timeout on page fetches (still much longer than should be necessary to get the data), in an attempt to resolve a problem where very occasionally the script would just go into a coma, not exiting cleanly but still using memory and CPU cycles, without doing anything useful. I have been running this version for over six months now and have yet to see the script go into a coma, as it often seemed to do in previous versions.

Comments (5)

Verizon not upfront on contract terms – Los Angeles Times


Creative Commons License photo credit: thinkpanama

David Lazarus of the The Los Angeles Times blasts Verizon today for withholding contract terms from customers until AFTER they have signed up for service – and some of the contract terms are ones that I sure wouldn’t agree to:

Verizon not upfront on contract terms – Los Angeles Times

Excerpt:

For years, credit card issuers have gotten away with withholding contracts from customers until they actually have the plastic in their hands — a practice that denies many people a fair chance to look under the hood for onerous terms and conditions.Now it looks like Verizon has adopted the same technique.

…..

What really struck [Torrance, California resident Sandy Lough] was the discovery that to receive the promised discount for her bundled plan, she’d have to go online and agree to a 2,000-word “bundle service agreement” and a 7,000-word terms of service for Internet access.

This was the first time she was being presented with the full contract for her new FiOS setup, and the service had already been installed and activated.

The LA Times article goes on to mention some of the more notable terms of the contract.  The interesting thing is that it would appear that this is not simply an oversight – that perhaps Verizon deliberately withholds contract terms from customers until they’ve already committed to the service:

As for why the full contract is withheld until after FiOS has been installed in a person’s home, [Verizon spokesman Cliff Lee] said only that “this is the way we’ve found that works.”

Now, I Am Not A Lawyer, but it seems to me that in the old days a court would never enforce a contract imposed “after the fact”, that is, after the deal had been consummated and the customer had signed on the dotted line.  What has happened to make large corporations think they can simply change the deal at their whim, after a customer has already signed on the dotted line, without giving the customer the same right? Did someone slip a new amendment to the Constitution when I wasn’t looking, saying that corporations can do any sly legal maneuvering they want, and the courts are forced to go along with it, while individual consumers are put at a disadvantage?

This is one reason I’m not making too big a stink about Verizon not offering FiOS in Michigan.  Sure, it would be nice to have those high speeds, delivered via fiber.  But in the long run, I’d rather see a competitive market of many smaller broadband providers than one or two large mammoth corporations that seem to think they can do whatever they want to the consumer.

I know the amendment I’d like to see put into the constitution:

“Only an actual, physical human being shall be given the rights of a person under the law.”

Like I said, I’m not a lawyer, but that about sums it up.  It would mean that no large corporation, with almost infinite legal resources and billions of dollars behind them, would be able to use their wealth to put real people at a disadvantage, because it would be presumed that only the real person had any rights.  Think about that for a while, and how much it would change things from the way things are today!

Edit:  Additional commentary at DSLreports

Comments (2)

Why does it appear to take so long to tune in public/educational/government channel on AT&T’s U-Verse?

If you are a Michigan resident (and especially if you live in Clinton Township) you might want to view this video from the Alliance for Community Media site:

Connecticut Network’s U-Verse vs. Cable Comparison Test in Clinton, MI – Alliance for Community Media on blip.tv

This is the description from the site:

Connecticut Network’s U-Verse vs. Cable Comparison Test in Clinton, MI
This is a side-by-side comparison test of PEG channel navigation on a cable system and on AT&T’s U-Verse.

The test was performed in Clinton, Michigan, by Paul Giguere, President of Connecticut Network, for his testimony submitted to Connecticut’s Joint Energy & Technology Committee Hearing on HB 5814, a bill amending an existing statewide video franchising law.

Gigurere’s testimony can be seen in full here: http://blip.tv/file/747719

The problem with the above video is that the sound seems to disappear after about forty seconds, at least on my system. However, that’s not the case in this version that you can download (if you right click on the link):

Video produced by Connecticut Network – all rights reserved.
http://www.ctn.state.ct.us/compare/AT&T U-verse Launch Tests.wmv

There are two apparent issues here.  One is the relative ease and speed of actually tuning in the channel.  The other is the picture quality – even in the compressed .wmv file linked above, there is a noticeable difference in picture quality between the cable version of the channel and the U-Verse version (note the comparison at the end of the video).

Of course, I did not see these tests being performed, so I don’t know if there are any other factors that may have entered into this comparison (such as unfamiliarity with the navigation of the U-Verse channels).  But since this test was conducted in Michigan, and has been entered as evidence in hearings in Connecticut, I just thought maybe Michigan residents (and perhaps some of our lawmakers that seem to routinely give AT&T everything they want, few questions asked) might like to see this.

There’s one other factor to consider:  When I mentioned I was thinking about posting something about this to a friend, his immediate reaction was, “Who cares? Nobody watches those channels anyway!” And for all I know, he may be right… I doubt those channels have high viewership, except perhaps when there is some contentious issue before a local body of government, or some such thing. Or, perhaps, there’s a hot high school football game on, for those that can’t be bothered to walk or drive the few blocks to the local high school stadium.

Leave a Comment

The Consumerist: 7 Confessions Of A Verizon DSL Tech Support Rep


Creative Commons License photo credit: ThisIsIt2

The Consumerist does a pretty good job of covering the Telecommunications industry (among many others) in regard to customer relations.  Every so often have a little gem like this one:

Insiders: 7 Confessions Of A Verizon DSL Tech Support Rep
Here’s the one that I found funny:

1. We Must Implant The Word Outstanding In Customer Brain’s To Score Higher On Satisfaction Surveys
This is something I always found hilarious, and I am not even entirely sure if they still do it, but agents are required to mention at the end of the call something along the lines of “I hope I’ve provided you with outstanding service today”, the stress always being on the word Outstanding. Now why is this you ask? Well Verizon contracts out a company to call back customers who have recently called into Technical Support and perform a survey about the service they received. The customer is supposed to rate the service from “poor” to “outstanding”. So basically they want to embed that word in your mind so that you rate them higher.

So here’s the deal:  Next time you get a call asking you to rate your Verizon service call, say something like, “Well, the rep implanted in my brain that I’m supposed to use the word outstanding, so mindless zombie that I am, I guess I had outstanding service.  That is what I’m supposed to say, right?”  Then if the call in fact actually went badly, you can add something like, “Except it didn’t really feel that way.  It felt like poor/fair/only good service to me.  But the representative said she was providing me with outstanding service, so maybe that’s what I got!”  Bonus points if you can get the survey taker to laugh out loud!

Leave a Comment

Moved Article

Go here.

Leave a Comment

BETA Perl script for Mac OS X users for Caller ID popups when using Linksys/Sipura devices

This article has been updated.  Please go here.

Leave a Comment

The Morning Sun: Phone service lacking for many Charter customers


Creative Commons License photo credit: billjacobus1

When cable companies try to become phone companies, they don’t always get it right…

Charter Communications announced late Monday what many of its customers already had figured out: Some of its Internet-based telephone lines in mid-Michigan have not been able to receive incoming calls from local and long-distance callers.

Over the past week, many concerned Charter customers have been told by customer service representatives that the problem has not been identified and they do not know when it will be fixed.

Full story here:
Phone service lacking for many Charter customers – The Morning Sun

Comments (1)

Where’s My Cell Phone – Find Your Misplaced Cell Phone Fast


Creative Commons License photo credit: orbz

Quote from the site:

“Where’s my cell phone? I swear it was just right here…” Are the words often muttered as you frantically look for your cell phone only to find it hidden underneath a pile of laundry, in some obscure pocket, or in the car.

We hope you find it eventually; why not find it NOW?

Simply enter the lost phone number and listen for it to ring.
When you find it, hang up and you’re done!

Where’s My Cell Phone – Find Your Misplaced Cell Phone Fast

Of course this may not help if you phone is set to vibrate, and it might be easier to just pick up another phone and call yours, if one is available.  But that’s the point – sometimes another phone isn’t readily available, while a web connection is. If you travel with a laptop and a cell phone, your laptop could help you find that cell phone that you dropped behind the bed, or wherever. We haven’t tested this, so you may want to try it before relying on it.  Thanks to Tom Keating’s blog for the tip on this one.

Comments (1)

Do you have “Telephone Telepathy”?


Creative Commons License photo credit: HAMACHI!

I came across this rather interesting item today:

The Anomalistic Psychology Research Unit APRU at Goldsmiths, University of London is currently engaged in a collaborative research project with Dr Rupert Sheldrake investigating the phenomenon of “telephone telepathy”. This is the fairly common experience of feeling that you know who is calling you on the telephone before you answer it – even on occasions when you had no particular reason to expect a call from that person. Obviously, skeptics and believers in the paranormal have different explanations for what is going on in such situations, but Rupert Sheldrake claims to have demonstrated that a genuinely paranormal phenomenon may be in operation here. The only way to find out is to carry out well controlled empirical studies and that is what researchers at the APRU are doing.

Read the full article at Public Parapsychology (and if you live in the U.K., you may want to volunteer).

The reason I found this interesting is that although I am normally oblivious to anything “paranormal”, I think I may have had a peculiar form of this when I was a kid.  Bear in mind that back in those days we were on a four-party line, with a manual switchboard (they didn’t get dial where I lived until 1960), but it was a Michigan Bell exchange and all the ring current came from the same local ringing generators.  Our signal on the party line was two short rings, and it was the same for any incoming call, local or long distance, and we rarely got long distance calls. Nevertheless, it seemed that whenever one of my aunts or anyone else was calling long distance, I’d hear the first double ring and immediately say “that’s a long distance call.” My folks would ask how I knew and I’d just say that the ring somehow sounded different, although it really didn’t – on an objective level I knew it was exactly the same ring, yet somehow it “sounded different” to me (and not to anyone else) when it was an incoming long distance call.

I think I had pretty much outgrown this by the time the new crossbar exchange replaced the old manual switchboard, and as I say, I am normally a person who couldn’t see anything supernatural in a haunted graveyard on Halloween (I could probably walk through the most haunted place on the planet and not see or feel a thing, although I’m not in any great rush to test that theory).  But when I was a small child, and a long distance call came in, somehow I just knew.  So, I will be very interested to see how these experiments turn out.

Comments (1)