- debian: linux distribution composed of free and open-source software.
- LightDM: cross-desktop display manager.
- i3: dynamic tiling window manager.
- py3status: extensible i3status wrapper written in Python.
- alacritty: modern terminal emulator that comes with sensible defaults, but allows for extensive configuration.
- zsh: shell designed for interactive use, although it is also a powerful scripting language.
- starship: minimal, blazing-fast, and infinitely customizable prompt.
- nvim: hyperextensible Vim-based text editor.
- eza: a modern replacement for ls.
- zoxide: a smarter cd command, inspired by z and autojump.
- vscode: code editor redefined and optimized for building and debugging modern web and cloud applications.
- spotify: audio streaming and media services provider.
- bat: cat(1) clone with syntax highlighting and Git integration.
- docker: OS-level virtualization to deliver software in packages called containers.
- go: statically typed, compiled programming language.
- nvm: version manager for node.js, designed to be installed per-user, and invoked per-shell.
- python: high-level, interpreted, general-purpose programming language.
- rust: multi-paradigm, general-purpose programming language that emphasizes performance, type safety, and concurrency.
$ sudo apt update && sudo apt upgrade
$ sudo apt install \
gcc curl tree cloc xclip git ssh \
i3 py3status feh lightdm \
zsh fonts-noto eza tmux bat \
pavucontrol imagemagick vlc qiv arandr
Follow official website to setup:
oh-my-zsh
via curlvscode
via dpkgazuredatastudio
via dpkgspotify
via aptdocker
via aptdocker compose
via aptgo
via tarballrust
(&cargo
) via curlnvm
via curlalacritty
via cargoneovim
prefer nighty and install it in~/.local/bin/
starship
via curlbat
setup symlinkzoxide
via curl
Additional install:
- diff so fancy: strives to make your diffs human readable instead of machine readable (prefer install in
~/.local/bin
) - Powerline fonts: pre-patched and adjusted fonts for usage with the Powerline statusline plugin (prefer manual install)
# Go to HOME dir to execute all command
$ cd $HOME
# Clean & prepare directory
$ rm -rf .alacritty.toml .config/starship.toml .zshrc .config/i3 .config/i3status
# Inject all symbolic link
$ ln -s .dotfiles/alacritty/alacritty.toml .alacritty.toml && \
ln -s .dotfiles/starship/starship.toml .config/starship.toml && \
ln -s .dotfiles/zshrc/zshrc .zshrc && \
ln -s .dotfiles/gitconfig/.gitconfig .gitconfig && \
ln -s .dotfiles/i3/i3config .config/i3/config && \
ln -s .dotfiles/i3/i3status .config/i3status && \
ln -s .dotfiles/i3/images/background.jpg .config/i3/background.jpg && \
ln -s .dotfiles/nvim .config/nvim && \
ln -s .dotfiles/tmux/tmux.conf .tmux.conf && \
ln -s .dotfiles/tmux .config/tmux
# Dedicated command as it required sudo
$ sudo ln -s /home/manawasp/.dotfiles/images/inlog-background.png /etc/lightdm/inlog-background.png
$ mkdir -p ~/.tmux/plugins
$ git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
$ tmux source ~/.tmux.conf
# Then in tmux install plugins: Ctrl+B I
Download and unzip the JetBrainsMono Nerd Font: https://www.nerdfonts.com/font-downloads
Move it inside ~/.local/share/fonts
and reload font cache fc-cache -f -v
See cat ~/.zshrc
header to complete zsh plugins install
# The code editor must have been opened before
# Also I am using the insiders version
$ cd $HOME/.dotfiles/.vscode/ && cat extensions.list | grep -v '^#' | xargs -L1 code --install-extension
$ ln -s $HOME/.dotfiles/vscode/settings.json $HOME/.config/Code/User/settings.json
Fix docker permission denied
$ sudo groupadd docker
$ sudo usermod -aG docker ${USER}
note: will need to reboot
Update /etc/lightdm/lightdm-gtk-greeter.conf
:
[greeter]
background=/usr/share/pixmaps/inlog-background.png
And copy the background:
sudo cp .dotfiles/i3/images/inlog-background.png /usr/share/pixmaps/inlog-background.png