First off, sleep works in seconds but options say its in minutes so you get a message to take a break every 25 seconds (even tho it says minutes).
You don't need
os.popen(0"pkill -9 -f pomodoro.py")
Python will exit automatically but if you want to explicitly exit
is preferred, (0 being the exit code, 0 means successful execution, other codes indicate an error.
Were you trying to do a status icon? (i noticed the png path)
if you were, this should get you started
def Statusicon(tttext):
def quit_si(widget, data = None):
if data: data.set_visible(False)
gtk.main_quit()
statusicon = gtk.StatusIcon()
statusicon.set_from_file(image)
statusicon.set_tooltip("there are %s minutes until your next break" % tttext)
statusicon.connect('activate', quit_si)
statusicon.set_visible(True)
gtk.main()
Bear in mind tho you will probably have to rewrite your app to get it to work, and gtk programming isn't the easiest so i might be pointing you in the direction of a big can of worms 
Finally I'm not sure what you intended the --stop flag to be used for but at the moment it misses out the loop and goes straight to the 'job done' message.
Anyway this is a good introduction to python http://openbookproject.net/thinkCSpy/
As far as the bash script goes, again you don't want the 'killall' and you might want to look into making use of cron, and just having a script to generate cronjob entries, not that theres anything wrong with the way you've done it.
For bash scripting http://tldp.org/LDP/abs/html/ (don't worry its not that advanced).
anyway good first scripts, enjoy 