Thanks to visit codestin.com
Credit goes to github.com

Skip to content

mamchenkov/dotfiles

Repository files navigation

DOTFILES

This repository contains most of my "movable" setup. Mostly these are configurations for bash shell, git version control, and Vim text editor.

Prerequisites

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

Installation

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.

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 MySQL
  • desktop.yml - installs and configures my GUI desktop (MATE and i3)
  • all.yml - installs everything from the above playbooks

Features

Here is a brief overview of some of the features hidden deep in these dotfiles.

Bash shell

  1. 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.
  2. Support for 256 color terminals.
  3. For root user, an automatically initialized local git repository in /etc folder, with automatic commits of all changes upon logout.
  4. Colors for man pages.

Git version control

  1. Color support in console git client.
  2. Several handy git aliases to make frequent operations faster ("st" instead of "status", "co" instead of "checkout", etc).
  3. Several handy git aliases to make long lists of parameters much shorter ("lol", "changelog", etc).

Vim text editor

  1. Modular configuration of plugins with Pathogen plugin and git submodules.
  2. Collection of plugins for web developers (PHP Indent, NERDTree, Syntastic, Tagbar, Gist, etc).
  3. Support for 256 colors in console.

Miscelanous

  • MySQL prompt that includes current user, host, and selected database.

Feedback

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! ;)

About

🏠 My various configuration files for bash, git, etc

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published