Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

programs.macos-terminal.enable

Whether to enable macOS Terminal.

Type: boolean

Default:

false

Example:

true

Declared by:

programs.macos-terminal.preferences

Options controlling how Terminal.app preferences are applied and managed.

Type: submodule

Default:

{ }

Example:

''
  {
    importSettings = true;
    writeFile = false;
  }
''

Declared by:

programs.macos-terminal.preferences.importSettings

Whether to import the generated plist into the com.apple.Terminal preferences domain during activation.

Type: boolean

Default:

true

Declared by:

programs.macos-terminal.preferences.writeFile

Whether to write the generated plist into the ~/Library/Preferences/com.apple.Terminal.plist file during activation.

This is primarily useful for inspection and testing purposes.

Type: boolean

Default:

false

Declared by:

programs.macos-terminal.profiles

Configuration settings for profiles within the Terminal.app application.

Each attribute name is used as the name of the profile, and the value defines the plist-compatible settings for that profile.

Type: attribute set of (submodule)

Default:

{ }

Example:

''
  {
    Basic.settings = {
      FontAntialias = true;
      ShowActiveProcessInTitle = true;
    };
  
    "Red Sands".settings = {
      BackgroundAlphaInactive = 0.5;
      CommandString = "ssh compute";
    };
  }
''

Declared by:

programs.macos-terminal.profiles.<name>.settings

Raw plist-compatible settings for profiles within the Terminal.app application.

This attribute set is intended for simple settings that have a well defined mapping to plist properties.

Properties that are more obscure and require serialization as archived Cocoa objects, for example, are unsupported here - they may require dedicated module options in future.

Attribute names should reflect the name of plist properties understood by the Terminal.app application. Unknown attributes will still be serialized, but may remain unrecognised - and thus unhonored - by the Terminal.app application.

Type: attribute set of (Property list (plist) value)

Default:

{ }

Example:

''
  {
    FontAntialias = true;
    ShowActiveProcessInTitle = true;
    ShowCommandKeyInTitle = true;
  };
''

Declared by: