Cross-Platform Development Environment Setup
Transform your fresh Linux installation into a powerhouse development machine in minutes!
This DevSetup isn't just another setup script β it's your personal DevOps engineer that knows exactly how to configure your system for modern web development. Whether you're spinning up a new Arch installation, setting up Ubuntu for the first time, or switching to Fedora, this script has got you covered.
- π― Universal Compatibility: Supports 6+ major Linux distributions
- π¨ Beautiful CLI Interface: Color-coded output with distribution-specific ASCII art
- π§© Modular Installation: Install only what you need, when you need it
- π§ Smart Detection: Automatically detects your distro and configures accordingly
- π¦ Modern Stack: Latest tools for React, Vue, Node.js, Docker, and more
- π‘οΈ Safe & Reliable: Comprehensive error handling and status tracking
![]() Arch Linux |
![]() Ubuntu/Debian |
Fedora |
![]() openSUSE |
Manjaro |
EndeavourOS |
# Clone the repository
git clone https://github.com/xi-Rick/devsetup.git
cd devsetup
# Make it executable
chmod +x devsetup.sh
# Run the setup
./devsetup.shWhen you run the script, you'll be greeted with a beautiful, interactive menu:
π DevSetup
Distribution: arch
Package Manager: pacman
========== Installation Menu ==========
Select the component(s) to install (separate choices with spaces):
1) Base Development Tools
2) Node.js & NVM Setup
3) Python Development Tools
4) Docker & Containerization
5) Code Editors/IDEs
6) Web Browsers
7) Database Tools
8) Shell Improvements
9) VS Code Extensions
10) Configuration Files
11) All Components (Full Setup)
Enter your choice(s):
Frontend Developer Setup:
Enter your choice(s): 1 2 5 9 10Installs base tools, Node.js/NVM, your choice of IDE, VS Code extensions, and config files
Full-Stack Developer Setup:
Enter your choice(s): 11Complete installation with everything you need for modern web development
Backend-Focused Setup:
Enter your choice(s): 1 3 4 7 8Base tools, Python, Docker, databases, and shell improvements
# Core development essentials
git curl wget build-essential
base-devel # Arch/Manjaro# Modern JavaScript runtime management
nvm install --lts
npm install -g pnpm yarn typescript vite webpack parcel
npm install -g eslint prettier jest cypress nodemon
npm install -g live-server serve http-server vercel# Python development stack
python3 python3-pip python3-venv pipx
pip install pylint black flake8 autopep8# Docker ecosystem
docker docker-compose
# Automatic user group configuration
# Service enablement and startupThe script offers an interactive IDE selection with these options:
- Code - OSS (Official Arch Linux open-source release)
- Visual Studio Code (Microsoft's official release)
- VSCodium (Community build without telemetry)
- Cursor (AI-powered code editor)
- Multiple IDEs (Install several at once)
# Testing and development browsers
chromium brave-browser# Popular databases for development
postgresql mysql redis mongodb
# GUI tools: MongoDB Compass, DBeaverDevSetup transforms your terminal with:
# Git shortcuts
alias gs='git status'
alias ga='git add'
alias gc='git commit'
alias gp='git push'
# Modern development
alias ni='npm install'
alias nr='npm run'
alias dc='docker-compose'
alias serve='python3 -m http.server 8000'
# Navigation helpers
alias ..='cd ..'
alias ll='ls -alF'
alias proj='cd ~/Projects'~/
βββ Projects/
β βββ web/
β β βββ frontend/
β β βββ backend/
β β βββ fullstack/
β βββ mobile/
β βββ desktop/
β βββ scripts/
βββ Repositories/
βββ Scripts/
# OS generated files
.DS_Store
Thumbs.db
# IDE files
.vscode/
.idea/
# Node.js
node_modules/
.env*
npm-debug.log*
# Build outputs
dist/
build/
.next/
.nuxt/{
"env": {
"browser": true,
"es2021": true,
"node": true
},
"extends": ["eslint:recommended"],
"parserOptions": {
"ecmaVersion": 12,
"sourceType": "module"
},
"rules": {
"indent": ["error", 2],
"quotes": ["error", "single"],
"semi": ["error", "always"]
}
}{
"semi": true,
"trailingComma": "es5",
"singleQuote": true,
"printWidth": 80,
"tabWidth": 2
}When you install VS Code, the script automatically installs these essential extensions:
Language Support:
- TypeScript & JavaScript
- Python
- HTML/CSS
- Tailwind CSS
Web Development:
- Auto Rename Tag
- Live Server
- Thunder Client (API testing)
- ESLint & Prettier
Productivity:
- GitLens
- Material Theme
- Bracket Pair Colorizer
- Todo Highlight
React/Vue:
- React snippets
- Vue Language Features (Volar)
# Automatic AUR helper installation (yay)
# Optimal package selections from official repos
# AUR packages for specialized tools# Official Microsoft repositories for VS Code
# Docker CE from official Docker repository
# Snap package alternatives when appropriate# DNF package management optimization
# Fedora-specific package names
# RPM Fusion when neededAfter installation, you'll see a comprehensive summary:
π System setup completed successfully!
Component Status:
Base development tools: β
installed
Node.js & NVM: β
installed
Python development tools: β
installed
Docker & Docker Compose: β
installed
Development tools (IDEs): β
installed
Web development browsers: β
installed
Database tools: β
installed
Shell improvements: β
installed
VS Code extensions: β
installed
Configuration files: β
installed
π Important notes:
β’ Log out and back in for Docker group changes to take effect
β’ Run 'source ~/.bashrc' to reload shell configuration
β’ Check ~/Projects for your organized development workspace
π You're all set for modern web development!
DevSetup is built with safety in mind:
- π« No Root Execution: Script refuses to run as root for security
- π Smart Detection: Checks existing installations to avoid conflicts
- π Status Tracking: Monitors each component's installation status
- π Error Handling: Comprehensive error trapping and recovery
- π§Ή Cleanup: Automatic package cache cleanup after installation
We welcome contributions! Here's how you can help:
- π΄ Fork the repository
- πΏ Create a feature branch (
git checkout -b feature/amazing-feature) - πΎ Commit your changes (
git commit -m 'Add amazing feature') - π€ Push to the branch (
git push origin feature/amazing-feature) - π Open a Pull Request
git clone https://github.com/xi-Rick/devsetup.git
cd devsetup
# Test in a virtual machine or container
# Make changes and test across different distributions- Linux Community - For creating amazing distributions
- Open Source Maintainers - For the tools that make development awesome
- Contributors - For making this script better every day
β If DevSetup saved you time, please consider giving it a star! β
Made with β€οΈ by developers, for developers


