I used Ubuntu as a VM for front-end development. But recently I have been testing Windows Subsystem of Linux (WSL 2) and so far it's good.
No need to run VM anymore! (Since I only care about the command line functionality).
Also, I have been trying out the oh-my-zsh and I gotta say that it is amazing!
Here is a guide on how to get started with WSL by @jeremycmorgan.
So my terminal looks like this right now:
And here is the guide for the same. (Assuming that you have WSL enabled, Ubuntu and Windows Terminal App installed, if not, you can follow this guide)
Install oh-my-zsh:
Make sure zsh is installed:
apt install zsh
Install ohmyzsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Install and configure Powerline fonts
To install the Powerline fonts:
Open a Powershell session as administrator.
-
Download and expand the Powerline fonts repository:
powershell -command "& { iwr [<https://github.com/powerline/fonts/archive/master.zip>](<https://github.com/powerline/fonts/archive/master.zip>) -OutFile ~\\fonts.zip }" Expand-Archive -Path ~\\fonts.zip -DestinationPath ~
-
Update the execution policy to allow the installation of the fonts:
Set-ExecutionPolicy Bypass
-
Run the installation script:
~\\fonts-master\\install.ps1
-
Revert the execution policy back the default value:
Set-ExecutionPolicy Default
Edit the settings for WSL:
To configure the fonts:
For Windows Terminal App:
- Open the Windows Terminal App.
- Go to settings.
- Update the json, list one of the Powerline fonts.
For Ubuntu App:
- Open the Ubuntu app.
- Open the Properties dialog.
- From the Font tab, select one of the Powerline fonts, such as ProFont for Powerline.
- Click OK.
Choose your theme! 🎨
You can now choose the theme you want for your terminal, there are many to choose from. I am using "agnoster".
You can do so by:
- Edit the '.zshrc' file
nano ~/.zshr
- Change the theme to one that you selected: ```
Set name of the theme to load --- if set to "random", it will
load a random theme each time oh-my-zsh is loaded, in which case,
to know which specific one was loaded, run: echo $RANDOM_THEME
See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
ZSH_THEME="agnoster"
Set list of themes to pick from when loading at random
Setting this variable when ZSH_THEME=random will cause zsh to load
a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
If set to an empty array, this variable will have no effect.
ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
You can also enable different Plugins:
plugins=(
git
bundler
dotenv
osx
rake
rbenv
ruby
)
Let me know which theme you picked! Also, feel free to reach out if you have any concerns.
Top comments (3)
This command line gives the following error
I googled for a solution but the specific '<' term is not anyhere. Tried with ' ' to see if there were any results, but to no effect.
The problem is the github url used in the iwr Ivoke Web Request command.
This is an interesting post. Hope someone can let me know a solution or guide me towards a path for solving this. I'm no powershell expert.
remove '<' , try this :
it worked for me
Thanks