Skip to content

Latest commit

 

History

History
172 lines (125 loc) · 5.32 KB

File metadata and controls

172 lines (125 loc) · 5.32 KB

linux-dotfiles

info

This little guide is my reference when I am setting up a new machine with GNU/Linux.

steps

  1. install linux
  2. update everything
  3. bootstrap-linux.sh
  4. settings setup
  5. gnome-extensions
  6. little fixes
  7. web browser logins
  8. ssh and gpg setup
  9. terminal setup
  10. neovim
  11. extra packages
  12. dotfiles

install linux

Download and install the latest Ubuntu LTS. Set your username, hostname, password and so on.

update everything

Update the OS to the latest patch available.

bootstrap-linux.sh

Launch the bootstrap-linux.sh script, it will automatically install lots of useful packages. Otherwise, manually select which one you'd like to install (just delete or comment the unwanted lines).

./local/bin/bootstrap-linux.sh

settings setup

  • Set system settings.
  • Set file manager settings.
  • Restore data from backup (optional).
  • Setup dock (minimal).
  • Install language support.
  • Set hostname.

gnome-extensions

Install the needed Gnome Extensions from the website or using gnome-extensions-app (Caffeine at least always).

little fixes

mkdir -p ~/.local/bin

# set the following keyboard shortcuts from Settings:
# play/pause: ctrl + alt + p
# switch to workspace on the left: shift + alt + h
# switch to workspace on the right: shift + alt + l

# set the following keyboard shortcuts from Ubuntu Tiling Assistant:
# move window to center: shift + alt + c
# corner tiling top right: shift + alt + up
# corner tiling top down: shift + alt + right
# corner tiling top left: shift + alt + down
# corner tiling top up: shift + alt + left

web browser logins

Open up your browser and start logging inside your main websites.

ssh and gpg setup

Set up your ssh and gpg keys correctly and test them.

terminal setup

ghostty

Install Ghostty.

kitty

Install Kitty.

alacritty

Install Alacritty.

links

# create a symbolic link (it will only work for the current user though)
# for ghostty it's automatically done by the installation script
sudo ln -s ~/.local/kitty.app/bin/kitty /usr/local/bin/kitty
sudo ln -s ~/.cargo/bin/alacritty /usr/local/bin/alacritty

From now on, from Gnome, with alt + f2 you can run ghostty, kitty or alacritty, butt Ghostty is also automatically binded to ctrl + alt + t as terminal emulator.

neovim

# install rust and cargo
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# install bob-nvim
cargo install bob-nvim
bob install stable
bob use stable

# install lazygit
# install fzf
# install ripgrep
# install fd

# install lazyvim
# quick lazyvim setup without changing your current Neovim config
export NVIM_APPNAME=lazyvim
git clone https://github.com/LazyVim/starter ~/.config/lazyvim
rm -rf ~/.config/lazyvim/.git
nvim
# an alias is available for launching it quickly with `lvim`

# check that the installation is fine
:LazyHealth

# update lazyvim
# to update lazyvim, you simply need to update all the plugins installed
# to check the current lazyvim version:
# :Lazy
# L # go to logs
# /LazyVim<Enter> # search for LazyVim
# check the version number and the commit details of the main plugin

extra packages

These extra packages must be installed manually.

dotfiles

Add the dotfiles to your system (beware that there are a few ones only for macOS). This includes mainly includes .config/* and .local/bin/*, plus a few other files.