Hello, This is fixed locally. Changes: The user can execute first either the target or the source step. The installer refuses to execute twice one of these steps with a warning, then go back to the main menu. After execution of one of these steps, if the other one has already been executed go to the installation step, else go back to the main menu. What has not changed: Installation is allowed only if both the source and target steps have been executed. Configuration is allowed only if the system has been installed, as per your previous remark. As an aside, this does not preclude executing the configuration step on a system installed long ago, if the root partition has been mounted during the target step. I attach the modified setup file. Greetings, Didier PS I am still eager of feedback on RC2 and ideas about Aiyumi's issue of no sound on the desktop Le 20/11/2017 à 21:01, Didier Spaier a écrit : > Hello, > > Found a fix, will test it now, thanks Peter. > > Greetings, > > Didier > > Le 20/11/2017 à 16:27, Peter Vágner a écrit : >> Hello, >> >> I have just found out yetanother installer veirdness. >> Installer is designed in a way so steps should be executed in almost the >> same order like the menu items are ordered on the initial screen. >> Keyboard layout, partitioning, relaunching the setup, setting target device >> including fstab, source media selection and finally the actual install. >> I have just found when you execute source media selection before target >> device selection the installer will force the source media selection step >> eventhough it has already been passed. Subsequent executions of source >> media selection will fail thus it is necessery to exit the setup and start >> it again. >> >> I know it sounds as if I was too picky however frankly I don't care that >> much, I just wish to make sure it's known eventhough this is a minor >> cosmetic issue. >> >> >> Greetings >> >> Peter >> >> >> 2017-11-11 20:21 GMT+01:00 Didier Spaier <didier@xxxxxxxx>: >> >>> Le 11/11/2017 à 14:07, Didier Spaier a écrit : >>>> Slint 14.2.1rc2, last call for testing. >>>> >>>> Last call means "all bug reports and comments posted before Monday 18 >>>> November 2017 will be looked at before the official release." >>> Please read instead: >>> "before Monday 20 November 2017" >>> >>> Didier >>> _______________________________________________ >>> orca-list mailing list >>> orca-list@xxxxxxxxx >>> https://mail.gnome.org/mailman/listinfo/orca-list >>> Orca wiki: https://wiki.gnome.org/Projects/Orca >>> Orca documentation: https://help.gnome.org/users/orca/stable/ >>> GNOME Universal Access guide: https://help.gnome.org/users/ >>> gnome-help/stable/a11y.html >>> Log bugs and feature requests at http://bugzilla.gnome.org >>> >> > _______________________________________________ > orca-list mailing list > orca-list@xxxxxxxxx > https://mail.gnome.org/mailman/listinfo/orca-list > Orca wiki: https://wiki.gnome.org/Projects/Orca > Orca documentation: https://help.gnome.org/users/orca/stable/ > GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html > Log bugs and feature requests at http://bugzilla.gnome.org >
#!/bin/sh # # Copyright 1993,1994,1999 Patrick Volkerding, Moorhead, Minnesota USA # Copyright 2001, 2003, 2004 Slackware Linux, Inc., Concord, CA # Copyright 2006, 2007 Patrick Volkerding, Sebeka, Minnesota USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is # permitted provided that the following conditions are met: # # 1. Redistributions of this script must retain the above copyright # notice, this list of conditions and the following disclaimer. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # Modified by Didier Spaier didier~at~slint~dot~fr for Slint. # export TEXTDOMAIN=slint . gettext.sh . /usr/lib/setup/SeTlocales if [ -f /tmp/.SlintInstallationLANG ]; then LANG=$(</tmp/.SlintInstallationLANG) ll_TT=${LANG%.*} SeTFonts PutFonts fi TMP=/var/log/setup/tmp if [ ! -d $TMP ]; then mkdir -p $TMP fi # Use /tmp on floppy for now: /usr/lib/setup/unmigrate.sh rm -f $TMP/SeT* # If a keymap was set up, restore that data: if [ -r $TMP/Pkeymap ]; then cp $TMP/Pkeymap $TMP/SeTkeymap fi echo "on" > $TMP/SeTcolor # turn on color menus PATH="$PATH:/usr/lib/setup" export PATH; export COLOR=on #echo #echo #echo "Probing disk partitions. (Hint: if your ATAPI CD-ROM causes timeouts" #echo "during the probe process, try hitting the eject button)" #echo #sleep 5 # # Before probing, activate any LVM partitions # that may exist from before the boot: vgchange -ay 1> /dev/null 2> /dev/null if probe -l 2> /dev/null | grep -E 'Linux$' 1> /dev/null 2> /dev/null ; then probe -l 2> /dev/null | grep -E 'Linux$' | sort 1> $TMP/SeTplist 2> /dev/null else dialog --title "`gettext "NO LINUX PARTITIONS DETECTED"`" \ --msgbox "`gettext "There don't seem to be any partitions on this \ machine of type Linux. You'll need to make at least one of these to \ install Linux. To do this, you'll need to leave 'setup', and make the \ partitions using 'cfdisk' (MBR partitions) or 'cgdisk' (GPT partitions). \ For more information, read the 'setup' help file from the next menu."`" 10 80 fi if [ -d /sys/firmware/efi ]; then if ! probe -l 2> /dev/null | grep "EFI System Partition" 1> /dev/null 2> /dev/null ; then dialog --title "`gettext "NO EFI SYSTEM PARTITION DETECTED"`" \ --msgbox "`gettext "This machine appears to be using EFI/UEFI, but no EFI System \ Partition was found. You'll need to make an EFI System Partition in order \ to boot from the hard drive. To do this, leave 'setup', and \ use 'cgdisk' to make a 100MB partition of type EF00. For more information, \ read the 'setup' help file from the next menu."`" 10 80 fi fi T_PX="/mnt" echo "$T_PX" > $TMP/SeTT_PX ROOT_DEVICE="`mount | grep "on / " | cut -f 1 -d ' '`" echo "$ROOT_DEVICE" > $TMP/SeTrootdev if mount | grep /var/log/mount 1> /dev/null 2> /dev/null ; then # clear source umount /var/log/mount # location fi # Anything mounted on /var/log/mount now is a fatal error: if mount | grep /var/log/mount 1> /dev/null 2> /dev/null ; then gettext "Can't umount /var/log/mount. Reboot machine and run setup again." echo exit fi # If the mount table is corrupt, the above might not do it, so we will # try to detect Linux and FAT32 partitions that have slipped by: if [ -d /var/log/mount/lost+found -o -d /var/log/mount/recycled \ -o -r /var/log/mount/io.sys ]; then gettext "Mount table corrupt. Reboot machine and run setup again." echo exit fi rm -f /var/log/mount 2> /dev/null rmdir /var/log/mount 2> /dev/null mkdir /var/log/mount 2> /dev/null while [ 0 ]; do if [ -r $TMP/Pkeymap ]; then DefaultKeyMap="`cat $TMP/Pkeymap`" fi Version=14.2 dialog --visit-items --title "`eval_gettext "Slint Linux Setup (version \\\${Version})"`" \ --menu \ "`gettext "Welcome to Slint Linux Setup. Select an option below using the UP/DOWN keys and SPACE or ENTER. Alternate keys may also be used: '+', '-', and TAB."`" 0 0 0 \ "HELP" "`gettext "Read the Slint Setup HELP file"`" \ "KEYMAP" "`eval_gettext "Remap your keyboard (other than \\\$DefaultKeyMap)"`" \ "ADDSWAP" "`gettext "Set up your swap partition(s)"`" \ "TARGET" "`gettext "Set up your target partitions"`" \ "SOURCE" "`gettext "Select source media"`" \ "INSTALL" "`gettext "Install selected software"`" \ "CONFIGURE" "`gettext "Reconfigure your Linux system"`" \ "EXIT" "`gettext "Exit Slint Linux Setup"`" 2> $TMP/hdset if [ ! $? = 0 ]; then rm -f $TMP/hdset $TMP/SeT* exit fi MAINSELECT="`cat $TMP/hdset`" rm $TMP/hdset # Start checking what to do. Some modules may reset MAINSELECT to run the # next item in line. if [ "$MAINSELECT" = "HELP" ]; then SeTfdHELP fi if [ "$MAINSELECT" = "KEYMAP" ]; then SeTkeymap if [ -r $TMP/SeTkeymap ]; then MAINSELECT="ADDSWAP" fi fi if [ "$MAINSELECT" = "ADDSWAP" ]; then SeTswap if [ -r $TMP/SeTswap ]; then MAINSELECT="TARGET" elif [ -r $TMP/SeTswapskip ]; then # Go ahead to TARGET without swap space: MAINSELECT="TARGET" fi fi if [ "$MAINSELECT" = "TARGET" ]; then if [ -r $TMP/SeTnative ]; then dialog --title "`gettext "TARGET PARTITIONS ALREADY CONFIGURED"`" --msgbox "`gettext " You have already configured the target partitions, where the system will be installed. Press ENTER to return to the main menu."`" 0 0 continue fi SeTpartitions SeTEFI SeTDOS if [ -r $TMP/SeTnative ]; then if [ ! -r $TMP/SeTsource ]; then MAINSELECT="SOURCE" else MAINSELECT="INSTALL" fi fi fi if [ "$MAINSELECT" = "SOURCE" ]; then if [ -r $TMP/SeTsource ]; then dialog --title "`gettext "SOURCE OF PACKAGES ALREADY CHOSEN"`" --msgbox "`gettext " You have already chosen the source of packages. Press ENTER to return to the main menu."`" 0 0 continue fi SeTmedia if [ -r $TMP/SeTsource ]; then INSTALL_PATH=$(<$TMP/SeTDS) SLINTVERSION=$(sed -n "s/Slint version: //p" /.target) SFX=$(sed -n "s/System: //p" /.target) if [ ! -f $INSTALL_PATH/slint/DONOTREMOVEME.TXT ] || \ ! grep "^Slint version: ${SLINTVERSION}$" $INSTALL_PATH/slint/DONOTREMOVEME.TXT 1>/dev/null || \ ! grep "^System: ${SFX}$" $INSTALL_PATH/slint/DONOTREMOVEME.TXT 1>/dev/null; then dialog --title "`gettext "SOURCE PACKAGES INAPPROPRIATE"`" \ --msgbox "`eval_gettext "Either the source packages are inappropriate for the target system: Slint version \\\$SLINTVERSION (\\\${SFX}-bit) or the file \\\$INSTALL_PATH/slint/DONOTREMOVEME.TXT is missing. Please try again to set the source of packages"`" 0 0 fi fi if [ -r $TMP/SeTnative ]; then MAINSELECT="INSTALL" fi fi if [ "$MAINSELECT" = "INSTALL" ]; then if [ ! -r $TMP/SeTsource -o ! -r $TMP/SeTnative ]; then dialog --title "`gettext "CANNOT INSTALL SOFTWARE YET"`" --msgbox "`gettext " Before you can install software, complete the following tasks: 1. Select your source media. 2. Set up your target Linux partition(s). You may also optionally remap your keyboard and set up your \ swap partition(s). Press ENTER to return to the main menu."`" 0 0 continue fi dialog --title "`gettext "READY TO INSTALL THE PACKAGES?"`" \ --yesno "`gettext "Please confirm that you want to install \ the packages."`" 0 0 if [ $? = 0 ]; then dialog --title "`gettext "INSTALL KDE PACKAGES?"`" \ --yesno "`gettext "Do you want to install the KDE packages?"`" 0 0 export installkde="$?" MAINSELECT="INSTALL" else continue fi SOURCE_DEVICE="`cat $TMP/SeTsource`" setterm -background blue -foreground white -blank 0 clear echo gettext "A one-line description will be displayed as each package is installed." echo INSTALL_PATH=$(<$TMP/SeTDS) if [ -r $TMP/SeTCDdev ]; then # only try to remount media if it's a CD/DVD slackinstall --device `cat $TMP/SeTCDdev` --srcpath $INSTALL_PATH --mountpoint /var/log/mount --target $T_PX else slackinstall --device noremount --srcpath $INSTALL_PATH --mountpoint /var/log/mount --target $T_PX fi # we make some adjustments after all packages but the locales # have been installed, mostly setting which daemons should be # started by default in the installed system. zzz-settings # Let's pause a moment and then restore the terminal settings sleep 1 setterm -background default -foreground default -blank 0 if grep -q "brltty=" /proc/cmdline ; then # If a Braille display was set up in the command line, lets' # convey these settings in the installed system. sh /usr/lib/setup/bp2cf -u -p "$brltty" -f $T_PX/etc/brltty.conf fi # We will start brltty by default on the installed system. # TODO: find a way to know if a Braille device was used during # installation and only then start it by default. chmod 0755 $T_PX/etc/rc.d/rc.brltty MAINSELECT="CONFIGURE" fi # end of INSTALL if [ "$MAINSELECT" = "CONFIGURE" ]; then if ! grep -q aaa_base $T_PX/var/log/packages/* ; then dialog --title "`gettext "SYSTEM NOT YET INSTALLED"`" \ --msgbox "`gettext "You need to install the packages before configuring \ the system. Please press ENTER to return to the main menu."`" 0 0 continue fi SeTconfig REPLACE_FSTAB=Y if [ -r $TMP/SeTnative ]; then if [ -r $T_PX/etc/fstab ]; then dialog --title "`gettext "REPLACE /etc/fstab?"`" --yesno "`gettext "You already have an \ /etc/fstab on your install partition. If you were just adding software, \ you should probably keep your old /etc/fstab. If you've changed your \ partitioning scheme, you should use the new /etc/fstab. Do you want \ to replace your old /etc/fstab with the new one?"`" 10 80 if [ ! $? = 0 ]; then REPLACE_FSTAB=N fi fi if [ "$REPLACE_FSTAB" = "Y" ]; then cat /dev/null > $T_PX/etc/fstab if [ -r $TMP/SeTswap ]; then cat $TMP/SeTswap > $T_PX/etc/fstab fi cat $TMP/SeTnative >> $T_PX/etc/fstab if [ -r $TMP/SeTDOS ]; then cat $TMP/SeTDOS >> $T_PX/etc/fstab fi printf "%-16s %-16s %-11s %-16s %-3s %s\n" "#/dev/cdrom" "/mnt/cdrom" "auto" "noauto,owner,ro,comment=x-gvfs-show" "0" "0" >> $T_PX/etc/fstab printf "%-16s %-16s %-11s %-16s %-3s %s\n" "/dev/fd0" "/mnt/floppy" "auto" "noauto,owner" "0" "0" >> $T_PX/etc/fstab printf "%-16s %-16s %-11s %-16s %-3s %s\n" "devpts" "/dev/pts" "devpts" "gid=5,mode=620" "0" "0" >> $T_PX/etc/fstab printf "%-16s %-16s %-11s %-16s %-3s %s\n" "proc" "/proc" "proc" "defaults" "0" "0" >> $T_PX/etc/fstab printf "%-16s %-16s %-11s %-16s %-3s %s\n" "tmpfs" "/dev/shm" "tmpfs" "defaults" "0" "0" >> $T_PX/etc/fstab fi fi # We now set the locale that will be set in the installed system, # then install the packages and make the settings that depend on it. if echo $LOCALES|grep -q " $LANG " && [ "$LANG" != "en_US.utf8" ]; then chroot $T_PX /usr/sbin/localesetup $LANG 1>/dev/null else chroot $T_PX /usr/sbin/localesetup fi InstalledLang=$(sed -n "/^export LANG=/s/.*=\(.*\)/\1/p" $T_PX/etc/profile.d/lang.sh) ll_TT=${InstalledLang%.*} SeTlocales # Now let's install the packages that fit the locale used during # installation. # The locale is $lANG if one of those for which a translation is # shipped in the installler is used, else the one chosen through the # localsetup utility. # lo, kde, cgr, asp are set in SeTlocales # We won't attempt to install packages if INSTALL_PATH is not set as # that would mean that the installer was run without setting the # source of packages, maybe to reinstall a boot loader, whatever. if [ "$INSTALL_PATH" != "" ]; then dialog --infobox "`gettext "Installing translations..."`" 0 0 package=$(find $INSTALL_PATH -name libreoffice-l10n-${lo}-*t?z) if [ "$package" != "" ]; then spkg -i --root=$T_PX -qq --no-ldconfig --no-gtk-update-icon-cache $package fi package=$(find $INSTALL_PATH -name libreoffice-help-${lo}-*t?z) if [ "$package" != "" ]; then spkg -i --root=$T_PX -qq --no-ldconfig --no-gtk-update-icon-cache $package fi package=$(find $INSTALL_PATH -name kde-l10n-${kde}-*t?z) if [ "$package" != "" ] && [ "$installkde" = "0" ]; then spkg -i --root=$T_PX -qq --no-ldconfig --no-gtk-update-icon-cache $package fi package=$(find $INSTALL_PATH -name calligra-l10n-${cgr}-*t?z) if [ "$package" != "" ] && [ "$installkde" = "0" ]; then spkg -i --root=$T_PX -qq --no-ldconfig --no-gtk-update-icon-cache $package fi package=$(find $INSTALL_PATH -name aspell-${asp}-*t?z) if [ "$package" != "" ]; then spkg -i --root=$T_PX -qq --no-ldconfig --no-gtk-update-icon-cache $package fi fi chroot $T_PX /usr/sbin/update-all MAINSELECT=EXIT fi # End of CONFIGURE if [ "$MAINSELECT" = "EXIT" ]; then break fi done # end of main loop sync chmod 755 $T_PX if [ -d $T_PX/tmp ]; then chmod 1777 $T_PX/tmp fi if mount | grep /var/log/mntiso 1> /dev/null 2> /dev/null ; then umount -f /var/log/mntiso fi if mount | grep /var/log/mount 1> /dev/null 2> /dev/null ; then umount /var/log/mount fi # Anything mounted on /var/log/mount now is a fatal error: if mount | grep /var/log/mount 1> /dev/null 2> /dev/null ; then exit fi # If the mount table is corrupt, the above might not do it, so we will # try to detect Linux and FAT32 partitions that have slipped by: if [ -d /var/log/mount/lost+found -o -d /var/log/mount/recycled \ -o -r /var/log/mount/io.sys ]; then exit fi rm -f /var/log/mount 2> /dev/null rmdir /var/log/mount 2> /dev/null mkdir /var/log/mount 2> /dev/null chmod 755 /var/log/mount # An fstab file is indicative of an OS installation, rather than # just loading the "setup" script and selecting "EXIT" if [ -f /mnt/etc/fstab ]; then # umount CD: if [ -r $TMP/SeTCDdev ]; then if mount | grep iso9660 > /dev/null 2> /dev/null ; then umount `mount | grep iso9660 | cut -f 1 -d ' '` fi eject -s `cat $TMP/SeTCDdev` # Tell the user to remove the disc, if one had previously been mounted # (it should now be ejected): dialog \ --clear \ --title "`gettext "Slint Linux Setup is complete"`" $@ \ --msgbox "`gettext " Please remove the installation disc. "`" 0 0 fi # Offer to reboot or drop to shell: dialog \ --title "`gettext "Slint Linux Setup is complete"`" $@ \ --yesno \ "`gettext " Would you like to reboot your system? If you choose \"No\", you will be dropped to a shell. "`" 0 0 retval=$? if [ $retval = 1 ]; then clear echo gettext "You may now reboot your system once you are ready. You can issue the 'reboot' command; or if your system has a keyboard attached, you can use the key combination: control+alt+delete " echo else touch /reboot fi fi # Fix the date: /sbin/fixdate # final cleanup rm -f $TMP/SeT* $TMP/tar-error $TMP/PKGTOOL_REMOVED rm -f /var/log/mount/treecache rmdir /var/log/mntiso 2>/dev/null rm -rf $TMP/treecache rm -rf $TMP/pkgcache rmdir /mnt/tmp/orbit-root 2> /dev/null # If the OS had been installed and the user elected to reboot: if [ -f /reboot ]; then clear gettext "** Starting reboot **" echo sleep 1 reboot fi # end Slint setup script
_______________________________________________ Blinux-list mailing list Blinux-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/blinux-list