12-12-2014, 09:57 PM
First we must ensure that the script doesn't brake anything
apt-get upgrade -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"
New wallpapers could be packed into package for example lite-wallpapers-2.2 or similar.
apt-get upgrade -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"
Code:
#!/bin/bash
#------------------------------------------------------------
# Description: Linux Lite Upgrade Script
# Author: Jerry Bezencon 2014
# Website: https://www.freecinema2022.gq
#------------------------------------------------------------
# Ensure multi-language support
export LANG=C
# Kill off any package managers that may be running
if [ "$(pidof synaptic)" ]
then
sudo killall -9 synaptic
else
echo""
fi
if [ -z "$(pgrep gdebi-gtk)" ]
then
echo ""
else
killall -9 gdebi-gtk
fi
# Linux Lite default dialog icon
ic="/usr/share/icons/zenity-llcc.png"
# Get list of available updated packages
zenity --question --title="Linux Lite Upgrade Utility" --window-icon="/usr/share/icons/zenity-llcc.png" --text="We will now Upgrade to Linux Lite 2.2\n\nClick Yes to continue or No to abort."
if [ "$?" -eq "0" ];then
x=$( stdbuf -oL /bin/bash \-c '(sudo apt-get update \-y )' 2>&1 |
stdbuf -oL sed 's/^/#/g' |
zenity --progress --title="Updating package information..." --pulsate \
--width=600 --auto-close )
# Erase existing available info
sudo dpkg --clear-avail
else
exit 0
fi
# Install new packages, remove obsolete packages, clean up
x=$( stdbuf -oL /bin/bash \-c '(stdbuf -oL /bin/bash \-c '(sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" && sudo apt-get install inxi libreoffice-gnome dmz-cursor-theme file-roller lite-welcome lite-cleaner catfish deja-dup system-config-date light-locker thunar-archive-plugin \-y && sudo apt-get remove xarchiver \-y && sudo apt-get autoremove \-y && sudo apt-get clean )' 2>&1 |
stdbuf -oL sed 's/^/#/g' |
zenity --progress --title="Upgrading to Linux Lite 2.2..." --pulsate \
--width=600 --auto-close )
# Reboot dialogue
# Credit to xunil: http://bbs.archbang.org/viewtopic.php?id=279
title="Select Reboot to complete the Upgrade"
exit_type=`zenity --width="380" --height="220" --title="$title" --list --radiolist --column="Select" \
--column="Exit Type" --column="Description" \
TRUE "Reboot" "Reboot your computer"\
FALSE "Shutdown" "Shutdown your computer"\
FALSE "Cancel" "Continue using your computer" `
# User must select a target type (Check if they cancelled)
if [ ! "$exit_type" ]; then
zenity --error --title="Error" --text="You must make a selection"
exit
fi
# Action to perform by user
if [ "$exit_type" = "Reboot" ]
then
# Do Reboot here
sudo shutdown -r now | zenity --progress --percentage=95 --title=Reboot --auto-close --auto-kill --no-cancel --width=300
elif [ "$exit_type" = "Shutdown" ]
then
# Do Shutdown here
sudo shutdown -h now | zenity --progress --percentage=95 --title=Shutdown --auto-close --auto-kill --no-cancel --width=300
else
# Do Cancel here
exit 0
fi
# Set lite-welcome to autostart on first boot - to do
# command here
# Add new wallapapers
# command here
# Change launchers from xdg-open to exo-open - to do
# command here
# Add new right click actions to Thunar - to do
# command here
# Update plymouth, lsb_release and issue files - to do
# command here
# Update to new login screen - to do
# command here
# Remove obsolete PPA's - to do
# command here