dotfiles
Workstation Configuration
Add Self as Sudoer
su root
/sbin/visudo
Append: angelo ALL=(ALL) NOPASSWD:ALL
Save and exit: CTRL+X, Y, ENTER
exit
Make Home Directory Readable Only by Self
chmod 700 ~
Update System and Install Applications
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
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
curl --proto '=https' --tlsv1.2 -fsSL https://deb.nodesource.com/setup_21.x | sudo bash sudo apt install -y nodejs
Install Python
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
curl --proto '=https' --tlsv1.2 -fsSL https://install.python-poetry.org | python3 sudo npm install -g pyright
Install Docker & Act
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
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
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
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
tmux
Install: leader + I
Change Shell to Zsh
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"
./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.
Sign out, change session to "GNOME on Xorg" and sign back in.