Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Remove the 'Get Mac OS X Software' menu item System
A Co-worker noticed that the idea of having a link to buy MacOS X software right there in the Apple menu was very "Microsoftish", so he tracked down where it was located and I figured out how to get rid of the menu item altogether. (I know there are other links out there to customize (in a way) the Apple menu. This simply tells how to get rid of that menu item in X 10.1.)

Warning: If you're not comfy in the Terminal and/or vi, this might not be for you. An unsuccessful attempt at this has the nasty side-effect of not allowing you to run the Finder... (yes, you'd have to ssh/telnet into the machine to fix it if you mess this up somehow.)

[Editor's caution: I have not tried this myself, and it's quite possible that a mix-up in the editing will render your Finder unusable. Please proceed with caution if you're going to attempt this modification! Read the rest of the article for the how-to.]

The XML file to be edited is located in:
/System/Library/Frameworks/Carbon.framework/Versions/A/
Frameworks/HIToolbox.framework/Versions/A/Resources/
English.lproj/StandardMenus.nib/
[NOTE: Full path is one line; shown split here to reduce width. 'cd' into this directory in the Terminal.

There is a file named objects.xib in the folder (it's the only file). First (as root) MAKE A BACKUP copy of that file somewhere else where you will remember (root, home, wherever, just not the same directory). I would also make sure you have remote access turned on to telnet in and move the original file back, or the have the ability to swap files out either in OS9 or remotely.

You then need to edit the objects.xib file. (I did this in vi, but any text editor should work. However, some of the characters came up differently in BBEdit than they did in vi, so your milage may vary...). Here are the changes (if you start at the top, the line numbers change):

1) Delete (line 205) '<reference idRef="221"/>'

2) Delete the following four lines (lines 188 through 191):
<object class="IBCarbonMenuItem" id="216">
<string name="title">Get Mac OS X Software\xe2\x80\xa6</string>
<ostype name="command">soft</ostype>
</object>
3) Delete the following four lines (lines 16 through 19):
<object class="IBCarbonMenuItem" id="221">
<string name="title">Get Mac OS X Software\xe2\x80\xa6</string>
<ostype name="command">soft</ostype>
</object>
4) In line 11 (<array count="16" name="items">), replace the '16' with '15' - you're removing something from an array.

5) In line 7 (<array count="69" name="allObjects">), change '69' to '68'.

Log out and in again and it should work fine. If you have problems, you may need to replace the edited file with the original.
    •    
  • Currently 0.00 / 5
  • 1
  • 2
  • 3
  • 4
  • 5
  (0 votes cast)
 
[14,721 views]  

Remove the 'Get Mac OS X Software' menu item | 15 comments | Create New Account
Click here to return to the 'Remove the 'Get Mac OS X Software' menu item' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Menu items hack
Authored by: kiwipeso on Oct 31, '01 06:10:22PM

I'd like to add a submenu for my drives, a submenu for each of my app & game folders & a submenu for individual prefs, etc?
Does anyone know how to do this sort of thing?



[ Reply to This | # ]
Menu items hack
Authored by: bombich on Nov 03, '01 09:03:35PM
Download Classic Menu -- it creates another Apple Menu on top of OS X's Apple Menu. It works pretty well, you have to see it to know how good it is.

[ Reply to This | # ]
Menu items hack
Authored by: encro on Nov 16, '03 02:21:11PM

I purchased FruitMenu for this purpose from unsanity.com. Still waiting on a Panther compatibility fix which should be due soon.



[ Reply to This | # ]
URL
Authored by: bhines on Oct 31, '01 06:31:51PM

Looks like the URL that the software item goes to is found in the Menus.strings file one level up from the objects.xib file, if someone just wanted to personalize that one.

-B



[ Reply to This | # ]
Menus.strings
Authored by: zadak on Nov 01, '01 10:41:19AM

My menus.strings-file does just contain ?1H when I open it with pico.

Is that right?

roger



[ Reply to This | # ]
Menus.strings
Authored by: rgoer on Nov 01, '01 11:13:48AM
Hey-- my name's Roger too!

anyway... yeah, pico doesn't seem to like Menus.strings. If you do a more Menus.strings (assuming you are in the right directory) you will get to see what's there... you'd be best off opening it up in vi (if you are comfortable with that) or Textedit.app will also work.

-rgoer

[ Reply to This | # ]
Menus.strings
Authored by: Xeri on Nov 05, '01 12:46:30AM

Perhaps this file is a Unicode file?



[ Reply to This | # ]
Deep!
Authored by: SeanAhern on Nov 01, '01 12:56:57PM

How the heck did you find this? That's buried so deep, I'd never think to look there.

Then again, a recursive grep would find it pretty easily...



[ Reply to This | # ]
Deep!
Authored by: mbanks on Nov 01, '01 06:09:08PM

yep. Exactly right. This is what was used:

find / -type f -exec grep "Get MacOS X Software" {} /dev/null ; <-- There is a backslash before the semi-colon - used to escape it - but it's not posting and I'm too lazy to look up the ASCII for HTML.

The rest was just messing around with the XML file. (That's how we know if you don't do it right you've jacked the Finder.)



[ Reply to This | # ]
to all those who don't heed warnings
Authored by: rebug on Nov 01, '01 05:56:15PM

Pay attention, damnit!
I missed step two, and the result of shortening the array without removing the entry was a zonked "Log Out..."

Let this be a lesson to those who are keen on taking lessons. Let it be an annoyance to those who aren't.



[ Reply to This | # ]
Still works in 10.2 but....
Authored by: panicX on Nov 21, '02 10:23:50PM

Hi,
I tried it and it still works :)
but....
INSTEAD OFF:
4) In line 11 (<array count="16" name="items">), replace the '16' with '15' - you're removing something from an array.
5) In line 7 (<array count="69" name="allObjects">), change '69' to '68'.

IT MUST BE:
4) In line 11 (<array count="19" name="items">), replace the '19' with '18' - you're removing something from an array.
5) In line 7 (<array count="77" name="allObjects">), change '77' to '76'.



[ Reply to This | # ]
Easier Method
Authored by: macavenger on Nov 21, '02 11:44:34PM

There is an easier way to do this if you have the developer tools installed. Simply do the following:

1) Change the ownership of the StandardMenus.nib file and enclosing folder to you.
2) Make a backup copy.
3) Open the StandardMenus.nib file in Interface builder (just double click it normally)
4) Open "Apple" from the instances tab.
5) click once on the "Get Mac OS X Software" menu item in the resulting window, and hit the delete key.
6) Save the file, and change ownerships back to original. Changes take effect immediately, and there is much less chance of messing something up.



[ Reply to This | # ]
will try this next time
Authored by: panicX on Nov 22, '02 09:24:28AM

thnx :)
sounds good, will try this next time



[ Reply to This | # ]
Easier Method
Authored by: pairaka on Nov 23, '02 07:25:28AM

While you're using Interface Builder to get rid of the "Get Mac OS X software" link, you can also take the opportunity to customize the "About this Mac" item, too. F'rinstance, I changed mine to read "About Pairaka," the name of my desktop. Did it on my PB, too.



[ Reply to This | # ]
Easier Method
Authored by: john@ignitionit. on Nov 15, '03 01:42:04PM

How about the other finder menu items such as Go or Edit. Anyway to remove them? I need to set up a machine with very limited Finder menu access. [Simple finder won't work fro various reasons].



[ Reply to This | # ]