Hi Jerry, misko and sysdrum,
I have been following your threads on the GUI Updates & System Reporting Scripts with interest.
I don't know if it's possible.??
Once they are defined "stable", would it be possible to add them into the "How To's..."
How to add:
Update GUI
System Reporting
It would be great for the folks who are either sticking on LL2.0 or not quite ready to make the move.
Just a thought...
Dave
(12-02-2014, 04:32 PM)misko_2083 link Wrote: [ -> ]Smart move Jerry
What do yo think about adding the list dialog to copy the log file? Something like the list in the new system report.
Can you please give me an example? (full script code)
(12-02-2014, 11:23 PM)Jerry link Wrote: [ -> ]Can you please give me an example? (full script code)
Almost forgot.
I've changed line 70 to x=$( stdbuf -oL /bin/bash \-c '(sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade \-y )' 2>&1 | tee /var/log/llupdates.log |
Example:
Code:
#!/bin/bash
#-----------------------------------------------------------------------------------------
# Name: Linux Lite Updates
# Description: A GUI tool to easily install Updates in Linux Lite.
# Authors: Misko_2083, Jerry Bezencon
# Date: Nov 20th, 2014
# Website: https://www.linuxliteos.com
#-----------------------------------------------------------------------------------------
# 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 then populate them to /tmp/updateslist
zenity --question --title="Linux Lite Updates" --window-icon="/usr/share/icons/zenity-llcc.png" --text="We will now fetch the Updates list.\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 )
# Creates a list in /tmp/updateslist
LISTNAMES=$(apt-get --just-print upgrade 2>&1 | perl -ne 'if (/Inst\s([\w,\-,\d,\.,~,:,\+]+)\s\[([\w,\-,\d,\.,~,:,\+]+)\]\s\(([\w,\-,\d,\.,~,:,\+]+)\)? /i) {print "Name: $1 INSTALLED: $2 AVAILABLE: $3\n"}' | awk '{print NR,":\t"$0}' | tee /tmp/updateslist)
# Check if any updates are available, if there are none, script pops up dialog box saying 'No Updates Available', removes /tmp/updateslist
if [ -z "$(cat /tmp/updateslist)" ]; then
zenity --info --window-icon="/usr/share/icons/zenity-llcc.png" --title="Linux Lite Updates" \
--text="No Updates Available"
rm /tmp/updateslist
exit 0
fi
# Insert text into /tmp/updateslist
sed -i -e '1 i\List of available Updates' -e '1 i\Click Update to continue or Cancel to stop the update process\n' /tmp/updateslist
# Erase existing available info
sudo dpkg --clear-avail
else
exit 0
fi
# Call the zenity dialog to show update list
zenity --text-info --ok-label="Update" --cancel-label="Cancel" --title="Linux Lite Updates" --width=780 --height=300 --filename="/tmp/updateslist"
if [ "$?" -eq "0" ];then
# Continue script if no halt
INSTALL_ICON="/usr/share/icons/zenity-llcc.png"
APPNAME="Linux Lite"
#remove tmp file
rm /tmp/updateslist
x=$( stdbuf -oL /bin/bash \-c '(sudo DEBIAN_FRONTEND=noninteractive apt-get upgrade \-y )' 2>&1 | tee /var/log/llupdates.log |
stdbuf -oL sed -n -e '/\[*$/ s/^/# /p' -e '/\*$/ s/^/# /p'|
zenity --progress --title="Updating..." --pulsate \
--width=600 --auto-close )
if [ "${PIPESTATUS[0]}" -ne "0" ]; then
zenity --error \
--title="Error" --text="$APPNAME Updates have failed."
exit 0
fi
# Halt updates script if user selects Cancel
else
rm /tmp/updateslist
exit 0
fi
PROCEED=$(zenity --question --title="$APPNAME Updates" --window-icon=/usr/share/icons/zenity-llcc.png --text="Updates have finished installing.\n\nWould you like to view the $APPNAME Updates log?"; echo $?)
if [ ${PROCEED} -eq 1 ]; then
zenity --info --title="$APPNAME Updates" --window-icon="${INSTALL_ICON}" --text="$APPNAME Updates Complete."
exit;
else
zenity --text-info --ok-label="Save Updates Log" --cancel-label="Close" --title="Updates Log" --width=700 --height=300 --filename="/var/log/llupdates.log"
if [ $? -ne 0 ]; then
exit;
else
#Generate the save list and on the first occurance of "FALSE" change it to "TRUE"
LL_LIST_D=(`awk -F':' '$3>=1000 && $3<=60000 {print "FALSE","/home/"$1}' /etc/passwd |sed '0,/FALSE/s/FALSE/TRUE/'`)
#Add optional save location
LL_LIST_H=(`awk -F':' '$3>=1000 && $3<=60000 {print "FALSE","/home/"$1"/Desktop"}' /etc/passwd`)
save_location=$(zenity --title="System Report Save Location" --list --radiolist --text="Select save location:" --column="Select" --column="Save file location:" --width=325 --height=300 "${LL_LIST_D[@]}" "${LL_LIST_H[@]}")
if [ $? -ne 0 ]; then
exit
else
#Extract username
LL_USER=$(echo "$save_location" | cut -d'/' -f3)
# Add filename to the save path
SAVE_PATH=$(echo $save_location| sed 's,.*,&\/var/log/llupdates.log,g')
#Checks if the file exists. If it does asks for confirmation.
if [ ! -z "$(echo $SAVE_PATH)" ]; then
if zenity --question --title="$APPNAME Updates" --window-icon=/usr/share/icons/zenity-llcc.png --text="file ${SAVE_PATH} allready exists.\nWould you like to overwite the file?"; then
cp /var/log/llupdates.log $save_location
else
exit
fi
else
cp /var/log/llupdates.log $save_location
fi
fi
fi
fi
exit
Love the scripts . Save some time .
Dont know where to put it , please post where needed : can someone add sudo apt-get clean ; sudo apt-get autoclean ; sudo apt-get autoremove at the end of this script somehow !
Just an idea in order to cleanup LL . For what it s worth .
@Altman
I believe that the Lite Cleaner handles those tasks.
~Scott
Hey cool , tought of a combo between both of these maybe , anyhow , I can do with these . lol , forgot about Lite Cleaner , good call .
8) No problem. I confused the two a few times myself.
Hey cool , Saved some space just doing L Cleaner .
(12-02-2014, 05:18 PM)Wirezfree link Wrote: [ -> ]Hi Jerry, misko and sysdrum,
I have been following your threads on the GUI Updates & System Reporting Scripts with interest.
I don't know if it's possible.??
Once they are defined "stable", would it be possible to add them into the "How To's..."
How to add:
Update GUI
System Reporting
It would be great for the folks who are either sticking on LL2.0 or not quite ready to make the move.
Just a thought...
Dave
We can certainly do that

See the first post of this thread for the Updates instructions.