Read the statement by Michael Teeuw here.
MMM-CalendarExt3 and MMM-MonthlyCalendar blank
-
These seems to be a subtle difference between our keyboard layouts perhaps,
raspberry.sh has this line
upgrade_result=$(sudo apt-get -y -o Dpkg::Options::=“–force-confdef” -o Dpkg::Options::=“–force-confnew” full-upgrade | pv -l -p)
but the quotes around –force-confdef and –force-confnew are the wrong type . Should be:
upgrade_result=$(sudo apt-get -y -o Dpkg::Options::="–force-confdef" -o Dpkg::Options::="–force-confnew" full-upgrade | pv -l -p)
It causes this error:
dpkg: error: need an action option Type dpkg --help for help about installing and deinstalling packages [*]; Use 'apt' or 'aptitude' for user-friendly package management; Type dpkg -Dhelp for a list of dpkg debug flag values; Type dpkg --force-help for a list of forcing options; Type dpkg-deb --help for help about manipulating *.deb files; Options marked [*] produce a lot of output - pipe it through 'less' or 'more' ! E: Sub-process dpkg --set-selections returned an error code (2) E: Couldn't record the approved state changes as dpkg selection states
Maybe just replace the quotes rather than copy and pase. I noticed the same thing when I copied the link you sent previously for the test branch.
-
@Scott-M I copied directly from your original post, it also shows the curved quotes
pushed fix
-
@sdetweil So it does, not sure why, I copied it from the terminal window.
-
@Scott-M said in MMM-CalendarExt3 and MMM-MonthlyCalendar blank:
So it does, not sure why, I copied it from the terminal window.
the MagicMirror forums assume word processing for quotes unless in a code block
once you save it, poof… it will never change back automatically
so it looks like you decided to add the code black later… (just experience ) -
@Scott-M note this latest fix also changes MagicMirror.sh to detect which window manager is running (wayland or labwc) and use the different start command if detected
-
@sdetweil
I probably did add the code block after. Lesson learned! And this is partly why I am having more issues with this. It has been very frustating, after it worked last night, it isn’t now.I think I know what the issue is but it is time consuming writing the SD image and running the script so if you can bear with me. I want to test it at least twice before I update here.
I suspect the 2 dashes before
--force-confdef --force-confnew
have been replaced by a single dash of a different character type. Again, because I put the code block around the text after I copied it.
This should be the correct code but let me test again to make sure. It has worked once, just want to do it again and will update.
sudo apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew" full-upgrade
In the mean time, the above code will auto select the default option if one is available and then answer Yes if there is no default. In the case of the prompt that was appearing, the old configuration file ‘/etc/xdg/labwc-greeter/autostart’ is kept. If you want the package maintainers file instead just remove the first option:
-o Dpkg::Options::="--force-confdef"
-
@Scott-M yes the double dash was replaced with single… new update pushed…
-
It seemed to get through the upgrade stage very quickly and
apt-get upgrade started apt-get upgrade result =rc=0 Reading package lists... Building dependency tree...
in the log seems to show the upgrade didn’t work. I will run the script locally on the pi and send the output to the termnial to see what is happening but it won’t be tonight, I have to go out now.
Update tomorrow…
-
MagicMirror did run though…
-
@sdetweil
So, I have tried the following, each on a freshlly flashed OS.1 - Copied
sudo apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew" full-upgrade
directly from the raspberry.sh script, updated and then upgraded using the above and it worked.
2 - Modified the script as below and ran it locally so I can see the output in terminal during the upgrade part, and it worked, no errors durring the upgrade. And Magic Mirror Ran successfully.
if [ $upgrade -eq $true ]; then sudo apt-get install pv -y >>$logfile echo "apt-get upgrade started" >> $logfile sudo apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew" full-upgrade | tee -a $logfile #upgrade_result=$(sudo apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew" full-upgrade | pv -l -p) #upgrade_result=$(sudo apt-get --assume-yes full-upgrade 2>&1 | pv -l -p) #upgrade_rc=$? #echo apt-get upgrade result ="rc=$upgrade_rc $upgrade_result" >> $logfile fi
3 - Copied your raspberry.sh script to the home directory unmodified and ran it locally and it also works. Log file still reads
apt-get upgrade result =rc=0
But it worked, is the what you would expect in the log?
4 - Run the script again directly using.
bash -c "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/v231/raspberry.sh)"
This works and the log file reads the same
apt-get upgrade result =rc=0
Running apg-get full-upgrade again show that there is nothing new to do.
Bottom line, it works!
Attempt no 2 running the modified script locally, the whole upgrade output went to the log file.