mirror of
https://github.com/stornic56/debianito-post-install.git
synced 2026-07-16 05:49:49 +00:00
add Java JDK/JRE selection and patches
- Created dedicated `extras/java.sh` module for modular Temurin/Adoptium repository handling and isolated GPG key management. - Implemented selective JRE/JDK installation paths: Gaming (Minecraft) vs Development environments with version control selectors. - Enhanced user group membership logic (`_ensure_sudo_group`) to auto-configure administrative privileges on fresh installs. - Introduced maintenance-friendly passwordless sudo for `apt`, `systemctl`, and shutdown commands via `/etc/sudoers.d/`. - Added home directory ownership repair utility to fix root-owned files in user directories after improper `sudo` usage. - Enabled visual password feedback (`pwfeedback`) toggle for enhanced terminal usability during authentication prompts. - Refactored Debian 13/Trixie repository sourcing logic to ensure idempotency and prevent backports/duplicate sources conflicts. - Updated Bullseye legacy modules (extras.sh, repos.sh) to exclude deprecated packages (`hx`, `vscodium`) and enforce Firefox ESR defaults. - Cleaned repository configurations by removing obsolete `bullseye-updates` source entries to prevent dependency conflicts. - Implemented NVTOP conditional detection logic ensuring display only on active Nvidia drivers or supported architectures (Trixie/Bookworm). - Corrected `/modules/bullseye/extras.sh` menu mappings (Programming, Dev Tools) and verified package lists excluding incompatible tools (`hx`, `vscodium`). - Integrated ClamAV security module with daemon state management and background scan execution flows in all Security menus. - update README.md
This commit is contained in:
@@ -47,34 +47,54 @@ After running the script:
|
||||
|
||||
| Option | Description | What it does |
|
||||
|--------|-------------|--------------|
|
||||
| **1** | System Info | Show detected Os, CPU, RAM, GPU and others |
|
||||
| **2** | User Privileges & Feedback | Add user to sudo group, enable `pwfeedback` for password visibility |
|
||||
| **1** | System Info | Show detected OS, CPU, RAM, GPU and hardware details |
|
||||
| **2** | [User Privileges & Feedback](#user-privileges--feedback) | Configure sudo group membership, enable passwordless sudo for frequent tasks, repair home directory ownership issues, and toggle visual password feedback (asterisks) in terminal |
|
||||
| **3** | Configure Repositories | Setup official repos with/without backports (deb822 or classic format)|
|
||||
| **4** | Setup Wireless & Firmware | Install WiFi firmware for Broadcom, Intel, and other chipsets|
|
||||
| **5** | Configure Graphics Stack | AMD/Intel/NVIDIA drivers + monitoring tools |
|
||||
| **6** | Update Kernel to Backports | Install latest stable kernel from Debian backports|
|
||||
| **7** | Gaming Setup and Performance | Steam, Heroic Games Launcher, GameMode, MangoHud and others|
|
||||
| **7** | Gaming Setup and Performance | Steam, Heroic Games Launcher, GameMode, MangoHud, Java JRE (Temurin 8/17/21) |
|
||||
| **8** | Install ZRAM (compressed swap) | Configure compressed RAM for memory optimization|
|
||||
| **9** | Install Programs and Software | Selection across 10 categories (Dev, Themes, System, etc.) |
|
||||
| **10** | Exit | Return to terminal |
|
||||
|
||||
### Extra Applications Categories (Option 9)
|
||||
|
||||
The submenu offers 11 categories:
|
||||
The submenu offers the next categories:
|
||||
|
||||
| Option | Category | Description |
|
||||
|--------|----------|-------------|
|
||||
| **0** | Essential Pack | Quick install of common tools (compression, system info, VLC, MS fonts) |
|
||||
| **1** | Customization System | Desktop themes, icon themes, cursor themes, and fonts|
|
||||
| **2** | Download & Network | Downloaders (aria2, ytdlp, FileZilla) + Torrent clients (qBittorrent, Deluge, Transmission)|
|
||||
| **3** | Internet | Browsers (Firefox/Mozilla, LibreWolf, Floorp, Chromium), email clients, VPN tools|
|
||||
| **4** | Media Players | VLC and MPV|
|
||||
| **5** | Multimedia & Design | GIMP, Kdenlive, Blender, OBS Studio, Audacity, Inkscape and HandBrake|
|
||||
| **6** | Programming Applications | Development tools (Docker, Nginx/Apache, PostgreSQL/MariaDB, SSH, fail2ban, Python)|
|
||||
| **7** | Security & Networking | Additional security and networking utilities |
|
||||
| **8** | System Tools | htop, btop, ncdu, timeshift, tmux, flatpak, extrepo and virtualization tools|
|
||||
| **9** | Fetch / System Info | Fastfetch/Neofetch, hyfetch, Linux logo and Screenfetch |
|
||||
| **10** | Back to main menu | Return to the main script menu |
|
||||
| Option | Category Title | Description |
|
||||
|--------|-------------------------------|-------------|
|
||||
| **0** | Essential Pack | Quick install of common tools (compression, system info, VLC, MS fonts)|
|
||||
| **1** | Customization System | Desktop themes, icon themes, cursor themes, and fonts |
|
||||
| **2** | Download & Network | Downloaders (aria2, ytdlp, FileZilla) + Torrent clients (qBittorrent, Deluge, Transmission) |
|
||||
| **3** | Internet (Browsers, Email Clients, VPN Tools) | Web browsers (Firefox/Mozilla, LibreWolf, Floorp, Chromium, Brave, Tor), email clients (Thunderbird), and VPN tools including Riseup |
|
||||
| **4** | Media Players | Multimedia playback with VLC media player and MPV for advanced video/audio support |
|
||||
| **5** | Multimedia & Design | image editing (GIMP), video editing (Kdenlive, HandBrake), 3D modeling (Blender), audio recording (Audacity), and graphics design (Inkscape) |
|
||||
| **6** | Code Editors & IDEs | vim, vim-gtk3, Neovim, Helix, nano, Emacs, Kate, Mousepad, Gedit, Geany, GNOME Text Editor, and VSCodium (VS Code open-source) |
|
||||
| **7** | Servers & Dev Tools | Web servers (Nginx/Apache), databases (PostgreSQL/MariaDB), Java Development Kit (Temurin 17/21/25 JDK), Docker, Python, SSH tools, fail2ban, and essential utilities |
|
||||
| **8** | Security & Networking | Wireshark, tcpdump, Zenmap, ClamAV, UFW, Fail2ban |
|
||||
| **9** | System Tools | htop/btop, ncdu, Timeshift, tmux/screen, Flatpak support, extension repository manager, and qemu/virtmanager |
|
||||
| **10** | Fetch / System Info | fastfetch/neofetch, hyfetch, Linux logo and screenfetch |
|
||||
| **11** | Back to Main Menu | Return directly to the main Debianito menu (exit submenu) |
|
||||
|
||||
---
|
||||
|
||||
## User Privileges & Feedback
|
||||
|
||||
Admin rights, passwordless commands, and file ownership fixes—optimized for Debian users.
|
||||
|
||||
### 1. Sudo Group Membership
|
||||
If you just installed Debian and can’t install software or change system settings (you get "Permission denied"), this option adds your user to the sudo group. This gives you admin privileges so you can manage your system. Changes take effect after you log out and back in.
|
||||
|
||||
### 2. Passwordless Sudo for Frequent Tasks
|
||||
Every time you run sudo apt install or sudo reboot, Linux asks for your password. This option lets you skip typing your password for common commands like installing/updating software (apt), restarting or shutting down (systemctl).
|
||||
- ⚠️ Security Note: While convenient, this reduces security if someone else uses your PC physically.
|
||||
|
||||
### 3. Repair Home Directory Ownership
|
||||
Sometimes, when you use sudo incorrectly (e.g., installing games or apps), files get "stolen" by the system (root) instead of your user. This causes apps to fail (e.g., saving settings or game progress). This option fixes ownership so all your files and folders belong to you again.
|
||||
|
||||
### 4. Sudo Password Feedback (Asterisks)
|
||||
By default, Debian’s terminal hides your password (no asterisks or feedback). This option adds visual feedback (e.g., ****) so you can see how many characters you’ve typed. Toggle it on/off as needed.
|
||||
|
||||
---
|
||||
|
||||
@@ -87,52 +107,67 @@ The submenu offers 11 categories:
|
||||
| `/modules/extras/` | Split-by-category sub-modules for the "Install Programs and Software" menu (Option 9). |
|
||||
|
||||
```bash
|
||||
├── debianito.sh # Main entry point; TUI menu + system detection
|
||||
├── modules/
|
||||
│ ├── utils.sh # System info helpers: CPU/RAM/GPU/WiFi detection, Debian version check ([`detect_debian_version()`](utils.sh#L79))
|
||||
│ ├── sudo_config.sh # User group + pwfeedback setup
|
||||
│ ├── repos.sh # Repository configuration (deb822/classic format) with backup/restore
|
||||
│ ├── firmware.sh # WiFi microcode and chipset-specific support via [`firmware-linux-nonfree`](modules/firmware.sh)
|
||||
│ ├── gpu.sh # AMD/Intel/NVIDIA driver handling ([`detect_gpu()`](utils.sh#L168)); NVIDIA Kepler/Turing detection veto (line 203+)
|
||||
│ ├── kernel.sh # Update Kernel to Backports with NVIDIA compatibility warnings
|
||||
│ ├── gaming.sh # Steam, GameMode, MangoHud, Heroic Games Launcher
|
||||
│ ├── zram.sh # ZRAM compressed swap configuration
|
||||
│ ├── gpu/ # NVIDIA-specific modules for Debian 12+ (Bookworm/Trixie)
|
||||
│ │ ├── _helpers.sh # Shared helpers including [`is_nvidia_kepler()`](gpu/_helpers.sh#LXX) with four isolated blocks for legacy detection
|
||||
│ │ └── nvidia.sh # NVIDIA driver installation ([`_install_nvidia_bookworm_kepler()`](gpu/nvidia.sh#LXX))
|
||||
│ ├── bullseye/ # Legacy support modules for Debian 11 (Bullseye) with ultra-minimalist rescue environment
|
||||
│ │ ├── legacy.sh # Fermi GPU detection (NVIDIA-390xx drivers), [install_gaming_bullseye](bullseye/legacy.sh#LXX) function
|
||||
│ │ ├── repos.sh # Classic `/etc/apt/sources.list` format with Archive Phase 2026 configuration
|
||||
│ │ └── extras.sh # Utilities installation with purged package list for unavailable packages on Debian 11
|
||||
│ └── extras/ # Category modules organized by function (Option 9 submenu)
|
||||
│ ├── _helpers.sh # Shared helpers: [`_inst()`](utils.sh#L418), [`_state()`] for package management
|
||||
│ ├── essential/ # Essential Pack (compression, system info, VLC, MS fonts)
|
||||
│ │ └── essential.sh # One-click essentials installation
|
||||
│ ├── system/ # System Tools (htop, btop, ncdu, timeshift, tmux, flatpak, extrepo, virtualization tools)
|
||||
│ │ └── system.sh # 25+ system utility packages
|
||||
│ ├── dev/ # Development & Servers (Docker, Nginx/Apache, PostgreSQL/MariaDB, SSH, fail2ban, Python)
|
||||
│ │ └── dev.sh # 15 development/server tools
|
||||
│ ├── players/ # Media Players (VLC, MPV)
|
||||
│ │ └── players.sh # Video player packages
|
||||
│ ├── internet/ # Internet: Firefox (Mozilla), LibreWolf, Floorp, Chromium, Thunderbird, Riseup VPN, Tor Browser
|
||||
│ │ └── internet.sh # Browsers, email clients, VPN tools
|
||||
│ ├── themes/ # Customization submenu with 4 options
|
||||
│ │ ├── themes.sh # Submenu dispatcher for customization categories
|
||||
│ │ ├── desktop-themes/ # Desktop Themes (GTK/KDE): Arc, Numix, Breeze GTK, Bluebird, Blackbird, Greybird, Orchis
|
||||
│ │ │ └── desktop-themes.sh
|
||||
│ │ ├── icons/ # Icon Themes: Papirus, Numix, Elementary, Deepin, Suru, Obsidian, Breeze, Moka
|
||||
│ │ │ └── icons.sh # 11-12 icon theme packages
|
||||
│ │ ├── cursors/ # Cursor Themes: Bibata, Breeze, Chameleon, DMZ, XCursor, Oxygen
|
||||
│ │ │ └── cursors.sh # 6 cursor theme packages
|
||||
│ │ └── fonts/ # Fonts: Bebas Neue, Anonymous Pro, ADF Verana, 3270, Liberation, MS Core, Ubuntu, Recommended
|
||||
│ │ └── fonts.sh # 8 font packages including MS Core fonts
|
||||
│ ├── fetch/ # Fetch Tools (Neofetch/Fastfetch, hyfetch, Linux logo, Screenfetch)
|
||||
│ │ └── fetch.sh # System info display tools
|
||||
│ ├── download/ # Downloaders & Torrent Clients: aria2, ytdlp, FileZilla, qBittorrent, Deluge, Transmission, mktorrent
|
||||
│ │ └── download.sh # Download manager + torrent client packages
|
||||
│ └── design/ # Multimedia & Design (GIMP, Kdenlive, Blender, OBS Studio, Audacity, Inkscape, HandBrake)
|
||||
│ └── design.sh # 12+ creative applications
|
||||
├── debianito.sh
|
||||
├── modules
|
||||
│ ├── bullseye
|
||||
│ │ ├── extras.sh
|
||||
│ │ ├── legacy.sh
|
||||
│ │ └── repos.sh
|
||||
│ ├── extras
|
||||
│ │ ├── design
|
||||
│ │ │ └── design.sh
|
||||
│ │ ├── dev
|
||||
│ │ │ └── dev.sh
|
||||
│ │ ├── download
|
||||
│ │ │ └── download.sh
|
||||
│ │ ├── essential
|
||||
│ │ │ └── essential.sh
|
||||
│ │ ├── fetch
|
||||
│ │ │ └── fetch.sh
|
||||
│ │ ├── _helpers.sh
|
||||
│ │ ├── internet
|
||||
│ │ │ └── internet.sh
|
||||
│ │ ├── java.sh
|
||||
│ │ ├── players
|
||||
│ │ │ └── players.sh
|
||||
│ │ ├── programming
|
||||
│ │ │ └── programming.sh
|
||||
│ │ ├── security
|
||||
│ │ │ └── security.sh
|
||||
│ │ ├── system
|
||||
│ │ │ └── system.sh
|
||||
│ │ └── themes
|
||||
│ │ ├── cursors
|
||||
│ │ │ └── cursors.sh
|
||||
│ │ ├── desktop-themes
|
||||
│ │ │ └── desktop-themes.sh
|
||||
│ │ ├── fonts
|
||||
│ │ │ └── fonts.sh
|
||||
│ │ ├── icons
|
||||
│ │ │ └── icons.sh
|
||||
│ │ └── themes.sh
|
||||
│ ├── extras.sh
|
||||
│ ├── firmware.sh
|
||||
│ ├── gaming
|
||||
│ │ ├── _helpers.sh
|
||||
│ │ ├── heroic.sh
|
||||
│ │ ├── steam.sh
|
||||
│ │ └── tools.sh
|
||||
│ ├── gaming.sh
|
||||
│ ├── gpu
|
||||
│ │ ├── amd_intel.sh
|
||||
│ │ ├── _helpers.sh
|
||||
│ │ └── nvidia.sh
|
||||
│ ├── gpu.sh
|
||||
│ ├── kernel.sh
|
||||
│ ├── repos.sh
|
||||
│ ├── sudo_config.sh
|
||||
│ ├── utils.sh
|
||||
│ └── zram.sh
|
||||
└── README.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
> 🤖 **AI-Assisted Development Note**
|
||||
> This project was developed with assistance from large language models for code generation, documentation and testing suggestions. The author takes full responsibility for the accuracy of all scripts included in this repository. All modifications have been reviewed manually before inclusion to ensure compatibility with Debian systems.
|
||||
|
||||
Reference in New Issue
Block a user