This repository contains most of my "movable" setup. Mostly these are configurations for bash shell, git version control, and Vim text editor.
This setup can work on a variety of systems (RedHat-based especially). However, I mostly use it for my workstation, which runs:
- Fedora 41 (or whatever is the latest at the time)
- Python 3
- Ansible 2
- Vim 9
Clone the repository:
$ git clone https://github.com/mamchenkov/dotfiles.git
$ cd dotfiles
DANGER This will overwrite your current dot files!
Run Ansible
$ ansible-galaxy install -r requirements.yml
$ ansible-playbook all.yml -K
You can skip package installations and/or network operations (Vim plugins cloning, etc) with something like:
$ ansible-playbook all.yml --skip-tags="network,packages"
If you want to install/configure only certain parts, replace all.yml in the commands
above with of the other playbooks.
The following playbooks are available:
base.yml- this is the safest and simplest base setup. Recommended for the first use.devel.yml- installs some of the developer tools, such as PHP, Composer, and MySQLdesktop.yml- installs and configures my GUI desktop (MATE and i3)all.yml- installs everything from the above playbooks
Here is a brief overview of some of the features hidden deep in these dotfiles.
- Colorful prompt, featuring current time, username, hostname, working directory, as well as Git information. When working within a Git repository, the prompt will show the name of the current git branch, as well as a little "M" flag, if the working directory is dirty (if it was modified). The prompt will also change background color from blue to red, when working as root user, provided you have installed dotfiles for both your normal user and root.
- Support for 256 color terminals.
- For root user, an automatically initialized local git repository in /etc folder, with automatic commits of all changes upon logout.
- Colors for man pages.
- Color support in console git client.
- Several handy git aliases to make frequent operations faster ("st" instead of "status", "co" instead of "checkout", etc).
- Several handy git aliases to make long lists of parameters much shorter ("lol", "changelog", etc).
- Modular configuration of plugins with Pathogen plugin and git submodules.
- Collection of plugins for web developers (PHP Indent, NERDTree, Syntastic, Tagbar, Gist, etc).
- Support for 256 colors in console.
- MySQL prompt that includes current user, host, and selected database.
If you need to get in touch, send me an email to [email protected] . Alternatively, you can send in comments and pull requests for the project on GitHub at https://github.com/mamchenkov/dotfiles .
Patches welcome! ;)