{"id":19364586,"url":"https://github.com/groovytron/dotfiles","last_synced_at":"2026-02-17T01:34:44.572Z","repository":{"id":126913306,"uuid":"109267712","full_name":"groovytron/dotfiles","owner":"groovytron","description":"My favorite tools dotfiles backup for rainy days.","archived":false,"fork":false,"pushed_at":"2024-11-03T10:38:07.000Z","size":316,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-23T14:39:57.719Z","etag":null,"topics":["bash","configuration","dotfiles","linux","neovim","shell","tmux","tmuxinator","vim","zsh"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/groovytron.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-11-02T13:22:00.000Z","updated_at":"2024-11-03T10:38:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"f35398ce-da7e-4ea6-945a-35f5e9be31fc","html_url":"https://github.com/groovytron/dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/groovytron/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovytron%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovytron%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovytron%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovytron%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/groovytron","download_url":"https://codeload.github.com/groovytron/dotfiles/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovytron%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29529513,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T00:57:22.232Z","status":"ssl_error","status_checked_at":"2026-02-17T00:54:25.811Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","configuration","dotfiles","linux","neovim","shell","tmux","tmuxinator","vim","zsh"],"created_at":"2024-11-10T07:37:46.837Z","updated_at":"2026-02-17T01:34:44.552Z","avatar_url":"https://github.com/groovytron.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Groovytron dotfiles\n\n[![Build Status](https://travis-ci.org/groovytron/dotfiles.svg?branch=master)](https://travis-ci.org/groovytron/dotfiles)\n\nThis is a quick backup of my dotfiles to make tool configuration easier in case\nof system issue. The [M̀akefile](https://github.com/groovytron/dotfiles/blob/master/Makefile) can be used to install configurations of different tools.\n\nTo install one or many configurations, do the following:\n\n1. Clone the repository into your `$HOME` directory by runnning `git clone https://github.com/groovytron/dotfiles.git ~/dotfiles`.\n2. Go into the cloned repository by running `cd ~/dotfiles`.\n3. Run `make install_all` to install all the configurations. *You can run `make help` to list all the available installations if you only want to install the configuration of one tool.*\n\nThe `Makefile` mainly creates symbolic links but **it will overwrite you current configuration files so have a look at the `Makefile` and backup your configuration files before running something if you are not sure of what you are doing.**\n\nAs I was tired to setup and reinstall everything by hand when\nI buy a new machine, I wrote [an Ansible playbook](./ansible/playbook.yml) to\nautomate the tedious installation and setup tasks. It's even tested with\n[`molecule`](https://ansible.readthedocs.io/projects/molecule/) combined with\n[`podman`](https://podman.io/) !\n\nI use the below tools.\n\n## Shells\n\n- [`bash`](https://www.gnu.org/software/bash/) (because it's simple and quite\n  easy to tweak). Check the [.bashrc](https://github.com/groovytron/dotfiles/blob/master/.bashrc) and [.bash_profile](https://github.com/groovytron/dotfiles/blob/master/.bash_profile) files for settings details.\n- [`oh-my-zsh`](https://github.com/robbyrussell/oh-my-zsh)\n  (when I want a fancy shell). Check the [.zshrc](https://github.com/groovytron/dotfiles/blob/master/.zshrc) file for settings details.\n\nShells themes can be found in the [.Xresources.basic](https://github.com/groovytron/dotfiles/blob/master/.Xresources.basic) file which contains\na simple theme that I did by myself.\n\nThe [.Xresources.solarized](https://github.com/groovytron/dotfiles/blob/master/.Xresources.solarized) file contains a\n[solarized color theme](http://ethanschoonover.com/solarized).\n\nThe [.Xresources.gruvbox](https://github.com/groovytron/dotfiles/blob/master/.Xresources.gruvbox) file contains a\n[gruvbox color theme](https://github.com/morhetz/gruvbox).\n\nTo use one of these themes, just copy the one you want into\nyour home directory and rename it into\n`.Xresources`. Do not forget to reboot or launch `xrdb ~/.Xresources`\nto apply the theme in the next terminals you will open.\n\nIf you are interested in how X clients configuration works.\nHave a look [here](https://wiki.archlinux.org/index.php/x_resources).\n\nI also use [`undistract-me`](https://github.com/jml/undistract-me) to be able to run long standing command, do something else while it's running and get notified when the command is finished. If you want to get it working, you need to install `zsh-notify` and `wmctrl` packages.\n\nThere are some homemade commands, aliases and environement variables definitions in the [groovy_functions.sh](https://github.com/groovytron/dotfiles/blob/master/groovy_functions.sh) and [groovy_variables.sh](https://github.com/groovytron/dotfiles/blob/master/groovy_variables.sh) files.\n\n## Terminal multiplexing\n\n- [`tmux`](https://github.com/tmux/tmux/wiki) as a terminal multiplexer with\n  both of the above shells. Check the `.tmux.conf` file for settings details.\n- [`tpm`](https://github.com/tmux-plugins/tpm) which stands for Tmux Plugin Manager.\n- [`tmux-powerline-theme`](https://github.com/jooize/tmux-powerline-theme)\n- [`tmuxinator`](https://github.com/tmuxinator/tmuxinator) to speed up project startup with `tmux` using «per-project configurations»\n\n## Editors\n\nI am now using [`neovim`](https://neovim.io/) because it has a built-in support\nfor [Language Server Protocol (LSP)](https://microsoft.github.io/language-server-protocol/)\nand makes code editing and debugging easier. Feel free to have a look at\nmy configuration in [config/nvim](https://github.com/groovytron/dotfiles/tree/master/config/nvim)\nto check which plugins I am using and how they are configured.\n\nI used to use `gvim` in the past for a few years with the following config:\n\n- [`vim` (the `gvim` package with GTK/X11 support)](http://www.vim.org/) with some plugins (check the [.vimrc](https://github.com/groovytron/dotfiles/blob/master/.vimrc))\n- [`vim-airline`](https://github.com/vim-airline/vim-airline) to style vim's status bar\n\n## CLI Tools\n\n- [`ag`](https://github.com/ggreer/the_silver_searcher) and\n  [`ripgrep`](https://github.com/BurntSushi/ripgrep) as more user-friendly and\n  faster alternatives to `grep`\n- [`bat`](https://github.com/sharkdp/bat) as a replacement for `cat`\n- [`glow`](https://github.com/charmbracelet/glow) to read Markdown files in the terminal\n- [`fzf`](https://github.com/junegunn/fzf) as a command-line fuzzy finder an pluggable to vim\n- [`zathura`](https://pwmt.org/projects/zathura/) as a document viewer (have a look at my [zathurarc](https://github.com/groovytron/dotfiles/blob/master/zathurarc) to check the configuration)\n- [`dog`](https://github.com/ogham/dog) as a DNS client for DNS debugging\n\n## Fonts\n\nI used to use the [patched fonts for Powerline](https://github.com/powerline/fonts) to get all the characters displayed nicely in the shells.\n\nI now use [nerd-fonts](https://github.com/ryanoasis/nerd-fonts) and its font patcher to patch it with the font [Input Mono from Font Bureau](https://input.fontbureau.com/). It makes the fonts usable in Vim with all the icons from Nerd Fonts.\n\nThe command I use to generate the font is the following:\n\n```console\npython font-patcher --mono InputMono-Regular.ttf\n```\n\n## Result\n\nHere is how it looks with zsh, tmux and vim configured with the solarized theme:\n\n![](./urxvt-with-tmux-vim-1100x601.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroovytron%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgroovytron%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroovytron%2Fdotfiles/lists"}