---
id: macos
title: macOS
sidebar_label: macOS
---

import InstallHomebrew from "./_homebrew.md";
import Next from "./_next.md";
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";

## Set up your terminal

As the standard terminal only supports [256 colors][256-colors], we advise using
[iTerm2][iterm2] or any other modern day macOS terminal that supports ANSI characters.

:::info
To display all icons, we recommend the use of a [Nerd Font][fonts].
:::

## Installation

<Tabs
  defaultValue="homebrew"
  groupId="install"
  values={[
    { label: 'Homebrew', value: 'homebrew', },
    { label: 'MacPorts', value: 'macports', }
  ]
}>
<TabItem value="homebrew">

<InstallHomebrew />

</TabItem>
<TabItem value="macports">

You can install Oh My Posh via [MacPorts] which is maintained by the [community][ports page].

```bash
sudo port selfupdate
sudo port install oh-my-posh
```

Oh My Posh will be installed at `/opt/local/bin/oh-my-posh`.

Updating is done via:

```bash
sudo port selfupdate
sudo port upgrade oh-my-posh
```

More details on the [ports page] for Oh My Posh.

</TabItem>
</Tabs>

## Troubleshooting

:::tip
If you see an error that says, "[conditional binary operator expected][outdated-bash]" you probably need to update to a newer version of bash.

```bash
brew install bash
grep -qxF "$(brew --prefix)/bin/bash" /etc/shells || sudo bash -c 'echo "$(brew --prefix)/bin/bash" >> /etc/shells'
chsh -s "$(brew --prefix)/bin/bash" $USER
```
:::

<Next />

[256-colors]: /docs/configuration/colors#standard-colors
[iterm2]: https://iterm2.com
[fonts]: /docs/installation/fonts
[MacPorts]: https://www.macports.org
[ports page]: https://ports.macports.org/port/oh-my-posh/
[outdated-bash]: https://github.com/JanDeDobbeleer/oh-my-posh/discussions/3429
