Programs
Good every day
Brave Browser
yay -S brave-bin
Firefox / librewolf
I would recommend uninstalling Firefox and installing librewolf instead. All extensions to firefox works on librewolf.
sudo pacman -R firefox
yay -S librewolf-bin
Spotify
sudo pacman -S spotify-launcher
Plex Media Player
yay -S plex-desktop
Discord
sudo pacman -S dicord
Programming tools
Git
# Most likley already installed
sudo pacman -S git
JetBrains Toolbox
yay -S jetbrains-toolbox
# You may have to add the them to the env, after installing a tool? idk why
export PATH="$PATH:$HOME/.local/share/JetBrains/Toolbox/scripts"
VSCode
vscodium
Does not have telemetry/tracking like vscode does.
If you are missing extensions you just have to download them from the website and install them with vscodium --install-extension Downloads/extension-name.vsix
yay -S vscodium-bin
code
Not all extensions are all there for some users? If you are missing extensions you just have to download them from the website and install them with code --install-extension Downloads/extension-name.vsix
sudo pacman -S code
To the the correct extension store you have to replace the extensionsGallery
sudo nano /usr/lib/code/product.json
Replace the extensionsGallery with the following
"extensionsGallery": {
"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery",
"cacheUrl": "https://vscode.blob.core.windows.net/gallery/index",
"itemUrl": "https://marketplace.visualstudio.com/items"
}
Docker
Podman
Is a better Docker
- Daemonless, using the fastest technologies for a snappy experience. Our UI is reactive and light on resource usage and won't drag you down.
- Rootless containers allow you to contain privileges without compromising functionality. Trusted by US government agencies for secure HPC at scale case study.
- Podman is open source first and won't lock you in. Podman Desktop can be used as one tool to manage all your containers, regardless of container engine - even if you don't use Podman as your container engine.
- Compatible with other OCI compliant container formats including Docker. Run your legacy Docker containers (including docker-compose files) on Podman. Learn more
sudo pacman -S podman podman-compose
# If you want the desktop. (easy to see logs and shit kinda like portainer just kinda better)
yay -S podman-desktop
Docker
sudo pacman -S docker docker-compose
# Then we want to add our self to the docker group so we can run the docker command
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
Nice Arch Linux
Pamac / Add/Remove software GUI
yay -S pamac-all
zsh
# dont open zsh before adding `.zshrc`
sudo pacman -S zsh zsh-theme-powerlevel10k zsh-syntax-highlighting zsh-history-substring-search zsh-autosuggestions
You have to add a font so the icons will work. I like the JetBrains Mono Nerd Font from Nerd Font. And install it from the fonts manager.
Then add the following to nano .zshrc
## Options section
setopt correct # Auto correct mistakes
setopt extendedglob # Extended globbing. Allows using regular expressions with *
setopt nocaseglob # Case insensitive globbing
setopt rcexpandparam # Array expension with parameters
setopt nocheckjobs # Don't warn about running processes when exiting
setopt numericglobsort # Sort filenames numerically when it makes sense
setopt nobeep # No beep
setopt appendhistory # Immediately append history instead of overwriting
setopt histignorealldups # If a new command is a duplicate, remove the older one
setopt autocd # if only directory path is entered, cd there.
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' # Case insensitive tab completion
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" # Colored completion (different colors for dirs/files/etc)
zstyle ':completion:*' rehash true # automatically find new executables in path
# Speed up completions
zstyle ':completion:*' accept-exact '*(N)'
zstyle ':completion:*' use-cache on
zstyle ':completion:*' cache-path ~/.zsh/cache
HISTFILE=~/.zhistory
HISTSIZE=10000
SAVEHIST=10000
export EDITOR=/usr/bin/vim
export VISUAL=/usr/bin/vim
WORDCHARS=${WORDCHARS//\/[&.;]} # Don't consider certain characters part of the word
## Keybindings section
bindkey -e
bindkey '^[[7~' beginning-of-line # Home key
bindkey '^[[H' beginning-of-line # Home key
if [[ "${terminfo[khome]}" != "" ]]; then
bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line
fi
bindkey '^[[8~' end-of-line # End key
bindkey '^[[F' end-of-line # End key
if [[ "${terminfo[kend]}" != "" ]]; then
bindkey "${terminfo[kend]}" end-of-line # [End] - Go to end of line
fi
bindkey '^[[2~' overwrite-mode # Insert key
bindkey '^[[3~' delete-char # Delete key
bindkey '^[[C' forward-char # Right key
bindkey '^[[D' backward-char # Left key
bindkey '^[[5~' history-beginning-search-backward # Page up key
bindkey '^[[6~' history-beginning-search-forward # Page down key
# Navigate words with ctrl+arrow keys
bindkey '^[Oc' forward-word #
bindkey '^[Od' backward-word #
bindkey '^[[1;5D' backward-word #
bindkey '^[[1;5C' forward-word #
bindkey '^H' backward-kill-word # delete previous word with ctrl+backspace
bindkey '^[[Z' undo # Shift+tab undo last action
## Alias section
alias cp="cp -i" # Confirm before overwriting something
alias rm="rm -l" #
#alias df='df -h' # Human-readable sizes
#alias free='free -m' # Show sizes in MB
#alias gitu='git add . && git commit && git push'
# Theming section
autoload -U compinit colors zcalc
compinit -d
colors
# Color man pages
export LESS_TERMCAP_mb=$'\E[01;32m'
export LESS_TERMCAP_md=$'\E[01;32m'
export LESS_TERMCAP_me=$'\E[0m'
export LESS_TERMCAP_se=$'\E[0m'
export LESS_TERMCAP_so=$'\E[01;47;34m'
export LESS_TERMCAP_ue=$'\E[0m'
export LESS_TERMCAP_us=$'\E[01;36m'
export LESS=-r
## Plugins section
# use powerlevel
source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme
# Use syntax highlighting
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
# Use history substring search
source /usr/share/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
# bind UP and DOWN arrow keys to history substring search
zmodload zsh/terminfo
bindkey "$terminfo[kcuu1]" history-substring-search-up
bindkey "$terminfo[kcud1]" history-substring-search-down
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down
# Use autosuggestion
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=20
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=8'
Alacritty termainal
sudo pacman -S Alacritty
Add the following to .alacritty.yml
shell:
program: /bin/zsh # default /bin/bash
font:
size: 10 # default 11
normal:
family: "JetBrainsMonoNL NF"
scrolling:
history: 20000 # default 10000
Good CLI Tools
ripgrep a better grip.
sudo pacman -S ripgrep
echo "alias grip=\"rg\"" >> .zshrc
bat a better cat clone with syntax highlighting and Git integration
sudo pacman -S bat
echo "alias cat=\"bat\"" >> .zshrc
exa a modern replacement for ls
sudo pacman -S exa
echo "alias ls=\"exa\"" >> .zshrc
echo "alias ll=\"exa -l\"" >> .zshrc
skim a good Fuzzy Finder
sudo pacman -S skim
# this is using ripgrep
# sf meaning search for file
echo "alias sf=\"sk --ansi -i -c 'rg --color=always --line-number \"{}\"'\"" >> .zshrc
# fs meaning search inside file
echo "alias fs=\"rg --files | sk --preview=\\\"bat {} --color=always\\\"\"" >> .zshrc