A cross-distribution Git configuration tool for Linux
fire-git is a bash-based TUI (Text User Interface) tool that automates Git configuration
(user.name and user.email). It works on any Linux distribution and supports
sandbox environments like Flatpak.
| Feature | Description |
|---|---|
| TUI Menu | Interactive 7-option menu interface |
| Auto-Detection | Detects 10+ package managers automatically |
| System Detection | Identifies OS, environment (Flatpak/Snap/Docker) |
| Validation | Validates email format before saving |
| Tutorial | Built-in Git quick reference |
| Settings | Applies recommended Git defaults |
| Manager | Distributions |
|---|---|
| apt/apt-get | Debian, Ubuntu, Linux Mint, Pop!_OS |
| dnf | Fedora, RHEL 8+, CentOS Stream |
| yum | RHEL 7, CentOS 7 |
| pacman | Arch Linux, Manjaro, EndeavourOS |
| zypper | openSUSE, SUSE Linux Enterprise |
| microdnf | Fedora Silverblue, CentOS Stream |
| eopkg | Solus |
| apk | Alpine Linux |
| swupd | Clear Linux |
- Native (bare metal)
- Flatpak sandbox
- Snap sandbox
- Docker container
- Nix environment
# Configure Git directly
curl -sL https://github.com/Donarley/fire-git/raw/main/installer.sh | bash -s -- 'Your Name' 'you@example.com'# Clone and run
git clone https://github.com/Donarley/fire-git.git
cd fire-git
chmod +x src/firegit.sh
./src/firegit.shGIT_NAME="Your Name" GIT_EMAIL="you@example.com" ./src/firegit.shAdd your distribution's package manager below.
| Distribution | Command |
|---|---|
| Arch Linux | yay -S fire-git (AUR) |
| NixOS | nix-env -i fire-git |
-h, --help Display help
--check View current git configuration
--reset Remove git configuration
--tutorial Show Git quick referenceWhen Git is already configured, fire-git displays an interactive menu:
========================================
Main Menu
========================================
1) Reconfigure Git (name/email)
2) View current config
3) Reset configuration
4) Git Quick Tutorial
5) Apply additional settings
6) Show System Info
7) Exit
fire-git automatically applies these recommended settings:
| Setting | Value | Description |
|---|---|---|
init.defaultBranch |
main | Default branch name |
pull.rebase |
false | Merge strategy |
push.default |
current | Push strategy |
fetch.prune |
true | Auto-prune refs |
color.ui |
auto | Color output |
MIT License - See LICENSE for details.
Donarley - GitHub