Voltar ao ranking

abusoww/tuxmate

TypeScripttuxmate.com

THE MISSING BULK APP INSTALLER FOR LINUX

linuxtoolwebarchdebiannixpackage-managerubuntuflatpa
Crescimento de estrelas
Estrelas
1.8k
Forks
84
Crescimento semanal
Issues
10
1.5k
dez. de 25fev. de 26mai. de 26jul. de 26
Artefatosnpmnpm install tuxmate
README

TuxMate

Linux Website Maintained GitHub issues GitHub stars GitHub license

🐧 The only Mate you need for setup

TuxMate is a cross-distro install command generator built for real Linux workflows.

Choose apps once, generate inspectable commands/scripts for your distro, and run only what you understand.

[!NOTE] Package mappings are verified against official distro registries and reviewed under strict contribution rules. Repositories evolve over time, so some entries can become outdated or unavailable later. If you spot an issue, please report it so we can fix it quickly.

[!WARNING] Security notice: TuxMate is a command generator (a wrapper around install logic), not a background installer. You copy and run commands yourself, so always inspect the generated command/script in the UI before executing. Downloadable scripts are produced with strict project rules, but no automation tool can replace user review. Confirm package names, flags, and targets for your distro before execution, and proceed at your own risk.

Features

  • Cross-distro generation: apt (Ubuntu/Debian), pacman + AUR helpers (yay/paru), dnf (Fedora), zypper (openSUSE), nix config output, Flatpak, Snap, and Homebrew.
  • Native-first resolution with npm/script fallbacks only when a distro target is missing.
  • Safe generation: inspectable output, installed-package checks, and retry with exponential backoff.
  • Faster setup: parallel Flatpak installs.
  • Homebrew-aware output with correct formula/cask separation.
  • Clean terminal UX: colored logs, progress, ETA, and final summaries.
  • Verification built in: AUR detection + allowlist, Nix unfree checks, and verified Flatpak/Snap badges.
  • Productive UI: copy/download drawer, yay/paru switch, unfree warnings, and distro-aware context.
  • Keyboard-first flow: Vim/arrow navigation, / search focus, and fast clear.
  • PWA support with network-first service worker for resilient loading.

Screenshots

1 2 3

Development

npm install
npm run dev

Open http://localhost:3000

Build

npm run build
npm start

Project Structure

  • src/app/: App Router entrypoints, layout, globals, and error boundary.
  • src/components/: UI modules (catalog, command drawer, distro selector, search, shared UI primitives).
  • src/hooks/: App interaction hooks (state orchestration, keyboard navigation, theme, tooltips).
  • src/lib/apps/: Source-of-truth app registry (category JSON files).
  • src/lib/scripts/: Distro-specific script generators and shared shell helpers.
  • src/lib/generateInstallScript.ts: Main orchestration for native targets + universal fallbacks.
  • src/lib/verification.ts: Verified source badges (Flathub/Snap).
  • src/__tests__/: Unit tests for data, script behavior, and utilities.

Docker Deployment

Build and Run

docker build -t tuxmate:latest .
docker run -p 3000:3000 tuxmate:latest

Use Prebuilt Image (GHCR)

docker pull ghcr.io/abusoww/tuxmate:latest
docker run -p 3000:3000 ghcr.io/abusoww/tuxmate:latest

# Version pinning example
docker pull ghcr.io/abusoww/tuxmate:v1.0.0
docker run -p 3000:3000 ghcr.io/abusoww/tuxmate:v1.0.0

Docker Compose

docker-compose up -d
docker-compose logs -f
docker-compose down

Open http://localhost:3000

Port Mapping

docker run -p 8080:3000 tuxmate:latest

Environment Variables

  • NODE_ENV=production - Run in production mode
  • PORT=3000 - Application port
  • NEXT_TELEMETRY_DISABLED=1 - Disable Next.js anonymous telemetry
docker run -p 3000:3000 \
  -e PORT=3000 \
  -e NEXT_TELEMETRY_DISABLED=1 \
  tuxmate:latest

Tech Stack

🤝 Contribution

See CONTRIBUTING.md for contribution guidelines.

🎯 Roadmap

Completed

  • Multi-distro support (Ubuntu, Debian, Arch, Fedora, openSUSE)
  • Nix, Flatpak & Snap universal package support
  • 180+ applications across 15 categories
  • Smart script generation with error handling
  • Dark / Light theme toggle with smooth animations
  • Copy command & Download script
  • Custom domain
  • Docker support
  • CI/CD shortcuts & workflow
  • Search & filter applications (Real-time)
  • AUR Helper selection (yay/paru) + Auto-detection
  • Keyboard navigation (Vim keys, Arrows, Space, Esc, Enter)
  • Package availability indicators (including AUR badges)
  • Homebrew support (macOS + Linux)
  • PWA support for offline use
  • Nix configuration.nix download with unfree package detection

Planned

  • Winget support (Windows)
  • Custom presets / profiles
  • Share configurations via URL
  • More distros (FreeBSD, Gentoo, Void, Alpine)
  • i18n / Multi-language support
  • Companion CLI tool
  • Expand application catalog (200+)
  • Dotfiles integration
  • Declarative NixOS options support (programs.*) [Issue #36]

Related Projects

  • LinuxToys – User-friendly collection of tools for Linux with an intuitive interface
  • Nixite – Generates bash scripts to install Linux software, inspired by Ninite
  • tuxmate-cli – CLI companion for tuxmate, uses tuxmate's package database

Monetary Contributions

No tips jar here. I’m happy just knowing you’re using Linux.

If you want to earn some real life karma points, consider donating to the following organizations:

Comments, suggestions, bug reports and contributions are welcome.

📜 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.

Repositórios relacionados
trimstray/the-book-of-secret-knowledge

A collection of inspiring lists, manuals, cheatsheets, blogs, hacks, one-liners, cli/web tools and more.

MIT Licenseawesomeawesome-list
234.5k14k
jlevy/the-art-of-command-line

Master the command line, in one page

bashunix
161.9k14.8k
clash-verge-rev/clash-verge-rev

A modern GUI client based on Tauri, designed to run in Windows, macOS and Linux for tailored proxy experience

TypeScriptnpmGNU General Public License v3.0clashclash-meta
clashverge.dev
133k9.6k
rustdesk/rustdesk

An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.

Rustcrates.ioGNU Affero General Public License v3.0remote-controlremote-desktop
rustdesk.com
118.6k18.1k
nodejs/node

Node.js JavaScript runtime ✨🐢🚀✨

JavaScriptnpmOthernodejsjavascript
nodejs.org
118.4k36.2k
sherlock-project/sherlock

Hunt down social media accounts by username across social networks

PythonPyPIMIT Licenseosintreconnaissance
sherlockproject.xyz
86.9k10.2k
bregman-arie/devops-exercises

Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

PythonPyPIOtherdevopsaws
83.3k19.8k
netdata/netdata

The fastest path to AI-powered full stack observability, even for lean teams.

GoGo ModulesGNU General Public License v3.0monitoringdocker
netdata.cloud
79.8k6.5k
Z4nzu/hackingtool

ALL IN ONE Hacking Tool For Hackers

PythonPyPIMIT Licenseallinonehackingtoolweb-attack
78.4k8.9k
ventoy/Ventoy

A new bootable USB solution.

CGNU General Public License v3.0bootable-usbmultiboot
ventoy.net
78.2k4.9k
alacritty/alacritty

A cross-platform, OpenGL terminal emulator.

Rustcrates.ioApache License 2.0terminal-emulatorsopengl
alacritty.org
65k3.5k
warpdotdev/warp

Warp is an agentic development environment, born out of the terminal.

Rustcrates.ioGNU Affero General Public License v3.0rustlinux
warp.dev
63.5k5.3k