Skip to content

Helping you setup your CLI experience easily. Some goodies for the ol' terminal.

License

Notifications You must be signed in to change notification settings

mrsauravsahu/cli-config

Repository files navigation

cli-config

Helping you setup your CLI experience easily. Some goodies for the ol' terminal. M365Princess theme

Customize to your hearts content with oh-my-posh.

Few examples how you can make the cli your own with oh-my-posh themes.

M365Princess

M365Princess theme from oh-my-posh

atomic

atomic theme from oh-my-posh

powerlevel10k

powerlevel10k theme from oh-my-posh

star

star theme from oh-my-posh

getting started

You'll require these:

  • zsh
  • curl
  • wget
  • git

Note: For installing packages, you'll also require a package manager. On Linux, cli-config uses apt. For macOS, brew should be installed, which you can download from homebrew's website.

To check if you have everything installed

which zsh curl wget git

should give you the path to all the four executables, like so:

❯ which zsh curl wget git
/bin/zsh
/usr/local/bin/curl
/usr/local/bin/wget
/usr/bin/git

Caution: Running the setup without these requirements will result in unknown consequences. If you have any issues, please raise an issue so we can solve it.

Checkout details.md for more details.

install

Use the init.sh script to setup in a single step! You can visit the link - https://raw.githubusercontent.com/mrsauravsahu/cli-config/main/init.sh to see its raw contents, which is just a git clone followed by calling the cli-config script.

wget -O- https://raw.githubusercontent.com/mrsauravsahu/cli-config/main/init.sh | zsh -s -- -p default

This will create a folder called cli-config inside the current folder and installation will happen there.

Once the setup is done, your ~/.zshrc will be symlinked to the default profile. You will be able to edit the ~/.zshrc for any customizations.

Features

  • one script setup
  • works with Mac and Linux (Ubuntu, Pop!_OS) & Windows (WSL)
  • adds lots of helper tools to the shell
  • easy theme switcher

List of tools

Basics

Programming Support

  • nvm for managing multiple node versions
  • pyenv for multiple python versions
  • dotnet
  • tfenv manage multiple terraform versions

Helpers and Goodies

Appearence

What's new? 🎉

  • Manage multiple terraform version with tfenv.
  • Theming & Prompt customization support with oh-my-posh.
  • Fresh new installation experience, powered by Bash oo Framework.
  • Switch antigen themes with a single env variable CLI_CONFIG_THEME
  • Extra tools available for Linux as well! Check out the package list.
  • New extras package - tmux
  • Setup apps and cool goodies on macOS with brew. Checkout the extras script.
  • Support for .nvmrc - set node version for a particular directory!

-S