main()
{
- if [[ $MENU != 'main' ]]; then
- MENU='main'
- [[ $SAVED ]] && { SEL=$SAVED; unset SAVED; } || SEL=0
- fi
+ [[ $SEL ]] || SEL=0
(( SEL < 11 )) && (( SEL++ ))
tput civis
"11" "$_PrepInstall")
if [[ $WARN != true && $SEL =~ (2|5) ]]; then
- WARN=true
- msgbox "$_PrepTitle" "$_WarnMount"
+ WARN=true; msgbox "$_PrepTitle" "$_WarnMount"
fi
case $SEL in
1) device_tree ;;
- 2) partition || SEL=$((SEL - 1)) ;;
- 3) luks_menu || SEL=$((SEL - 1)) ;;
- 4) lvm_menu || SEL=$((SEL - 1)) ;;
- 5) mnt_menu || SEL=$((SEL - 1)) ;;
- 6) prechecks 0 && { mkuser || SEL=$((SEL - 1)); } ;;
- 7) prechecks 1 && { cfg_menu || SEL=$((SEL - 1)); } ;;
- 8) prechecks 2 && { select_sessions || SEL=$((SEL - 1)); } ;;
- 9) prechecks 2 && { select_packages || SEL=$((SEL - 1)); } ;;
+ 2) partition || (( SEL-- )) ;;
+ 3) luks_menu || (( SEL-- )) ;;
+ 4) lvm_menu || (( SEL-- )) ;;
+ 5) mnt_menu || (( SEL-- )) ;;
+ 6) prechecks 0 && { mkuser || (( SEL-- )); } ;;
+ 7) prechecks 1 && { cfg_menu || (( SEL-- )); } ;;
+ 8) prechecks 2 && { select_sessions || (( SEL-- )); } ;;
+ 9) prechecks 2 && { select_packages || (( SEL-- )); } ;;
10) prechecks 2 && show_cfg ;;
11) prechecks 2 && install ;;
- *) yesno "$_CloseInst" "$_CloseInstBody" "Exit" "Back" && die
+ *) yesno "$_CloseInst" "$_CloseInstBody" && die
esac
}
local mnt="${BMNTS[$SYS-$BOOTLDR]}"
local pkgs="${USER_PKGS# } ${PACKAGES# } $BASE_PKGS"
[[ $PACKAGES =~ (openbox|bspwm|i3-gaps) || $INSTALL_WMS == *dwm* ]] && pkgs="${pkgs# } $WM_BASE_PKGS"
- [[ $INSTALL_WMS == *dwm* ]] && pkgs="${pkgs# } dwm st dmenu"
+ [[ $INSTALL_WMS == *dwm* ]] && pkgs="dwm st dmenu ${pkgs# }"
pkgs="${pkgs# }"
pkgs="${pkgs% }"
msgbox "$_PrepTitle" "
if hash reflector >/dev/null 2>&1; then
MIRROR_CMD="reflector --score 100 -l 50 -f 5 --sort rate --verbose"
- yesno "$_MirrorTitle" "$_MirrorSetup" "Automatic" "Custom" && return 0
+ yesno "$_MirrorTitle" "$_MirrorSetup" && return 0
c="$(json 'country_name' "$(json 'ip' "check&?access_key=${key}&fields=ip")?access_key=${key}&fields=country_name")"
MIRROR_CMD="reflector --country $c --fastest 5 --sort rate --verbose"
tput civis
cur=$(dialog --cr-wrap --stdout --backtitle "$BT" \
- --title " $_Packages " --default-item $cur --menu "$_PackageMenu" 0 0 0 \
+ --title " $_Packages " --default-item $cur \
+ --menu "$_PackageMenu" 0 0 0 \
1 "Web Browsers" \
2 "Text Editors" \
3 "File Managers" \
[[ $cur && $cur -lt 13 ]] || break
- case $SEL in
+ case $cur in
1) BROWSE_PKGS="$(select_browsers)" ;;
2) EDIT_PKGS="$(select_editors)" ;;
3) FM_PKGS="$(select_files)" ;;
USER_PKGS+="$PROF_PKGS $VIEW_PKGS $FNT_PKGS $TOR_PKGS $SYS_PKGS $EX_PKGS"
for i in $USER_PKGS; do
- [[ ${PKG_EXT[$i]} && $USER_PKGS != *${PKG_EXT[$i]}* ]] && USER_PKGS+=" ${PKG_EXT[$i]}"
+ [[ ${PKG_EXT[$i]} && $USER_PKGS != *"${PKG_EXT[$i]}"* ]] && USER_PKGS+=" ${PKG_EXT[$i]}"
done
USER_PKGS="${USER_PKGS// / }"
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "firefox" "A popular open-source graphical web browser from Mozilla" $(offon 'firefox') \
- "chromium" "an open-source graphical web browser based on the Blink rendering engine" $(offon 'chromium') \
- "opera" "A Fast and secure, free of charge web browser from Opera Software" $(offon 'opera') \
- "epiphany" "A GNOME web browser based on the WebKit rendering engine" $(offon 'epiphany') \
- "surf" "A simple web browser based on WebKit2/GTK+" $(offon 'surf') \
- "qutebrowser" "A keyboard-focused vim-like web browser based on Python and PyQt5" $(offon 'qutebrowser'))"
+ "firefox" "A popular open-source graphical web browser from Mozilla" $(ofn 'firefox') \
+ "chromium" "an open-source graphical web browser based on the Blink rendering engine" $(ofn 'chromium') \
+ "opera" "A Fast and secure, free of charge web browser from Opera Software" $(ofn 'opera') \
+ "epiphany" "A GNOME web browser based on the WebKit rendering engine" $(ofn 'epiphany') \
+ "surf" "A simple web browser based on WebKit2/GTK+" $(ofn 'surf') \
+ "qutebrowser" "A keyboard-focused vim-like web browser based on Python and PyQt5" $(ofn 'qutebrowser'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "neovim" "A fork of Vim aiming to improve user experience, plugins, and GUIs." $(offon 'neovim') \
- "atom" "An open-source text editor developed by GitHub that is licensed under the MIT License" $(offon 'atom') \
- "geany" "A fast and lightweight IDE" $(offon 'geany') \
- "emacs" "An extensible, customizable, self-documenting real-time display editor" $(offon 'emacs') \
- "mousepad" "A simple text editor" $(offon 'mousepad'))"
+ "neovim" "A fork of Vim aiming to improve user experience, plugins, and GUIs." $(ofn 'neovim') \
+ "atom" "An open-source text editor developed by GitHub that is licensed under the MIT License" $(ofn 'atom') \
+ "geany" "A fast and lightweight IDE" $(ofn 'geany') \
+ "emacs" "An extensible, customizable, self-documenting real-time display editor" $(ofn 'emacs') \
+ "mousepad" "A simple text editor" $(ofn 'mousepad'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "thunar" "A modern file manager for the Xfce Desktop Environment" $(offon 'thunar') \
- "pcmanfm" "A fast and lightweight file manager based in Lxde" $(offon 'pcmanfm') \
- "nautilus" "The default file manager for Gnome" $(offon 'nautilus') \
- "gparted" "A GUI frontend for creating and manipulating partition tables" $(offon 'gparted') \
- "file-roller" "Create and modify archives" $(offon 'file-roller') \
- "xarchiver" "A GTK+ frontend to various command line archivers" $(offon 'xarchiver'))"
+ "thunar" "A modern file manager for the Xfce Desktop Environment" $(ofn 'thunar') \
+ "pcmanfm" "A fast and lightweight file manager based in Lxde" $(ofn 'pcmanfm') \
+ "nautilus" "The default file manager for Gnome" $(ofn 'nautilus') \
+ "gparted" "A GUI frontend for creating and manipulating partition tables" $(ofn 'gparted') \
+ "file-roller" "Create and modify archives" $(ofn 'file-roller') \
+ "xarchiver" "A GTK+ frontend to various command line archivers" $(ofn 'xarchiver'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "termite" "A minimal VTE-based terminal emulator" $(offon 'termite') \
- "rxvt-unicode" "A unicode enabled rxvt-clone terminal emulator" $(offon 'rxvt-unicode') \
- "xterm" "The standard terminal emulator for the X window system" $(offon 'xterm') \
- "alacritty" "A cross-platform, GPU-accelerated terminal emulator" $(offon 'alacritty') \
- "terminator" "Terminal emulator that supports tabs and grids" $(offon 'terminator') \
- "sakura" "A terminal emulator based on GTK and VTE" $(offon 'sakura') \
- "tilix" "A tiling terminal emulator for Linux using GTK+ 3" $(offon 'tilix') \
- "tilda" "A Gtk based drop down terminal for Linux and Unix" $(offon 'tilda') \
- "xfce4-terminal" "A terminal emulator based in the Xfce Desktop Environment" $(offon 'xfce-terminal'))"
+ "termite" "A minimal VTE-based terminal emulator" $(ofn 'termite') \
+ "rxvt-unicode" "A unicode enabled rxvt-clone terminal emulator" $(ofn 'rxvt-unicode') \
+ "xterm" "The standard terminal emulator for the X window system" $(ofn 'xterm') \
+ "alacritty" "A cross-platform, GPU-accelerated terminal emulator" $(ofn 'alacritty') \
+ "terminator" "Terminal emulator that supports tabs and grids" $(ofn 'terminator') \
+ "sakura" "A terminal emulator based on GTK and VTE" $(ofn 'sakura') \
+ "tilix" "A tiling terminal emulator for Linux using GTK+ 3" $(ofn 'tilix') \
+ "tilda" "A Gtk based drop down terminal for Linux and Unix" $(ofn 'tilda') \
+ "xfce4-terminal" "A terminal emulator based in the Xfce Desktop Environment" $(ofn 'xfce-terminal'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "vlc" "A free and open source cross-platform multimedia player" $(offon 'vlc') \
- "mpv" "A media player based on mplayer" $(offon 'mpv') \
- "mpd" "A flexible, powerful, server-side application for playing music" $(offon 'mpd') \
- "ncmpcpp" "An mpd client and almost exact clone of ncmpc with some new features" $(offon 'ncmpcpp') \
- "cmus" "A small, fast and powerful console music player for Unix-like operating systems" $(offon 'cmus') \
- "audacious" "A free and advanced audio player based on GTK+" $(offon 'audacious') \
- "nicotine+" "A graphical client for Soulseek" $(offon 'nicotine+') \
- "lollypop" "A new music playing application" $(offon 'lollypop') \
- "rhythmbox" "Music playback and management application" $(offon 'rhythmbox') \
- "deadbeef" "A GTK+ audio player for GNU/Linux" $(offon 'deadbeef') \
- "clementine" "A modern music player and library organizer" $(offon 'clementine'))"
+ "vlc" "A free and open source cross-platform multimedia player" $(ofn 'vlc') \
+ "mpv" "A media player based on mplayer" $(ofn 'mpv') \
+ "mpd" "A flexible, powerful, server-side application for playing music" $(ofn 'mpd') \
+ "ncmpcpp" "An mpd client and almost exact clone of ncmpc with some new features" $(ofn 'ncmpcpp') \
+ "cmus" "A small, fast and powerful console music player for Unix-like operating systems" $(ofn 'cmus') \
+ "audacious" "A free and advanced audio player based on GTK+" $(ofn 'audacious') \
+ "nicotine+" "A graphical client for Soulseek" $(ofn 'nicotine+') \
+ "lollypop" "A new music playing application" $(ofn 'lollypop') \
+ "rhythmbox" "Music playback and management application" $(ofn 'rhythmbox') \
+ "deadbeef" "A GTK+ audio player for GNU/Linux" $(ofn 'deadbeef') \
+ "clementine" "A modern music player and library organizer" $(ofn 'clementine'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "thunderbird" "Standalone mail and news reader from mozilla" $(offon 'thunderbird') \
- "geary" "A lightweight email client for the GNOME desktop" $(offon 'geary') \
- "evolution" "Manage your email, contacts and schedule" $(offon 'evolution') \
- "mutt" "Small but very powerful text-based mail client" $(offon 'mutt') \
- "hexchat" "A popular and easy to use graphical IRC client" $(offon 'hexchat') \
- "pidgin" "Multi-protocol instant messaging client" $(offon 'pidgin') \
- "weechat" "Fast, light and extensible IRC client" $(offon 'weechat') \
- "irssi" "Modular text mode IRC client" $(offon 'irssi'))"
+ "thunderbird" "Standalone mail and news reader from mozilla" $(ofn 'thunderbird') \
+ "geary" "A lightweight email client for the GNOME desktop" $(ofn 'geary') \
+ "evolution" "Manage your email, contacts and schedule" $(ofn 'evolution') \
+ "mutt" "Small but very powerful text-based mail client" $(ofn 'mutt') \
+ "hexchat" "A popular and easy to use graphical IRC client" $(ofn 'hexchat') \
+ "pidgin" "Multi-protocol instant messaging client" $(ofn 'pidgin') \
+ "weechat" "Fast, light and extensible IRC client" $(ofn 'weechat') \
+ "irssi" "Modular text mode IRC client" $(ofn 'irssi'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "libreoffice-fresh" "Full featured office suite" $(offon 'libreoffice-fresh') \
- "abiword" "Fully-featured word processor" $(offon 'abiword') \
- "calligra" "A set of applications for productivity" $(offon 'calligra') \
- "gimp" "GNU Image Manipulation Program" $(offon 'gimp') \
- "inkscape" "Professional vector graphics editor" $(offon 'inkscape') \
- "krita" "Edit and paint images" $(offon 'krita') \
- "obs-studio" "Free opensource streaming/recording software" $(offon 'obs-studio') \
- "kdenlive" "A non-linear video editor for Linux using the MLT video framework" $(offon 'kdenlive') \
- "openshot" "An open-source, non-linear video editor for Linux" $(offon 'openshot') \
- "audacity" "A program that lets you manipulate digital audio waveforms" $(offon 'audacity') \
- "guvcview" "Capture video from camera devices" $(offon 'guvcview') \
- "simplescreenrecorder" "A feature-rich screen recorder" $(offon 'simplescreenrecorder'))"
+ "libreoffice-fresh" "Full featured office suite" $(ofn 'libreoffice-fresh') \
+ "abiword" "Fully-featured word processor" $(ofn 'abiword') \
+ "calligra" "A set of applications for productivity" $(ofn 'calligra') \
+ "gimp" "GNU Image Manipulation Program" $(ofn 'gimp') \
+ "inkscape" "Professional vector graphics editor" $(ofn 'inkscape') \
+ "krita" "Edit and paint images" $(ofn 'krita') \
+ "obs-studio" "Free opensource streaming/recording software" $(ofn 'obs-studio') \
+ "kdenlive" "A non-linear video editor for Linux using the MLT video framework" $(ofn 'kdenlive') \
+ "openshot" "An open-source, non-linear video editor for Linux" $(ofn 'openshot') \
+ "audacity" "A program that lets you manipulate digital audio waveforms" $(ofn 'audacity') \
+ "guvcview" "Capture video from camera devices" $(ofn 'guvcview') \
+ "simplescreenrecorder" "A feature-rich screen recorder" $(ofn 'simplescreenrecorder'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "ttf-hack" "A hand groomed and optically balanced typeface based on Bitstream Vera Mono" $(offon 'ttf-hack') \
- "ttf-anonymous-pro" "A family fixed-width fonts designed with coding in mind" $(offon 'ttf-anonymous-pro') \
- "ttf-font-awesome" "Iconic font designed for Bootstrap" $(offon 'ttf-font-awesome') \
- "ttf-fira-code" "Monospaced font with programming ligatures" $(offon 'ttf-fira-code') \
- "noto-fonts" "Google Noto fonts" $(offon 'noto-fonts') \
- "noto-fonts-cjk" "Google Noto CJK fonts (Chinese, Japanese, Korean)" $(offon 'noto-fonts-cjk'))"
+ "ttf-hack" "A hand groomed and optically balanced typeface based on Bitstream Vera Mono" $(ofn 'ttf-hack') \
+ "ttf-anonymous-pro" "A family fixed-width fonts designed with coding in mind" $(ofn 'ttf-anonymous-pro') \
+ "ttf-font-awesome" "Iconic font designed for Bootstrap" $(ofn 'ttf-font-awesome') \
+ "ttf-fira-code" "Monospaced font with programming ligatures" $(ofn 'ttf-fira-code') \
+ "noto-fonts" "Google Noto fonts" $(ofn 'noto-fonts') \
+ "noto-fonts-cjk" "Google Noto CJK fonts (Chinese, Japanese, Korean)" $(ofn 'noto-fonts-cjk'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "evince" "A document viewer" $(offon 'evince') \
- "zathura" "Minimalistic document viewer" $(offon 'zathura') \
- "qpdfview" "A tabbed PDF viewer" $(offon 'qpdfview') \
- "mupdf" "Lightweight PDF and XPS viewer" $(offon 'mupdf') \
- "gpicview" "Lightweight image viewer" $(offon 'gpicview'))"
+ "evince" "A document viewer" $(ofn 'evince') \
+ "zathura" "Minimalistic document viewer" $(ofn 'zathura') \
+ "qpdfview" "A tabbed PDF viewer" $(ofn 'qpdfview') \
+ "mupdf" "Lightweight PDF and XPS viewer" $(ofn 'mupdf') \
+ "gpicview" "Lightweight image viewer" $(ofn 'gpicview'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "deluge" "A BitTorrent client written in python" $(offon 'deluge') \
- "qbittorrent" "An advanced BitTorrent client" $(offon 'qbittorrent') \
- "transmission-gtk" "Free BitTorrent client GTK+ GUI" $(offon 'transmission-gtk') \
- "transmission-qt" "Free BitTorrent client Qt GUI" $(offon 'transmission-qt') \
- "transmission-cli" "Free BitTorrent client CLI" $(offon 'transmission-cli'))"
+ "deluge" "A BitTorrent client written in python" $(ofn 'deluge') \
+ "qbittorrent" "An advanced BitTorrent client" $(ofn 'qbittorrent') \
+ "transmission-gtk" "Free BitTorrent client GTK+ GUI" $(ofn 'transmission-gtk') \
+ "transmission-qt" "Free BitTorrent client Qt GUI" $(ofn 'transmission-qt') \
+ "transmission-cli" "Free BitTorrent client CLI" $(ofn 'transmission-cli'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "gnome-disk-utility" "Disk Management Utility" $(offon 'gnome-disk-utility') \
- "gnome-system-monitor" "View current processes and monitor system state" $(offon 'gnome-system-monitor') \
- "qt5ct" "GUI for managing Qt based application themes, icons, and fonts" $(offon 'qt5ct'))"
+ "gnome-disk-utility" "Disk Management Utility" $(ofn 'gnome-disk-utility') \
+ "gnome-system-monitor" "View current processes and monitor system state" $(ofn 'gnome-system-monitor') \
+ "qt5ct" "GUI for managing Qt based application themes, icons, and fonts" $(ofn 'qt5ct'))"
printf "%s" "$pkgs"
}
{
local pkgs=""
pkgs="$(checkbox "$_Packages" "$_PackageBody" \
- "steam" "A popular game distribution platform by Valve" $(offon 'steam') \
- "gpick" "Advanced color picker using GTK+ toolkit" $(offon 'gpick') \
- "gcolor2" "A simple GTK+2 color selector" $(offon 'gcolor2') \
- "plank" "An elegant, simple, and clean dock" $(offon 'plank') \
- "docky" "Full fledged dock for opening applications and managing windows" $(offon 'docky') \
- "cairo-dock" "Light eye-candy fully themable animated dock" $(offon 'cairo-dock'))"
+ "steam" "A popular game distribution platform by Valve" $(ofn 'steam') \
+ "gpick" "Advanced color picker using GTK+ toolkit" $(ofn 'gpick') \
+ "gcolor2" "A simple GTK+2 color selector" $(ofn 'gcolor2') \
+ "plank" "An elegant, simple, and clean dock" $(ofn 'plank') \
+ "docky" "Full fledged dock for opening applications and managing windows" $(ofn 'docky') \
+ "cairo-dock" "Light eye-candy fully themable animated dock" $(ofn 'cairo-dock'))"
printf "%s" "$pkgs"
}
-offon()
-{
- [[ $USER_PKGS == *$1* ]] && printf "on" || printf "off"
-}
-
###############################################################################
# partition menus
elif [[ $choice != "$_PartWipe" && $choice != "$_PartAuto" && $choice != "$_PartShowTree" ]]; then
clear; tput cnorm; $choice "$device"; partition "$device"
elif [[ $choice == "$_PartShowTree" ]]; then
- msgbox "$_PrepShowDev" "\n$(lsblk -o NAME,MODEL,TYPE,FSTYPE,SIZE,MOUNTPOINT "$device")\n"
+ msgbox "$_PartTitle" "\n$(lsblk -o NAME,MODEL,TYPE,FSTYPE,SIZE,MOUNTPOINT "$device")\n"
partition "$device"
elif [[ $choice == "$_PartWipe" ]]; then
yesno "$_PartWipe" "$_PartBody1 $device $_PartWipeBody" && wipe -Ifrev $device
"reiserfs" "${FS_CMDS[reiserfs]}")"
fi
[[ $fs ]] || return 1
- if yesno "$_FSTitle" "\nFormat $part as $fs?\n" "Format" "Go Back"; then
+ if yesno "$_FSTitle" "\nFormat $part as $fs?\n"; then
format "$part" "$fs" || return 1
else
select_filesystem "$part" || return 1
if grep -q 'fat' <<< "$(fsck -N "$BOOT_PART")"; then
local msg="$_FormUefiBody $BOOT_PART $_FormUefiBody2"
- if yesno "$_PrepMount" "$msg" "Format $BOOT_PART" "Do Not Format" "no"; then
+ if yesno "$_PrepMount" "$msg" "Format $BOOT_PART" "Skip Formatting" "no"; then
format "$BOOT_PART" "vfat"
sleep 1
fi
###############################################################################
# helper functions
+ofn()
+{
+ [[ $USER_PKGS == *$1* ]] && printf "on" || printf "off"
+}
+
chrun()
{
arch-chroot $MNT /bin/bash -c "$1"
}
json()
-{ # extract a value from http://api.ipstack.com json output
+{
curl -s "http://api.ipstack.com/$2" | python3 -c "import sys, json; print(json.load(sys.stdin)['$1'])"
}
src()
-{ # source file ($1), if it fails we die with an error message
+{
if ! . "$1" 2>/dev/null; then
printf "Failed to source file %s\n" "$1"
die 1
}
is_ssd()
-{ # returns 0 (true) when the device passed ($1) is NOT a rotational device
+{
local i dev=$1
# check for LVM and or LUKS for their origin devices
{
(( $# >= 1 )) && local exitcode=$1 || local exitcode=0
- # reset SIGINT and terminal
trap - INT
tput cnorm
-
if [[ -d $MNT ]] && command cd /; then
umount_dir $MNT
if (( exitcode == 127 )); then
}
sigint()
-{ # used to trap SIGINT (^C) and cleanly exit
- printf "CTRL-C caught\nCleaning up...\n"
+{
+ printf "\n^C caught, cleaning up...\n"
die 1
}
print4()
-{ # takes an arbitrary number of input fields and prints them out in fourths on separate lines
+{
local str="$*"
if [[ $COLUMNS -gt 110 && ${#str} -gt $((COLUMNS - 10)) ]]; then
str="$(awk '{
{
local efidir="/sys/firmware/efi"
- # for virtual machine remove the ucode
if [[ $VM ]]; then
UCODE=""
elif grep -q 'AuthenticAMD' /proc/cpuinfo; then
return 1
fi
fi
- # if we've made it here we likely have a good connection
return 0
}
infobox "$_ErrTitle" "$_Not64Bit\n$_Exit"
die 1
fi
-
- # setup for specific broadcom chips
grep -q 'BCM4352' <<< "$(lspci -vnn -d 14e4:)" && load_bcm
-
- # connect or confirm connection, otherwise bail
net_connect || { infobox "$_ErrTitle" "$_NoNetwork\n$_Exit" 3; die 1; }
}
###############################################################################
# entry point
-# trap Ctrl-C to properly exit
trap sigint INT
for arg in "$@"; do
[[ $arg =~ (--debug|-d) ]] && debug
done
-# initial prep
src /usr/share/archlabs/installer/lang/english.trans
-select_keymap || die 0
system_checks
system_identify
system_devices
msgbox "$_WelTitle $DIST Installer" "$_WelBody"
+select_keymap || die 0
while true; do
main