Clone this wiki locally
GTK tray icon for Remember the MilkGmilk –
This is a small app to list and mark as completed your today, tomorrow due and optionally tagged tasks. It shows a menu on the tray bar of a GNU/Linux system with GTK, Python and PyGTK installed. It works and was tested on a Ubuntu 9.10 system.
sudo make install on a GNU/Linux system. To remove, type
sudo make uninstall.
To start to use it, just type
gmilk and you should see a small icon like this on your tray bar:
When you execute it on the first time, the icon will blink and show the Need to authorize message. Click on the icon (with the left or right button) to make it stops blinking and click on Authorize on the menu. It will show an dialog asking to copy a URL and paste on your browser:
Then the Remember the Milk website will ask you if you want to grant permission on your tasks to this app. Please be sure the information shown on the screen is valid. The app name and logo should reflect the same info as here. Please be sure to only get the code from here or from official packages of your distro.
After authorization, you can click on the Ok button and should get a Authorized! You should now be able to use this app now. message. Then Gmilk will connect to your task list and will blink the icon with the task count, if there were tasks found. The icon will reflect these situations:
- No tasks
- You have tasks only for tomorrow
- You have tasks for today
- You have due tasks
and will show your tasks like
You can mark a task as completed selecting it on the menu.
You can ask to verify your tasks with some specific tag. Click on Configuration and type comma separated tags. They will show below the due tasks, with submenus.
You can use Dbus to list, get info and mark a task as complete. A Gmilk Dbus client sample is something like:
import dbus, dbus.glib bus = dbus.SessionBus() server = dbus.Interface(bus.get_object('com.Gmilk', '/'),'com.Gmilk.Interface') count = server.task_count() task = None for i in range(0,count): task = server.get_task(i) id, name, due = task print id, name, due print "Marking task '%s' (id %s) as complete ..." % (name,id) if server.complete_task(id)>0: print "Task '%s' marked as complete." % name else: print "There was an error marking '%s' as complete." % name
After run this code we’ll have something like:
101483345 Test! 2010-04-13T03:00:00Z 101303523 Implement Dbus on Gmilk 2010-04-13T03:00:00Z 101875494 Tomorrow test! 2010-04-14T03:00:00Z Marking task 'Tomorrow test!' (id 101875494) as complete ... Task 'Tomorrow test!' marked as complete.