BUNTSTARTER/README.md

1100 lines
44 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🚀 UltraBunt - Ultimate Ubuntu Setup Script
*Because life's too short for manual installations and broken dependencies*
## 🎭 What is This Magnificent Beast?
UltraBunt is the **ULTIMATE** Ubuntu setup script that transforms your fresh Ubuntu installation into a powerhouse development machine faster than you can say "sudo apt update".
Think of it as a whole bunch of blu-tac'd together bash scripts that:
- 🧙‍♂️ Install up to 560+ essential applications
- 🎪 Organized into 25+ magnificent categories
- 🚀 Handles `apt`, `snap`, `flatpak`, and `.deb` installers
- 🎨 Makes your terminal look absolutely gorgeous
- 🔒 Set up a native LAMP wordpress site that works without all the ball-ache
- ☕ Saves you pissfarting around in terminal for hours every frikkin time you install it
## ✅ Install Policy
UltraBunt installs apps only via `apt`, `snap`, `.deb`, or `flatpak` on Ubuntu-based systems.
- Python `pip` installations are disabled and have been removed.
- Pip-only packages have been removed from the script and from this README.
- Where possible, equivalents using `apt`, `snap`, `.deb`, or `flatpak` are provided.
## 🎪 THE MAGNIFICENT BUNTAGE CATEGORIES 🎪
### 🔧 Core Utilities - The Foundation of Greatness
Essential command-line tools that every developer needs:
**Git** - Version control system [APT]
**Curl** - Command line tool for transferring data [APT]
**Wget** - Network downloader [APT]
**Build Essential** - Compilation tools (gcc, make, etc) [APT]
**Tree** - Directory structure visualizer [APT]
**Ncdu** - NCurses disk usage analyzer [APT]
**Jq** - JSON processor [APT]
**Tmux** - Terminal multiplexer [APT]
**Fzf** - Fuzzy finder [APT]
**Ripgrep** - Fast text search [APT]
**Bat** - Cat with syntax highlighting [APT]
**Eza** - Modern ls replacement [APT]
**Tldr** - Simplified man pages [APT]
### 💻 Development Tools - Code Like a Pro
Programming languages, frameworks, and development utilities:
**Git** - Version control [APT]
**GitHub CLI** - GitHub command line [APT]
**GitLab CLI** - GitLab command line [SCRIPT]
**Gitea** - Self-hosted Git service [SCRIPT]
**Forgejo** - Self-hosted Git service [SCRIPT]
**Node.js** - JavaScript runtime [APT]
**NPM** - Node package manager [APT]
**Yarn** - Package manager [APT]
**PNPM** - Fast package manager [SCRIPT]
**Bun** - JavaScript runtime [SCRIPT]
**Deno** - Secure JavaScript runtime [SCRIPT]
**Python3** - Python interpreter [APT]
**Python3-pip** - Python package manager [APT]
**Pipx** - Python app installer [APT]
**Poetry** - Python dependency manager [APT]
**Pyenv** - Python version manager [SCRIPT]
**Go** - Go programming language [APT]
**Rust** - Rust programming language [SCRIPT]
**Cargo** - Rust package manager [SCRIPT]
**Java (OpenJDK)** - Java development kit [APT]
**Maven** - Java build tool [APT]
**Gradle** - Build automation [APT]
**PHP** - PHP interpreter [APT]
**Composer** - PHP dependency manager [APT]
**Ruby** - Ruby interpreter [APT]
**RubyGems** - Ruby package manager [APT]
**Bundler** - Ruby dependency manager [APT]
**C/C++ Build Tools** - GCC compiler [APT]
**Make** - Build automation [APT]
**CMake** - Cross-platform build system [APT]
**Ninja** - Small build system [APT]
**Meson** - Build system [APT]
**Bazel** - Build tool [SCRIPT]
**Docker** - Containerization [SCRIPT]
**Docker Compose** - Multi-container apps [APT]
**Podman** - Daemonless containers [APT]
**Kubernetes CLI (kubectl)** - Kubernetes control [SCRIPT]
**Helm** - Kubernetes package manager [SCRIPT]
**Terraform** - Infrastructure as code [SCRIPT]
**Ansible** - Configuration management [APT]
**Vagrant** - Development environments [SCRIPT]
**VirtualBox** - Virtualization [SCRIPT]
**QEMU** - Machine emulator [APT]
**Neovim** - Modern Vim editor [APT]
**MkDocs** - Documentation generator [APT]
**Insomnia** - API testing tool [DEB]
**Zed** - High-performance code editor [DEB]
**Postman** - API development platform [SCRIPT]
**Bruno** - Open-source API client [SCRIPT]
**Bruno (Snap)** - Bruno via Snap [SNAP]
**Bruno (Flatpak)** - Bruno via Flatpak [FLATPAK]
**Yaak** - API testing tool [SCRIPT]
**N8N** - Workflow automation [SCRIPT]
**HTTPie** - Modern HTTP client [APT]
**Lazygit** - Simple terminal UI for git [SCRIPT]
**Legit** - Generate Open Source licences [CUSTOM]
**Mklicense** - Create a custom LICENSE file painlessly [CUSTOM]
**Rebound** - Fetch Stack Overflow results on compiler error [CUSTOM]
**Foy** - Lightweight general purpose task runner/build tool [CUSTOM]
**Just** - A handy way to save and run project-specific commands [CUSTOM]
**Bcal** - Byte CALculator for storage conversions and calculations [CUSTOM]
**Bitwise** - Terminal based bitwise calculator [CUSTOM]
**Cgasm** - x86 assembly documentation [CUSTOM]
**Grex** - Generate regular expressions from user-provided test cases [CUSTOM]
**Iola** - Socket client with REST API [CUSTOM]
**Add-gitignore** - Interactively generate a .gitignore for your project [CUSTOM]
**Is-up-cli** - Check if a domain is up [CUSTOM]
**Reachable** - Check if a domain is up [CUSTOM]
**Diff2html-cli** - Create pretty HTML from diffs [CUSTOM]
**Caniuse-cmd** - Search caniuse.com about browser support [CUSTOM]
**Strip-css-comments-cli** - Strip comments from CSS [CUSTOM]
**Viewport-list-cli** - Return a list of devices and their viewports [CUSTOM]
**Surge** - Publish static websites for free [CUSTOM]
**Localtunnel** - Expose localhost to the world for easy testing [CUSTOM]
**Tunnelmole** - Connect to local servers from anywhere [CUSTOM]
**Ngrok** - Secure introspectable tunnels to localhost [CUSTOM]
**Mobicon-cli** - Mobile app icon generator [CUSTOM]
**Mobisplash-cli** - Mobile app splash screen generator [CUSTOM]
**Deviceframe** - Put device frames around your mobile/web/progressive app screenshots [CUSTOM]
**Htconvert** - Convert .htaccess redirects to nginx.conf redirects [CUSTOM]
**Saws** - A supercharged AWS command line interface [CUSTOM]
**S3cmd** - Command line tool for managing Amazon S3 and CloudFront [CUSTOM]
**Pm2** - Advanced, production process manager for Node.js [CUSTOM]
**Ops** - Build and run nanos unikernels [CUSTOM]
**Flog** - A fake log generator for common log formats [CUSTOM]
**Pingme** - Send messages/alerts to multiple messaging platforms [CUSTOM]
**Ipfs-deploy** - Deploy static websites to IPFS [CUSTOM]
**Discharge** - Deploy static websites to Amazon S3 [CUSTOM]
**Updatecli** - A declarative dependency management tool [CUSTOM]
**Telert** - Multi-channel alerts for long-running commands [CUSTOM]
**Logdy** - Supercharge terminal logs with web UI [CUSTOM]
**S5cmd** - Blazing fast S3 and local filesystem execution tool [CUSTOM]
**Release-it** - Automate releases for Git repositories and/or npm packages [CUSTOM]
**Clog** - A conventional changelog for the rest of us [CUSTOM]
**Np** - A better npm publish [CUSTOM]
**Release** - Generate changelogs with a single command [CUSTOM]
**Semantic-release** - Fully automated version management and package publishing [CUSTOM]
**Npm-name-cli** - Check whether a package name is available on npm [CUSTOM]
**Npm-user-cli** - Get user info of a npm user [CUSTOM]
**Npm-home** - Open the npm page of the package in the current directory [CUSTOM]
**Pkg-dir-cli** - Find the root directory of a npm package [CUSTOM]
**Npm-check-updates** - Find newer versions of package dependencies [CUSTOM]
**Updates** - Flexible npm dependency update tool [CUSTOM]
**Wipe-modules** - Remove node_modules of inactive projects [CUSTOM]
**Doctoc** - Generates table of contents for markdown files [CUSTOM]
**Grip** - Preview markdown files as GitHub would render them [CUSTOM]
**Mdv** - Styled terminal markdown viewer [CUSTOM]
**Gtree** - Use markdown to generate directory trees [CUSTOM]
**Cmdchallenge** - Presents small shell challenge with user submitted solutions [CUSTOM]
**Explainshell** - Type a snippet to see the help text for each argument [CUSTOM]
**Howdoi** - Instant coding answers [CUSTOM]
**How2** - Node.js implementation of howdoi [CUSTOM]
**Wat** - Instant, central, community-built docs [CUSTOM]
**Teachcode** - Guide for the earliest lessons of coding [CUSTOM]
**Navi** - Interactive cheatsheet tool [CUSTOM]
**Jp** - JSON parser [CUSTOM]
**Fx** - Command-line JSON viewer [CUSTOM]
**Vj** - Makes JSON human readable [CUSTOM]
**Underscore-cli** - Utility-belt for hacking JSON and Javascript [CUSTOM]
**Strip-json-comments-cli** - Strip comments from JSON [CUSTOM]
**Groq** - JSON processor with queries and projections [CUSTOM]
**Gron** - Make JSON greppable [CUSTOM]
**Config-file-validator** - Validate configuration files [CUSTOM]
**Dyff** - YAML diff tool [CUSTOM]
**Parse-columns-cli** - Parse text columns to JSON [CUSTOM]
**Q** - Execution of SQL-like queries on CSV/TSV/tabular text file [CUSTOM]
**Scc** - Count lines of code, blank lines, comment lines, and physical lines [CUSTOM]
**Release-it** - Automate releases for Git repositories and/or npm packages [CUSTOM]
**Clog** - A conventional changelog for the rest of us [CUSTOM]
**Np** - A better npm publish [CUSTOM]
**Release** - Generate changelogs with a single command [CUSTOM]
**Semantic-release** - Fully automated version management and package publishing [CUSTOM]
**Npm-name-cli** - Check whether a package name is available on npm [CUSTOM]
**Npm-user-cli** - Get user info of a npm user [CUSTOM]
**Npm-home** - Open the npm page of the package in the current directory [CUSTOM]
**Pkg-dir-cli** - Find the root directory of a npm package [CUSTOM]
**Npm-check-updates** - Find newer versions of package dependencies [CUSTOM]
**Updates** - Flexible npm dependency update tool [CUSTOM]
**Wipe-modules** - Remove node_modules of inactive projects [CUSTOM]
### 🐳 Containers & Orchestration - Virtualization Mastery
Container and orchestration tools:
**Docker** - Container platform [SCRIPT]
**Docker Compose** - Multi-container applications [APT]
**Podman** - Daemonless containers [APT]
**Minikube** - Local Kubernetes [SCRIPT]
**Kind** - Kubernetes in Docker [SCRIPT]
**Ctop** - Container monitoring [SCRIPT]
**Lazydocker** - Docker terminal UI [SCRIPT]
**K9s** - Kubernetes CLI To Manage Your Clusters In Style [CUSTOM]
**Lstags** - Synchronize images across registries [CUSTOM]
**Dockly** - Interactively manage containers [CUSTOM]
**Docker-pushrm** - Push a readme to container registries [CUSTOM]
### 🌐 Web Stack - The Internet's Backbone
Web development and server tools:
**Nginx** - High-performance web server [APT]
**Apache2** - The classic web server [APT]
**PHP-FPM** - FastCGI Process Manager [APT]
**LibApache2-mod-php** - Apache PHP module [APT]
**PHP-MySQL** - PHP MySQL extension [APT]
**PHP-Curl** - PHP cURL extension [APT]
**PHP-GD** - PHP graphics library [APT]
**PHP-XML** - PHP XML extension [APT]
**PHP-Mbstring** - PHP multibyte string [APT]
**PHP-Zip** - PHP ZIP extension [APT]
**MariaDB** - MySQL-compatible database [APT]
**Certbot** - SSL certificate management [APT]
**Python3-certbot-nginx** - Certbot Nginx plugin [APT]
**Python3-certbot-apache** - Certbot Apache plugin [APT]
**Redis** - In-memory data store [APT]
**Caddy** - Modern web server [SCRIPT]
**PM2** - Node.js process manager [SCRIPT]
**Ngrok** - Secure tunneling [SCRIPT]
**MailHog** - Email testing tool [SCRIPT]
**AdminMongo** - MongoDB admin interface [SCRIPT]
**SQLiteStudio** - SQLite database manager [SCRIPT]
**LocalWP** - Local WordPress development [SCRIPT]
**DevKinsta** - Local WordPress development [SCRIPT]
**Lando** - Local development environment [SCRIPT]
**DDEV** - Docker-based development [SCRIPT]
**XAMPP** - Cross-platform web server [SCRIPT]
### 🐚 Shells & Customization - Terminal Beauty
Shell environments and customization:
**Zsh** - Z shell [APT]
**Fonts-powerline** - Powerline fonts [APT]
**Oh-my-zsh** - Zsh framework [SCRIPT]
**Starship** - Cross-shell prompt [SCRIPT]
**Zoxide** - Smart directory jumper [SCRIPT]
**Zsh-autosuggestions** - Command suggestions [APT]
### 🎪 Fun & Entertainment - Hacker Playground
Terminal entertainment and fun tools:
**Cmatrix** - Matrix-style terminal [APT]
**Hollywood** - Hacker terminal simulator [APT]
**SL** - Steam locomotive animation [APT]
**Lolcat** - Rainbow text output [APT]
**Toilet** - ASCII art text [APT]
**Figlet** - ASCII art text generator [APT]
**Boxes** - Text box drawing [APT]
**Asciiquarium** - ASCII aquarium [APT]
**Cowsay** - Talking cow [APT]
**Fortune** - Random quotes [APT]
**Newsboat** - RSS/Atom feed reader for text terminals [APT]
**Mal-cli** - MyAnimeList command line client [CUSTOM]
**Moviemon** - Everything about your movies within the command line [CUSTOM]
**Movie** - Get movie info or compare movies in terminal [CUSTOM]
**Pokete** - A terminal based Pokemon like game [CUSTOM]
### ✏️ Editors & IDEs - Code Creation Stations
Text editors and integrated development environments:
**Visual Studio Code** - Microsoft's editor [SCRIPT]
**Sublime Text** - Sophisticated text editor [SCRIPT]
**VSCode (Snap)** - VS Code via Snap [SNAP]
**VSCode (Flatpak)** - VS Code via Flatpak [FLATPAK]
**Vim** - Vi IMproved - enhanced vi editor [APT]
**Emacs** - GNU Emacs editor [APT]
**Kakoune** - Modal editor inspired by vim [APT]
**O** - Configuration-free text editor and IDE [CUSTOM]
**Helix** - A post-modern modal text editor [CUSTOM]
### 🌍 Web Browsers - Windows to the Web
Web browsers for every need:
**Brave** - Privacy-focused browser [SCRIPT]
**Firefox** - Mozilla's browser [APT]
**Chromium** - Open-source Chrome [APT]
**Firefox (Snap)** - Firefox via Snap [SNAP]
**Firefox (Flatpak)** - Firefox via Flatpak [FLATPAK]
**Chromium (Snap)** - Chromium via Snap [SNAP]
**Chromium (Flatpak)** - Chromium via Flatpak [FLATPAK]
### 📊 System Monitoring - Keep Watch
System monitoring and analysis tools:
**Htop** - Interactive process viewer [APT]
**Btop** - Modern system monitor [APT]
**Glances** - System monitoring [APT]
**Iotop** - I/O monitoring [APT]
**Bpytop** - Python-based system monitor [APT]
**Bashtop** - Bash-based system monitor [APT]
**Bottom** - Cross-platform system monitor [APT]
**Gotop** - Terminal-based activity monitor [APT]
**Vtop** - Visual top [APT]
**Zenith** - System monitor [APT]
**Nmon** - System performance monitor [APT]
**Atop** - Advanced system monitor [APT]
**Iostat** - I/O statistics [APT]
**Vmstat** - Virtual memory statistics [APT]
**Free** - Memory usage display [APT]
**Lsof** - List open files [APT]
**Sar** - System activity reporter [APT]
**Mpstat** - Multiprocessor statistics [APT]
**Pidstat** - Process statistics [APT]
**Nvtop** - NVIDIA GPU monitor [APT]
**Radeontop** - AMD GPU monitor [APT]
**Ps** - Process status [APT]
**Qmasa** - System monitor [APT]
**Gtop** - System monitoring dashboard [APT]
**Procs** - Modern ps replacement [APT]
### 🌐 Network Monitoring - Network Ninja Tools
Network analysis and monitoring:
**Nethogs** - Network usage by process [APT]
**Iftop** - Network bandwidth monitor [APT]
**Nload** - Network load monitor [APT]
**Bmon** - Bandwidth monitor [APT]
**Iptraf-ng** - Network statistics [APT]
**SS** - Socket statistics [APT]
**Bandwhich** - Network utilization [APT]
**Nmap** - Network discovery and security auditing [APT]
**Dog** - DNS lookup tool [SCRIPT]
**Speedtest-net** - Test internet connection speed using speedtest.net [CUSTOM]
**Speed-test** - speedtest-net wrapper with different UI [CUSTOM]
**Speedtest-cli** - Test internet bandwidth using speedtest.net [APT]
### ⚡ Performance Tools - Speed Demons
Performance analysis and benchmarking:
**Tokei** - Code statistics [APT]
**Hyperfine** - Command-line benchmarking [APT]
### 🛠️ Utilities - Essential Command-Line Tools
Handy utilities for daily tasks:
**PV** - Pipe viewer with progress [APT]
**Duf** - Disk usage analyzer [APT]
**Dust** - Directory size analyzer [APT]
**Fd-find** - Fast file finder [APT]
**Exa** - Modern ls replacement [APT]
**Batcat** - Cat with syntax highlighting [APT]
**Micro** - Modern terminal editor [APT]
**Atool** - Archive tool wrapper [APT]
**MirrorSelect** - Tool to select the fastest Ubuntu mirror for optimal download speeds [SNAP]
**Apt-mirror** - Create and maintain local Ubuntu mirror repositories for offline installations [APT]
**Fastfetch** - System information tool [APT]
**Battery-level-cli** - Get current battery level [CUSTOM]
**Brightness-cli** - Change screen brightness [CUSTOM]
**Clipboard** - Cut, copy, and paste anything, anywhere [CUSTOM]
**Yank** - Yank terminal output to clipboard [CUSTOM]
**Screensaver** - Start the screensaver [CUSTOM]
**Google-font-installer** - Download and install Google Web Fonts [CUSTOM]
**Tiptop** - System monitor [CUSTOM]
**Gzip-size-cli** - Get the gzipped size of a file [CUSTOM]
**Mdlt** - Do quick math right from the command line [CUSTOM]
**Qalculate** - Calculate non-trivial math expressions [APT]
**Visidata** - Spreadsheet multitool for data discovery and arrangement [CUSTOM]
**Wttr-in** - Weather information from wttr.in [CUSTOM]
**Wego** - Weather app for the terminal [CUSTOM]
**Weather-cli** - Get weather information from command line [CUSTOM]
**S** - Open a web search in your terminal [CUSTOM]
**Hget** - Render websites in plain text from your terminal [CUSTOM]
**Mapscii** - Terminal Map Viewer [CUSTOM]
**Nasa-cli** - Download NASA Picture of the Day [CUSTOM]
**Getnews-tech** - Fetch news headlines from various news outlets [CUSTOM]
**Trino** - Translation of words and phrases [CUSTOM]
**Translate-shell** - Google Translate interface [APT]
**Vifm** - VI influenced file manager [APT]
**Nnn** - File browser and disk usage analyzer [APT]
**Lf** - Fast, extensively customizable file manager [CUSTOM]
**Clifm** - The command line file manager [CUSTOM]
**Far2l** - Orthodox file manager [CUSTOM]
**Yazi** - Blazing fast file manager [CUSTOM]
**Xplr** - A hackable, minimal, fast TUI file explorer [CUSTOM]
**Trash-cli** - Move files and directories to the trash [APT]
**Empty-trash-cli** - Empty the trash [CUSTOM]
**Del-cli** - Delete files and folders [CUSTOM]
**Cpy-cli** - Copies files [CUSTOM]
**Rename-cli** - Rename files quickly [CUSTOM]
**Renameutils** - Mass renaming in your editor [APT]
**Diskonaut** - Disk space navigator [CUSTOM]
**Dua-cli** - Disk usage analyzer [CUSTOM]
**Dutree** - A tool to analyze file system usage written in Rust [CUSTOM]
**Chokidar-cli** - CLI to watch file system changes [CUSTOM]
**File-type-cli** - Detect the file type of a file or stdin [CUSTOM]
**Unix-permissions** - Swiss Army knife for Unix permissions [CUSTOM]
**Transmission-cli** - Torrent client for your command line [APT]
**Webtorrent-cli** - Streaming torrent client [CUSTOM]
**Entr** - Run an arbitrary command when files change [APT]
**Organize-cli** - Organize your files automatically [CUSTOM]
**Organize-rt** - organize-cli in Rust with more customization [CUSTOM]
**Recoverpy** - Recover overwritten or deleted files [CUSTOM]
**F2** - A cross-platform tool for fast, safe, and flexible batch renaming [CUSTOM]
**Ffsend** - Quick file share [CUSTOM]
**Share-cli** - Share files with your local network [CUSTOM]
**Google-drive-upload** - Upload/sync with Google Drive [CUSTOM]
**Gdrive-downloader** - Download files/folders from Google Drive [CUSTOM]
**Portal** - Send files between computers [CUSTOM]
**Shbin** - Turn a Github repo into a pastebin [CUSTOM]
**Sharing** - Send and receive files on your mobile device [CUSTOM]
**Ncp** - Transfer files and folders, to and from NFS servers [CUSTOM]
**Alder** - Minimal tree with colors [CUSTOM]
**Tre** - tree with git awareness, editor aliasing, and more [CUSTOM]
**Plocate** - Fast file locator [APT]
**Silversearcher-ag** - Fast text search [APT]
**YQ** - YAML processor [APT]
**Delta** - Git diff viewer [APT]
**Ranger** - Console file manager [APT]
**MC** - Midnight Commander file manager [APT]
**AG** - The Silver Searcher [APT]
**Thefuck** - Command correction tool [PIP]
**Glow** - Markdown renderer [SCRIPT]
**Cheat** - Interactive cheatsheets [SCRIPT]
**Broot** - Tree view file manager [SCRIPT]
### 🗄️ Database Management - Data Wranglers
Database servers and management tools:
**PHPMyAdmin** - MySQL web interface [SCRIPT]
**Adminer** - Web database management [SCRIPT]
**DBeaver CE** - Universal database tool [SCRIPT]
**DBeaver CE (Flatpak)** - DBeaver via Flatpak [FLATPAK]
**MySQL Workbench Community** - MySQL GUI [SCRIPT]
**PgAdmin4** - PostgreSQL GUI [SCRIPT]
**SQLiteBrowser** - SQLite database browser [APT]
**MyCLI** - MySQL command-line client [APT]
**PgCLI** - PostgreSQL command-line client [APT]
**LiteCLI** - SQLite command-line client [APT]
**Redis-tools** - Redis command-line tools [APT]
**MongoDB Compass** - MongoDB GUI [SCRIPT]
**Postbird** - PostgreSQL GUI client [SCRIPT]
**Beekeeper Studio** - Modern database client [SCRIPT]
**TablePlus** - Database management tool [SCRIPT]
**Sqlline** - Shell for issuing SQL via JDBC [CUSTOM]
**Iredis** - Redis client with autocompletion and syntax highlighting [CUSTOM]
**Usql** - Universal SQL client with autocompletion [CUSTOM]
### 🔒 Security Tools - Digital Guardians
Security and penetration testing tools:
**UFW** - Uncomplicated firewall [APT]
**Fail2ban** - Intrusion prevention [APT]
**Pass** - Password manager [APT]
**Gopass** - Fully-featured password manager [CUSTOM]
**Xiringuito** - SSH-based VPN [CUSTOM]
**Hasha-cli** - Get the hash of text or stdin [CUSTOM]
**Ots** - Share secrets with others via a one-time URL [CUSTOM]
**Stegcloak** - Hide secrets with invisible characters in plain text [CUSTOM]
### ⚙️ System Tools - System Mastery
System administration and management:
**Flatpak** - Universal package system [APT]
**Samba** - File sharing protocol [APT]
**NFS-kernel-server** - Network file system [APT]
**Dysk** - Disk usage analyzer [SCRIPT]
**LVM2** - Logical volume manager [APT]
**SnapRAID** - Snapshot RAID [SCRIPT]
**Greyhole** - Storage pooling [SCRIPT]
**MergerFS** - Union filesystem [SCRIPT]
### 💬 Communication - Stay Connected
Communication and messaging applications:
**LocalSend** - Local file sharing [SCRIPT]
**Discord** - Gaming communication [SCRIPT]
**Telegram Desktop** - Secure messaging [APT]
**Zoom** - Video conferencing [SCRIPT]
**Discord (DEB)** - Discord via DEB package [DEB]
**Discord (Flatpak)** - Discord via Flatpak [FLATPAK]
**Weechat** - Fast, light and extensible chat client [APT]
**Irssi** - Terminal based IRC client [APT]
**Kirc** - A tiny IRC client written in POSIX C99 [CUSTOM]
### 🎵 Audio & Music - Sound Engineering
Audio editing and music production:
**Spotify** - Music streaming [SCRIPT]
**Audacity** - Audio editor [APT]
**Ardour** - Digital audio workstation [APT]
**LMMS** - Music production [APT]
**Mixxx** - DJ software [APT]
**Audacity (Snap)** - Audacity via Snap [SNAP]
**Audacity (Flatpak)** - Audacity via Flatpak [FLATPAK]
**Cmus** - Small, fast and powerful console music player [APT]
**Pianobar** - Console-based Pandora client [APT]
**Somafm-cli** - Listen to SomaFM in your terminal [CUSTOM]
**Mpd** - Music Player Daemon [APT]
**Ncmpcpp** - NCurses Music Player Client (Plus Plus) [APT]
**Moc** - Console audio player for Linux/UNIX [APT]
**Musikcube** - Cross-platform terminal-based music player [CUSTOM]
**Beets** - Music library manager and MusicBrainz tagger [APT]
**Spotify-tui** - Spotify for the terminal written in Rust [CUSTOM]
**Swaglyrics-for-spotify** - Spotify lyrics in your terminal [CUSTOM]
**Dzr** - Command line Deezer player [CUSTOM]
**Radio-active** - Internet radio player with 40k+ stations [CUSTOM]
**Mpvc** - Music player interfacing mpv [CUSTOM]
### 🎬 Video & Media - Motion Pictures
Video editing and media production:
**OBS Studio** - Streaming/recording [APT]
**VLC** - Media player [APT]
**FFmpeg** - Media processing [APT]
**YT-DLP** - YouTube downloader [APT]
**FreeTube** - Privacy-focused YouTube client [FLATPAK]
**Invidious** - Alternative YouTube frontend [SCRIPT]
**MPV** - Minimalist media player [APT]
**VLC (Snap)** - VLC via Snap [SNAP]
**VLC (Flatpak)** - VLC via Flatpak [FLATPAK]
**OBS Studio (Flatpak)** - OBS via Flatpak [FLATPAK]
**Streamlink** - Extract streams from various websites [APT]
**Mps-youtube** - Terminal based YouTube player and downloader [CUSTOM]
**Editly** - Declarative command line video editing [CUSTOM]
### 📺 Media Servers & Streaming - Entertainment Central
Media servers and streaming platforms:
**Kodi** - Media center [APT]
**Stremio** - Modern media center with streaming [FLATPAK]
**Plex** - Media streaming platform [SCRIPT]
**Jellyfin** - Open source media server [SCRIPT]
**UMS** - Universal Media Server [SCRIPT]
### ☁️ Cloud & Sync - Sky Storage
Cloud storage and synchronization:
**Rclone** - Cloud storage sync [SCRIPT]
**Dropbox** - Cloud storage [SCRIPT]
**Nextcloud Desktop** - Self-hosted cloud [APT]
**Syncthing** - Peer-to-peer sync [APT]
**Google Drive OCamlFUSE** - Google Drive filesystem [APT]
**Nextcloud Server** - Self-hosted cloud storage server [SCRIPT]
**Seafile** - Lightweight cloud storage with sync [SCRIPT]
### 💻 Terminals - Command Central
Terminal emulators and command-line tools:
**Warp Terminal** - Modern terminal [SCRIPT]
**Alacritty** - GPU-accelerated terminal [APT]
**Terminator** - Multiple terminal panes [APT]
**Tilix** - Tiling terminal [APT]
**Ghostty** - Fast, feature-rich terminal emulator [SCRIPT]
### 🎮 Gaming Platforms - Game On
Gaming platforms and game launchers:
**Steam** - Gaming platform [APT]
**Heroic Launcher** - Epic Games/GOG launcher [FLATPAK]
**Lutris** - Gaming manager [APT]
**GameMode** - Gaming performance optimizer [APT]
**Wine** - Windows API compatibility layer [APT]
**Wine (Snap)** - Wine via Snap [SNAP]
**Wine (Flatpak)** - Wine via Flatpak [FLATPAK]
**Dwarf-fortress** - Roguelike construction and management simulation [CUSTOM]
**Cataclysm-dda** - Turn-based survival game set in a post-apocalyptic world [CUSTOM]
### 🎨 Graphics & Design - Visual Creativity
Graphics editing and design applications:
**GIMP** - Image manipulation [APT]
**Blender** - 3D creation suite [APT]
**Inkscape** - Vector graphics [APT]
**GIMP (Snap)** - GIMP via Snap [SNAP]
**GIMP (Flatpak)** - GIMP via Flatpak [FLATPAK]
**Inkscape (Snap)** - Inkscape via Snap [SNAP]
**Inkscape (Flatpak)** - Inkscape via Flatpak [FLATPAK]
**Webcamize** - Webcam utility [APT]
**Pastel** - Color manipulation tool [APT]
### 📄 Office & Productivity - Get Things Done
Office suites and productivity applications:
**LibreOffice** - Complete office suite [APT]
**Thunderbird** - Email client [APT]
**Calibre** - E-book management [APT]
**Obsidian** - Knowledge management [SCRIPT]
**Epr** - Terminal EPUB reader [APT]
**Bible.js** - Read the Holy Bible via the command line [CUSTOM]
**SpeedRead** - A simple terminal-based open source Spritz-alike [CUSTOM]
**Medium-cli** - Read medium.com stories within terminal [CUSTOM]
**Hygg** - Minimal document reader [CUSTOM]
**Papis** - Extensible document and bibliography manager [CUSTOM]
**Pubs** - Scientific bibliography manager [CUSTOM]
### 🤖 AI & LLM Tools - The Future is Now
Cutting-edge AI and machine learning tools:
**Ollama** - Run LLMs locally [SCRIPT]
**Gollama** - Ollama GUI client [SCRIPT]
**LM Studio** - Local LLM interface [SCRIPT]
**Ollama** - Run LLMs locally [SCRIPT]
**Gollama** - Ollama GUI client [SCRIPT]
**LM Studio** - Local LLM interface [SCRIPT]
**Whisper-cpp** - Speech recognition [SCRIPT]
**Yai** - AI powered terminal assistant [CUSTOM]
### 🕹️ Gaming Emulators - Retro Gaming
Gaming emulators for classic systems:
**RetroArch** - Multi-system emulator [APT]
**RetroArch (Snap)** - RetroArch via Snap [SNAP]
**RetroArch (Flatpak)** - RetroArch via Flatpak [FLATPAK]
**MAME** - Arcade machine emulator [APT]
**MAME (Flatpak)** - MAME via Flatpak [FLATPAK]
**Dolphin Emulator** - GameCube/Wii emulator [APT]
**Dolphin Emulator (Flatpak)** - Dolphin via Flatpak [FLATPAK]
**PCSX2** - PlayStation 2 emulator [APT]
**PCSX2 (Flatpak)** - PCSX2 via Flatpak [FLATPAK]
**RPCS3** - PlayStation 3 emulator [FLATPAK]
**Yuzu** - Nintendo Switch emulator [FLATPAK]
**Cemu** - Wii U emulator [FLATPAK]
**Mednafen** - Multi-system accurate emulator [APT]
**DuckStation** - PlayStation 1 emulator [FLATPAK]
**BSNES** - Super Nintendo emulator [APT]
**mGBA** - Game Boy Advance emulator [APT]
**mGBA (Snap)** - mGBA via Snap [SNAP]
**mGBA (Flatpak)** - mGBA via Flatpak [FLATPAK]
**DeSmuME** - Nintendo DS emulator [APT]
**DeSmuME (Flatpak)** - DeSmuME via Flatpak [FLATPAK]
**Citra** - Nintendo 3DS emulator [APT]
**Citra (Flatpak)** - Citra via Flatpak [FLATPAK]
**DOSBox** - DOS emulator [APT]
**DOSBox (Snap)** - DOSBox via Snap [SNAP]
**DOSBox (Flatpak)** - DOSBox via Flatpak [FLATPAK]
**Mupen64Plus** - Nintendo 64 emulator [APT]
**ScummVM** - Adventure game engine [APT]
**ScummVM (Snap)** - ScummVM via Snap [SNAP]
**ScummVM (Flatpak)** - ScummVM via Flatpak [FLATPAK]
**QEMU** - System hardware emulator [APT]
**Stella** - Atari 2600 emulator [APT]
**DOSBox Staging** - DOS emulator for retro PC games [APT]
# 🚀 INSTALLATION INSTRUCTIONS 🚀
Because Even Sublime Scripts Need Setup
## 📋 Prerequisites
- Ubuntu 20.04+ or Linux Mint 20+ (Fresh install or existing)
- Internet Connection (Obviously!)
- Sudo Access (You're the boss!)
- Terminal Access (Command line courage!)
## 🎯 Quick Start Guide
### Update Your System First (This is CRUCIAL!)
```bash
sudo apt update && sudo apt upgrade -y
```
### Download the Ultimate Buntstaller
```bash
git clone https://github.com/type-two/ultrabunt.git
cd ultrabunt
```
### Make It Executable (The Magic Incantation!)
```bash
chmod +x ultrabunt.sh
```
### Launch the Beast!
```bash
./ultrabunt.sh
```
## 🎪 Alternative Installation Methods
### One-Liner for the Brave:
```bash
curl -sSL https://raw.githubusercontent.com/type-two/ultrabunt/main/ultrabunt.sh | bash
```
### Download and Run:
```bash
wget https://raw.githubusercontent.com/type-two/ultrabunt/main/ultrabunt.sh
chmod +x ultrabunt.sh
./ultrabunt.sh
```
# 🎮 USAGE GUIDE 🎮
Navigate Like a Pro
## 🎯 Main Menu Navigation
- Use Arrow Keys or Tab to navigate
- Press Enter to select
- Press Esc or select "Back" to go back
- Press Ctrl+C to exit (if you must!)
## 🎪 Menu Structure
### 🏠 Main Menu
```
├── 📦 Browse Buntages by Category (A-Z Hotkeys Available!)
│ ├── (A) 🔧 Core Utilities
│ ├── (B) 💻 Development Tools
│ ├── (C) 🤖 AI & Modern Tools
│ ├── (D) 🐳 Containers
│ ├── (E) 🌐 Web Stack
│ ├── (F) 🐚 Shell Tools
│ ├── (G) 🎪 Hacker Playground
│ ├── (H) ✏️ Editors & IDEs
│ ├── (I) 🌍 Web Browsers
│ ├── (J) 📊 System Monitoring
│ ├── (K) 🌐 Network Monitoring
│ ├── (L) ⚡ Performance Tools
│ ├── (M) 🔧 Utilities
│ ├── (N) 🗄️ Database Management
│ ├── (O) 🛡️ Security Tools
│ ├── (P) ⚙️ System Tools
│ ├── (Q) 📄 Office & Productivity
│ ├── (R) 💬 Communication
│ ├── (S) 🎨 Graphics & Design
│ ├── (T) 🎵 Audio & Music
│ ├── (U) 🎬 Video & Media
│ ├── (V) 📺 Media Servers & Streaming
│ ├── (W) ☁️ Cloud & Sync
│ ├── (X) 💻 Terminal Emulators
│ ├── (Y) 🎮 Gaming Platforms
│ └── (Z) 🎮 Gaming Emulators
├── 🔍 Search Buntages
├── System Information
├── 🪞 Mirror Management
│ ├── 🌐 Display Current Mirror
│ ├── ⚡ Scan & Set Fastest Mirror
│ ├── 🔧 Advanced MirrorSelect Options
│ ├── 📦 Install/Setup apt-mirror
│ ├── 🏗️ Setup Local Mirror Storage
│ ├── 🔄 Update Local Mirror
│ └── 🏠 Use Local Mirror
├── ⌨️ Keyboard Layout Configuration
├── 🌐 WordPress Setup
│ ├── 🆕 Install New WordPress Site
│ ├── 📋 Manage Existing Sites
│ ├── 🔧 WP-CLI Management
│ └── 🛠️ Individual Site Management
├── 🐘 PHP Settings
├── 🗄️ Database Management
│ ├── 🔑 Show MariaDB Credentials
│ └── 🛠️ MariaDB Management
├── 📋 Bulk Operations
│ ├── Install All in Category
│ ├── Remove All in Category
│ ├── Update All Installed
│ └── Clean Cache & Orphans
├── 📊 Log Viewer
│ ├── 📋 System Logs
│ ├── 🌐 Web Server Logs
│ ├── 🗄️ Database Logs
│ ├── 🐘 PHP Logs
│ └── 🔒 Security Logs
└── 🚪 Exit
```
## 🎨 Status Icons Guide
- ✓ = Installed and ready to rock!
- ✗ = Not installed (yet!)
- (*) = bumhole
- (.Y.) = bewbs
# 🖥️ SYSTEM COMPATIBILITY 🖥️
## ✅ Fully Supported Systems
- Ubuntu 20.04 LTS (Focal Fossa)
- Ubuntu 22.04 LTS (Jammy Jellyfish)
- Ubuntu 23.04 (Lunar Lobster)
- Ubuntu 24.04 LTS (Noble Numbat)
- Linux Mint 20.x (All variants)
- Linux Mint 21.x (All variants)
## 🎯 Recommended Scenarios
- Fresh Installation - Perfect for setting up a new system
- Existing Installation - Great for adding new tools
- Development Workstation - Ideal for programmers
- Content Creation - Perfect for creators and artists
- Gaming Setup - Excellent for Linux gamers
- AI/ML Development - Complete AI toolkit included
## ⚡ System Requirements
- RAM: 4GB minimum (8GB+ recommended for AI tools)
- Storage: 20GB free space (for all buntages)
- Network: Broadband internet connection
- Processor: Any 64-bit x86 processor
# 🎭 ADVANCED FEATURES 🎭
## 🪞 Mirror Management & Optimization
- **Smart Mirror Selection** - Automatically find and set the fastest Ubuntu mirror
- **Local Mirror Creation** - Set up offline repositories with apt-mirror for air-gapped systems
- **Mirror Status Display** - View current mirror configuration and local storage paths
- **One-Click Optimization** - Scan and switch to optimal mirrors with automatic backups
- **Enterprise Ready** - Perfect for corporate environments and offline installations
## ⌨️ Enhanced Navigation
- **A-Z Hotkey Shortcuts** - Press any letter A-Z to jump directly to package categories
- **Double-Q Exit Protection** - Prevents accidental exits with confirmation system
- **Reorganized Menu Structure** - System tools prioritized at the top for quick access
- **Smart Status Indicators** - Real-time installation counts and refresh status
## 🔧 Bulk Operations
- Install Entire Categories - One click, dozens of apps!
- Remove Categories - Clean house efficiently
- Update Everything - Keep all buntages current
- Export Lists - Share your setup with friends
## 📊 Smart Features
- Dependency Resolution - Installs prerequisites automatically
- Installation Verification - Confirms successful installations
- Rollback Support - Undo problematic installations
- Comprehensive Logging - Track everything that happens
## 🎨 Customization Options
- Category Filtering - Show only what you need
- Installation Methods - Choose APT, Snap, Flatpak, or Custom
- Batch Processing - Queue multiple installations
- Export Formats - Multiple list export options
# 🐛 TROUBLESHOOTING 🐛
## 🚨 Common Issues & Solutions
### Script Won't Run:
```bash
# Make sure it's executable
chmod +x ultrabunt.sh
# Check if bash is available
which bash
```
### Permission Denied:
```bash
# Run with proper permissions
sudo ./ultrabunt.sh
```
### Package Installation Fails:
```bash
# Update package lists first
sudo apt update
# Fix broken dependencies
sudo apt --fix-broken install
```
### Snap/Flatpak Issues:
```bash
# Install snap support
sudo apt install snapd
# Install flatpak support
sudo apt install flatpak
```
### AI Tools Installation Issues:
```bash
# Ensure Python and pip are installed
sudo apt install python3 python3-pip python3-venv
# Install required system dependencies
sudo apt install build-essential git curl wget
```
# 📝 LOGS & DEBUGGING 📝
All operations are logged to: `/tmp/ultrabunt_YYYYMMDD_HHMMSS.log`
## View Current Log:
```bash
tail -f /tmp/ultrabunt_*.log
```
## Debug Mode:
```bash
DEBUG=1 ./ultrabunt.sh
```
# 🎉 CONTRIBUTING 🎉
Want to make this even more ridiculously sublime?
1. Fork the Repository
2. Add Your Favorite Buntages
3. Test Everything Thoroughly
4. Submit a Pull Request
5. Become a Buntage Legend!
## 🎯 Adding New Applications
1. Add package definition in the appropriate category section
2. Create custom installation/removal functions if needed
3. Add to installation/removal dispatchers
4. Update this README with the new application
5. Test thoroughly on a clean system
# ♿ ACCESSIBILITY FEATURES ♿
UltraBunt is committed to being accessible to all users, including those with visual impairments. We've implemented comprehensive Text-to-Speech (TTS) support to make the installation process fully accessible.
## 🔊 Text-to-Speech Integration
The accessibility-enhanced version of UltraBunt provides full voice guidance throughout the installation process using the `spd-say` command from Speech Dispatcher.
### 🎯 Key Accessibility Features
- **🗣️ Voice Announcements**: All menu options, prompts, and system messages are spoken aloud
- **👥 Female Voice**: Configured with a friendly female voice for better user experience
- **⚡ Moderate Speed**: Speech rate optimized for clarity and comprehension
- **🎵 Punctuation Support**: Important punctuation is vocalized for better context
- **🔄 Real-time Feedback**: Installation progress and status updates are announced
- **⚠️ Error Handling**: Graceful fallback when TTS is unavailable
### 🚀 Getting Started with Accessibility
#### Option 1: Use the Accessible Script (Recommended)
```bash
# Make the accessible script executable
chmod +x ultrabunt-accessible.sh
# Run the accessibility-enhanced version
./ultrabunt-accessible.sh
```
#### Option 2: Enable TTS in Main Script
```bash
# Export TTS environment variables before running
export ULTRABUNT_TTS_ENABLED=true
export ULTRABUNT_TTS_VOICE=female1
export ULTRABUNT_TTS_RATE=0
# Run the main script with TTS support
./ultrabunt.sh
```
### 📋 Prerequisites for TTS
The accessibility features require Speech Dispatcher to be installed:
```bash
# Install Speech Dispatcher (usually pre-installed on Ubuntu)
sudo apt update
sudo apt install speech-dispatcher espeak-ng
# Test TTS functionality
spd-say "Hello, UltraBunt accessibility is working!"
```
### ⚙️ TTS Configuration Options
The accessible version supports several voice configuration options:
| Setting | Default | Description |
|---------|---------|-------------|
| Voice Type | `female1` | Voice gender and variant |
| Speech Rate | `0` (moderate) | Speaking speed (-100 to +100) |
| Punctuation | `some` | Level of punctuation vocalization |
| Language | `en` | Speech language |
### 🎛️ Voice Settings
You can customize the TTS experience by modifying these environment variables:
```bash
# Voice selection (male1, male2, male3, female1, female2, female3, child_male, child_female)
export ULTRABUNT_TTS_VOICE="female1"
# Speech rate (-100 = very slow, 0 = normal, +100 = very fast)
export ULTRABUNT_TTS_RATE="0"
# Punctuation level (none, some, all)
export ULTRABUNT_TTS_PUNCTUATION="some"
# Language code
export ULTRABUNT_TTS_LANGUAGE="en"
```
### 🔧 How It Works
The accessibility system integrates seamlessly with the existing UltraBunt interface:
1. **Menu Navigation**: All menu categories and options are announced
2. **Installation Progress**: Package installations are narrated in real-time
3. **User Prompts**: Input requests and confirmations are spoken
4. **Status Updates**: System messages and warnings are vocalized
5. **Error Handling**: Installation errors and issues are announced clearly
### 🎪 Accessible Menu Experience
When using the accessible version, you'll hear:
- **Category Announcements**: "Development Tools menu with 15 options available"
- **Option Reading**: Each package name and description is spoken
- **Navigation Guidance**: Instructions for menu navigation
- **Selection Confirmation**: Confirmation of your choices
- **Installation Narration**: Real-time progress updates
### 🛠️ Technical Implementation
The accessibility features are implemented through:
- **`speak_if_enabled()` Function**: Core TTS functionality with ANSI color code filtering
- **Enhanced UI Functions**: `ui_msg_accessible()`, `ui_input_accessible()`, `ui_menu_accessible()`
- **Menu Integration**: TTS announcements in all menu functions
- **Progress Narration**: Voice feedback during package installations
- **Error Vocalization**: Spoken error messages and warnings
### 🔍 Troubleshooting TTS
If TTS isn't working:
1. **Check Speech Dispatcher**:
```bash
systemctl --user status speech-dispatcher
```
2. **Test spd-say directly**:
```bash
spd-say "Testing speech synthesis"
```
3. **Install missing components**:
```bash
sudo apt install speech-dispatcher espeak-ng pulseaudio
```
4. **Restart audio services**:
```bash
pulseaudio --kill
pulseaudio --start
```
### 🌟 Accessibility Best Practices
The UltraBunt accessibility implementation follows these principles:
- **Non-intrusive**: TTS can be easily disabled without affecting functionality
- **Informative**: All visual information has audio equivalents
- **Efficient**: Speech is concise but comprehensive
- **Customizable**: Users can adjust voice settings to their preferences
- **Fallback-ready**: Graceful degradation when TTS is unavailable
### 🎯 Future Accessibility Enhancements
Planned improvements include:
- **Keyboard Navigation**: Enhanced keyboard-only operation
- **Screen Reader Support**: Better compatibility with screen readers
- **Audio Cues**: Sound effects for different types of notifications
- **Voice Commands**: Voice-controlled menu navigation
- **Multi-language TTS**: Support for additional languages
### 💡 Tips for Visually Impaired Users
- Use the `ultrabunt-accessible.sh` script for the best experience
- The script will automatically detect and configure TTS settings
- All menu navigation can be done using standard keyboard controls
- Press `Ctrl+C` at any time to safely interrupt TTS and exit
- Installation progress is announced every few seconds during package installations
# 📜 LICENSE 📜
This project is licensed under the MIT License - because sharing is caring! seriously its just a bunch of bash stickytaped together go nuts.
# 🏆 CREDITS & ACKNOWLEDGMENTS 🏆
## 🎭 MONSTERROBOTSOFT a subsidiary of MONSTERROBOTCORP
- Created with emoticons by developers who believe software installation should be bunt
- Inspired by the need for a better Ubuntu setup experience
- Powered by hallucinations and debugging
## 🌟 Special Thanks
- Ubuntu Community - For creating an OS for lazy ppl who hate windows
- Open Source Developers - For the free shit
- Tata Besters - For flinding all our blugs
- Methylphenidate - For making this possible
# 🚀 FINAL WORDS 🚀
The Ultimate Buntstaller isn't just a script - it's a statement. A statement that says "I refuse to manually install packages like a caveman!" It's a declaration of independence from boring, repetitive setup tasks. It's a celebration of the ridiculous, the sublime, and the absolutely bonkers world of Linux package management.
So go forth, brave user, and BUNTAGE ALL THE THINGS! 🎉
```
╔══════════════════════════════════════════════════════════════╗
║ "In a world of packages, dare to be a BUNTAGE!" ║
║ ║
║ - The Ultimate Buntstaller Philosophy ║
╚══════════════════════════════════════════════════════════════╝
```