What are we looking at here? First, the machine…

Arch Linux

i3 tiling window manager (no desktop environment)

Compton compositor

i3blocks status bar

The Desktop Background

As you can see, the background is a swell chart…

But this is not a static image. I wrote a Python script (GitHub) that downloads a surf chart (the current chart) to a specific directory. Then I make a call to feh to update the background. i3blocks handles all of this scheduling and execution. And as you can see from the first screenshot, I prefer my terminals to have transparency, which is where the compositor comes into play.

Detailed Buoy Data

You may have missed this from the above screenshots, but if you look closer at the i3 bar, there is a plethora of information (system and surf)…

Much like the dynamic background, this data is being refreshed on an interval. I wrote a Python script (GitHub), pywave, that takes a buoy identifier and then does some web scraping and outputs the data that us surfers really care about: swell height, swell period, and swell direction. Much like the background, i3blocks is running and refreshing this. That date/time stamp right next to the swell data is to let me know the last timestamp on the background change. It seemed like the most elegant way of showing the successful background change, otherwise I’d be none-the-wiser staring at an old surf chart if the script failed silently (and maybe missing waves!).

This was fun. A huge mixture of things I really love: the Ocean, Linux, and Python. If you’re interested to see some of the other finer details, here are my dotfiles.

And on that note, first light is here and… as you can so awesomely see from my screenshot… there’s serious swell out in the water (6.5+ ft with a decent period). I’m out!

Surf’s up!