How to install Frescobaldi on Mac OS X

Marnen Laibow-Koser edited this page Mar 17, 2017 · 17 revisions

[English, français, italiano]


IMPORTANT!!! At the moment Frescobaldi cannot be installed using Homebrew, as its formula is unavailable (though it's still available in the unofficial tap as described below). Please use MacPorts or the prebuilt application bundles until the issue is solved.


These instructions explain how to install Frescobaldi on Mac OS X using the package managers Homebrew and MacPorts. Starting with version 2.17.1, prebuilt application bundles are also provided in the Releases page, so these instructions are mostly a matter of historical interest. The prebuilt releases should be completely sufficient for most users.

Table of contents

Prerequisites

Frescobaldi can be installed on Mac OS X via the package managers Homebrew and MacPorts. If you haven’t already installed any of them, you should choose one of them and install it.

You should also install LilyPond, the music engraving program that is used by Frescobaldi to typeset the music you enter.

Install Frescobaldi

To install Frescobaldi, open the Terminal and enter the command for the package manager you installed:

  • Homebrew: brew install frescobaldi --without-lilypond (if you omit --without-lilypond, Homebrew will install also a copy of LilyPond, but this is not recommended)
  • MacPorts: sudo port install frescobaldi

After the installation, Frescobaldi’s launcher script will be in your $PATH, so you’ll be able to launch Frescobaldi by entering frescobaldi in the Terminal.

Application bundle

The installation process generates also the application bundle Frescobaldi.app, that can be used to launch Frescobaldi.

  • Homebrew: you’ll see a couple of commands at the end of the installation process, that you can copy and paste in order to link the application bundle into your ~/Applications or /Applications directory.
  • MacPorts: you can find the application bundle inside the /Applications/MacPorts directory.

If you don’t want the application bundle, you just need to append --without-launcher (Homebrew) or -app (MacPorts) to the installation command, i.e. you should install with the command:

  • Homebrew: brew install frescobaldi --without-lilypond --without-launcher
  • MacPorts: sudo port install frescobaldi -app

LilyPond and Frescobaldi

If you installed LilyPond in the usual location, i.e. you copied the application bundle LilyPond.app into the /Applications directory, Frescobaldi should automatically recognize it and you should be able to compile your LilyPond source files right away. If for some reasons this doesn’t happen, you need to point Frescobaldi to the correct location: go to “LilyPond Preferences” in Frescobaldi’s preferences, click “Add…” and either click the directory icon and select LilyPond’s application bundle or directly insert its path (the typical value is /Applications/LilyPond.app).

MIDI playback

Frescobaldi will play MIDI files, but only by sending the output to a synthesizer. If you don’t have a hardware synthesizer, you’ll need a software synthesizer. See MIDI playback on Mac OS X.

Upgrade or uninstall Frescobaldi

To upgrade or uninstall Frescobaldi, follow the relevant instructions for your package manager:

Solving problems

If you have any problems installing Frescobaldi on Mac OS X, you can open an issue here on GitHub or post to Frescobaldi’s mailing list.

You should also read the documentation for your package manager, in particular Homebrew’s troubleshooting page or MacPorts’ FAQ.

Known problems

MacPorts: is not in the sudoers file

If you try to use the sudo command while logged in under a non-admin account, you’ll get the message

<username> is not in the sudoers file.  This incident will be reported.

To fix this you can either log in to an admin account through Mac OS X, or you can access an admin account right in the Terminal by entering:

su <admin-username>

and entering the admin account password. Then when you use the sudo command enter your admin account password again.

Advanced topics

Latest version with Homebrew

Updates to the Homebrew formula may not be immediately incorporated into the master repository. If you want to make absolutely sure that you’ve got the latest version of the Frescobaldi formula, you can use Marnen Laibow-Koser’s tap. (For more about taps, see Homebrew’s documentation.)

If you want to do this, then enter brew tap marnen/extras in the Terminal before you install Frescobaldi. This will let Homebrew know about Marnen’s tap (you’ll only ever have to do this once).

When you do this, you may see a message like

Warning: Could not tap marnen/extras/frescobaldi over Homebrew/homebrew/frescobaldi

If you see that, it means that the official repository has a conflicting (likely older) version of the formula, so to get the new version you’ll need to enter brew install marnen/extras/frescobaldi in the Terminal. If you don’t see a message like that, then entering brew install frescobaldi in the Terminal you’ll get the version from Marnen’s tap.

Development releases

Sometimes a development version of Frescobaldi could be released to let “adventurous” users test new features.

In that case, the frescobaldi-devel port in MacPorts will give you the development release. It can be installed exactly as described before, substituting frescobaldi-devel to frescobaldi in the commands.

frescobaldi and frescobaldi-devel can be installed on the same system, but they cannot be active at the same time. If you want to install both of them, start with one, then deactivate it with sudo port deactivate frescobaldi(-devel) and then install the other. When you want to switch between the two versions, you just need to deactivate the currently active version (you can see which one is active with port installed name:frescobaldi) and activate the other (sudo port activate frescobaldi(-devel)).

In any case you can test the latest changes to Frescobaldi by cloning the Git repository of Frescobaldi and launching Frescobaldi from the repository.

Migration from previous installation methods

If you had installed Frescobaldi following Philippe Massart’s Frescobaldi Mac OS X install guide or using Davide Liessi’s Portfile repository, you should migrate to one of the installation methods described before.

Frescobaldi’s settings will be preserved in the migration process. However they may become inaccessible to the old setup, if you hadn’t updated recently, due to a change in Frescobaldi’s settings management.

It is assumed that you want to migrate to the new MacPorts-based installation method, since you already installed MacPorts (Homebrew and MacPorts should not coexist on the same system). If this is not the case, you should remove MacPorts and the directories and files cited in the following sections, then you can follow the instructions for Homebrew in Install Frescobaldi.

Migrate from an installation based on Philippe Massart’s “Frescobaldi Mac OS X install guide”

Follow the instructions for MacPorts in Install Frescobaldi with only one difference: you must insert -f between sudo port and install, i.e. sudo port install frescobaldi becomes sudo port -f install frescobaldi.

The directory /Applications/frescobaldi and the Platypus-generated application bundle shouldn’t interfere with the new setup, but you may delete them to avoid confusion.

Migrate from an installation based on Davide Liessi’s Portfile repository

Due to a couple of changes in the Portfiles submitted to MacPorts, you will need to uninstall and reinstall py-python-poppler-qt4 and frescobaldi(-devel).

  1. Enter sudo port uninstall installed and \( name:frescobaldi name:python-poppler-qt4 \) in the Terminal.

  2. Open the sources.conf file in your favorite text editor; I’ll use nano as an example.

    1. Enter sudo nano /opt/local/etc/macports/sources.conf in the Terminal.
    2. Look for the line beginning with file:// that you previously inserted (in a typical installation of MacPorts, it will be the only line beginning with file:// in that file). Take note of it for step 3 and delete it.
    3. Save the file and exit the editor (if you use nano: ctrl-O to save, enter to confirm the file name, ctrl-X to exit).
  3. Even though it doesn’t interfere with the installation, you may delete the directory that contains Davide Liessi’s Portfile repository (i.e. the one referenced by the line you deleted from sources.conf in step 2).

  4. Follow the instructions for MacPorts in Install Frescobaldi.