Skip to content

dotfiles - with ansible playbooks

License

Notifications You must be signed in to change notification settings

andros21/dotfiles

Repository files navigation


Logo

Lint CI Lint CI Lint CI License

with ansible playbooks

The aim of this repo is in progress,
cause my dotfiles are in progress too 😉

Ansible · Features · Usage

⭐ Features

X server Xorg

  • Nord color style, thanks to Nord Xresources
  • On fedora:
    • Custom Xsession starting dwm as WM on Xorg
    • Xresources/.profile sourced (by xinitrc-common) to prepare X env, before WM start
  • On alpine:
    • Custom .xinitrc for starting dwm with startx

Window manager dwm

Custom Luke's build of dwm, here my build dwm

  • Xresources color/style setup

Terminal alacritty

  • Very similar st style, nord theme colors too

Terminal multiplexer tmux

  • Nord theme status bar and theme
  • Tmux-config
    • Vi key bindings
    • Clipboard integration
    • Nested tmux session handling (local+remote)
  • Tpm as default plugin manager

Shell fish

  • starship cross-shell prompt
  • zoxide smarter cd command
  • Switch from ssh-agent to gpg-agent for ssh-key authentication
  • Speed up shell loading, dividing login tasks, from no-login tasks
  • Fisher as default plugin manager
  • fzf.fish fzf fisher plugin
  • Custom aliases and functions for fish, aesthetics and functional purpose
  • Nord dir colors
  • udisksctl mount simple functions and relative aliases

Status bar dwmblocks

Custom Luke's build of dwmblocks, here my build dwmblocks

dwmstatusbar contain the scripts needed by dwmblocks to work, all the available here

  • Xresources color/style setup

Screen locker slock

Here my build slock

  • Xresources color/style setup

Launcher rofi

  • Custom theme nord.rasi

Editor neovim

File Manager ranger

Miscellanea

🚀 Usage

Prerequisites

  • fedora == 37
    • a sudo user
    • python venv setup
      sudo dnf install python3-pip
      export PYV="py3$(python3 --version | awk -F '.' '{print $2}')"
      python3 -m venv "$HOME/.local/share/venv/$PYV/ansible"
  • alpine == 3.20
    • a sudo user
    • python venv setup
      sudo apk add py3-pip py3-cryptography
      export PYV="py3$(python3 --version | awk -F '.' '{print $2}')"
      python3 -m venv --system-site-packages "$HOME/.local/share/venv/$PYV/ansible"

How to run

It's simple:

  • Pull the repository
    git clone https://github.com/andros21/dotfiles.git ~/.dotfiles
    cd ~/.dotfiles/ansible/.ansible/dwm/
  • Install dependencies
    source "$HOME/.local/share/venv/$PYV/ansible/bin/activate"
    python3 -m pip install --upgrade -r requirements/pip/pip.in -c requirements/pip/pip.txt
    # ansible-dev for ansible-core + ansible-lint
    python3 -m pip install --upgrade -r requirements/ansible/ansible.in -c requirements/ansible/ansible.txt
    ansible-galaxy collection install -r requirements/ansible/requirements.yml
  • Read/check with attention the ansible dwm playbook
  • Run it
    ansible-playbook playbooks/dwm.yml
    sudo reboot