- Add NEXT_TELEMETRY_DISABLED=1 to Dockerfile (builder and runner stages) - Add NEXT_TELEMETRY_DISABLED=1 to docker-compose.yml - Add build-args to GitHub Actions workflow - Document environment variables in README This ensures no telemetry data is collected from containerized deployments, respecting user privacy and reducing network overhead.
🐧 The only Mate you need for setup
TuxMate is a web-based Linux application installer that generates distro-specific shell scripts, that aims to be the simplest way to bulk-install applications on a fresh Linux system.
Maybe you've just installed a fresh Linux distro. Perhaps you're setting up a new machine or can't remember all the package names for your favorite apps?
📦 Supported Distributions
- Ubuntu / Debian (apt)
- Arch Linux (pacman + AUR via yay)
- Fedora (dnf)
- openSUSE (zypper)
- Nix (nix-env)
- Flatpak
- Snap
✨ Features 🌟
Application Catalog
150+ applications across 15 categories: browsers, communication, dev tools, terminals, media, creative software, gaming, office, VPN/network, security, and more.
Smart Script Generation
- Detects already-installed packages
- Handles AUR packages automatically on Arch
- Enables RPM Fusion when needed on Fedora
- Parallel installation for Flatpak
- Network retry with exponential backoff
- Progress bars with ETA
- Colored output and summary reports
Availability Awareness
Shows which apps are available for your selected distro, with instructions for unavailable packages.
<EFBFBD>📸 Screenshots 🖼️
🐳 Docker Deployment
Quick Start with Docker
# Build the Docker image
docker build -t tuxmate:latest .
# Run the container
docker run -p 3000:3000 tuxmate:latest
Using Pre-built Images
Pre-built Docker images are automatically published to GitHub Container Registry:
# Pull and run the latest image
docker pull ghcr.io/abusoww/tuxmate:latest
docker run -p 3000:3000 ghcr.io/abusoww/tuxmate:latest
# Or use a specific version
docker pull ghcr.io/abusoww/tuxmate:v1.0.0
docker run -p 3000:3000 ghcr.io/abusoww/tuxmate:v1.0.0
Using Docker Compose (Recommended)
# Start the application
docker-compose up -d
# View logs
docker-compose logs -f
# Stop the application
docker-compose down
Configuration
The Docker container exposes port 3000 by default. You can customize the port mapping:
docker run -p 8080:3000 tuxmate:latest
Environment Variables
The following environment variables are configured by default:
NODE_ENV=production- Run in production modePORT=3000- Application portNEXT_TELEMETRY_DISABLED=1- Disable Next.js anonymous telemetry
You can override these when running the container:
docker run -p 3000:3000 \
-e PORT=3000 \
-e NEXT_TELEMETRY_DISABLED=1 \
tuxmate:latest
🛠️ Tech Stack
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS 4
- Framer Motion
- GSAP
🚀 Usage
you can use the Arrow Keys or h j k l to navigate, Enter to select, Esc to go back, Space to toggle selection.
- Select your distribution from the dropdown
- Browse categories and select applications
- Copy the generated command or download the full install script
- Run the script on your Linux machine
🤝 Contribution
See CONTRIBUTING.md for contribution guidelines.
🎯 Roadmap
Completed
- Multi-distro support (Ubuntu, Debian, Arch, Fedora, openSUSE)
- Nix, Flatpak & Snap universal package support
- 150+ applications across 15 categories
- Smart script generation with error handling
- AUR helper integration (yay) for Arch
- Keyboard navigation (Vim keys + Arrows)
- Dark / Light theme toggle
- Copy command & Download script
- Package availability indicators
- Custom domain
- Docker support for containerized deployment
- CI/CD workflow for automated Docker builds
Planned
- Search & filter applications
- Winget support (Windows)
- Homebrew support (macOS)
- Save custom presets / profiles
- Share configurations via URL
- More distros (Gentoo, Void, Alpine)
- PWA support for offline use
- Companion CLI tool
- Expand application catalog (200+)
- Dotfiles integration
📜 License
Licensed under the GPL-3.0 License
Free software — you can redistribute and modify it under the terms of the GNU General Public License.



