Steps and commands after installation to be set and ready in a WSL instance or complete workstation. This repo mainly focus on software and the customization of the shell and prompt.
These packages are usually in the repositories of the distribution, use the package manager of your liking. For Debian & Ubuntu derivatives I prefer nala over apt. It's just a front-end to apt, more readable, faster and nicer to use. Feel free to replace nala with apt if you are not using it. Here is the repository
sudo apt install nala
- WSL
bat curl git htop ncdu neofetch nodejs npm python3-pip rsync thefuck tldr vim wget zip fzf
- Workstation
bat curl firefox flatpak git gparted gufw htop ncdu neofetch nodejs npm python3-pip rsync software-properties-common timeshift thefuck tldr vim wget zip fzf
- Gaming:
steam lutris
- Optionnal:
codecs:
ubuntu-restricted-extras
- Workstation
flatpak install flathub io.missioncenter.MissionCenter com.github.tchx84.Flatseal com.visualstudio.code org.onlyoffice.desktopeditors org.videolan.VLC org.filezillaproject.Filezilla com.getpostman.Postman org.kde.krita com.usebottles.bottles com.github.jeromerobert.pdfarranger
- Gaming
flatpak install flathub com.discordapp.Discord com.heroicgameslauncher.hgl
Bash
Installed by default, I don't customize it, just the .bashrc.
ZSH
Prefered shell, not using oh-my-zsh. I prefer to include plugins manually in the .zshrc.
-
Installation: ZSH is available through a lot of package managers (apt, pacman, dnf...) check documentation. For debian based distros :
sudo nala install zsh
-
Verify installation by running
zsh --version
-
Make it the default shell with
chsh -s $(which zsh)
orsudo lchsh $USER
if the distro is Fedora. -
Log out and log back in again to use your new default shell.
-
Test that it worked with
echo $SHELL
. Expected result:/bin/zsh
or similar. -
Test with
$SHELL --version
. Expected result: 'zsh 5.8' or similar
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.zsh/zsh-autosuggestions
echo "source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
git clone https://github.com/zsh-users/zsh-syntax-highlighting ~/.zsh/zsh-syntax-highlighting
echo "source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
- tab completions - add
autoload -Uz compinit && compinit
to your.zshrc
file
Usually prompts needs Nerdfonts
Information about fonts folders :
/usr/local/share/fonts/
to install fonts system-wide~/.local/share/fonts/
or~/.fonts
to install fonts just for the current user
Download with cli:
wget "font url"
unzip "zip file" -d ~/.fonts
fc-cache -fv
Download with gui:
- Download a Nerdfont from the website
- Unzip the file
- Install the font with distro utility or by moving the files in the directortories mentionned in the cli way.
- Starship Prefered prompt, cross shell, only one config in a single file to to.
-
Installation Starship is available through some package managers (pacman, dnf, brew, nix) and with cargo. Check documentation. Otherwise :
curl -sS https://starship.rs/install.sh | sh
-
Shell setup Starship is usually initialized at the end of a shell configuration.
- Bash:
echo 'eval "$(starship init bash)"' >> ~/.bashrc
- ZSH :
echo 'eval "$(starship init zsh)"' >> ~/.zshrc
- Others : check the documentation
- Bash:
-
Configuration Starship uses a single TOML file to store the configuration, create the following firectory and file :
mkdir -p ~/.config && touch ~/.config/starship.toml
Then edit the file according to the documentation or replace it with your own file.
- Powerlevel10k Faster than Starship but only usable with zsh. Easier to configure through wizard configuration.
powerlevel10k requires the MesloLGS NerdFont in the regular, bold, italic and bold italic variant to work, or the symbols won't work.
- Installation powerlevel10k can be installed in many ways like with homebrew, oh my zsh, yay... heck documentation. Otherwise:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/powerlevel10k
echo 'source ~/powerlevel10k/powerlevel10k.zsh-theme' >>~/.zshrc
source ~/.zshrc
The configuration wizard should be triggered. If not, type p10k configure
. If it still doesn't work, refer to the installation documentation.
2. Configuration
In the wizard, choose the configuration you want and only type digits and never enter, it will skip steps.
The configuration is stored in the ~/.p10k.zsh
file.
The wizard can be re triggered with the command p10k configure
. It's easier to change the configuration that way, even though you can modify the file, it's quiet long.
Dotfiles are niceto have in a dedicated repo. I prefer to use chezmoi to sync them accross workstations.
-
Installation chezmoi can be installed in many ways like with homebrew, nix, pacman... check documentation. Otherwise there are two ways:.
- curl :
sh -c "$(curl -fsLS get.chezmoi.io)"
- wget :
sh -c "$(wget -qO- get.chezmoi.io)"
Note : If you already have a repository set up, you can append-- init --apply $GITHUB_USERNAME
to the installation command to pull the files from the repo.
- curl :
-
Verify the installation source your shell file and run
chezmoi
. Expected result : chezmoi help page or similar. -
Chezmoi usage If you didn't pull files from a repository, run
chezmoi init
- add files with
chezmoi add *file*
- run
chezmoi cd
- add files in git and commit them
- create a github repository if you didn't and push the files
- add files with
You can find more informations on my dotfiles repository
Depanding on the Desktop Environment, some additional software can be needed to customize it.
Gnome
gnome-tweaks gnome-shell-extensions
flatpak install com.mattjakeman.ExtensionManager io.github.realmazharhussain.GdmSettings
- Blur my shell
- Caffeine
- GDM Settings - Installed with flatpak
- Net Speed Simplified
- User Themes
- Vitals