• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 07:07
CEST 13:07
KST 20:07
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Team TLMC #5 - Finalists & Open Tournaments1[ASL20] Ro16 Preview Pt2: Turbulence10Classic Games #3: Rogue vs Serral at BlizzCon9[ASL20] Ro16 Preview Pt1: Ascent10Maestros of the Game: Week 1/Play-in Preview12
Community News
StarCraft II 5.0.15 PTR Patch Notes145BSL 2025 Warsaw LAN + Legends Showmatch2Weekly Cups (Sept 8-14): herO & MaxPax split cups4WardiTV TL Team Map Contest #5 Tournaments1SC4ALL $6,000 Open LAN in Philadelphia8
StarCraft 2
General
Why Storm Should NOT Be Nerfed – A Core Part of Pr StarCraft II 5.0.15 PTR Patch Notes #1: Maru - Greatest Players of All Time Team TLMC #5 - Finalists & Open Tournaments Team Liquid Map Contest #21 - Presented by Monster Energy
Tourneys
Stellar Fest KSL Week 80 StarCraft Evolution League (SC Evo Biweekly) RSL: Revival, a new crowdfunded tournament series SC2's Safe House 2 - October 18 & 19
Strategy
Custom Maps
External Content
Mutation # 491 Night Drive Mutation # 490 Masters of Midnight Mutation # 489 Bannable Offense Mutation # 488 What Goes Around
Brood War
General
Soulkey on ASL S20 ASL20 General Discussion BW General Discussion Diplomacy, Cosmonarchy Edition ASL TICKET LIVE help! :D
Tourneys
[ASL20] Ro16 Group D BSL 2025 Warsaw LAN + Legends Showmatch [ASL20] Ro16 Group C Small VOD Thread 2.0
Strategy
Simple Questions, Simple Answers Muta micro map competition Fighting Spirit mining rates [G] Mineral Boosting
Other Games
General Games
Stormgate/Frost Giant Megathread Path of Exile Borderlands 3 Nintendo Switch Thread General RTS Discussion Thread
Dota 2
Official 'what is Dota anymore' discussion LiquidDota to reintegrate into TL.net
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread The Big Programming Thread UK Politics Mega-thread
Fan Clubs
The Happy Fan Club!
Media & Entertainment
Movie Discussion! [Manga] One Piece Anime Discussion Thread
Sports
2024 - 2026 Football Thread Formula 1 Discussion MLB/Baseball 2023
World Cup 2022
Tech Support
Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread High temperatures on bridge(s)
TL Community
BarCraft in Tokyo Japan for ASL Season5 Final The Automated Ban List
Blogs
Too Many LANs? Tournament Ov…
TrAiDoS
i'm really bored guys
Peanutsc
I <=> 9
KrillinFromwales
A very expensive lesson on ma…
Garnet
hello world
radishsoup
Lemme tell you a thing o…
JoinTheRain
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1829 users

linux friendly calendar application

Blogs > workshed
Post a Reply
Normal
workshed
Profile Blog Joined August 2007
United States81 Posts
Last Edited: 2009-04-11 05:41:04
June 12 2008 00:04 GMT
#1
When I made the switch from XP to linux one of the few things I missed was R1CH's great LiquidNotify. Unfortunately it's a windows only app, so I decided to try and write a similar program that will run on linux (and pretty much any other platform). so here it is...it's called TLCal because I'm terrible at coming up with names. It is not affiliated with TeamLiquid.net in any way. Here's a tarball
tlcal119.tar.gz
and a zip for you windows users
tlcal119.zip
These packages have identical content. It's written in python using Qt4, so you'll need both python and pyqt4 installed on your system. I'll give some quick install tips here, but please read through the README.
Edit: Updated to version 1.19

TLCal is now hosted on launchpad...the project page can be found here https://launchpad.net/tlcal

Here's a screenshot:
[image loading]

and the new options menus:
[image loading]

and the new individual match selector screen:
[image loading]


Windows:
Remember R1CH's Liquid Notify is probably more stable than this program, so it might be your best choice. If you want to try tlcal though, here you go.

This has only been tested under XP, but will probably work in vista too. Step 1 is to install python...which can be found here:

http://www.python.org/download/

you probably want the windows installer binary version. Note that this program is written for Python 2.x, adapting it to Python 3 in the near future is very unlikely. Once you have python you can then install PyQt4, which can be found here:

http://www.riverbankcomputing.co.uk/software/pyqt/download

You will want to install the windows binary package, which will install Qt for you at the same time. This is about a 20 MB download, you have been warned.

Once these are installed simply unzip the archive anywhere and run the tlcal.pyw file.

Linux:

If you use Kubuntu 7.04 or newer you have everything you need. Hooray. If you don't you probably need to install the pyqt4 bindings, just search you favorite package manager for pyqt4. I think the package is called python-qt4 in ubuntu. OpenSUSE and Fedora also have the bindings available in their repositories. Check the README for info about enabling playing sounds in linux.
Once that's done, just unpack the tarball somewhere, ie

tar -xvf tlcal.tar.gz

and run the tlcal.pyw script

python tlcal.pyw
or just ./tlcal.pyw

There is also an install script for linux users...check the README for details.


Questions, comments, and polite criticisms are welcome. Also let me know if you run into any bugs. I have this running on my system all the time and find it useful, so if you miss Liquid Notify give it a try.

Thanks go to PoP for some help with the TL calendar, and especially R1CH for some advice and encouragement (and for writing LiquidNotify)

Cheers,
Workshed

*****
ShaLLoW[baY]
Profile Blog Joined January 2007
Canada12499 Posts
June 12 2008 01:11 GMT
#2
I don't have Linux and thus probably won't use your application, but a massive thanks to you for contributing to the community
ALEXISONFIRE ARE FUCKING BACK (sAviOr for life)
workshed
Profile Blog Joined August 2007
United States81 Posts
Last Edited: 2008-06-23 06:08:03
June 22 2008 03:00 GMT
#3
Oops...I wasn't careful enough in checking if the calendar had been changed. The last minute time change for the STX vs SKT T1 match wasn't noticed. This bug has been fixed, I'll upload the fix and update the OP tomorrow. A stupid mistake by me, especially considering it's something R1CH warned me to be careful about long ago. Doh!
Edit: OP is now updated with version 1.01
Edit #2: Oops, only fixed half or the problem, fixed in 1.02
workshed
Profile Blog Joined August 2007
United States81 Posts
Last Edited: 2008-07-13 22:18:32
July 12 2008 03:14 GMT
#4
Hmm...seems raw URLs in the calendar should be clickable...ie. Pony Express Audio event on the 12th. Wouldn't a UBB url tag be a better idea? Oh well...works now. Bring on the gopher:// links! I'll update the OP with the new version this weekend when I get around to it. (the vast TLCal user base breathes a collective sigh of relief )
Edit: Done - OP updated with version 1.03.

ps. GO JULY!!!!!
Edit: W00T!!!!!
haduken
Profile Blog Joined April 2003
Australia8267 Posts
July 12 2008 04:23 GMT
#5
Nice. +1
Rillanon.au
workshed
Profile Blog Joined August 2007
United States81 Posts
July 21 2008 08:54 GMT
#6
Another oops...my attempt to make naked URLs clickable tends to remove some whitespace. I just noticed. I've fixed that, and the fix will be included in the next update. Don't expect it for a few days though.
workshed
Profile Blog Joined August 2007
United States81 Posts
July 25 2008 03:00 GMT
#7
Updated to version 1.04. Made a bunch of changes. Most noticeably the dates on the calendar are colored, like the tl.net calendar, and there is an option for having two separate alerts before a match. Also fixed the bug that crept in with 1.03, and made a bunch of changes under the hood to make the program a bit more robust. This new version will reset the options menu when first run, so you'll have to set that up again. Stay tuned for more features in 1.05.
workshed
Profile Blog Joined August 2007
United States81 Posts
July 30 2008 03:34 GMT
#8
Updated to 1.05. Now alerts can be filtered by match type, and it's possible to choose a system beep, pop-up message, and/or playing a sound for each alert. A few little bugs have been fixed as well. Check out the OP for a pic of the new options menu. Right now Linux users need to have the Network Audio System installed to hear sound files (.au and .wav for Linux). Check the README for details. .wav files should work fine out of the box for windows users....aiff, .wav, and .au are allowed for Macs, but I think Macs can play many other formats. Without a Mac to test it on I won't hazard a guess.
I'm running rather low on ideas for new features to add and for now any new updates will probably be bugfixes...I'm sure a few crept in with the new features.
workshed
Profile Blog Joined August 2007
United States81 Posts
August 06 2008 03:00 GMT
#9
Updated to 1.06 I lied before. New feature added...now it's possible to select matches individually for alerts. Check the OP for a pic. This knocks the last item off the list of things LiquidNotify can do and my proggie can't, at least that I know about. Liquid Notify does things quite differently though. Also fixed a couple little bugs. Enjoy.
workshed
Profile Blog Joined August 2007
United States81 Posts
September 07 2008 04:05 GMT
#10
Updated to 1.07. A bunch of changes, most of which are under the hood. The more obvious ones are as follows. Fixed a rare bug in the UBB parsing algorithm. Added a system tray notification to the alert options. Now there is an uninstall option for linux users to go with the install script...just run tlcal -u to get rid of it. Not much else visible from the user end. I have a few ideas for another update, but they might involve some work, so we'll see...
workshed
Profile Blog Joined August 2007
United States81 Posts
Last Edited: 2008-10-02 01:55:47
September 20 2008 02:23 GMT
#11
Updated to 1.08. Mostly just fixing the way the program displays foreigners. Earlier versions would show them differently depending on whether they were in the TSLD or not. Like in this pic:

[image loading]


In 1.08 it looks like this:

[image loading]


Much better . The broken flag image for Sziky is not my fault btw...TL.net is missing that flag for some reason. I'm guessing there are only flags for countries that have at least one player in the TSLD, but the flag link is still included in the raw calendar file, leading to the broken link. I guess there are no Hungarians in the database (Sweden has the same problem for ToT.Ace). The code for dealing with UBB tags has been optimized a bit and manually refreshing the calendar now also purges the local image cache, which will fix the broken flag icon if TL.net adds more flags.

Workshed

edit: Updated to 1.09. Did some more work on this issue. TL.net vs gg.net show match uses url tags for the player names on the calendar, which I wasn't expecting. Now that is handled properly (I think).

Here's a pic...

[image loading]


Yay I don't have a before pic, but trust me, it was a bit ugly. Go TL.net, btw!
workshed
Profile Blog Joined August 2007
United States81 Posts
October 07 2008 04:10 GMT
#12
Updated to 1.10. Just a minor bug fix. The individual match picker was getting a little confused when two matches on the same day had identical titles. All fixed.
workshed
Profile Blog Joined August 2007
United States81 Posts
October 21 2008 00:53 GMT
#13
Updated to 1.11. More work on the UBB handling, and that module should actually be somewhat readable now. A few other little touch ups under the hood. This will probably be the last update for a while, unless the calendar pulls some crazy shit.

Workshed
workshed
Profile Blog Joined August 2007
United States81 Posts
November 08 2008 02:33 GMT
#14
Updated to 1.12. So much for 1.11 being the last update for a while. The technique for getting the colors right for players outside of the tsld/tlpd has been completely redone, and is much more robust and easy to read (I think). Also refactored some code and there are some small bug fixes, such as cleaning up the line spacing a bit, resetting the date colors when there are no longer matches for that date on the calendar, and sending --verbose error messages to stderr instead of stdout.

Workshed
workshed
Profile Blog Joined August 2007
United States81 Posts
Last Edited: 2009-01-14 03:53:33
December 11 2008 07:24 GMT
#15
Updated to 1.13. I'm hoping there won't be any more updates...but we'll see. The code for getting the player colors right has been rewritten again *sigh*...I think I'm happy with it now. Also added a --prefix option to the install script (check the README for details) and fixed a regression from the last version that made the order of options in the options menu come out a little funny. The README file has also finally been updated to represent the current state of the proggie (It was pretty out of date). Learned "".startswith() and "".endswith() can take a tuple, not just a string! How handy...wish I knew that long ago, not sure why I never noticed before...also ended up adding os.path.join() all over the place...also very useful. Various other little tweaks that had been sitting around were added as well. Enjoy.

Workshed

edit: Updated to 1.14. Seems some ubb tags are case insensitive, and the calendar is using uppercase tags for the the first time I've seen...this should fix that.

2nd edit: Updated to 1.15. Various internal changes...mostly code cleanup. The only user visible change is a slight increase in the default calendar size, to look nicer on the Eee I got for x-mas. Eee 1000 + Ubuntu + KDE ==
workshed
Profile Blog Joined August 2007
United States81 Posts
January 19 2009 04:13 GMT
#16
Updated to 1.16. Introduced a nasty bug in one of the last updates which revealed a couple other potential ones. This should fix all that...apologies for any strange behavior when it came to alerting about matches in 1.15.

Workshed
workshed
Profile Blog Joined August 2007
United States81 Posts
Last Edited: 2009-02-23 02:54:54
February 03 2009 22:36 GMT
#17
Updated to 1.17. Fixed some of the ubb handling code to deal with tsld map links properly and to handle relative URL's in the img tags properly. Any downloading is also spawned off in a separate thread so it doesn't block the rest of the program, which makes life much better if you are having internet troubles. Enjoy.

Workshed

edit: Updated to 1.18. Added some HTML anchors so the calendar starts up on the next upcoming match, instead of just the date of it (I really like this, and don't understand why I never implemented before...it's a simple three line fix). The ubb parsing got some nice (and easy) speedups...runs in almost half the time now. Added a new command line option to disable coloured logging. A few little bug fixes, and some general code cleanup...most of the really crufty stuff is gone now. Nothing major, but enough to make it worth bumping to a new version. Enjoy.
workshed
Profile Blog Joined August 2007
United States81 Posts
April 11 2009 02:48 GMT
#18
Updated to 1.19. Not really many changes here, nothing noticeable, other than a bug that can crop up when first run. The main point of the new version is because I switched from subversion to bazaar, and pushed the whole repository onto launchpad. I've become rather fond of bazaar lately so bye bye svn. I'm not really actively developing the program any more, and figured hosting it on launchpad gets the whole thing out there. If my computer fries itself, or I fry myself, at least now the whole history will be preserved for posterity. Also rapidshare wasn't really appropriate for this sort of thing.

If you have bazaar installed you can run

bzr branch lp:tlcal

to get the code. A zipfile and a tarball are linked to in the OP, as usual. Let me know if I screwed something up, I'm new to launchpad. Otherwise, enjoy.

Workshed
Sirakor
Profile Joined April 2003
Great Britain455 Posts
April 11 2009 04:58 GMT
#19
Thanks for all the effort!
Llamaz
Profile Blog Joined April 2008
Australia90 Posts
April 11 2009 05:33 GMT
#20
Why did you switch to linux? :S
workshed
Profile Blog Joined August 2007
United States81 Posts
April 11 2009 06:22 GMT
#21
On April 11 2009 14:33 Llamaz wrote:
Why did you switch to linux? :S


I used linux back in college for maybe a year and a half, (I was using Redhat back then, around redhat 5ish (long before fedora)...yeah I'm old) and fell in love with the unix command line. It was also a much more comfortable environment for any kind of programming tasks. Alas this was about the time I got into Starcraft (these were the mid to late 90's, back in the vanilla days) and gaming was important. Back then playing starcraft with linux didn't work well (wine was around, but not what it is now). PC games kept me stuck to Windows machines from then on (linux was not the only OS that I gave up on because of Starcraft...Windows 2000 also choked on it).

I moved back to linux again near the end of 2007 because Kubuntu provides a wonderful distribution and I can do almost all the things I used to do in windows (ie starcraft works well in wine, and the Gom/Daum players work fine in virtualbox) and many many things I could never do with windows. Plus KDE3 and 4 kick ass (although I never used KDE back in the day), I love having python/perl/sed/bash there for me at all times, and am a vi fan (for those many years I was using windows I still used gvim as my text editor). This is my 3rd time trying to move to linux in all, and I think this time it will stick for good. Starcraft 2 is obviously gonna make things different tho...I suspect I'm gonna need a windows installation for that. Sigh...
Normal
Please log in or register to reply.
Live Events Refresh
RSL Revival
10:00
Season 2: Playoffs Day 7
Reynor vs CureLIVE!
TBD vs Zoun
Crank 1019
Tasteless923
RotterdaM657
IndyStarCraft 204
Rex105
CranKy Ducklings78
3DClanTV 44
IntoTheiNu 21
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Crank 1011
Tasteless 810
RotterdaM 760
IndyStarCraft 204
Rex 100
ProTech58
MindelVK 38
Railgan 19
StarCraft: Brood War
Calm 6208
Horang2 2091
Rain 1958
GuemChi 1436
Flash 1034
actioN 433
Larva 405
EffOrt 398
Hyuk 341
BeSt 282
[ Show more ]
Hyun 237
Zeus 223
firebathero 195
Pusan 174
Last 164
PianO 149
ajuk12(nOOB) 79
ZZZero.O 78
Soma 78
Rush 70
Free 67
Aegong 67
Nal_rA 63
Sharp 52
sSak 46
Movie 25
sas.Sziky 24
soO 23
Sexy 23
Bale 22
Sacsri 20
Mong 18
HiyA 10
ivOry 10
Hm[arnc] 4
Icarus 3
Terrorterran 1
Britney 0
Dota 2
XcaliburYe1277
Fuzer 224
Counter-Strike
allub246
Heroes of the Storm
Khaldor166
Other Games
crisheroes348
B2W.Neo339
DeMusliM206
NeuroSwarm55
Trikslyr25
OptimusSC211
Organizations
Other Games
gamesdonequick702
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 14 non-featured ]
StarCraft 2
• LUISG 27
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Jankos1217
• Stunt544
Other Games
• WagamamaTV300
Upcoming Events
BSL Open LAN 2025 - War…
3h 54m
OSC
9h 54m
BSL Open LAN 2025 - War…
20h 54m
RSL Revival
22h 54m
Classic vs TBD
WardiTV Invitational
23h 54m
Online Event
1d 4h
Wardi Open
1d 23h
Monday Night Weeklies
2 days
Sparkling Tuna Cup
2 days
LiuLi Cup
4 days
[ Show More ]
The PondCast
4 days
CranKy Ducklings
5 days
Liquipedia Results

Completed

Proleague 2025-09-10
Chzzk MurlocKing SC1 vs SC2 Cup #2
HCC Europe

Ongoing

BSL 20 Team Wars
KCM Race Survival 2025 Season 3
BSL 21 Points
ASL Season 20
CSL 2025 AUTUMN (S18)
LASL Season 20
2025 Chongqing Offline CUP
BSL World Championship of Poland 2025
RSL Revival: Season 2
Maestros of the Game
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual
IEM Cologne 2025
FISSURE Playground #1

Upcoming

IPSL Winter 2025-26
BSL Season 21
SC4ALL: Brood War
BSL 21 Team A
Stellar Fest
SC4ALL: StarCraft II
EC S1
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.