Devgita

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+
- 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
Quick Install (Recommended)
Install devgita with a single command. This will:
- Download the appropriate binary for your OS and architecture
- Install to
~/.local/bin/devgita
- 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:
- Installing terminal tools and shell configuration
- Selecting programming languages to install
- Selecting database systems to install
- 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
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