devgita

command module
v0.21.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 9, 2026 License: MIT Imports: 8 Imported by: 0

README ΒΆ

Devgita

Go License macOS Linux

One command to set up a complete, configured development environment. Automates installation and configuration of terminal tools, language runtimes, database systems, and desktop applications on macOS and Linux.

Core value proposition: Instead of manually installing 40+ tools across 10+ installers and editing 100+ configuration files, run dg install and get a fully configured dev environment in minutes.


πŸš€ Quick Start

1. Install devgita:

curl -fsSL https://raw.githubusercontent.com/cjairm/devgita/main/install.sh | bash

2. Restart your shell:

source ~/.zshrc  # or source ~/.bashrc for bash

3. Set up your environment:

dg install

That's it! You'll be prompted to select which programming languages, databases, and desktop apps to install.


✨ What Gets Installed

Terminal Tools (always included)

  • Shell: Zsh with Powerlevel10k, syntax highlighting, autosuggestions
  • Editors: Neovim with LSP support
  • Multiplexer: Tmux with custom configuration
  • Modern utilities: fzf, ripgrep, bat, eza, zoxide, btop, fd, tldr, lazydocker, lazygit, fastfetch
  • Runtime manager: Mise for managing multiple language versions
  • Fonts: JetBrains Mono and developer fonts

Programming Languages (interactive selection)

  • Node.js (LTS)
  • Python (latest)
  • Go (latest)
  • PHP
  • Rust (latest)

Database Systems (interactive selection)

  • PostgreSQL
  • Redis
  • MySQL
  • MongoDB
  • SQLite

Desktop Applications (platform-specific)

  • macOS: Docker Desktop, Alacritty, Brave, Aerospace, Raycast, GIMP, Flameshot
  • Linux: Docker Desktop, Alacritty, Brave, i3, Ulauncher, GIMP, Flameshot

πŸ“‹ Requirements

System Requirements
  • macOS: 13+ (Ventura or newer)
    • Apple Silicon (M1/M2/M3+) or Intel chips
  • Linux: Debian 12+ (Bookworm) or Ubuntu 24+
    • x86_64 architecture
  • Free disk space: ~5GB for all tools and databases
  • Internet connection: Required for downloading packages
Prerequisites
  • curl β€” For downloading the installer
  • bash β€” For running the installation script
  • git β€” Automatically installed or required for use

Installation

Install devgita with a single command. This will:

  1. Download the appropriate binary for your OS and architecture
  2. Install to ~/.local/bin/devgita
  3. Configure your PATH automatically
curl -fsSL https://raw.githubusercontent.com/cjairm/devgita/main/install.sh | bash
source ~/.zshrc  # or source ~/.bashrc
Manual Installation (Verify First)

If you prefer to review the installer script:

# Download the installer
curl -fsSL -o install.sh https://raw.githubusercontent.com/cjairm/devgita/main/install.sh

# Review it
cat install.sh

# Run it
bash install.sh

Usage

Install Development Environment

Run the interactive installer to set up your development environment:

devgita install

Or use the short alias:

dg install

This will guide you through:

  1. Installing terminal tools and shell configuration
  2. Selecting programming languages to install
  3. Selecting database systems to install
  4. Installing desktop applications
Category-Specific Installation

Install only specific categories:

# Install only terminal tools
dg install --only terminal

# Install only languages (interactive selection)
dg install --only languages

# Install only databases (interactive selection)
dg install --only databases

# Install only desktop applications
dg install --only desktop

# Combine multiple categories
dg install --only terminal,languages
Skip Categories

Install everything except specific categories:

# Install everything except desktop apps
dg install --skip desktop

# Skip multiple categories
dg install --skip databases,desktop
Available Commands
  • dg install - Install and configure development environment
    • --only <categories> - Install only specified categories (terminal, languages, databases, desktop)
    • --skip <categories> - Install everything except specified categories
    • --verbose - Enable verbose logging
  • dg worktree (alias: dg wt) - Manage git worktrees with tmux windows and AI coders
    • dg wt create <name> [--ai claude|opencode] - Create a worktree + tmux window + launch AI
    • dg wt ui (alias: dash, dashboard) - Open full-screen TUI dashboard (j/k nav, Enter attach, d delete, r repair, / filter, q quit)
    • dg wt list - List all managed worktrees
    • dg wt remove [name] - Remove a worktree (fzf picker if name omitted)
    • dg wt repair <name> - Recreate the tmux window for an existing worktree
    • dg wt prune - Remove all managed worktrees
  • dg --version - Show version information
  • dg --help - Show help message

βš™οΈ Configuration

Devgita manages configurations in ~/.config/devgita/:

  • Global state: global_config.yaml tracks installed packages
  • Shell integration: devgita.zsh sourced from your shell config
  • App configs: Application-specific configuration templates
Customization

After installation, you can customize:

  • Neovim: ~/.config/nvim/init.lua
  • Tmux: ~/.tmux.conf
  • Alacritty: ~/.config/alacritty/alacritty.toml
  • Git: ~/.config/git/.gitconfig
  • i3 (Linux): ~/.config/i3/config
  • Aerospace (macOS): ~/.config/aerospace/aerospace.toml

❓ Troubleshooting

Common Issues

Binary not found after installation:

# Restart your shell to pick up PATH changes
exec $SHELL

# Or manually source shell config
source ~/.zshrc  # or ~/.bashrc

Permission denied when installing:

# Ensure install directory is writable
mkdir -p ~/.local/bin
chmod 755 ~/.local/bin

Unsupported platform:

  • Devgita requires macOS 13+ or Debian 12+/Ubuntu 24+
  • Only amd64 and arm64 (Apple Silicon) architectures are supported

Mise commands not found after installation:

# Mise needs to be activated in your shell
exec $SHELL
# Or manually activate:
eval "$(mise activate zsh)"  # or bash, fish, etc.

Language version not available:

# List installed versions
mise list

# Install specific version
mise install node@20
mise use --global node@20

For more help, see the full documentation or open an issue.


πŸ“š Documentation

  • Product Specification β€” Detailed feature documentation, edge cases, testing strategy
  • Architecture β€” Cross-platform installation strategy and package mappings
  • App Guides β€” Individual configuration guides for each installed app
  • Roadmap β€” Planned features, future commands, and open questions
  • Contributing Guide β€” Development setup, testing, release process

🀝 Contributing

We welcome contributions! See CONTRIBUTING.md for:

  • Development setup and build instructions
  • Testing and code quality standards
  • Git workflow and PR process
  • Release procedures

Quick links:


πŸ“„ License

MIT License β€” Use devgita freely in personal and commercial projects.


Advanced Usage

Building from Source
Prerequisites
  • Go 1.21 or newer
  • Git
Build Commands
# Build for current platform
make build

# Build all platform binaries
make all

# Build specific platforms
make build-darwin-arm64    # macOS Apple Silicon
make build-darwin-amd64    # macOS Intel
make build-linux-amd64     # Linux/Debian/Ubuntu

# Run tests
make test

# Code quality checks
make lint

# Clean build artifacts
make clean
Testing Local Builds

Test a local build before releasing:

# Build for your platform
make build

# Install using local binary
bash install.sh --local ./devgita-darwin-arm64

Documentation ΒΆ

Overview ΒΆ

Copyright Β© 2024 NAME HERE <EMAIL ADDRESS>

Directories ΒΆ

Path Synopsis
* Copyright Β© 2025 Carlos Mendez <carlos@hadaelectronics.com> | https://cjairm.me/
* Copyright Β© 2025 Carlos Mendez <carlos@hadaelectronics.com> | https://cjairm.me/
internal
tooling/terminal/dev_tools/btop
Package btop provides installation and configuration management for btop resource monitor with devgita integration.
Package btop provides installation and configuration management for btop resource monitor with devgita integration.
tooling/terminal/dev_tools/fzf
Package fzf provides installation and command execution management for fzf fuzzy finder with devgita integration.
Package fzf provides installation and command execution management for fzf fuzzy finder with devgita integration.
tooling/terminal/dev_tools/ripgrep
Package ripgrep provides installation and command execution management for ripgrep with devgita integration.
Package ripgrep provides installation and command execution management for ripgrep with devgita integration.
tui/worktree
Package tuiworktree provides the Bubble Tea TUI dashboard for dg wt ui.
Package tuiworktree provides the Bubble Tea TUI dashboard for dg wt ui.
pkg
apt

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL