Version 1 (modified by rhwood@…, 15 years ago) (diff)

Import from DarwinPorts Wiki


GNOME is a project, a foundation, a developer's platform (with a related set of language bindings), and a user's desktop environment. New releases of the platform and desktop are released at the same time.

Version Scheme

The GNOME Foundation uses the version scheme where odd minor versions indicate that a package or product is a development version, such that GNOME 2.15.x is a development version, considered unstable, while 2.14.x is a release version that is considered stable.

Running GNOME

The GNOME desktop may be run by issuing the command gnome-session & from an xterm, or by adding the command exec gnome-session to your ~/.xinitrc file. If you use dbus (version >= 0.60), you may prefer to use the command exec dbus-launch gnome-session in ~/.xintrc to allow GNOME applications to take advantage of the dbus interprocess communications system.


The environment that GNOME runs in requires that the following variables be set. These are shown with the values for a default MacPorts installation:

/opt/local/share (if someone knows why, please tell us)
/opt/local/share (if someone knows why, please tell us)
/opt/local/etc/xdg (if someone knows why, please tell us)

See the sample .xinitrc files for examples of how to set these variables.

Sample .xinitrc Files

The following ~/.xinitrc requires Apple's X11? and dbus:

# make sure X11 is MacPorts and /usr/local aware PATH=$PATH:/opt/local/bin:/opt/local/sbin:/usr/local/bin export PATH

# make the freedesktop menu entries work export XDG_DATA_DIRS=/opt/local/share export XDG_DATA_HOME=/opt/local/share export XDG_CONFIG_DIRS=/opt/local/etc/xdg

# use Apple's window manager exec quartz-wm &

# start GNOME exec dbus-launch gnome-session

This ~/.xinitrc works with any X11? and uses GNOME's builtin window manager, Metacity:

# make sure X11 is MacPorts and /usr/local aware PATH=$PATH:/opt/local/bin:/opt/local/sbin:/usr/local/bin export PATH

# make the freedesktop menu entries work export XDG_DATA_DIRS=/opt/local/share export XDG_DATA_HOME=/opt/local/share export XDG_CONFIG_DIRS=/opt/local/etc/xdg

# use GNOME's window manager exec metacity &

# start GNOME exec gnome-session

Note that the second sample ~/.xinitrc also does not require that dbus be installed. Feel free to mix and match the differences between these two sample files to suit your own needs.


GNOME settings are stored in a number of hidden directories in your home directory:


On MacPorts

The GNOME ports are mostly a mix from the GNOME 2.12.3 and 2.14.1 release versions, although not all packages in the release have been ported as of yet. Based on what happened when GNOME 2.12.0 was released, we aim to provide a workable GNOME release based on x.y.x where y is even and x is greater than 0.

A semi-automated packaging status report is updated regularly.<br> Status for GNOME version 2.12.3 (no longer updated) and 2.14.3 (current)



The gnome-darwinports mailing list is available for your assistance, and is the best place to resolve issues running the MacPorts distribution of GNOME. Note that since most of the GNOME ports are maintained by gnome-darwinports@… this mailing list also gets all bug reports for our GNOME ports.

Meta Ports

A meta port is a port that is simply a collection of dependencies on other ports. There are a number of GNOME-oriented meta ports in MacPorts:

This meta port is currently a shorthand for gnome-desktop-suite with some variants for additional software.
This meta port contains all the software packages that the GNOME Foundation distributes as part of the GNOME desktop. This meta port also includes the gnome-platform-suite.
This meta port contains all the libraries and support programs that GNOME software written in the C language may require to run. This corresponds to the GNOME Developer's Platform from the GNOME Foundation.
This meta port is a collection gnome-bindings-language meta ports that include the libraries required for GNOME programs in C++, Perl, and Python to run. This contains the GNOME Foundation's officially supported languages with the exception of Java.


The variants +with_gnome and +without_gnome affect how ports build in the DarwinPorts system vis-a-vis GNOME, while +use-dp-deps and +use-sys-deps affect how ports handle dependencies.

adds support for building the port with GNOME hooks. This variant is made a global variant with the installation of the port gnome-desktop-suite. (A couple of ports use the variant +gnome instead.)
builds the port without GNOME hooks
(sometimes +use-dp-deps) force the use of dependencies from DarwinPorts instead of testing to see if the dependency is already satisfied somewhere else on the system. This is the default behavior for most of the GNOME ports.
(sometimes +use-sys-deps) use libraries or programs already available on the system to satisfy dependencies instead of the DarwinPorts version. This behavior is optional and discouraged because Apple may change program behavior unexpectedly and because versioning may get out of whack if multiple package maintenance systems are used (DarwinPorts, Fink, hand-built packages, and packages downloaded from elsewhere).


The following TODOs are specific to GNOME packaging on MacPorts. See also the OpenDarwin bug reports assigned to gnome-darwinports.

  • Fix excessive dependencies between GNOME ports --[[User:Rhwood|rhwood]] 16:57, 28 January 2006 (GMT)<br>This has been done for the ports in gnome-platform-suite and gnome-bindings-suite --[[User:Rhwood|rhwood]] 10:56, 17 March 2006 (GMT)
  • Fix scrollkeeper handling. See bug report 6912 for DarwinPorts implementation details and see gnome-doc-utils Migration for GNOME packaging status. --[[User:Rhwood|rhwood]] 10:00, 12 April 2006 (GMT)
  • Move the Packaging Status page from .Mac to OpenDarwin servers. --[[User:Rhwood|rhwood]] 02:10, 25 January 2006 (GMT)
  • Clean the dependency structures by making those ports that can depend upon gnome-platform-suite. This may also have the side effect of causing some GTK/GNOME-based applications to gain optional enhancements. --[[User:Rhwood|rhwood]] 02:10, 25 January 2006 (GMT)
  • Create a gnome-platform-extras port containing additional libraries that would enhance GTK/GNOME-based applications without requiring the installation of packages from gnome-desktop-suite. --[[User:Rhwood|rhwood]] 02:10, 25 January 2006 (GMT)
  • Create a gnome-desktop-extras port containing additional applications that extend the GNOME desktop. --[[User:Rhwood|rhwood]] 02:10, 25 January 2006 (GMT)
  • Create a gnome-office-suite port containing the applications in the GNOME Office. --[[User:Rhwood|rhwood]] 02:10, 25 January 2006 (GMT)
  • Create a gnome-office-extras port containing additional office-type applications. --[[User:Rhwood|rhwood]] 02:10, 25 January 2006 (GMT)
  • Create a gnome-devel-suite port containing GNOME development tools. --[[User:Rhwood|rhwood]] 02:10, 25 January 2006 (GMT)

Specific Ports


gdm uses PAM (Pluggable Authentication Modules) to authenticate users. PAM is a core part of the Mac OS X security system, and as such there is a manual process that needs to be completed before gdm can be used:

In Terminal: # cd /etc/pam.d # sudo cp login gdm

This creates a file that allows logging into gdm to behave basically identical to logging into Mac OS X using the standard means. Tweaking the settings of /etc/pam.d/gdm will change the authentication possibilities for gdm.

Additional Resources

[[Category:DarwinPorts]] [[Category:Gnome]]

Attachments (1)

Download all attachments as: .zip