https://github.com/andros21/dotfiles
dotfiles - with ansible playbooks
https://github.com/andros21/dotfiles
alpine-linux ansible dotfiles dwm fedora
Last synced: 22 days ago
JSON representation
dotfiles - with ansible playbooks
- Host: GitHub
- URL: https://github.com/andros21/dotfiles
- Owner: andros21
- License: gpl-3.0
- Created: 2021-02-16T08:39:32.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2025-03-23T09:43:11.000Z (about 1 month ago)
- Last Synced: 2025-03-23T10:27:49.690Z (about 1 month ago)
- Topics: alpine-linux, ansible, dotfiles, dwm, fedora
- Language: Lua
- Homepage:
- Size: 436 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
![]()
![]()
![]()
![]()
with ansible playbooks
The aim of this repo is in progress,
cause my dotfiles are in progress too 😉
Ansible
·
Features
·
Usage
## :star: Features
#### X server `Xorg`
- Nord color style, thanks to [Nord Xresources](https://github.com/arcticicestudio/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](https://github.com/LukeSmithxyz/dwm), here my build [dwm](https://github.com/andros21/dwm)
- Xresources color/style setup
#### Terminal `alacritty`
- Very similar st style, nord theme colors too
#### Terminal multiplexer `tmux`
- [Nord theme status](https://github.com/arcticicestudio/nord-tmux) bar and theme
- [Tmux-config](https://github.com/samoshkin/tmux-config)
- Vi key bindings
- Clipboard integration
- Nested tmux session handling (local+remote)
- [Tpm](https://github.com/tmux-plugins/tpm) as default plugin manager#### Shell `fish`
- [starship](https://starship.rs/) cross-shell prompt
- [zoxide](https://github.com/ajeetdsouza/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](https://github.com/jorgebucaran/fisher) as default plugin manager
- [fzf.fish](https://github.com/PatrickF1/fzf.fish) fzf fisher plugin
- Custom aliases and functions for fish, aesthetics and functional purpose
- [Nord dir colors](https://github.com/arcticicestudio/nord-dircolors)
- udisksctl mount simple functions and relative aliases#### Status bar `dwmblocks`
Custom [Luke's build of dwmblocks](https://github.com/LukeSmithxyz/dwmblocks), here my build [dwmblocks](https://github.com/andros21/dwmblocks)
`dwmstatusbar` contain the scripts needed by dwmblocks to work, all the available [here](https://github.com/LukeSmithxyz/voidrice/tree/master/.local/bin/statusbar)
- Xresources color/style setup
#### Screen locker `slock`
Here my build [slock](https://github.com/andros21/slock)
- Xresources color/style setup
#### Launcher `rofi`
- Custom theme `nord.rasi`
#### Editor `neovim`
- [lazy.nvim](https://github.com/folke/lazy.nvim) as default plugin manager
- [mason.nvim](https://github.com/williamboman/mason.nvim) as tool providers
- [lualine](https://github.com/nvim-lualine/lualine.nvim) with [nord-theme](https://github.com/arcticicestudio/nord-vim) plugin
- [bufferline](https://github.com/akinsho/bufferline.nvim) buffers as tabs and more
- [formatter.nvim](https://github.com/mhartington/formatter.nvim) format on save (bins automatically provisioned by [mason-tool-installer](https://github.com/WhoIsSethDaniel/mason-tool-installer.nvim))
- [nvim-lint](https://github.com/mfussenegger/nvim-lint) async lint with built-in lsp support (bins automatically provisioned by [mason-tool-installer](https://github.com/WhoIsSethDaniel/mason-tool-installer.nvim))
- [fzf-lua](https://github.com/ibhagwan/fzf-lua) easily moving around (files, tabs, lines, stages, ripgrep, ...)
- [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter) for syntax highlight and more
- [LazyVim](https://github.com/LazyVim/LazyVim) autocmds, options, keymaps, devicons
- aesthetics and essential plugins for file editing e.g. [mini](https://github.com/echasnovski/mini.nvim)#### File Manager `ranger`
- custom `rc.conf`
- custom `commands.py`:
- [zoxide](https://github.com/jchook/ranger-zoxide)
- [devicons](https://github.com/alexanderjeurissen/ranger_devicons)
- fzf search
- compress/extract with [atool](https://www.nongnu.org/atool/)#### Miscellanea
- [rofi-pass](https://github.com/carnager/rofi-pass) as GNU/pass frontend
- [rofi-power](https://github.com/okraits/rofi-tools) as systemctl power tool
- [teiler](https://github.com/carnager/teiler) as powerful screenshots and screencasts tool
- [ytdl-mpv](https://github.com/andros21/ytdl-mpv) as yt player
- [distrobox](https://github.com/89luca89/distrobox) as podman wrapper## :rocket: Usage
### Prerequisites
- `fedora == 38`
- a sudo user
- python venv setup
```bash
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
```bash
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
```bash
git clone https://github.com/andros21/dotfiles.git ~/.dotfiles
cd ~/.dotfiles/ansible/.ansible/dwm/
```
- Install dependencies
```bash
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
```bash
ansible-playbook playbooks/dwm.yml
sudo reboot
```