knowledge/ubuntu fresh install.md
2020-12-20 22:22:04 -05:00

3.7 KiB

Ubuntu fresh setup guide

Update & Upgrade

sudo apt update && sudo apt upgrade -y

Install Packages

sudo apt-get install python3-pip zsh curl wget git
sudo apt-get install p7zip-full smplayer cmus speedtest-cli git-gui filezilla pavucontrol paprefs ufw servefile nmap fail2ban gimp most colordiff mosh dconf-editor ncdu qcalc jq tor fonts-noto nautilus-actions filemanager-actions thunderbird chrome-gnome-shell gnome-tweaks smartmontools &

pip3 install youtube-dl tldr

External Repositories

Antimicro

sudo add-apt-repository ppa:mdeguzis/libregeek

As of today, a bionic package is still not available, but the artful works!. https://github.com/AntiMicro/antimicro/issues

sudo nano /etc/apt/sources.list.d/mdeguzis-ubuntu-libregeek-bionic.list Replace bionic with artful

sudo apt update
sudo apt install antimicro

Put config file https://gist.github.com/madacol/19f8c71ba98f484a4294ccfe90e88e6e in ~/.config/antimicro

SinkSwitcher

https://github.com/madacol/sinkSwitcher

Web installs

Shells

Fish

Functions

  • nvm

    Install bass, then configure these functions

    • __nvm_load.fish

      function __nvm_load
        functions -e __nvm_load node npm npx
        bass source ~/.nvm/nvm.sh --no-use ';' nvm use 2> /dev/null '||' nvm use default
      end
      
    • nvm.fish

    function nvm
      functions -e __nvm_load node npm npx
      bass source ~/.nvm/nvm.sh --no-use ';' source ~/.nvm/bash_completion ';' nvm $argv
    end
    
    • npx.fish
    function npx
      __nvm_load
      npx $argv
    end
    
    • npm.fish
    function npm
      __nvm_load
      npm $argv
    end
    
    • node.fish
    function node
      __nvm_load
      node $argv
    end
    

Zsh - Edit ~/.zshrc

Add ~/.local/bin to PATH

export PATH=$HOME/.local/bin:$PATH

Add shortcut "Alt+:" to iterate through arguments

autoload -Uz copy-earlier-word
zle -N copy-earlier-word
bindkey "^[:" copy-earlier-word

Aliases

alias lr="ls -hartl"
alias youtube-dl720='youtube-dl -f "bestvideo[height<=720]+bestaudio/best[height<=720]"'
alias python=python3
alias ipython=ipython3
function mkcd () { mkdir -p "$@" && cd "$@"; }

Lazy-load nvm

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . $NVM_DIR/nvm.sh --no-use;
[ -s "$NVM_DIR/bash_completion" ] && . $NVM_DIR/bash_completion;
function __nvm_load_node () {
  unalias node npm npx;
  nvm use 2> /dev/null || nvm use default;
  command=$1;
  shift 1;
  $command $@;
}
alias node='__nvm_load_node node $@'
alias npm='__nvm_load_node npm $@'
alias npx='__nvm_load_node npx $@'

Enable most

export PAGER=most

Enable zsh plugins

plugins=(git zsh-syntax-highlighting zsh-autosuggestions)

Note: Probably need to install them first

Gnome extensions

Dconf

  • org.gnome.shell.extensions.dash-to-dock = cycle-windows # so scroll-wheel cycle through apps in the launcher

Custom shortcuts

StartUp

  • Cmus gnome-terminal -- cmus