All Projects → PascalPrecht → dotfiles

PascalPrecht / dotfiles

Licence: other
My dotfiles.

Programming Languages

shell
77523 projects
Vim Script
2826 projects

Dotfiles

These are my dotfiles.

Here's what needs to be done to install this on a new system. For more complete instructions on how I set up a new machine, head over to the installation guide:

  1. Create dotfiles alias:
$ echo "alias dotfiles='/usr/bin/git --git-dir=$HOME/projects/dotfiles/ \
  --work-tree=$HOME'" >> $HOME/.bash_aliases
  1. Add dotfiles project path to .gitignore on $HOME
$ echo "./projects/dotfiles" >> .gitignore
  1. Clone repository into bare repository
$ git clone --bare https://github.com/PascalPrecht/dotfiles $HOME/projects/dotfiles
  1. Checkout contents
$ dotfiles checkout

From here on, use the dotfiles command to add, commit push etc. to the dotfiles repository. Make sure you setup your git signing key.


Installation

Install Gnome Tweaks

$ sudo apt install gnome-tweaks

Then, also turn off Ubuntu dock via extensions.

Install Gnome sushi

$ sudo apt install gnome-sushi

Configure terminal

I use the following preferences on linux (Ubuntu) in the terminal:

  1. Initial terminal size: 130 columns, 40 rows
  2. Custom terminal background color: #141617
  3. Palette built-in scheme: solarized
  4. Turn on "Show bold text in bright colors

Install ProtonVPN

Download the latest DEB package from here. Then install it via apt-get:

$ sudo apt-get install path/to/dep/file

Then do

$ sudo apt update
$ sudo apt install protonvpn-cli

Install Git

$ sudo apt install git

Setup signing key

Basically need to follow steps here:

  1. Generate a new GPG key
  2. Add it to your GitHub account
  3. Tell Git your signing key
  4. Associate email with GPG key

Setup SSH key

Either use Personal Access Tokens or SSH keys to authenticate with GitHub. To set up SSH key, follow the these steps:

  1. Generate a new SSH key
  2. Add SSH key to GitHub account
  3. Test SSH connection

Install Tmux

$ sudo apt install tmux

Install NVM

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

This is needed for coc-rust-analyzer.

Install NeoVim

$ sudo apt install neovim

Also, set NeoVim as editor alternatives on machine:

sudo update-alternatives --install /usr/bin/vi vi /usr/bin/nvim 60
sudo update-alternatives --config vi
sudo update-alternatives --install /usr/bin/vim vim /usr/bin/nvim 60
sudo update-alternatives --config vim
sudo update-alternatives --install /usr/bin/editor editor /usr/bin/nvim 60
sudo update-alternatives --config editor

Install minpack Plugin Manager

git clone https://github.com/k-takata/minpac.git \
    ~/.config/nvim/pack/minpac/opt/minpac

Then run :call minpac#update() inside Vim.

Install Rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Also need to install build-essential:

$ sudo apt install build-essential

Install Rust Analyzer

$ curl -L https://github.com/rust-analyzer/rust-analyzer/releases/latest/download/rust-analyzer-x86_64-unknown-linux-gnu.gz | gunzip -c - > ~/.local/bin/rust-analyzer
$ chmod +x ~/.local/bin/rust-analyzer

After that, add $HOME/.local/bin to your PATH in .profile or .bashrc if it's not done yet. To make this work in Vim, make sure to install coc-rust-analyzer and set the rust-analyzer.server.path. The Vim configurations of this repository have that already.

Installing coc-rust-analyzer is done via (inside Vim):

:CocInstall coc-rust-analyzer

Install Go Language Server Plugin

Usinc coc-vim install coc-go via:

:CocInstall coc-go

Install Brave

sudo apt install apt-transport-https curl
sudo curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg \
  https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main"|sudo tee /etc/apt/sources.list.d/brave-browser-release.list
sudo apt update
sudo apt install brave-browser

Install Brave Extensions

  1. Unhook YouTube
  2. Bitwarden
  3. MetaMask

Install Obsidian

First, go ahead and download the Obsidian snap from https://obsidian.md/download. Then, install the snap:

$ sudo snap install --dangerous path/to/snap/file

Setup Obsidian vault

Clone the obsidian vault repository:

$ git clone https://github.com/PascalPrecht/.obsidian-vault.git

Then configure Obsidian to use that vault.

Misc

udev-rules

These are needed to make Ledger work with linux: https://github.com/LedgerHQ/udev-rules. Download and run the script.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].