I made a spreadsheet (a google doc) with multiple tabs, so that each day I can log what I purchased, as well as track progress toward various financial goals.
This is all well and good, but I think the best solution is probably the simplest. Just figure out your budget and set up your online bill pay to send checks automatically.
Then on the first of the month, withdraw cash for your entire monthly discretionary spending -- food, gadgets, etc. If your ATM won't let you take out enough, have your bank increase the limit.
Then you can ration (or not) with each purchase. You won't need to carry around your atm/check card either, since you are using cash. And if you have any cash left at the end of the month, you have succeeded. If you had to withdraw more cash, you failed.
I suppose it doesn't count because the OP asked for open source specifically.
I keep a running cashflow listing with a row for each day and columns for each of my major accounts. Plus totals and a moving average.
Along with that I track all of my incomings and outgoings, with monthly totals.
I update all of it about 3-4 times a month. I find it gives me all the information I need to keep on top of things. I can see how various accounts fluctuate over time, where the big expenses are, and it givens me enough info to plan the next few months ahead.
I send it text messages when I spend money. much easier than writing it down or keeping receipts etc