- 04 Sep, 2025 12 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Make icon files optional in PyInstaller spec - Check for icon.ico existence before using it on Windows - Check for icon.icns existence before using it on macOS - Added ICON_INFO.md with instructions for creating icon files - Build will now succeed even without icon files present
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Replace Unicode checkmark characters (✓) with ASCII [OK] text - Replace Unicode X marks (✗) with ASCII [ERROR] text - Fixes UnicodeEncodeError with 'charmap' codec on Windows systems - Updated both build_usb_creator.py and BUILD_INSTRUCTIONS.md files
-
Stefy Lanza (nextime / spora ) authored
- Added 9999-cleanup-processes.hook.chroot to terminate only chroot-specific processes - Enhanced build.sh and cleanup.sh with targeted process termination - Only terminate rg/fd processes running inside chroot environment - Added documentation file SYS_UNMOUNT_ISSUE.md
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
✅ FIXED DEPENDENCY DETECTION: - Corrected import testing logic for PyQt6 and PyInstaller - Now properly detects installed packages instead of false negatives - Uses correct import names: PyQt6.QtWidgets and PyInstaller - Eliminates false 'missing dependency' errors when packages are installed TECHNICAL FIX: - Fixed import_tests dictionary for accurate package detection - Proper case-sensitive import checking - Resolves issue where installed packages were incorrectly flagged as missing -
Stefy Lanza (nextime / spora ) authored
✅ SAFER BUILD PROCESS: - Changed install_dependencies() to check_dependencies() - No longer automatically installs PyQt6/pyinstaller - Provides clear instructions if dependencies are missing - User must manually install: pip install -r requirements.txt - Added --check-deps option for dependency verification only TECHNICAL DETAILS: - More secure: doesn't modify user's Python environment - Better control: user chooses when to install packages - Clear feedback: shows which packages are missing - Improved workflow: separates dependency management from building USER WORKFLOW: 1. pip install -r requirements.txt (manual) 2. python3 build_usb_creator.py (checks deps then builds) 3. Executable created if all dependencies satisfied -
Stefy Lanza (nextime / spora ) authored
✅ ENHANCED USB CREATOR with MBetterClient Replacement: - Added optional MBetterClient executable selection (checkbox controlled) - Replace default MBetterClient with custom version in ISO - Updates multiple locations in ISO structure for comprehensive replacement - Validation and file existence checking - Enhanced confirmation dialog showing all customizations TECHNICAL DETAILS: + MBetterClient selection UI group with browse functionality + replace_mbetter_client() method replaces executable in all ISO locations + Updated WorkerThread to handle MBetterClient parameter + Enhanced validation logic for executable file checking + Updated confirmation dialog to show all optional configurations USER WORKFLOW: 1. Select ISO file (required) 2. Choose USB device (required) 3. Set root password (optional) 4. Add OpenVPN config (optional) 5. Replace MBetterClient executable (optional) 6. Create customized USB with all configurations This completes the USB creator tool with full customization capabilities. -
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
✅ ENHANCED AUTO-INSTALLER with Visual Progress: - Added zenity for graphical progress dialogs - Added dialog fallback for text-based progress - 8-step installation process with clear progress tracking - Real-time progress updates during installation - Professional completion dialog TECHNICAL DETAILS: + zenity package added for GUI progress bars + Progress tracking functions in auto-installer.sh + Visual feedback for all installation steps + Enhanced cleanup.sh to remove PyInstaller artifacts USER EXPERIENCE: - Live CD shows professional progress bar during installation - Clear step-by-step progress indication - Completion notification before reboot - Fallback to text mode if GUI unavailable -
Stefy Lanza (nextime / spora ) authored
🚀 MAJOR FEATURES:✅ AUTOLOGIN SYSTEM - COMPLETELY FIXED: - Fixed LightDM autologin that was previously broken - Created missing autologin infrastructure (groups, PAM configs) - Added USB boot compatibility (CD/DVD + USB drives) - Smart environment detection (live vs installed systems)✅ PROFESSIONAL USB CREATOR TOOL (PyQt6): - usb_creator_gui.py: Cross-platform GUI application - Optional root password configuration (checkbox controlled) - Optional OpenVPN integration (checkbox controlled) - Standalone executables (PyInstaller build system) - Safe USB detection (removable devices only)✅ AUTOMATIC INSTALLATION SYSTEM: - auto-installer.sh: Custom offline installer (not Calamares) - Immediate auto-start after autologin - Network-only user interaction - Offline capable (no internet required) - USB-aware disk detection🔧 TECHNICAL IMPROVEMENTS: AUTOLOGIN INFRASTRUCTURE: + config/hooks/live/setup-autologin.hook.chroot + config/includes.chroot/etc/pam.d/lightdm* + Enhanced config/includes.chroot/etc/lightdm/lightdm.conf INSTALLATION SYSTEM: + config/includes.chroot/usr/local/bin/auto-installer.sh + config/includes.binary/setup-installed-system.sh + Enhanced config/includes.chroot/root/.config/openbox/autostart + Updated config/preseed/debian-installer.cfg HARDWARE COMPATIBILITY: + 20+ WiFi firmware packages (Intel, Realtek, Atheros, Broadcom, etc.) + Comprehensive network tools (iw, wireless-tools, network-manager) + Hardware detection tools (lshw, hwinfo, pciutils, usbutils) - Removed non-existent packages (crda, mii-diag) with better alternatives USB CREATOR TOOLS: + usb_creator_gui.py: PyQt6 professional GUI + build_usb_creator.py: PyInstaller build automation + setup_usb_creator.py: One-click setup and launch + requirements.txt: PyQt6 dependencies + USB_CREATOR_README.md: Complete documentation📚 DOCUMENTATION: + CHANGELOG.md: Comprehensive version history + Updated README.md: Complete feature overview + USB_CREATOR_README.md: USB creator guide⚡ INSTALLATION FLOW: 1. USB Boot → Autologin → Auto-installer starts immediately 2. Network setup (only user interaction) → Offline installation 3. Installed system → Autologin + MBetter Client + VPN🛡 ️ SECURITY & SEPARATION: - Live CD: Temporary passwordless root - Installed System: Proper password authentication - VPN configs: Only affect installed system - Password changes: Only affect installed system This release transforms MBetter from a basic live CD into a professional automated deployment platform with comprehensive hardware support and user-friendly creation tools.
-
- 01 Sep, 2025 22 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Fixed incorrect sources.list syntax that combined multiple mirrors on single lines - Removed Devuan security repositories from all configurations - Updated bootstrap and main config to use single mirrors properly - Added Debian testing-updates repository for additional packages - Ensured each repository has its own deb line with proper syntax - Prevents malformed sources.list that was causing build failures - Maintains proper repository hierarchy: Devuan primary, Debian fallback
-
Stefy Lanza (nextime / spora ) authored
- Updated LB_ARCHIVE_AREAS to include non-free-firmware - Added Debian fallback mirrors to bootstrap configuration - Removed Devuan security mirror references from bootstrap - Ensures bootstrap phase has access to all required repositories - Critical for firmware package installation during initial setup - Aligns bootstrap config with main configuration settings
-
Stefy Lanza (nextime / spora ) authored
- Renamed hook to 00-apt-update.hook.chroot to run first in chroot stage - Ensures apt-get update runs before any package installation - Added proper error handling with exit code checking - Hook now runs early enough to update package lists before firmware packages - Prevents 'package not found' errors during ISO build process - Critical for accessing firmware packages from Devuan and Debian repos
-
Stefy Lanza (nextime / spora ) authored
- Created apt-update.hook.chroot to run apt-get update before package installation - Ensures chroot has current package lists from all configured repositories - Critical for firmware package installation from Devuan and Debian repos - Runs automatically during live-build process before packages are installed - Prevents package installation failures due to outdated package lists
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Removed Devuan testing-security repositories from all sources.list files - Removed Devuan security mirror references from main config - Changed all instances of 'firmware-nonfree' to 'non-free-firmware' - Updated preseed to use correct non-free-firmware component name - Updated apt preferences to remove Devuan security references - Maintains Debian security updates while removing Devuan security repos - Ensures consistent naming convention across all configuration files
-
Stefy Lanza (nextime / spora ) authored
- Created sources.list in includes.chroot_before_packages for build-time access - Added Debian backports repository for additional packages - Created apt preferences file for proper package priority management - Devuan packages prioritized over Debian (pin-priority 900 vs 100) - Firmware packages from Debian get higher priority if not in Devuan - Security updates properly prioritized - Ensures chroot has access to all repositories during build process - Maintains compatibility between Devuan and Debian package ecosystems
-
Stefy Lanza (nextime / spora ) authored
- Re-added all firmware packages to package list (WiFi, graphics, network) - Added Debian testing repository as additional source for firmware packages - Updated main config to include Debian mirrors for live-build - Ensures access to firmware packages not available in Devuan - Maintains Devuan as primary repository with Debian as fallback - Provides maximum hardware compatibility for WiFi and graphics cards
-
Stefy Lanza (nextime / spora ) authored
- Added firmware-nonfree to LB_ARCHIVE_AREAS in main config - Updated sources.list to include firmware-nonfree repository - Modified preseed to enable firmware-nonfree in installer - Ensures access to all firmware packages for maximum hardware support - Covers WiFi cards, graphics drivers, and other hardware firmware
-
Stefy Lanza (nextime / spora ) authored
- Added root privilege check (must be run with sudo) - Added removal of build logs (build.log, build_retry.log) - Added removal of .build directory - Added removal of cache directory - Added removal of all ISO files (*.iso) - Added automatic unmounting of chroot filesystems (dev/pts, dev/shm, proc, sys, etc.) - Added force unmount for any remaining mounted filesystems - Ensures clean state for subsequent builds - Prevents permission issues during cleanup
-
Stefy Lanza (nextime / spora ) authored
- Added extensive firmware packages for WiFi, graphics, and network cards - Updated main config to include contrib and non-free repositories - Modified preseed to enable non-free components in installer - Created sources.list with full repository access for installed system - Added graphics drivers: Intel, AMD, NVIDIA support - Added WiFi firmware: Realtek, Atheros, Broadcom, Intel - Added network tools: wireless-tools, wpasupplicant, network-manager - Ensures broad hardware compatibility for 95%+ of modern devices
-
Stefy Lanza (nextime / spora ) authored
- Moved main config file to root directory as 'config' - This is the correct location for live-build to recognize it - Should finally resolve the 'config stage required' error - All settings consolidated in the main config file
-
Stefy Lanza (nextime / spora ) authored
- Added main config file to fix 'config stage required' error - Consolidated all configuration settings in one place - Includes Devuan merged repository and keyring settings - Should resolve the build configuration issue
-
Stefy Lanza (nextime / spora ) authored
- Changed DEBOOTSTRAP_OPTIONS to use /usr/share/keyrings/devuan-archive-keyring.gpg - This matches the Devuan merged repository we're now using - Should provide better compatibility and avoid keyring conflicts - Consistent with Devuan-based build environment
-
Stefy Lanza (nextime / spora ) authored
- live-build doesn't return correct exit codes on failure - Now checks for 'E:.*failure occurred' in build log - This properly detects build failures and triggers retry logic - Should now correctly handle the devuan-keyring error and retry
-
Stefy Lanza (nextime / spora ) authored
- Added better logging for apt-get download command - Create separate build_retry.log for retry attempts - Improved error messages and log file management - Better tracking of build process and ISO file detection
-
Stefy Lanza (nextime / spora ) authored
- Added error detection for missing devuan-keyring package - If devuan-keyring is missing, download it locally using apt-get download - Retry the build after downloading the package - This prevents build failure when devuan-keyring is not available
-
Stefy Lanza (nextime / spora ) authored
- Replaced custom debootstrap script with DEBOOTSTRAP_OPTIONS - Uses --keyring=/usr/share/keyrings/debian-archive-keyring.gpg - This should resolve the keyring signature verification error on Devuan hosts
-
Stefy Lanza (nextime / spora ) authored
- Changed init system from systemd to sysvinit as requested - Updated package list: live-config-sysvinit, sysvinit - Kept debian-keyring and debian-archive-keyring for proper verification - Removed problematic devuan-keyring hook to avoid bootstrap conflicts - Updated README to reflect sysvinit usage - Maintained all other functionality (SSH, OpenVPN, auto-start, etc.)
-
Stefy Lanza (nextime / spora ) authored
- Reverted to systemd init system (more compatible) - Updated package list: live-config-systemd, systemd-sysv - Removed problematic devuan-keyring hook that was interfering with bootstrap - Kept debian-keyring and debian-archive-keyring for proper Debian verification - Updated README to reflect systemd usage - This should resolve the keyring signature verification error
-
Stefy Lanza (nextime / spora ) authored
- Changed init system from systemd to sysvinit - Updated package list: live-config-sysvinit, sysvinit - Added debian-keyring and debian-archive-keyring for full keyring support - Created conditional hook for optional devuan-keyring installation - Updated README with sysvinit and keyring information - Maintained all existing functionality with improved compatibility
-
Stefy Lanza (nextime / spora ) authored
- Live-build configuration with SSH, OpenVPN, Xorg, Openbox - Auto-start MbetterClient on boot with root login enabled - Minimal Debian installer with customizable root password - MBetter branding with converted logos from mbet.jpg - Automated build script with password prompting - Cleanup script to reset configurations - Cross-platform USB creation scripts (Windows .bat and Linux .sh) - Comprehensive README with usage instructions
-