The simplest way to set up Ubuntu for productivity and development.
Transform your fresh Ubuntu installation into a beautiful, productive workspace in just one command. No menus, no decisions, no complexity - just automated perfection.
git clone https://github.com/misterioso013/upack.git
cd upack
./setup.shFor the absolute simplest experience, use our bootstrap script:
curl -sSL https://raw.githubusercontent.com/misterioso013/upack/main/boot.sh | bashThis automatically downloads and runs UPack from a temporary location.
That's it! ☕ Grab a coffee and come back to a fully configured Ubuntu system in 10-15 minutes.
🖥️ Beautiful Desktop
WhiteSur theme with GNOME extensions |
📱 Applications Menu
All essential apps pre-installed |
💻 Terminal Setup
Customized bash with colors and fonts |
- WhiteSur Theme: Elegant macOS-inspired design
- GNOME Extensions: Curated productivity extensions
- Custom Hotkeys: Keyboard-driven workflow
- Modern Terminal: Customized bash with colors and fonts
- Google Chrome: Modern web browser
- VS Code: Code editor with extensions
- VLC: Media player
- Obsidian: Modern note-taking and knowledge management
- Xournal++: PDF annotation and note-taking
- GNOME Tweaks: System customization
- And more: All the tools you need for daily productivity
After setup, manage your system with the intelligent UPack CLI:
# Development setup
upack git # Complete Git & GitHub SSH setup
upack git config # Configure Git user settings only
upack git ssh # Setup GitHub SSH key only
# Install development languages
upack install node python rust
# Install optional applications
upack install discord obs-studio btop typora
# System maintenance
upack status # Show what's installed
upack update # Update UPack and all packages
upack --help # See all commandsUPack makes development setup effortless:
upack git # One command configures everything:
# - Git user name and email
# - SSH key generation
# - GitHub SSH key setup
# - Connection testingupack install node # Node.js via NVM (industry standard)
upack install python # Python via system/pyenv
upack install rust # Rust via rustup (official installer)upack install btop # Modern system monitor
upack install docker # Container platformComplete mobile development environment in one command:
upack install react-native # Installs everything:
# - Android Studio (latest version)
# - Java JDK 17
# - Android SDK & Build Tools
# - Virtual Device (Pixel 4 emulator)
# - React Native CLI
# - All environment variables configured
# Or install components separately
upack install android-studio # Just the Android Studio IDE
upack install node # Node.js if not already installedWhat you get:
- ✅ Complete Android Studio with SDK Manager and AVD Manager
- ✅ Android SDK Platform 35 with latest build tools
- ✅ Pre-configured emulator ready to use
- ✅ Environment variables automatically set up
- ✅ React Native CLI globally installed
- ✅ Development tools like Flipper and React DevTools
Quick start after installation:
# Create new React Native project
npx react-native@latest init MyApp
cd MyApp
# Run on Android (starts emulator automatically if needed)
npx react-native run-android
# Verify installation
npx react-native doctorEach language installer uses the community's preferred tool - no conflicts, no complexity.
- Ubuntu 22.04 LTS or 24.04 LTS
- Internet connection for downloads
- sudo privileges for system package installation
UPack follows the "Format → Clone → Run → Done" philosophy:
- No interactive menus during initial setup
- Zero decisions required - smart defaults for everything
- Development tools installed separately via CLI when needed
- Permanent installation - works even if you delete the original folder
- Clean uninstall capability with
upack-uninstall
The setup is fully automated, but you can customize post-installation:
# Check system status
upack status
# Install specific applications
upack install discord obs-studio typora
# Update all installed packages
upack update
# List available packages
upack list --available
# Uninstall UPack completely
upack-uninstallUPack can automatically update itself when installed from git:
# Enable auto-updates by installing from git
git clone https://github.com/misterioso013/upack.git
cd upack && ./setup.sh
# Now upack update will also update UPack itself
upack update # Updates UPack + all managed packagesAuto-update features:
- ✅ Checks for latest UPack version from GitHub
- ✅ Smart update detection - only pulls when needed
- ✅ Preserves user settings and configurations
- ✅ Updates global CLI automatically after update
- ✅ Graceful fallback if git/internet unavailable
After setup, you get productive hotkeys:
Super + /- Quick reference for all hotkeysSuper + T- Open terminalSuper + E- File managerSuper + 1-9- Switch between applications
✅ Google Chrome - Modern web browser
✅ VS Code - Code editor with extensions
✅ VLC Media Player - Universal media player
✅ Obsidian - Modern note-taking and knowledge management
✅ Xournal++ - PDF annotation and note-taking
✅ GNOME Tweaks - System customization tools
✅ Extension Manager - Manage GNOME extensions
✅ WhiteSur Theme - Beautiful macOS-inspired design
✅ SF Pro Display Fonts - Apple's system fonts
✅ GNOME Extensions - Dock, workspace management
✅ Custom Hotkeys - Productivity keyboard shortcuts
✅ Terminal Customization - Colors, prompts, and themes
✅ UPack CLI - Intelligent package management
✅ Desktop Applications - GUI launcher and file sharing
✅ Permanent Installation - Survives folder deletion
✅ Global Access - Commands work from anywhere
Use the UPack CLI to install additional software as needed:
# Entertainment & Communication
upack install discord # Voice/video chat for gamers
upack install obs-studio # Live streaming and recording
# Development & System Tools
upack install btop # Modern system monitor
upack install docker # Container platform
upack install android-studio # Complete Android development IDE
upack install react-native # Full React Native development environment
# Productivity & Writing
upack install typora # Markdown editor with themes
# Programming Languages
upack install node # Node.js via NVM
upack install python # Python with package management
upack install rust # Rust programming languageThe automated setup installs everything to permanent locations:
~/.local/share/upack/ # Main UPack installation
├── assets/ # Icons, fonts, wallpapers
├── config/ # GNOME, terminal, app configs
├── install/ # Installation scripts
└── utils/ # Utility functions
~/.local/bin/ # CLI tools (in your PATH)
├── upack # Main CLI interface
├── upack-tui # Terminal UI
└── upack-uninstall # Complete removal tool
~/.local/share/applications/ # Desktop entries
├── upack-manager.desktop # UPack Manager GUI
└── sendany.desktop # File sharing app
# Clone for development
git clone https://github.com/misterioso013/upack.git
cd upack
# The CLI automatically detects development vs installed mode
./bin/upack --help # Run from source during development- Fork the repository on GitHub
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and test thoroughly
- Commit with clear messages:
git commit -m "Add amazing feature" - Push and create a Pull Request
UPack command not found:
# Add to PATH manually if needed
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrcDesktop applications missing icons:
# Icons are automatically installed to permanent location
ls ~/.local/share/upack/assets/icons/Want to start over completely:
# Complete removal
upack-uninstall
# Then reinstall
git clone https://github.com/misterioso013/upack.git
cd upack && ./setup.sh- Quick status check:
upack status - List all commands:
upack --help - Check installation:
ls ~/.local/share/upack/ - View installed apps:
upack list --installed
- No menus or dialogs during setup
- Smart defaults for everything
- Zero user decisions required
- Survives folder deletion - works even after removing the original clone
- Global CLI access - commands work from any directory
- Clean uninstall - complete removal in one command
- Best practices - each language uses its preferred installer
- Conflict-free - no duplicate package managers
- Community standards - NVM for Node, rustup for Rust, etc.
- Robust error handling - graceful failure with helpful messages
- Permanent infrastructure - proper system integration
- Modern interface - beautiful CLI with colors and clear output
This project is open source and available under the MIT License.
- Inspired by Omakub by DHH
- WhiteSur Theme by vinceliuice
- Nord Color Scheme by Arctic Ice Studio
- Ubuntu and GNOME communities
git clone https://github.com/misterioso013/upack.git
cd upack
./setup.shJust one command. Zero complexity. Maximum productivity. ☕
We welcome contributions from the community! Whether you want to:
- 🐛 Report bugs or suggest improvements
- ✨ Add new features or applications
- 📚 Improve documentation
- 🧪 Help with testing
Check out our Contributing Guide for detailed information on how to get started.
- 📖 Complete Guide - Detailed documentation with examples and tutorials
- ⚡ Quick Reference - Essential commands and shortcuts for daily use
- 📋 Changelog - Version history and release notes
Made with ❤️ for the Ubuntu community


