#!/bin/bash

#Esto es importante para que solo el usuario que usas habitualmente
#tenga acceso a tu cuenta de Google
#De otra forma, el root estaría accediendo directamente, lo cual no es muy aconsejable.
user="AQUI VA TU NOMBRE"
#Donde vamos a guardar la informacion, no lo crees tu, se crea solo
log="/var/log/autoemerge.log"

#Este if es para crear correctamente el fichero log
if [ ! -f $log ]; then
	touch $log
	chmod 600 $log
	chown root:root $log
fi

echo >> $log
echo "*** autosync started! ($(date +'%d-%m-%Y %H:%M:%S'))" >> $log
echo "*** running emerge --sync" >> $log
#Actualizamos portage...
/usr/bin/emerge -q --sync >> $log 2>&1
#Si tenemos layman lo actualizamos
if [ -f /usr/bin/layman ]; then
	echo >> $log
	echo "*** running layman -S" >> $log
	/usr/bin/layman -S --nocolor >> $log 2>&1
fi

echo "*** running emerge -DuvpN world" >> $log 2>&1
#Nos enteramos de cuantos paquetes hay listos para actualizar
ebuild=$(/usr/bin/emerge -DuvpN world | grep 'Total:' | cut -f 2 -d ' ')

#Si hay paquetes, los enviamos a Google Calendar
if [ $ebuild -ne '0' ]; then
	echo "*** sending info to google calendar with $user account" >> $log
	#nos convertimos temporalmente en el usuario que pusimos al comienzo y enviamos la informacion a nuestra cuenta de google calendar, para ello deberiamos haber usado anteriormente con ese usuario googlecl
	/bin/su - $user -c "google calendar add '(Gentoo) $HOSTNAME: $ebuild packages'" >> $log 2>&1
	echo "*** End ***" >> $log
	
else
	#Para que vamos a molestar a Google si no tenemos nada que actualizar
	echo "You have nothing to upgrade" >> $log
fi

