summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md284
1 files changed, 191 insertions, 93 deletions
diff --git a/README.md b/README.md
index 1cbfa09e2..63f2e15d8 100644
--- a/README.md
+++ b/README.md
@@ -169,148 +169,228 @@
- A [Nerd Font](https://www.nerdfonts.com/) installed and enabled in your terminal (for example, try the [Fira Code Nerd Font](https://www.nerdfonts.com/font-downloads)).
-### Getting Started
+### Step 1. Install Starship
-**Note**: due to the proliferation of different platforms, only a subset of supported platforms are
-shown below. Can't see yours? Have a look at the [extra platform instructions](https://starship.rs/installing/).
+Select your operating system from the list below to view installation instructions:
-1. Install the **starship** binary:
+<details>
+<summary>Android</summary>
- #### Install Latest Version
+Install Starship using any of the following package managers:
- ##### From prebuilt binary, with Shell:
+| Repository | Instructions |
+| ---------- | ---------------------- |
+| [Termux] | `pkg install starship` |
- ```sh
- sh -c "$(curl -fsSL https://starship.rs/install.sh)"
- ```
+</details>
- To update the Starship itself, rerun the above script. It will replace the current version without touching Starship's configuration.
+<details>
+<summary>BSD</summary>
- **Note** - The defaults of the install script can be overridden see the built-in help.
+Install Starship using any of the following package managers:
- ```sh
- sh -c "$(curl -fsSL https://starship.rs/install.sh)" -- --help
- ```
+| Distribution | Repository | Instructions |
+| ------------ | --------------- | --------------------------------- |
+| **_Any_** | **[crates.io]** | `cargo install starship --locked` |
+| FreeBSD | [FreshPorts] | `pkg install starship` |
+| NetBSD | [pkgsrc] | `pkgin install starship` |
- #### Install via Package Manager
+</details>
- ##### With [Homebrew](https://brew.sh/):
+<details>
+<summary>Linux</summary>
- ```sh
- brew install starship
- ```
+Install the latest version for your system:
- ##### With [Scoop](https://scoop.sh):
+```sh
+sh -c "$(curl -fsSL https://starship.rs/install.sh)"
+```
- ```powershell
- scoop install starship
- ```
+Alternatively, install Starship using any of the following package managers:
-2. Add the init script to your shell's config file:
+| Distribution | Repository | Instructions |
+| ------------------ | ----------------------- | ------------------------------------------------------------- |
+| **_Any_** | **[crates.io]** | `cargo install starship --locked` |
+| _Any_ | [conda-forge] | `conda install -c conda-forge starship` |
+| _Any_ | [Linuxbrew] | `brew install starship` |
+| Alpine Linux 3.13+ | [Alpine Linux Packages] | `apk add starship` |
+| Arch Linux | [Arch Linux Community] | `pacman -S starship` |
+| CentOS 7+ | [Copr] | `dnf copr enable atim/starship` <br /> `dnf install starship` |
+| Fedora 31+ | [Fedora Packages] | `dnf install starship` |
+| NixOS | [nixpkgs] | `nix-env -iA nixos.starship` |
+| Gentoo | [Gentoo Packages] | `emerge app-shells/starship` |
+| Manjaro | | `pacman -S starship` |
+| NixOS | [nixpkgs] | `nix-env -iA nixpkgs.starship` |
+| Void Linux | [Void Linux Packages] | `xbps-install -S starship` |
- #### Bash
+</details>
- Add the following to the end of `~/.bashrc`:
+<details>
+<summary>macOS</summary>
- ```sh
- # ~/.bashrc
+Install the latest version for your system:
- eval "$(starship init bash)"
- ```
+```sh
+sh -c "$(curl -fsSL https://starship.rs/install.sh)"
+```
- #### Fish
+Alternatively, install Starship using any of the following package managers:
- Add the following to the end of `~/.config/fish/config.fish`:
+| Repository | Instructions |
+| --------------- | --------------------------------------- |
+| **[crates.io]** | `cargo install starship --locked` |
+| [conda-forge] | `conda install -c conda-forge starship` |
+| [Homebrew] | `brew install starship` |
+| [MacPorts] | `port install starship` |
- ```sh
- # ~/.config/fish/config.fish
+</details>
- starship init fish | source
- ```
+<details>
+<summary>Windows</summary>
- #### Zsh
+Install Starship using any of the following package managers:
- Add the following to the end of `~/.zshrc`:
+| Repository | Instructions |
+| --------------- | --------------------------------------- |
+| **[crates.io]** | `cargo install starship --locked` |
+| [Chocolatey] | `choco install starship` |
+| [conda-forge] | `conda install -c conda-forge starship` |
+| [Scoop] | `scoop install starship` |
- ```sh
- # ~/.zshrc
+</details>
- eval "$(starship init zsh)"
- ```
+### Step 2. Setup your shell to use Starship
- #### PowerShell
+Configure your shell to initialize starship. Select yours from the list below:
- Add the following to the end of `Microsoft.PowerShell_profile.ps1`. You can check the location of this file by querying the `$PROFILE` variable in PowerShell. Typically the path is `~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1` or `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on -Nix.
+<details>
+<summary>Bash</summary>
- ```powershell
- Invoke-Expression (&starship init powershell)
- ```
+Add the following to the end of `~/.bashrc`:
- #### Ion
+```sh
+eval "$(starship init bash)"
+```
- Add the following to the end of `~/.config/ion/initrc`:
+</details>
- ```sh
- # ~/.config/ion/initrc
+<details>
+<summary>Cmd</summary>
- eval $(starship init ion)
- ```
+You need to use [Clink](https://chrisant996.github.io/clink/clink.html) (v1.2.30+) with Cmd.
+Create a file at this path `%LocalAppData%\clink\starship.lua` with the following contents:
- #### Elvish
+```lua
+load(io.popen('starship init cmd'):read("*a"))()
+```
- **Warning** Only elvish v0.17 or higher is supported.
- Add the following to the end of `~/.elvish/rc.elv`:
+</details>
- ```sh
- # ~/.elvish/rc.elv
+<details>
+<summary>Elvish</summary>
- eval (starship init elvish)
- ```
+Add the following to the end of `~/.elvish/rc.elv`:
- #### Tcsh
+```sh
+eval (starship init elvish)
+```
- Add the following to the end of `~/.tcshrc`:
+Note: Only Elvish v0.17+ is supported
- ```sh
- # ~/.tcshrc
+</details>
- eval `starship init tcsh`
- ```
+<details>
+<summary>Fish</summary>
- #### Xonsh
+Add the following to the end of `~/.config/fish/config.fish`:
- Add the following to the end of `~/.xonshrc`:
+```fish
+starship init fish | source
+```
- ```sh
- # ~/.xonshrc
+</details>
- execx($(starship init xonsh))
- ```
+<details>
+<summary>Ion</summary>
- #### Cmd
+Add the following to the end of `~/.config/ion/initrc`:
- You need to use [Clink](https://chrisant996.github.io/clink/clink.html) (v1.2.30+) with Cmd. Add the following to a file `starship.lua` and place this file in Clink scripts directory:
+```sh
+eval $(starship init ion)
+```
- ```lua
- -- starship.lua
+</details>
- load(io.popen('starship init cmd'):read("*a"))()
- ```
+<details>
+<summary>Nushell</summary>
- #### Nushell
+Add the following to the end of your Nushell configuration (find it by running `config path`):
- **Warning** This will change in the future. Only nu version v0.33 or higher is supported.
- Add the following to your nu config file. You can check the location of this
- file by running `config path` in nu.
+```toml
+startup = [
+ "mkdir ~/.cache/starship",
+ "starship init nu | save ~/.cache/starship/init.nu",
+ "source ~/.cache/starship/init.nu"
+]
+prompt = "starship_prompt"
+```
- ```toml
- startup = [
- "mkdir ~/.cache/starship",
- "starship init nu | save ~/.cache/starship/init.nu",
- "source ~/.cache/starship/init.nu"
- ]
- prompt = "starship_prompt"
- ```
+</details>
+
+<details>
+<summary>PowerShell</summary>
+
+Add the following to the end of your PowerShell configuration (find it by running `$PROFILE`):
+
+```powershell
+Invoke-Expression (&starship init powershell)
+```
+
+</details>
+
+<details>
+<summary>Tcsh</summary>
+
+Add the following to the end of `~/.tcshrc`:
+
+```sh
+eval `starship init tcsh`
+```
+
+</details>
+
+<details>
+<summary>Xonsh</summary>
+
+Add the following to the end of `~/.xonshrc`:
+
+```python
+execx($(starship init xonsh))
+```
+
+</details>
+
+<details>
+<summary>Zsh</summary>
+
+Add the following to the end of `~/.zshrc`:
+
+```sh
+eval "$(starship init zsh)"
+```
+
+</details>
+
+### Step 3. Configure Starship
+
+Start a new shell instance, and you should see your beautiful new shell prompt.
+If you're happy with the defaults, enjoy!
+
+If you're looking to further customize Starship:
+
+- **[Configuration](https://starship.rs/config/)** – learn how to configure Starship to tweak your prompt to your liking
+
+- **[Presets](https://starship.rs/presets/)** – get inspired by the pre-built configuration of others
## 🤝 Contributing
@@ -324,11 +404,11 @@ If you are interested in helping contribute to starship, please take a look at o
Please check out these previous works that helped inspire the creation of starship. 🙏
-- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** - A ZSH prompt for astronauts.
+- **[denysdovhan/spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)** – A ZSH prompt for astronauts.
-- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** - Cross-shell robbyrussell theme written in JavaScript.
+- **[denysdovhan/robbyrussell-node](https://github.com/denysdovhan/robbyrussell-node)** – Cross-shell robbyrussell theme written in JavaScript.
-- **[reujab/silver](https://github.com/reujab/silver)** - A cross-shell customizable powerline-like prompt with icons.
+- **[reujab/silver](https://github.com/reujab/silver)** – A cross-shell customizable powerline-like prompt with icons.
<p align="center">
<br>
@@ -339,3 +419,21 @@ Please check out these previous works that helped inspire the creation of starsh
Copyright © 2019-present, [Starship Contributors](https://github.com/starship/starship/graphs/contributors).<br>
This project is [ISC](https://github.com/starship/starship/blob/master/LICENSE) licensed.
+
+[alpine linux packages]: https://pkgs.alpinelinux.org/packages?name=starship
+[arch linux community]: https://archlinux.org/packages/community/x86_64/starship
+[chocolatey]: https://community.chocolatey.org/packages/starship
+[conda-forge]: https://anaconda.org/conda-forge/starship
+[copr]: https://copr.fedorainfracloud.org/coprs/atim/starship
+[crates.io]: https://crates.io/crates/starship
+[fedora packages]: https://src.fedoraproject.org/rpms/rust-starship
+[freshports]: https://www.freshports.org/shells/starship
+[gentoo packages]: https://packages.gentoo.org/packages/app-shells/starship
+[linuxbrew]: https://formulae.brew.sh/formula/starship
+[homebrew]: https://formulae.brew.sh/formula/starship
+[macports]: https://ports.macports.org/port/starship
+[nixpkgs]: https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/starship/default.nix
+[pkgsrc]: https://pkgsrc.se/shells/starship
+[scoop]: https://github.com/ScoopInstaller/Main/blob/master/bucket/starship.json
+[termux]: https://github.com/termux/termux-packages/tree/master/packages/starship
+[void linux packages]: https://github.com/void-linux/void-packages/tree/master/srcpkgs/starship