my eye

README.md

Raw

# Workstation Configuration

## Add self as sudoer

    !shell
    su root
    /sbin/visudo

Append: `angelo  ALL=(ALL) NOPASSWD:ALL`  
Save and exit: `CTRL+X, Y, ENTER`

    !shell
    exit

## Make home directory readable only by self

    !shell
    chmod 700 ~

## Update system and install applications

    !shell
    sudo apt update
    sudo apt upgrade
    sudo apt install \
      openssh-server build-essential stow git zsh tree tmux progress \
      libc6-dev libsodium-dev libsqlite3-dev libffi-dev libssl-dev \
      zlib1g-dev autoconf sqlite3 apache2-utils dconf-cli htop iftop xvfb \
      \
      neovim openvpn sshfs rsync silversearcher-ag \
      libncurses5-dev libncursesw5-dev libreadline-dev \
      libpcre2-dev liblzma-dev libbz2-dev ccache patchelf \
      \
      devilspie2 unclutter obs-studio gimp piper rtorrent \
      kaffeine libnotify-bin curl jq make whois w3m chromium

### Install Firefox

    !shell
    sudo install -d -m 0755 /etc/apt/keyrings
    wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | sudo tee /etc/apt/keyrings/packages.mozilla.org.asc > /dev/null
    echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null
    echo '
    Package: *
    Pin: origin packages.mozilla.org
    Pin-Priority: 1000
    ' | sudo tee /etc/apt/preferences.d/mozilla
    sudo apt update
    sudo apt install firefox

### Install Node

    !shell
    curl --proto '=https' --tlsv1.2 -fsSL https://deb.nodesource.com/setup_21.x | sudo bash -
    sudo apt install -y nodejs

### Install Python

    !shell
    PYVERSION=3.12.2
    wget https://www.python.org/ftp/python/$PYVERSION/Python-$PYVERSION.tar.xz
    tar -xf Python-$PYVERSION.tar.xz
    cd $PYVERSION
    ./configure --enable-optimizations
    make
    sudo make install

### Install Poetry & Pyright

    !shell
    curl --proto '=https' --tlsv1.2 -fsSL https://install.python-poetry.org | python3 -
    sudo npm install -g pyright

### Install Docker & Act

    !shell
    sudo install -m 0755 -d /etc/apt/keyrings
    sudo curl --proto '=https' --tlsv1.2 -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
    sudo chmod a+r /etc/apt/keyrings/docker.asc
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
      $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt update
    curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash

## Initialize directory structure

    !shell
    mkdir ~/media/cache/.rtorrent-session -p
    mkdir ~/media/desktop
    mkdir ~/media/documents
    mkdir ~/media/downloads
    mkdir ~/media/music
    mkdir ~/media/pictures
    mkdir ~/media/public
    mkdir ~/media/templates
    mkdir ~/media/videos/tv/timeshift -p

## Configure applications and install plugins

    !shell
    git clone --recurse-submodules https://ragt.ag/code/projects/dotfiles.git .dotfiles
    cd .dotfiles
    stow autostart devilspie2 dircolors git kaffeine neovim openvpn pypoetry \
      rtorrent tmux user-dirs zsh

### Install Neovim Plugins

    !shell
    sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim \
        --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
    nvim --headless +PlugInstall +qa
    nvim --headless UpdateRemotePlugins +qa

### Install Tmux Plugins

    !shell
    tmux

Install: `leader + I`

### Change shell to Zsh

    !shell
    chsh -s /bin/zsh

### Configure terminal

Open preferences:

-   Text > Text Appearance > Custom font > "Ubuntu Mono derivative Powerline (10pt)"
-   Text > Sound > Uncheck "Terminal bell"
-   Scrolling > Uncheck "Show scrollbar"

    !shell
    ./solarized-terminal/set_dark.sh

### Configure GNOME

Run `gnome-tweaks`:

-   Keyboard & Mouse > Additional Layout Options > Ctrl position > "Caps Lock as Ctrl"
-   Appearance > Themes > Applications > "Adwaita-dark"

Install [Hide Top Bar](https://extensions.gnome.org/extension/545/hide-top-bar).

Sign out, change session to "GNOME on Xorg" and sign back in.