A fair question
Bogomips, and the answer is I'm not sure.
The files appear to all be copied and the /tmp/mod/ is made into a .xzm module but when booting 3.2.2 with the module Cinnamon hangs with a logon prompt which when responded to loops back to request it again. I'm assuming there is a permissions problem in the module and it might be tied to the error msg.
The code and the resulting module was a replacement for my save.dat changes when 3.2rc_ did the logon loop thing in the early days of rc testing and used my changes=EXIT cheatcode.
mkmodchanges.sh
Code: Select all
#!/bin/bash
# Save 3.2 changes as a mod file
# https://forum.porteus.org/viewtopic.php?f=81&t=5981&start=15#p46643
# Color definitions
txtbld=$(tput bold) # Bold
txtred=${txtbld}$(tput setaf 1) # Red
rst=$(tput sgr0) # Reset
function redpswd() {
echo -e "$1" $txtred
}
if [ `whoami` != "root" ]; then
redpswd "Enter root's password"
su -c "sh $0 $1"
exit
fi
echo $rst
if [ "$1" == "x" ]; then
echo 'find /mnt/live/memory/changes -iname "*" -mmin -3'
find /mnt/live/memory/changes -iname "*" -mmin -3
echo
exit
fi
if [ -d /tmp/mod/ ]; then
rm -rf /tmp/mod
fi
mkdir -p /tmp/mod
# copy modified files
cp -a --parents /home/guest/.config/nemo/* /tmp/mod/
cp -a --parents /home/guest/.config/gtk-3.0/* /tmp/mod/
cp -a --parents /home/guest/.config/dconf/* /tmp/mod/
cp -a --parents /home/guest/.cache/dconf/* /tmp/mod/
cp -a --parents /home/guest/* /tmp/mod/
cp -a --parents /home/guest/.mozilla/plugins /tmp/mod/
cp -a --parents /home/guest/.mozilla/firefox/profiles.ini /tmp/mod/
cp -a --parents /home/guest/.mozilla/firefox/dxsqumip.default/places.sqlite /tmp/mod/
cp -a --parents /home/guest/.mozilla/firefox/dxsqumip.default/prefs.js /tmp/mod/
cp -a --parents /home/guest/.mozilla/firefox/dxsqumip.default/xulstore.json /tmp/mod/
cp -a --parents /home/guest/.cinnamon/configs/panel-launchers@cinnamon.org/* /tmp/mod/
cp -a --parents /home/guest/.cinnamon/configs/power@cinnamon.org/* /tmp/mod/
cp -a --parents /etc/NetworkManager/system-connections/* /tmp/mod/
cp -a --parents /var/lib/dhcpcd/* /tmp/mod/
cp -a --parents /var/run/NetworkManager/* /tmp/mod/
#cp -a --parents /etc/*time /tmp/mod/
cp -a --parents /usr/share/applications/cups* /tmp/mod/
cp -a --parents /usr/share/applications/*print* /tmp/mod/
cp -a --parents /usr/share/applications/*browser* /tmp/mod/
cp -a --parents /etc/usm/* /tmp/mod/
cp -a --parents /var/usm/ /tmp/mod/
echo
echo Changed files copied. Press Enter to create module, Ctrl+C to exit.
read
du -h /tmp/mod/
echo
dir2xzm /tmp/mod /tmp/mychanges.xzm && rm -rf /tmp/mod
echo
ls -sh /tmp/*.xzm
#read
DIR () {
ls -lght --time-style long-iso $1 | awk '{print $5,$6,$4,$7}'
}
echo
echo Press Enter to copy /tmp/mychanges.xzm to modsavedat, Ctrl+C to exit.
DIR /tmp/mychanges.xzm
DIR /mnt/sda5/porteus3.2/modsavedat/mychanges*.xzm
read
mv /mnt/sda5/porteus3.2/modsavedat/mychanges*.xzm mychanges.xyzm
cp /tmp/mychanges.xzm /mnt/sda5/porteus3.2/modsavedat
echo Finished!
read
BTW All the cps have the error msg not just the one I showed.
Once the logon loop was fixed I've been using the script to be a backup to my important save.dat changes and whenever something strange happens with 3.2.2 I boot with the changes module rather than the changes=EXIT save.dat file to see if the problem is tied to my save.dat file or some other module.
(save.dat files can become corrupted if the changes to be saved are larger than the file.)
-update-
The problem is a 3.2.2 problem. Works fine in 3.2.1.
Code: Select all
guest@porteus:~$ ./bootmode.sh
Boot device: /dev/sda5
Device format: "ntfs"
Boot ISO: /ISOs/Porteus-CINNAMON-v3.2.1-x86_64.iso
Changes will not be saved.
To save changes create a save.dat file using Porteus Savefile Manager.
Cmdline: quiet BOOT_IMAGE=(loop)/boot/syslinux/vmlinuz from=/ISOs/Porteus-CINNAMON-v3.2.1-x86_64.iso volume=33 reboot=cold extramod=/mnt/sda5/porteus3.2/Modules;/mnt/sda5/porteus3.2/modsavedat noload=porteussave.dat.xzm
guest@porteus:~$
guest@porteus:~$ ./mkmodchanges.sh
Enter root's password
Password:
Changed files copied. Press Enter to create module, Ctrl+C to exit.