..
2025-07-23 03:23:48 -04:00
2025-07-10 02:07:55 -04:00

OS Tweaks Role

Configures essential system tools and development environment settings on Debian-based systems.

Description

This role installs and configures common development and system administration tools with optimized settings:

  • System packages: vim, htop, iftop, iotop, bash-completion
  • Bash configuration: Enhanced prompt with colors, aliases, and useful functions
  • Git configuration: Global git settings with aliases and color schemes
  • Vim configuration: Basic editor settings with syntax highlighting and proper indentation

Variables

This role doesn't define any variables. All configurations are applied using predefined files.

Files Deployed

File Purpose Location
bash_profile Enhanced bash environment with colored prompt, aliases, and utility functions /etc/profile.d/bash_tweaks.sh
gitconfig Global git configuration with aliases and color schemes /etc/gitconfig
vimrc Vim editor settings with syntax highlighting and proper indentation /etc/vim/vimrc.local

Examples

Basic Usage

- name: Apply OS tweaks
  hosts: all
  roles:
    - mrjk.debian.os_tweaks

With Tags

- name: Apply OS tweaks with specific tags
  hosts: all
  roles:
    - role: mrjk.debian.os_tweaks
      tags:
        - config_show
        - os_tweaks

In a Playbook

- name: Configure development environment
  hosts: dev_servers
  become: yes
  roles:
    - mrjk.debian.os_tweaks
  tasks:
    - name: Verify bash configuration
      command: source /etc/profile.d/bash_tweaks.sh
      changed_when: false

Features

Bash Enhancements

  • Colored prompt with disk usage indicators
  • Useful aliases and functions
  • Regex patterns for common text matching
  • Enhanced history and completion

Git Configuration

  • Color-coded output
  • Common aliases (st, br, co, etc.)
  • URL shortcuts (gh:, gist:, bb:)
  • Credential caching (24h)

Vim Settings

  • Syntax highlighting
  • Proper indentation (2 spaces)
  • Dark background theme
  • Disabled mouse support

Requirements

  • Debian-based system
  • Ansible 2.9+
  • Root or sudo privileges

Dependencies

None.

License

[Add your license information here]