Firefox bug fix & LXDE desktop option

- Resolved Firefox installation conflict: the "both" selection no longer triggers duplicate dialogs or cancellation; the installer now passes the resolved choice to both Mozilla and ESR installers, preserving co-installation without redundant prompts.
- Fixed bugs across Debian 11/12/13 scripts:
- Migrated `migrate.sh` to write classic `.sources` format for Debian 11 and skip the security stanza for SID.
- Corrected non-free token matching in `firmware.sh` to avoid false positives on non-free-firmware-only systems.
- Added `sudo` to `broadcom-combo.conf` creation and fixed `/etc/modprobe.d` directory handling.
- Fixed write propagation in `repos.sh` to prevent silent failures on user rejection.
- Corrected PipeWire state detection for Debian 11 and added SID security stanza exclusion.
- Added LXDE desktop environment option to `debianito.sh`:
- New "LXDE (Full)" and "LXDE Core" options in the Desktop Environment menu.
- Both options install `lightdm` in a single `apt-get install` call and enable the service via `systemctl enable`.
- Includes debconf preseed for LightDM default display manager selection.
- No extra packages, no Openbox/LXDE configuration changes.
- Added `_radiolist()` helper to `utils.sh` for safe radio-list cancellation under `set -e`.
- Added `lxde_menu()` to `desktop_display.sh` with exact 2-option radio list, single-shot dispatch, and clean `return 0` on cancel.
- Added `_install_lxde_full()` and `_install_lxde_core()` with `debconf-set-selections`, single `apt` call, and `systemctl enable lightdm` post-install.
This commit is contained in:
stornic56
2026-08-19 00:18:41 -05:00
committed by GitHub
parent 0e24e8f9ae
commit 9230cda5dd
7 changed files with 204 additions and 64 deletions
+41 -17
View File
@@ -185,13 +185,13 @@ _cat_internet() {
local has_firefox=false
local has_firefox_esr=false
local fchoice=""
for _p in $cleaned; do
[ "$_p" = "firefox" ] && has_firefox=true
[ "$_p" = "firefox-esr" ] && has_firefox_esr=true
done
if $has_firefox && $has_firefox_esr; then
local fchoice
fchoice=$(_menu "Firefox" "You selected both Firefox (Mozilla) and Firefox ESR.\nWhat do you want to do?" 12 60 3 \
"mozilla" "Remove Firefox ESR — keep Firefox" \
"esr" "Remove Firefox — keep Firefox ESR" \
@@ -206,10 +206,10 @@ _cat_internet() {
for pkg in $cleaned; do
case $pkg in
firefox)
install_firefox_mozilla
install_firefox_mozilla "$fchoice"
;;
firefox-esr)
install_firefox_esr
install_firefox_esr "$fchoice"
;;
floorp)
_enable_floorp_repo
@@ -271,6 +271,7 @@ _cat_internet() {
}
install_firefox_mozilla() {
local fchoice="${1:-}"
if [ "$DEBIAN_VERSION" -lt 12 ] 2>/dev/null; then
_msg "Firefox" "Mozilla Firefox is only available on\nDebian 12 (Bookworm) and 13 (Trixie).\n\nSkipping installation." 10 60
return 1
@@ -282,13 +283,24 @@ install_firefox_mozilla() {
fi
if is_installed "firefox-esr"; then
if _confirm "Firefox ESR" "Firefox ESR is installed.\nRemove it before installing Mozilla Firefox?"; then
echo "Removing Firefox ESR..."
sudo apt remove -y firefox-esr
else
echo "Keeping Firefox ESR."
return
fi
case "$fchoice" in
both)
echo -e "${CYAN}[INFO] Keeping Firefox ESR (both selected).${NC}"
;;
mozilla)
echo "Removing Firefox ESR (as selected)..."
sudo apt remove -y firefox-esr
;;
*)
if _confirm "Firefox ESR" "Firefox ESR is installed.\nRemove it before installing Mozilla Firefox?"; then
echo "Removing Firefox ESR..."
sudo apt remove -y firefox-esr
else
echo "Keeping Firefox ESR."
return
fi
;;
esac
fi
_enable_mozilla_repo
@@ -297,19 +309,31 @@ install_firefox_mozilla() {
}
install_firefox_esr() {
local fchoice="${1:-}"
if is_installed "firefox-esr"; then
echo "Firefox ESR is already installed."
return
fi
if command -v firefox &>/dev/null; then
if _confirm "Firefox" "Mozilla Firefox is installed.\nRemove it before installing Firefox ESR?"; then
echo "Removing Mozilla Firefox..."
sudo apt remove -y firefox
else
echo "Keeping Mozilla Firefox."
return
fi
case "$fchoice" in
both)
echo -e "${CYAN}[INFO] Keeping Mozilla Firefox (both selected).${NC}"
;;
esr)
echo "Removing Mozilla Firefox (as selected)..."
sudo apt remove -y firefox
;;
*)
if _confirm "Firefox" "Mozilla Firefox is installed.\nRemove it before installing Firefox ESR?"; then
echo "Removing Mozilla Firefox..."
sudo apt remove -y firefox
else
echo "Keeping Mozilla Firefox."
return
fi
;;
esac
fi
_run_cmd "Firefox ESR" "sudo apt install -y firefox-esr" "Installing Firefox ESR..."