Mac OS X Installation
From HerzbubeWiki
Contents |
Overview
Another page in the wild and unsorted conglomerate of Mac OS X pages on this wiki. Here I try to list what software I typically install on top of a shiny new Mac OS X. This page is supposed to be a rough guideline what to do on a new install, but also - and more importantly - it should provide information about how a system looks after the installation. Too often I forget why I had installed this framework, or that plugin, or what I will have to clean when I do an un-install.
Applications
This section contains a roughly categorized list of applications (= things that go into /Applications) that I typically install. To remove the extended file system attribute that triggers the annoying security question on first launch:
xattr -d com.apple.quarantine /Applications/Foo.app
Messaging & communication:
- Adium
- Skype
- Automatically installs a Firefox extension
Development
- Apache Directory Studio (LDAP)
- Eclipse
- GitX
- Apple Developer Tools (includes gcc, Xcode and more)
- Installs into /Developer
- CHUD (supplement to Developer Tools)
- Installs into /Developer
- MagicDraw (Community Edition)
- Requires registration when the program is started the first time. Simply provide user ID and email address of my account at nomagic.com; the program will then go and perform registration "automagically"
- Squeak
- DiffMerge
- 0xED
- Iceberg
Audio
- Audacity
- Requires Lame and FFmpeg to be separately installed. There are two options for doing this:
- In theory, you can install Lame and FFmpeg via Fink. In this case the libraries will be installed into /sw/lib and you will have to navigate yourself to that directory from Audacity's preference window (cmd+shift+g). The problem here is that Fink might give you the wrong versions of the libraries. The last time I tried this, I was able to convince Audacity to work with Lame, but not with FFmpeg.
- For the above problems, it is usually easier to download the appropriate library versions in the way that is recommended on the Audacity wiki. Usually this means: Download Lame from the Lame website, and the FFmpeg installer from the Audacity website. To find the appropriate links: 1) Open Audacity preferences 2) On the "Libraries" page you will find two "Download" buttons for the two libraries. 3) Click these buttons and follow the instructions on the wiki page that opens in your web browser. If this option is used, the libraries will be installed into /usr/local/lib.
- Or install Lame and FFmpeg via Fink. In this case the libraries will be installed into /sw/lib and you will have to navigate yourself to that directory from Audacity's preference window (cmd+shift+g)
- mpc2aiff
- Amadeus (Shareware)
- SIDPlay
- Requires the download of the HVSC collection
- mAC3dec
- CocoModX
- Audio Hijack Pro
Imaging
- The Gimp
- Scripts go into ~/Library/Application Support/Gimp/scripts
- May require XQuartz if the system X11.app is too old
- Goldberg (development seems to have stopped with the release of 2.5.1 in January 2008)
- Hugin
- Versions prior to 2010.4 required Autopano to be installed separately into /Library/Application Support/Hugin/Autopano. Autopano was part of the .dmg.
- icon2icns
- icns2icon
- icon2ico
- Icon2PNG (extract icon from a file [e.g. icns], folder or volume and convert it to .png)
- img2icns
- Pic2Icon (convert arbitrary images to icons)
- Iconographer (development has stopped, the last available version 2.5 can be officially unlocked with the following information: name = "Iconographer is now free", registration code = "HG066414")
- iPhoto (6.0.6 is the last version in the iPhoto 6 series)
- iPhoto2Gallery
- Installs into /Applications/iPhoto - yuck! but the plugin is really nice
- Phoenix Slides
- CandyBar
Multimedia/Video
- MPlayer OSX Extended
- VLC
- An internet plugin for web browser support exists, but it must be downloaded & installed separately
- HandBrake
- RealPlayer
- Automatically installs an Internet Plugin
Games
- Chopper (1.0.3 is the latest version available for free)
- krank (development seems to have stopped with the release of version 7 in February 2007)
- MyMahj (I use the OpenGL version MyMahjGL)
- Allenroids
- AnotherMine
- GLTron
- Goban
- NeverBall
- Uses .pkg installer format to place stuff in /Library/Application Support/Neverball Data
- Generates an Uninstaller in the installing user's home directory; I prefer to move the Uninstaller into the above directory
- Places highscores, configuration etc. in ~/.neverball
- Pawns
- ScummVM
- Spaceward Ho! (Shareware)
- World of Goo (Demo)
- Zoom (Z-Machine emulator to play Infocom games)
- Ballerburg
- Additional castles need to be imported into the game and are saved into ~/Library/Preferences/net.earthlingsoft.Ballerburg.castles
- Oolite
- Pac the Man X
- Boxer
- Quinn
Networking
- Firefox
- Cyberduck (FTP)
- iCab
- Chicken of the VNC (JollysFastVNC may become an alternative)
- Vine Server (OSXvnc)
- Only if the system is <= 10.3 (>= 10.4 includes Remote Desktop, which VNC clients can connect to)
- Wireshark
- May require XQuartz if the system X11.app is too old
- Before Wireshark can be used, the permissions on /dev/bpf* must be changed because by default only root has access to these network devices
- As an admin, say sudo chown patrick /dev/bpf*. This change will be lost when the system reboots the next time
- The Wireshark disk image contains a startup item that will perform the permission change automatically on every system reboot; I don't install this because I don't use Wireshark very often
Emulators & Virtualizers
- Hatari
- Requires SDL to be installed as a framework in /Library/Frameworks
- Ships with the open source EmuTOS, but a real TOS image is required for many games; see smb://osgiliath/media/Software/Images/Atari/TOS
- VirtualBox. Although useful, this application is disgustingly invasive and installs its components all over the system:
- Installs kernel extensions
- Installs a system startup item (/Library/StartupItems)
- Installs a couple of utilities into /usr/bin
- I have even found a directory here: /Library/Python/2.5/site-packages/vboxapi
- Q (QEMU port & frontend)
- Power64 (Shareware)
Entertainment
- Stellarium
- Celestia
- MacSaber
- MacDoku (play Sudoku)
- SudokuDan (generate & print Sudoku puzzles)
- Google Earth
- Starting with version 5, Google Earth forces the user to install the Update Engine software (an open source project developed by Google)
- The Update Engine seems to get installed into the user's home directory (~/Library/Google)
- Starting with version 6, a browser plugin may optionally be installed (goes into
/Library/Internet Plug-Ins)
- Symmetries
Utilities
- StuffIt Expander
- TinkerTool
- XRay (Shareware)
- Optionally installs a contextual menu item
- MacTheRipper
- iChm
- Smultron
- TextWrangler
- Optionally installs a few command line utilities
- Newer versions of TextWrangler may install more tools, but TextWrangler 3.5 installed the following:
edit,twdiff,twfind - Since TextWrangler 3.5 these are installed into
/usr/local/bin, but previous versions (for instance TextWrangler 3.0) installed into/usr/bin(argh!)
- Pacifist (Shareware)
- unpkg
- UnicodeChecker
- Disk Inventory
- FairMount (requires VLC to be installed)
- Jar Inspector
- Sloth (a front-end to the lsof command line utility)
Productivity
- FreeMind
- LibreOffice (replaces OpenOffice.org since Sun's takeover by Oracle), including the German language pack
- Toast Titanium (Commercial)
- Optionally installs a contextual menu item
- Popcorn (Commercial)
- Optionally installs a contextual menu item
- DVDRemaster (Commercial)
- AppleWorks (Commercial)
Privacy
- GPG Keychain Access
- Gpg Tools
- TrueCrypt
- Installs the MacFuse preference pane, framework and libraries (in /usr/local/lib)
Other
- XQuartz (replaces X11.app)
- Must be re-installed every time after a Mac OS X update has been installed
- MAMP
- Contains a Dashboard widget that must be manually installed
- iSerial Reader
- Mactracker
Frameworks, plugins & other stuff in /Library or /System/Library
Stuff in this section typically goes into /Library. Specific locations:
- Internet plugins are installed into /Library/Internet Plug-Ins
- QuickTime components are typically installed into /Library/QuickTime
- /Library/Components may also contain QuickTime components (e.g. XiphQT); I don't know what else may be place into this location
- Application-specific stuff is installed into /Library/Application Support/foo
- Kernel extensions are installed into /Library/Extensions, but sometimes also in /System/Library/Extensions (this is even documented in the Kernel Programming Guide, section "Kernel Extension Overview")
- Frameworks are installed into /Library/Frameworks
- Screen Savers are installed into /Library/Screen Savers
- Startup items are installed into /Library/StartupItems
- Dashboard widgets are installed into /Library/Widgets
- Preference Panes widgets are installed into /Library/PreferencePanes
- QuickLook plugins are installed into /Library/QuickLook
QuickTime components
- Flip4Mac WMV (play Windows Media files in QuickTime Player and view Windows Media content on the Internet using Safari and other web browsers)
- Installs several QuickTime components for playing, exporting and importing
- Also installs an Internet plugin for integration with web browsers (replaces the plugin provided by MS Windows Media Player 9)
- Also installs a Preference Pane
- Also installs a licensing framework called "TSLicense" (TS = Telestream, the organization that offers Flip4Mac WMV)
- XiphQT
- Installs into /Library/Components (not into /Library/QuickTime, as one might expect from a QuickTime component)
- Perian
- Also installs a Preference Pane
Internet plugins
- SIDPlug
- VLC
- RealPlayer
- Flash Player
QuickLook plugins
- SIDQLGenerator
Preference Panes
- iQuip
- SystemPreferences.app must be closed when this pane is installed, otherwise installation will (mysteriously) fail
- Also installs a system StartupItem
- RCDefaultApp
- RCEnvironment
- Arcana Startup Sound
- Also installs a system startup item /Library/StartupItems/ArcanaStartupSound
- When the startup item starts or stops, it loads or unloads a kernel extension ArcanaPRAM.kext (appearing with the identifier arcana.PRAM) that is located as a resource inside the StartupItem
- GPGPreferences (see this page for details)
- Diablotin
- MacFUSE (installed as part of TrueCrypt)
- GeekTool
Frameworks
- Python (download from python.org)
- I usually install several versions that complement the system-provided Python (2.5 in Leopard)
- Optional symlinks in /usr/local/bin, but I don't create these as they might clash with Fink or the system
- SDL (download from libsdl.org)
- Required for Hatari
- MacFUSE (installed as part of TrueCrypt)
Dashboard widgets
- SF Meteo
- MAMP Control
Kernel extensions (list loaded kernel extensions with the kextstat command line utility)
- com.roxio.TDIXController
- The kernel extension is located in /Library/Application Support/Roxio/TDIXController.kext
- The kernel extension is loaded with the help of the program /Library/Application Support/Roxio/TDIXSupport; this program is setuid root, which allows any user to load the kernel extension on demand
- Toast executes TDIXSupport and loads the kernel extension when it is used to open and mount a .toast disk image. For instance, double click the image file with the extension .toast in the Finder and Toast will launch, load the kernel extension and mount the image
- The kernel extension is not loaded when the image is mounted using Disk Utility or DiskImageMounter
- The difference is visible (at least on my machine with 10.5.8 installed) in the Finder: If Toast mounts the image the Finder displays a CD/DVD symbol, if DiskImageMounter mounts the image the Finder displays a white drive symbol
- Apparently Toast uses the kernel extension to trick Mac OS X into thinking that the mounted image is a physical CD/DVD drive with a disk in it
- arcana.PRAM (see "Startup Sound" preference pane above)
- at.obdev.nke.LittleSnitch (see "Little Snitch" below)
Other
- Growl
- Installs a Preference Pane
- Provides helper apps such as GrowlTunes.app
- Little Snitch
- Installs a kernel extension to /System/Library/Extensions/LittleSnitch.kext
- Installs a global launch daemon into /Library/LaunchDaemons, and two global launch agents into /Library/LaunchAgents
- The actual daemon/agent binaries are installed in /Library/Little Snitch
- Global rules go to /Library/Application Support/Objective Development/Little Snitch
- Per-user rules go to ~/Library/Application Support/Little Snitch
Command line
Stuff in this section usually goes into /usr/local.
My own set of shell scripts
- Utilities go to /usr/local/bin
- Support files go to /usr/local/lib
- Shell environment stuff (including the setup for Fink) goes to /usr/local/etc
- Users who want to enable this must create two symlinks in their home directory:
cd ~ ln -s /usr/local/etc/linked.bashrc .bashrc ln -s /usr/local/etc/linked.profile .profile
- Cron stuff goes to /usr/local/etc/cron
Other stuff in /usr/local:
- Lame and FFmpeg in /usr/local/lib, for the use of Audacity
- ASCIIMoviePlayer in /usr/local/bin
- Create a symbolic link /usr/local/bin/gpg that points to /sw/bin/gpg, to make MacGPG utilities happy
- MacFUSE in /usr/local/lib (installed as part of TrueCrypt)
- Graphviz all over
/usr/local(download link); could also be installed via Fink, but installing the pre-built binaries via .pkg is much easier (also includes headers, man pages, and a small Mac OS X application bundle)
Stuff outside of /usr/local
- Fink (in /sw). See Fink for the list of packages that I usually install.
Installing a new Mac OS X system
This section provides an ultra-short overview of how I usually proceed when installing Mac OS X.
Users
- The first user created during installation is the Administrator (I usually name this user "admin")
- The administrator creates all other users and makes them non-privileged users
- Installing programs and performing other system configuration is done while logged in as the administrator
- within the GUI, Mac OS X will automatically request the admin password when it is necessary
- within the shell environment (Terminal.app), the administrator needs to use sudo
Networking
- The MAC adress can be found in the System Preferences in the "Network" module
- The computer name can be set in the System Preferences in the "Sharing" module; on the command line the computer name needs to be set with sudo hostname nargothrond. Note: This setting is periodically lost for unknown reasons and must be redone.
- Edit /etc/hosts and add names of systems in my LAN
Volumes, and where to store applications and data
- In earlier times I usually advocated creating several volumes (partitions), e.g. one for storing data, one for installing applications, etc.
- I have given up on this approach and now create only one single large partition; the reasons
- I never really had any benefit from this partitioning scheme
- The natural place to install Mac OS X applications is the /Applications folder; Apple applications always go there, and if you move them somewhere else (e.g. /Volumes/app) all sorts of things might start to go wrong (system updates might not work properly, applications might simply not run, etc.); if you do not move them you suddenly have two locations where you need to look for applications
- Naturally I chose to make the root volume rather small (in comparison to other volumes), which usually resulted after some time in space problems (e.g. I might suddenly become unable to burn a CD or DVD, because the Finder's burning facility seems to store an image in the root volume)
- To sum it up: I wanted to use the system, not fight it, so I just stopped partitioning, even though I am still convinced that it is a good idea
Shell/Terminal configuration
- See this page for details
Printer configuration (the following stuff works for my HP LaserJet 1300n)
- Turn on printer
- Printer discovery should work in the background through Bonjour
- Open the "Print & Fax" module in the System Preferences
- Click the "+" button to add a new printer
- The printer should appear in the following window where you can select and add it to the system
Certificates
- The following certificates should be installed in the system keychain (/Library/Keychains/System.keychain) so that all users have access to them (unfortunately, Firefox does not use the system keychain)
- CAcert (http://www.cacert.org/index.php?id=3, download DER formatted files)
