579 lines
22 KiB
Diff
579 lines
22 KiB
Diff
diff --git a/raspi-config b/raspi-config
|
|
index a640864..0cbf00f 100755
|
|
--- a/raspi-config
|
|
+++ b/raspi-config
|
|
@@ -11,8 +11,8 @@ CONFIG=/boot/config.txt
|
|
USER=${SUDO_USER:-$(who -m | awk '{ print $1 }')}
|
|
|
|
is_pi () {
|
|
- ARCH=$(dpkg --print-architecture)
|
|
- if [ "$ARCH" = "armhf" ] || [ "$ARCH" = "arm64" ] ; then
|
|
+ ARCH=$(arch)
|
|
+ if [ "$ARCH" = "aarch64" ]; then
|
|
return 0
|
|
else
|
|
return 1
|
|
@@ -98,7 +98,7 @@ has_analog() {
|
|
}
|
|
|
|
is_installed() {
|
|
- if [ "$(dpkg -l "$1" 2> /dev/null | tail -n 1 | cut -d ' ' -f 1)" != "ii" ]; then
|
|
+ if [ "$(rpm -qa "$1" 2> /dev/null | wc -l)" == "0" ]; then
|
|
return 1
|
|
else
|
|
return 0
|
|
@@ -141,7 +141,7 @@ get_can_expand() {
|
|
|
|
PART_NUM="$(echo "$ROOT_PART" | grep -o "[[:digit:]]*$")"
|
|
|
|
- if [ "$PART_NUM" -ne 2 ]; then
|
|
+ if [ "$PART_NUM" -ne 3 ]; then
|
|
echo 1
|
|
exit
|
|
fi
|
|
@@ -162,19 +162,30 @@ do_expand_rootfs() {
|
|
|
|
# NOTE: the NOOBS partition layout confuses parted. For now, let's only
|
|
# agree to work with a sufficiently simple partition layout
|
|
- if [ "$PART_NUM" -ne 2 ]; then
|
|
+ if [ "$PART_NUM" -ne 3 ]; then
|
|
whiptail --msgbox "Your partition layout is not currently supported by this tool. You are probably using NOOBS, in which case your root filesystem is already expanded anyway." 20 60 2
|
|
- return 0
|
|
+ return -1
|
|
fi
|
|
|
|
- LAST_PART_NUM=$(parted "$ROOT_DEV" -ms unit s p | tail -n 1 | cut -f 1 -d:)
|
|
+ PART_INFO=$(parted "$ROOT_DEV" -ms unit s p)
|
|
+
|
|
+ LAST_PART_NUM=$(echo "$PART_INFO" | tail -n 1 | cut -f 1 -d:)
|
|
if [ $LAST_PART_NUM -ne $PART_NUM ]; then
|
|
whiptail --msgbox "$ROOT_PART is not the last partition. Don't know how to expand" 20 60 2
|
|
- return 0
|
|
+ return -1
|
|
+ fi
|
|
+
|
|
+ PART_END=$(echo "$PART_INFO" | grep "^${PART_NUM}" | cut -f 3 -d: | sed 's/[^0-9]//g')
|
|
+ ROOT_END=$(echo "$PART_INFO" | grep "^/dev"| cut -f 2 -d: | sed 's/[^0-9]//g')
|
|
+ ((ROOT_END--)) # 31116287
|
|
+
|
|
+ if [ $PART_END -eq $ROOT_END ]; then
|
|
+ whiptail --msgbox "$ROOT_PART has been expanded!" 20 60 2
|
|
+ return 2
|
|
fi
|
|
|
|
# Get the starting offset of the root partition
|
|
- PART_START=$(parted "$ROOT_DEV" -ms unit s p | grep "^${PART_NUM}" | cut -f 2 -d: | sed 's/[^0-9]//g')
|
|
+ PART_START=$(echo "$PART_INFO" | grep "^${PART_NUM}" | cut -f 2 -d: | sed 's/[^0-9]//g')
|
|
[ "$PART_START" ] || return 1
|
|
# Return value will likely be error for fdisk as it fails to reload the
|
|
# partition table because the root fs is mounted
|
|
@@ -190,6 +201,15 @@ $PART_START
|
|
p
|
|
w
|
|
EOF
|
|
+ resize2fs $ROOT_PART
|
|
+ if [ $? -eq 0 ]; then
|
|
+ whiptail --msgbox "Root partition has been expanded successfully." 20 60 2
|
|
+ return 0
|
|
+ else
|
|
+ whiptail --msgbox "Fail to expand the root partition.\n\nPlease try again or reboot!" 20 60 2
|
|
+ return -1
|
|
+ fi
|
|
+
|
|
ASK_TO_REBOOT=1
|
|
|
|
# now set up an init.d script
|
|
@@ -226,6 +246,7 @@ EOF
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
whiptail --msgbox "Root partition has been resized.\nThe filesystem will be enlarged upon the next reboot" 20 60 2
|
|
fi
|
|
+ return 0
|
|
}
|
|
|
|
set_config_var() {
|
|
@@ -342,8 +363,9 @@ do_blanking() {
|
|
CURRENT=1
|
|
fi
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
- if [ "$(dpkg -l xscreensaver | tail -n 1 | cut -d ' ' -f 1)" = "ii" ]; then
|
|
- whiptail --msgbox "Warning: xscreensaver is installed may override raspi-config settings" 20 60 2
|
|
+ screensaver=$(rpm -qa *saver*)
|
|
+ if [ ! -z "$screensaver" ] ; then
|
|
+ whiptail --msgbox "Warning: $screensaver is installed may override raspi-config settings" 20 60 2
|
|
fi
|
|
whiptail --yesno "Would you like to enable screen blanking?" $DEFAULT 20 60 2
|
|
RET=$?
|
|
@@ -617,16 +639,16 @@ do_memory_split() { # Memory Split
|
|
if [ -e /boot/start_cd.elf ]; then
|
|
# New-style memory split setting
|
|
## get current memory split from /boot/config.txt
|
|
- arm=$(vcgencmd get_mem arm | cut -d '=' -f 2 | cut -d 'M' -f 1)
|
|
- gpu=$(vcgencmd get_mem gpu | cut -d '=' -f 2 | cut -d 'M' -f 1)
|
|
- tot=$(($arm+$gpu))
|
|
- if [ $tot -gt 512 ]; then
|
|
- CUR_GPU_MEM=$(get_config_var gpu_mem_1024 $CONFIG)
|
|
- elif [ $tot -gt 256 ]; then
|
|
- CUR_GPU_MEM=$(get_config_var gpu_mem_512 $CONFIG)
|
|
- else
|
|
- CUR_GPU_MEM=$(get_config_var gpu_mem_256 $CONFIG)
|
|
- fi
|
|
+ # arm=$(vcgencmd get_mem arm | cut -d '=' -f 2 | cut -d 'M' -f 1)
|
|
+ # gpu=$(vcgencmd get_mem gpu | cut -d '=' -f 2 | cut -d 'M' -f 1)
|
|
+ # tot=$(($arm+$gpu))
|
|
+ # if [ $tot -gt 512 ]; then
|
|
+ # CUR_GPU_MEM=$(get_config_var gpu_mem_1024 $CONFIG)
|
|
+ # elif [ $tot -gt 256 ]; then
|
|
+ # CUR_GPU_MEM=$(get_config_var gpu_mem_512 $CONFIG)
|
|
+ # else
|
|
+ # CUR_GPU_MEM=$(get_config_var gpu_mem_256 $CONFIG)
|
|
+ # fi
|
|
if [ -z "$CUR_GPU_MEM" ] || [ $CUR_GPU_MEM = "0" ]; then
|
|
CUR_GPU_MEM=$(get_config_var gpu_mem $CONFIG)
|
|
fi
|
|
@@ -765,7 +787,7 @@ clear_overclock () {
|
|
}
|
|
|
|
get_ssh() {
|
|
- if service ssh status | grep -q inactive; then
|
|
+ if systemctl status sshd.service | grep -q inactive; then
|
|
echo 1
|
|
else
|
|
echo 0
|
|
@@ -791,12 +813,12 @@ do_ssh() {
|
|
fi
|
|
if [ $RET -eq 0 ]; then
|
|
ssh-keygen -A &&
|
|
- update-rc.d ssh enable &&
|
|
- invoke-rc.d ssh start &&
|
|
+ systemctl enable sshd.service &&
|
|
+ systemctl start sshd.service &&
|
|
STATUS=enabled
|
|
elif [ $RET -eq 1 ]; then
|
|
- update-rc.d ssh disable &&
|
|
- invoke-rc.d ssh stop &&
|
|
+ systemctl disable sshd.service &&
|
|
+ systemctl stop sshd.service &&
|
|
STATUS=disabled
|
|
else
|
|
return $RET
|
|
@@ -807,7 +829,7 @@ do_ssh() {
|
|
}
|
|
|
|
get_vnc() {
|
|
- if systemctl status vncserver-x11-serviced.service | grep -q -w active; then
|
|
+ if systemctl status vncserver@1.service | grep -q -w active; then
|
|
echo 0
|
|
else
|
|
echo 1
|
|
@@ -826,24 +848,54 @@ do_vnc() {
|
|
RET=$1
|
|
fi
|
|
if [ $RET -eq 0 ]; then
|
|
- if is_installed realvnc-vnc-server || apt-get install realvnc-vnc-server; then
|
|
- systemctl enable vncserver-x11-serviced.service &&
|
|
- systemctl start vncserver-x11-serviced.service &&
|
|
+ if is_installed tigervnc-server || dnf install -y tigervnc-server; then
|
|
+ if [ ! -f /etc/systemd/system/vncserver@.service ]; then
|
|
+ cat > /etc/systemd/system/vncserver\@.service << EOF
|
|
+[Unit]
|
|
+Description=Remote desktop service (VNC)
|
|
+After=syslog.target network.target
|
|
+
|
|
+[Service]
|
|
+Type=forking
|
|
+WorkingDirectory=/home/pi
|
|
+User=pi
|
|
+Group=pi
|
|
+
|
|
+PIDFile=/home/pi/.vnc/%H:%i.pid
|
|
+
|
|
+ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :'
|
|
+ExecStart=/usr/bin/vncserver :%i
|
|
+ExecStop=/usr/bin/vncserver -kill :%i
|
|
+
|
|
+Restart=on-success
|
|
+RestartSec=15
|
|
+
|
|
+[Install]
|
|
+WantedBy=multi-user.target
|
|
+EOF
|
|
+ fi
|
|
+ systemctl enable vncserver@1 &&
|
|
+ systemctl start vncserver@1 &&
|
|
STATUS=enabled
|
|
else
|
|
return 1
|
|
fi
|
|
elif [ $RET -eq 1 ]; then
|
|
- if is_installed realvnc-vnc-server; then
|
|
- systemctl disable vncserver-x11-serviced.service
|
|
- systemctl stop vncserver-x11-serviced.service
|
|
+ if is_installed tigervnc-server; then
|
|
+ systemctl disable vncserver@1
|
|
+ systemctl stop vncserver@1
|
|
fi
|
|
STATUS=disabled
|
|
else
|
|
return $RET
|
|
fi
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
- whiptail --msgbox "The VNC Server is $STATUS" 20 60 1
|
|
+ if [ -z $STATUS ]; then
|
|
+ whiptail --msgbox "Fail to start the VNC Server, please configure it manually!" 20 60 1
|
|
+ return 1
|
|
+ else
|
|
+ whiptail --msgbox "The VNC Server is $STATUS" 20 60 1
|
|
+ fi
|
|
fi
|
|
}
|
|
|
|
@@ -857,8 +909,10 @@ get_spi() {
|
|
|
|
do_spi() {
|
|
DEFAULT=--defaultno
|
|
+ CURRENT=0
|
|
if [ $(get_spi) -eq 0 ]; then
|
|
DEFAULT=
|
|
+ CURRENT=1
|
|
fi
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
whiptail --yesno "Would you like the SPI interface to be enabled?" $DEFAULT 20 60 2
|
|
@@ -866,6 +920,9 @@ do_spi() {
|
|
else
|
|
RET=$1
|
|
fi
|
|
+ if [ $RET -eq $CURRENT ]; then
|
|
+ ASK_TO_REBOOT=1
|
|
+ fi
|
|
if [ $RET -eq 0 ]; then
|
|
SETTING=on
|
|
STATUS=enabled
|
|
@@ -881,7 +938,7 @@ do_spi() {
|
|
touch $BLACKLIST
|
|
fi
|
|
sed $BLACKLIST -i -e "s/^\(blacklist[[:space:]]*spi[-_]bcm2708\)/#\1/"
|
|
- dtparam spi=$SETTING
|
|
+ #dtparam spi=$SETTING
|
|
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
whiptail --msgbox "The SPI interface is $STATUS" 20 60 1
|
|
@@ -898,8 +955,10 @@ get_i2c() {
|
|
|
|
do_i2c() {
|
|
DEFAULT=--defaultno
|
|
+ CURRENT=0
|
|
if [ $(get_i2c) -eq 0 ]; then
|
|
DEFAULT=
|
|
+ CURRENT=1
|
|
fi
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
whiptail --yesno "Would you like the ARM I2C interface to be enabled?" $DEFAULT 20 60 2
|
|
@@ -907,6 +966,9 @@ do_i2c() {
|
|
else
|
|
RET=$1
|
|
fi
|
|
+ if [ $RET -eq $CURRENT ]; then
|
|
+ ASK_TO_REBOOT=1
|
|
+ fi
|
|
if [ $RET -eq 0 ]; then
|
|
SETTING=on
|
|
STATUS=enabled
|
|
@@ -926,7 +988,7 @@ do_i2c() {
|
|
if ! grep -q "^i2c[-_]dev" /etc/modules; then
|
|
printf "i2c-dev\n" >> /etc/modules
|
|
fi
|
|
- dtparam i2c_arm=$SETTING
|
|
+ #dtparam i2c_arm=$SETTING
|
|
modprobe i2c-dev
|
|
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
@@ -1313,6 +1375,9 @@ do_boot_behaviour() {
|
|
B2*)
|
|
systemctl set-default multi-user.target
|
|
ln -fs /lib/systemd/system/getty@.service /etc/systemd/system/getty.target.wants/getty@tty1.service
|
|
+ if [ ! -d /etc/systemd/system/getty@tty1.service.d ]; then
|
|
+ mkdir /etc/systemd/system/getty@tty1.service.d
|
|
+ fi
|
|
cat > /etc/systemd/system/getty@tty1.service.d/autologin.conf << EOF
|
|
[Service]
|
|
ExecStart=
|
|
@@ -1320,21 +1385,24 @@ ExecStart=-/sbin/agetty --autologin $USER --noclear %I \$TERM
|
|
EOF
|
|
;;
|
|
B3*)
|
|
- if [ -e /etc/init.d/lightdm ]; then
|
|
+ if [ -e /etc/lightdm ]; then
|
|
systemctl set-default graphical.target
|
|
ln -fs /lib/systemd/system/getty@.service /etc/systemd/system/getty.target.wants/getty@tty1.service
|
|
rm /etc/systemd/system/getty@tty1.service.d/autologin.conf
|
|
sed /etc/lightdm/lightdm.conf -i -e "s/^autologin-user=.*/#autologin-user=/"
|
|
disable_raspi_config_at_boot
|
|
else
|
|
- whiptail --msgbox "Do 'sudo apt-get install lightdm' to allow configuration of boot to desktop" 20 60 2
|
|
+ whiptail --msgbox "Do 'sudo dnf install lightdm' to allow configuration of boot to desktop" 20 60 2
|
|
return 1
|
|
fi
|
|
;;
|
|
B4*)
|
|
- if [ -e /etc/init.d/lightdm ]; then
|
|
+ if [ -e /etc/lightdm ]; then
|
|
systemctl set-default graphical.target
|
|
ln -fs /lib/systemd/system/getty@.service /etc/systemd/system/getty.target.wants/getty@tty1.service
|
|
+ if [ ! -d /etc/systemd/system/getty@tty1.service.d ]; then
|
|
+ mkdir /etc/systemd/system/getty@tty1.service.d
|
|
+ fi
|
|
cat > /etc/systemd/system/getty@tty1.service.d/autologin.conf << EOF
|
|
[Service]
|
|
ExecStart=
|
|
@@ -1343,7 +1411,7 @@ EOF
|
|
sed /etc/lightdm/lightdm.conf -i -e "s/^\(#\|\)autologin-user=.*/autologin-user=$USER/"
|
|
disable_raspi_config_at_boot
|
|
else
|
|
- whiptail --msgbox "Do 'sudo apt-get install lightdm' to allow configuration of boot to desktop" 20 60 2
|
|
+ whiptail --msgbox "Do 'sudo dnf install lightdm' to allow configuration of boot to desktop" 20 60 2
|
|
return 1
|
|
fi
|
|
;;
|
|
@@ -1733,19 +1801,19 @@ do_onewire() {
|
|
}
|
|
|
|
do_gldriver() {
|
|
- if [ ! -e /boot/overlays/vc4-kms-v3d.dtbo ]; then
|
|
- whiptail --msgbox "Driver and kernel not present on your system. Please update" 20 60 2
|
|
- return 1
|
|
- fi
|
|
- for package in gldriver-test libgl1-mesa-dri; do
|
|
- if [ "$(dpkg -l "$package" 2> /dev/null | tail -n 1 | cut -d ' ' -f 1)" != "ii" ]; then
|
|
- missing_packages="$package $missing_packages"
|
|
- fi
|
|
- done
|
|
- if [ -n "$missing_packages" ] && ! apt-get install $missing_packages; then
|
|
- whiptail --msgbox "Required packages not found, please install: ${missing_packages}" 20 60 2
|
|
- return 1
|
|
- fi
|
|
+# if [ ! -e /boot/overlays/vc4-kms-v3d.dtbo ]; then
|
|
+# whiptail --msgbox "Driver and kernel not present on your system. Please update" 20 60 2
|
|
+# return 1
|
|
+# fi
|
|
+# for package in gldriver-test libgl1-mesa-dri; do
|
|
+# if [ "$(dpkg -l "$package" 2> /dev/null | tail -n 1 | cut -d ' ' -f 1)" != "ii" ]; then
|
|
+# missing_packages="$package $missing_packages"
|
|
+# fi
|
|
+# done
|
|
+# if [ -n "$missing_packages" ] && ! apt-get install $missing_packages; then
|
|
+# whiptail --msgbox "Required packages not found, please install: ${missing_packages}" 20 60 2
|
|
+# return 1
|
|
+# fi
|
|
if is_pifour ; then
|
|
GLOPT=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --menu "GL Driver" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT \
|
|
"G1 Legacy" "Original non-GL desktop driver" \
|
|
@@ -1895,8 +1963,8 @@ do_net_names () {
|
|
}
|
|
|
|
do_update() {
|
|
- apt-get update &&
|
|
- apt-get install raspi-config &&
|
|
+ dnf update &&
|
|
+ dnf install raspi-config -y &&
|
|
printf "Sleeping 5 seconds before reloading raspi-config\n" &&
|
|
sleep 5 &&
|
|
exec raspi-config
|
|
@@ -2070,6 +2138,63 @@ list_wlan_interfaces() {
|
|
done
|
|
}
|
|
|
|
+do_wifi_ssid_passphrase_nmcli() {
|
|
+ IFACE_LIST="$(list_wlan_interfaces)"
|
|
+ IFACE="$(echo "$IFACE_LIST" | head -n 1)"
|
|
+
|
|
+ if [ -z "$IFACE" ]; then
|
|
+ if [ "$INTERACTIVE" = True ]; then
|
|
+ whiptail --msgbox "No wireless interface found" 20 60
|
|
+ fi
|
|
+ return 1
|
|
+ fi
|
|
+
|
|
+ SSID="$1"
|
|
+ while [ -z "$SSID" ] && [ "$INTERACTIVE" = True ]; do
|
|
+ SSID=$(whiptail --inputbox "Please enter SSID" 20 60 3>&1 1>&2 2>&3)
|
|
+ if [ $? -ne 0 ]; then
|
|
+ return 0
|
|
+ elif [ -z "$SSID" ]; then
|
|
+ whiptail --msgbox "SSID cannot be empty. Please try again." 20 60
|
|
+ fi
|
|
+ done
|
|
+
|
|
+ PASSPHRASE="$2"
|
|
+ while [ "$INTERACTIVE" = True ]; do
|
|
+ PASSPHRASE=$(whiptail --passwordbox "Please enter passphrase. Leave it empty if none." 20 60 3>&1 1>&2 2>&3)
|
|
+ if [ $? -ne 0 ]; then
|
|
+ return 0
|
|
+ else
|
|
+ break
|
|
+ fi
|
|
+ done
|
|
+
|
|
+ # Escape special characters for embedding in regex below
|
|
+ local ssid="$(echo "$SSID" \
|
|
+ | sed 's;\\;\\\\;g' \
|
|
+ | sed -e 's;\.;\\\.;g' \
|
|
+ -e 's;\*;\\\*;g' \
|
|
+ -e 's;\+;\\\+;g' \
|
|
+ -e 's;\?;\\\?;g' \
|
|
+ -e 's;\^;\\\^;g' \
|
|
+ -e 's;\$;\\\$;g' \
|
|
+ -e 's;\/;\\\/;g' \
|
|
+ -e 's;\[;\\\[;g' \
|
|
+ -e 's;\];\\\];g' \
|
|
+ -e 's;{;\\{;g' \
|
|
+ -e 's;};\\};g' \
|
|
+ -e 's;(;\\(;g' \
|
|
+ -e 's;);\\);g' \
|
|
+ -e 's;";\\\\\";g')"
|
|
+
|
|
+ nmcli dev wifi connect "$SSID" password "$PASSPHRASE"
|
|
+ RET=$?
|
|
+ if [ $RET -ne 0 ] ; then
|
|
+ whiptail --msgbox "Connect to $SSID failed, try nmtui." 20 60
|
|
+ fi
|
|
+ return $RET
|
|
+}
|
|
+
|
|
do_wifi_ssid_passphrase() {
|
|
RET=0
|
|
IFACE_LIST="$(list_wlan_interfaces)"
|
|
@@ -2542,8 +2667,8 @@ do_proxy() {
|
|
sed -i "/^export ${SCHEME}_/Id" /etc/profile.d/proxy.sh
|
|
fi
|
|
if [ "${SCHEME#*http}" != "$SCHEME" ]; then
|
|
- if [ -f /etc/apt/apt.conf.d/01proxy ]; then
|
|
- sed -i "/::${SCHEME}::Proxy/d" /etc/apt/apt.conf.d/01proxy
|
|
+ if [ -f /etc/yum.conf ]; then
|
|
+ sed -i "/^proxy/Id" /etc/yum.conf
|
|
fi
|
|
fi
|
|
if [ -z "$ADDRESS" ]; then
|
|
@@ -2557,7 +2682,7 @@ do_proxy() {
|
|
echo "export ${SCHEME}_proxy=\"$ADDRESS\"" >> /etc/profile.d/proxy.sh
|
|
fi
|
|
if [ "${SCHEME#*http}" != "$SCHEME" ]; then
|
|
- echo "Acquire::$SCHEME::Proxy \"$ADDRESS\";" >> /etc/apt/apt.conf.d/01proxy
|
|
+ echo "proxy=\"$ADDRESS\"" >> /etc/yum.conf
|
|
fi
|
|
done
|
|
if [ "$INTERACTIVE" = True ]; then
|
|
@@ -2588,7 +2713,9 @@ do
|
|
--expand-rootfs)
|
|
INTERACTIVE=False
|
|
do_expand_rootfs
|
|
- printf "Please reboot\n"
|
|
+ if [ $? -eq 0 ]; then
|
|
+ printf "Please reboot\n"
|
|
+ fi
|
|
exit 0
|
|
;;
|
|
--apply-os-config)
|
|
@@ -2634,8 +2761,8 @@ do_system_menu() {
|
|
"S3 Password" "Change password for the '$USER' user" \
|
|
"S4 Hostname" "Set name for this computer on a network" \
|
|
"S5 Boot / Auto Login" "Select boot into desktop or to command line" \
|
|
- "S6 Network at Boot" "Select wait for network connection on boot" \
|
|
- "S7 Splash Screen" "Choose graphical splash screen or text boot" \
|
|
+ `# "S6 Network at Boot" "Select wait for network connection on boot"` \
|
|
+ `# "S7 Splash Screen" "Choose graphical splash screen or text boot"` \
|
|
"S8 Power LED" "Set behaviour of power LED" \
|
|
3>&1 1>&2 2>&3)
|
|
elif is_live ; then
|
|
@@ -2661,7 +2788,7 @@ do_system_menu() {
|
|
return 0
|
|
elif [ $RET -eq 0 ]; then
|
|
case "$FUN" in
|
|
- S1\ *) do_wifi_ssid_passphrase ;;
|
|
+ S1\ *) do_wifi_ssid_passphrase_nmcli ;;
|
|
S2\ *) do_audio ;;
|
|
S3\ *) do_change_pass ;;
|
|
S4\ *) do_hostname ;;
|
|
@@ -2677,7 +2804,7 @@ do_system_menu() {
|
|
do_display_menu() {
|
|
if is_pi ; then
|
|
FUN=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --menu "Display Options" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT --cancel-button Back --ok-button Select \
|
|
- "D1 Resolution" "Set a specific screen resolution" \
|
|
+ `# "D1 Resolution" "Set a specific screen resolution"` \
|
|
"D2 Underscan" "Remove black border around screen" \
|
|
"D3 Pixel Doubling" "Enable/disable 2x2 pixel mapping" \
|
|
"D4 Screen Blanking" "Enable/disable screen blanking" \
|
|
@@ -2707,7 +2834,7 @@ do_interface_menu() {
|
|
FUN=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --menu "Interfacing Options" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT --cancel-button Back --ok-button Select \
|
|
"P1 Camera" "Enable/disable connection to the Raspberry Pi Camera" \
|
|
"P2 SSH" "Enable/disable remote command line access using SSH" \
|
|
- "P3 VNC" "Enable/disable graphical remote access using RealVNC" \
|
|
+ "P3 VNC" "Enable/disable graphical remote access using TigerVNC" \
|
|
"P4 SPI" "Enable/disable automatic loading of SPI kernel module" \
|
|
"P5 I2C" "Enable/disable automatic loading of I2C kernel module" \
|
|
"P6 Serial Port" "Enable/disable shell messages on the serial connection" \
|
|
@@ -2741,7 +2868,7 @@ do_performance_menu() {
|
|
FUN=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --menu "Performance Options" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT --cancel-button Back --ok-button Select \
|
|
"P1 Overclock" "Configure CPU overclocking" \
|
|
"P2 GPU Memory" "Change the amount of memory made available to the GPU" \
|
|
- "P3 Overlay File System" "Enable/disable read-only file system" \
|
|
+ `# "P3 Overlay File System" "Enable/disable read-only file system"` \
|
|
"P4 Fan" "Set behaviour of GPIO fan" \
|
|
3>&1 1>&2 2>&3)
|
|
RET=$?
|
|
@@ -2783,19 +2910,19 @@ do_advanced_menu() {
|
|
if is_pifour ; then
|
|
FUN=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --menu "Advanced Options" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT --cancel-button Back --ok-button Select \
|
|
"A1 Expand Filesystem" "Ensures that all of the SD card is available" \
|
|
- "A2 GL Driver" "Enable/disable experimental desktop GL driver" \
|
|
- "A3 Compositor" "Enable/disable xcompmgr composition manager" \
|
|
+ `# "A2 GL Driver" "Enable/disable experimental desktop GL driver"` \
|
|
+ `# "A3 Compositor" "Enable/disable xcompmgr composition manager"` \
|
|
"A4 Network Interface Names" "Enable/disable predictable network i/f names" \
|
|
"A5 Network Proxy Settings" "Configure network proxy settings" \
|
|
- "A6 Boot Order" "Choose network or USB device boot" \
|
|
- "A7 Bootloader Version" "Select latest or default boot ROM software" \
|
|
+ `# "A6 Boot Order" "Choose network or USB device boot"` \
|
|
+ `# "A7 Bootloader Version" "Select latest or default boot ROM software"` \
|
|
"A8 HDMI / Composite" "Raspberry Pi 4 video output options" \
|
|
3>&1 1>&2 2>&3)
|
|
elif is_pi ; then
|
|
FUN=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --menu "Advanced Options" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT --cancel-button Back --ok-button Select \
|
|
"A1 Expand Filesystem" "Ensures that all of the SD card is available" \
|
|
- "A2 GL Driver" "Enable/disable experimental desktop GL driver" \
|
|
- "A3 Compositor" "Enable/disable xcompmgr composition manager" \
|
|
+ `# "A2 GL Driver" "Enable/disable experimental desktop GL driver"` \
|
|
+ `# "A3 Compositor" "Enable/disable xcompmgr composition manager"` \
|
|
"A4 Network Interface Names" "Enable/disable predictable network i/f names" \
|
|
"A5 Network Proxy Settings" "Configure network proxy settings" \
|
|
3>&1 1>&2 2>&3)
|
|
@@ -2819,7 +2946,7 @@ do_advanced_menu() {
|
|
A7\ *) do_boot_rom ;;
|
|
A8\ *) do_pi4video ;;
|
|
*) whiptail --msgbox "Programmer error: unrecognized option" 20 60 1 ;;
|
|
- esac || whiptail --msgbox "There was an error running option $FUN" 20 60 1
|
|
+ esac || [ $? -eq 2 ] || whiptail --msgbox "There was an error running option $FUN" 20 60 1
|
|
fi
|
|
}
|
|
|
|
@@ -2856,17 +2983,17 @@ if [ "$INTERACTIVE" = True ]; then
|
|
calc_wt_size
|
|
while [ "$USER" = "root" ] || [ -z "$USER" ]; do
|
|
if ! USER=$(whiptail --inputbox "raspi-config could not determine the default user.\\n\\nWhat user should these settings apply to?" 20 60 pi 3>&1 1>&2 2>&3); then
|
|
- return 0
|
|
+ exit 0
|
|
fi
|
|
done
|
|
while true; do
|
|
if is_pi ; then
|
|
- FUN=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --backtitle "$(cat /proc/device-tree/model)" --menu "Setup Options" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT --cancel-button Finish --ok-button Select \
|
|
+ FUN=$(whiptail --title "Raspberry Pi Software Configuration Tool (raspi-config)" --backtitle "$(tr -d '\0' < /proc/device-tree/model)" --menu "Setup Options" $WT_HEIGHT $WT_WIDTH $WT_MENU_HEIGHT --cancel-button Finish --ok-button Select \
|
|
"1 System Options" "Configure system settings" \
|
|
"2 Display Options" "Configure display settings" \
|
|
"3 Interface Options" "Configure connections to peripherals" \
|
|
"4 Performance Options" "Configure performance settings" \
|
|
- "5 Localisation Options" "Configure language and regional settings" \
|
|
+ `# "5 Localisation Options" "Configure language and regional settings"` \
|
|
"6 Advanced Options" "Configure advanced settings" \
|
|
"8 Update" "Update this tool to the latest version" \
|
|
"9 About raspi-config" "Information about this configuration tool" \
|