Giter VIP home page Giter VIP logo

dotfiles's Introduction

My dotfiles

Arch Linux setup centered around practicality and minimalism.

  • i3-gaps + i3lock + i3bar + i3status
  • zsh (no oh-my-zsh), powerlevel10k prompt
  • alacritty
  • nvim
  • bemenu
  • dunst
  • picom (no weird forks, just normal picom)
  • gruvbox is life

Use at own risk, or actually don't use this at all, dotfiles are a very personal thing, write your own ๐Ÿ˜›. The config can serve as inspiration, however, many hours of my life have been spent editing these files.

Installation

Prerequisites

  • Fresh Arch install (no xorg installed yet)
  • Basic packages like neovim, zsh, mlocate, network manager, man pages are installed
  • User is created with zsh as login shell
  • User is a sudoer
  • Internet connection

Download Installation Scripts

sudo pacman -S wget tar
cd ~
wget https://api.github.com/repos/pabloariasal/dotfiles/tarball/master -O dotfiles.tar.gz
tar -xzvf dotfiles.tar.gz
rm dotfiles.tar.gz

there is now a directory pabloariasal-dotfiles-xxx containing installation scripts and setup files.

Install Xorg

cd pabloariasal-dotfiles-xxx
./install install_xorg

Setup xinit and zprofile

In order to launch i3-wm xinit needs to be setup. startx is called from zprofile.

sudo pacman -S xorg-xinit
cd pabloariasal-dotfiles-XXX
cp configs/xorg/.xinitrc ..
cp configs/zsh/.zprofile ..
cp configs/env/.env ..

Install git

sudo pacman -S git

Install i3-wm

cd pabloariasal-dotfiles-xxx
./install install_i3_wm

Install bemenu

sudo pacman -S bemenu

Select option "x11"

Install paru

cd pabloariasal-dotfiles-xxx
./install install_paru

Install google-chrome

paru -S google-chrome

Install alacritty

It's important to install a terminal before booting into i3-wm

sudo pacman -S alacritty

Boot into i3-wm

Now we should be able to boot into i3-wm:

  • Logout (Ctrl-d) and login back again
  • Create a default config
  • mod+enter opens a alacritty

Generate ssh keys

sudo pacman -S xclip
cd pabloariasal-dotfiles-xxx
./install create_github_personal_ssh_key

Add ssh public key to github account

  1. open a terminal
  2. Start google chrome
  3. Login into google and github
  4. Enter public key in the clipboard in github account

Start ssh Agent and add ssh key

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/github_personal

Clone dotfiles

cd pabloariasal-dotfiles-xxx
./install clone_repo
cd ..
rm -rf pabloariasal-dotfiles-XXX

The dotfiles repo is now cloned to the home directory

Shell Configuration

rm ~/.xinitrc ~/.zprofile ~/.env
cd dotfiles
sudo pacman -S stow
stow --verbose=2 -d configs -t ~ zsh
stow --verbose=2 -d configs -t ~ env

Close and reopen terminal

xorg configuraton

rm ~/.xinitrc
cd dotfiles
install_config xorg
./install install_keyboard_conf

i3-wm configuration

rm -r ~/.config/i3/config
cd dotfiles
install_config i3
install_config i3status

Reload i3

Fonts

cd dotfiles
./install install_nerd_fonts

git Configuration

cd dotfiles
install_config git

Install Scripts

cd dotfiles
./install install_scripts

Install CLI Goodies

./install install_command_line_goodies
install_config vifm

Terminal Configuration

intall_config alacritty

Neovim Configuration

sudo pacman -S words
intall_config nvim

Compositor

sudo pacman -S picom
install_config picom

ssh-agent service

cd dotfiles
install_config systemd
./install enable_agent_service

TLP

sudo pacman -S tlp
sudo systemctl enable tlp.service

Wallpaper

sudo pacman -S nitrogen
cd dotfiles
sag
./install install_wallpapers

Open nitrogen and add ~/wallpapers as wallpaper directory (recursively), select a wallpaper.

System Monitoring

sudo pacman -S htop

PDFs, Image Viewer and Window Swallowing

sudo pacman -S zathura zathura-pdf-mupdf eog
cd dotfiles
./install install_devour

iv and za in command line can be use to open PDFs and images!

Clipboard Manager

./install install_greenclip
install_config greenclip

Screenshots

sudo pacman -S flameshot

Notifications

sudo pacman -S dunst libnotify gnome-themes-extra
install_config dunst

Brightness and Audio Control

sudo pacman -S brightnessctl playerctl

Pulseaudio

./install install_pulseaudio

Flatpak

sudo pacman -S flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Spotify

sudo pacman -S xdg-desktop-portal-gtk
flatpak install spotify

Anki

flatpak install anki

Development Tools

C/C++

cd dotfiles
install_config gdb
./install install_cpp_dev_tools
./install setup_gdb

Python

cd dotfiles
./install install_python_language_server

Lua

cd dotfiles
./install install_lua_dev_tools

Ruby

cd dotfiles
install_config gem

Q & A

Lazy loads installs treesitter every time

rm -rf ~/.local/share/nvim

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.