diff --git a/data/eos/branding/endeavouros/release-name-logo.png b/data/eos/branding/endeavouros/release-name-logo.png index 0c8ac65bf8..c6499d833f 100644 Binary files a/data/eos/branding/endeavouros/release-name-logo.png and b/data/eos/branding/endeavouros/release-name-logo.png differ diff --git a/data/eos/branding/endeavouros/show.qml b/data/eos/branding/endeavouros/show.qml index 85e49f54ea..16daf632b1 100644 --- a/data/eos/branding/endeavouros/show.qml +++ b/data/eos/branding/endeavouros/show.qml @@ -22,7 +22,7 @@ Presentation Timer { id: advanceTimer - interval: 30000 + interval: 60000 running: true repeat: true onTriggered: nextSlide() diff --git a/data/eos/branding/endeavouros/side-bar.png b/data/eos/branding/endeavouros/side-bar.png index 23fbb8a233..626e0d610b 100644 Binary files a/data/eos/branding/endeavouros/side-bar.png and b/data/eos/branding/endeavouros/side-bar.png differ diff --git a/data/eos/modules/packagechooser.conf b/data/eos/modules/packagechooser.conf index 50cf0b332a..04f160a34e 100644 --- a/data/eos/modules/packagechooser.conf +++ b/data/eos/modules/packagechooser.conf @@ -709,10 +709,7 @@ items: - eos-lightdm-slick-theme - eos-qogir-icons - feh - - file-roller - galculator - - gthumb - - gtk-engine-murrine - gvfs - gvfs-afc - gvfs-gphoto2 @@ -739,9 +736,12 @@ items: - thunar-archive-plugin - thunar-volman - tumbler + - unzip + - xarchiver - xbindkeys - xdg-user-dirs-gtk - xed - xfce4-terminal - xorg-xbacklight - xorg-xdpyinfo + - zip diff --git a/data/eos/modules/pacstrap.conf b/data/eos/modules/pacstrap.conf index 064a023056..ca603bc5a9 100644 --- a/data/eos/modules/pacstrap.conf +++ b/data/eos/modules/pacstrap.conf @@ -71,5 +71,4 @@ postInstallFiles: - "/etc/calamares/scripts/chrooted_cleaner_script.sh" - "/etc/calamares/scripts/remove-ucode" - "/etc/dracut.conf.d/eos-defaults.conf" - - "/etc/skel/.bashrc" - "/etc/nsswitch.conf" diff --git a/data/eos/modules/shellprocess_user_commands.conf b/data/eos/modules/shellprocess_user_commands.conf new file mode 100644 index 0000000000..0a4b66d5f1 --- /dev/null +++ b/data/eos/modules/shellprocess_user_commands.conf @@ -0,0 +1,19 @@ +# SPDX-FileCopyrightText: no +# SPDX-License-Identifier: CC0-1.0 +# +## shellprocess_user_commands.conf +# This module runs the user specified program user_commands.bash. +# + +--- + +dontChroot: false + +script: + - command: "-touch /tmp/user_commands.bash" + - command: "-chmod +x /tmp/user_commands.bash" + - command: "-/tmp/user_commands.bash ${USER}" + timeout: 1200 + +i18n: + name: "Running post-installation commands specified by the user" diff --git a/data/eos/modules/users.conf b/data/eos/modules/users.conf index 19933af60c..9ebd73fff6 100644 --- a/data/eos/modules/users.conf +++ b/data/eos/modules/users.conf @@ -26,7 +26,12 @@ autoLoginGroup: autologin doAutoLogin: false -sudoersGroup: wheel +sudoersGroup: wheel + +# If set to `false` (the default), writes a sudoers file with `(ALL)` +# so that the command can be run as any user. If set to `true`, writes +# `(ALL:ALL)` so that any user and any group can be chosen. +sudoersConfigureWithGroup: true setRootPassword: true diff --git a/data/eos/scripts/chrooted_cleaner_script.sh b/data/eos/scripts/chrooted_cleaner_script.sh index 2ecbd0cd34..bb5f104450 100755 --- a/data/eos/scripts/chrooted_cleaner_script.sh +++ b/data/eos/scripts/chrooted_cleaner_script.sh @@ -331,6 +331,8 @@ _install_extra_drivers_to_target() { else # Install r8168 package from the mirrors. _install_needed_packages r8168 + # Handle the r8168-lts package if LTS is installed. + [[ $(pacman -Q linux-lts 2> $nvidia_file echo "nvidia_driver=$driver" >> $nvidia_file - # copy user_commands.bash + # copy user_commands.bash to target _CopyFileToTarget /home/liveuser/user_commands.bash $target/tmp # copy 30-touchpad.conf Xorg config file diff --git a/data/eos/scripts/update-mirrorlist b/data/eos/scripts/update-mirrorlist index f50639f695..a96136c626 100755 --- a/data/eos/scripts/update-mirrorlist +++ b/data/eos/scripts/update-mirrorlist @@ -112,14 +112,28 @@ RunCmd() { UseBestMirrorsIfAvailable if [ -x /usr/bin/rate-mirrors ] ; then + + # ad hoc failure test for rate-mirrors because it exits with 0 always + local err_strings=("NO RESULTS TO RE-TEST" + "FAILED TO TEST SPEEDS, RETURNING UNTESTED MIRRORS" + ) + local str + for str in "${err_strings[@]}" ; do + if grep "$str" $tf >/dev/null ; then + logterminal "$progname: rate-mirrors failed ($str)." + retval=1 + return # now we simply use the mirrorlist in the ISO + fi + done + grep '^Server = ' $tf > $tf.tmp mv $tf.tmp $tf fi } Main() { - local VERSION="2.1" # started from 2.0! - local progname="$(basename "$0")" + local VERSION="2.2" # started from 2.0! + local progname="${0##*/}" local mf=/etc/pacman.d/mirrorlist local bu=/tmp/mirrorlist.bu # original mirrorlist, saved by Welcome diff --git a/data/eos/settings_offline.conf b/data/eos/settings_offline.conf index 412078c562..0f5ba2dfd1 100644 --- a/data/eos/settings_offline.conf +++ b/data/eos/settings_offline.conf @@ -68,8 +68,8 @@ sequence: - luksbootkeyfile - dracutlukscfg - removeuser - - users - shellprocess@fixes + - users - networkcfg - displaymanager - shellprocess@initialize_pacman_offline diff --git a/data/eos/settings_online.conf b/data/eos/settings_online.conf index bc1ade1af0..94f81a5f76 100644 --- a/data/eos/settings_online.conf +++ b/data/eos/settings_online.conf @@ -35,6 +35,10 @@ instances: module: shellprocess config: shellprocess_removeucode.conf +- id: user_commands + module: shellprocess + config: shellprocess_user_commands.conf + sequence: - show: - welcome@online @@ -73,6 +77,7 @@ sequence: - windowsbootentry - bootloader - services-systemd + - shellprocess@user_commands - preservefiles - shellprocess@copyfiles - umount diff --git a/src/modules/umount/UmountJob.cpp b/src/modules/umount/UmountJob.cpp index fa8f28e110..2ea0ec5139 100644 --- a/src/modules/umount/UmountJob.cpp +++ b/src/modules/umount/UmountJob.cpp @@ -78,6 +78,18 @@ unmountTargetMounts( const QString& rootMountPoint ) .arg( m.device, m.mountPoint ) ); } } + + // Last we unmount the root + if ( CalamaresUtils::Partition::unmount( rootMountPoint, { "-lv" } ) != 0 ) + { + return Calamares::JobResult::error( + QCoreApplication::translate( UmountJob::staticMetaObject.className(), + "Could not unmount target system." ), + QCoreApplication::translate( UmountJob::staticMetaObject.className(), + "The device mounted at %1 could not be unmounted." ) + .arg( rootMountPoint ) ); + } + return Calamares::JobResult::ok(); }