12-10-2014, 07:52 AM
Looking to give people a way to upgrade, interactively and easily. The upgrade will ONLY be applicable for LL series releases ie. You will be able to upgrade from any version in the 2.0 - 2.8 series, but not from the 2.0 to a future 3.0 series.
This feature has been requested a lot. The script is in it's infancy, there is still much to do. If you'd like to test do the following:
1) Do a fresh install of 2.0 to a Virtualbox.
2) Make a file called lite-upgrade and make it executable.
2) Copy the script to /usr/bin
3) Click on the Whisker Menu and type in: gksudo lite-upgrade in the search box. Follow the prompts.
Of course I welcome code contributions and suggestions
This is what I have so far:
This feature has been requested a lot. The script is in it's infancy, there is still much to do. If you'd like to test do the following:
1) Do a fresh install of 2.0 to a Virtualbox.
2) Make a file called lite-upgrade and make it executable.
2) Copy the script to /usr/bin
3) Click on the Whisker Menu and type in: gksudo lite-upgrade in the search box. Follow the prompts.
Of course I welcome code contributions and suggestions
This is what I have so far:
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 -n -e '/\[*$/ s/^/# /p' -e '/\*$/ s/^/# /p'|
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 '(sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade \-y && 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 -n -e '/\[*$/ s/^/# /p' -e '/\*$/ s/^/# /p'|
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