Kookbook 0.3.0 released

I recently released version 0.3.0 of my recipe manager application Kookbook – find it in git in KDE Invent or as released tarballs in https://download.kde.org/stable/kookbook/

Changes since last time is more or less “Minor bugfixes and a Qt6 port” – nothing as such noteworthy unless you aim to get rid of Qt5 on your system.

so what is kookbook?
It is a simple recipe viewer that works with semi-structured markdown. More details can be seen in the quite old 0.1.0 announcement

At some point I should do a 10 recipe example collection, but my personal collection is in danish, so I’m not sure it is going to be useful. Unless someone will donate me some handfuls of pre-formatted recipes, I will happily announce it.

KookBook 0.2.1 – now actually kind of useful

There was a snag in the KookBook 0.2.0 release, and 0.2.1 is available.

Get it here: kookbook-0.2.1.tar.xz

Btw, anyone can tell me the purpose of

compared to

When would anyone use the former?

KookBook 0.2.0 available – now manage your cooking recipes better

I got a bit traction on KookBook and decided to fix a few bugs, mostly in the touch client, and add some features.

Get it here: kookbook-0.2.0.tar.xz

KookBook is now also available in Debian, thanks to Stuart Prescott

KRecipe converter
Some people has a large recipe collection in KRecipe and would like to try out KookBook. I wrote a convertion python script now available. It works in “current directory” and reads the krecipe database from there and outputs KookBook markdown files in same repository. It has so far been tried on 1 database.

Bug fixes

  • Fix install of touch client
  • Fixes in desktop files
  • Fixes in touch client’s file open dialog
  • Touch client now show images in recipes
  • You could end up with no dock widgets and no toolbar and no way to recover in the desktop client. This is now fixed
  • Build fixes

Future
Some people have started talking about maybe translation of the interface. I might look into that in the future.

And I wouldn’t be sad if some icon artists provided me with a icon slightly better than the knife I drew. Feel free to contact me if that’s the case.

Happy kooking!

Kolorfill 0.1.0 released

Continuing in Aurelien Gateau‘s release month, where I recently joined in with Kookbook, I’m now also following up with Kolorfill, an app I also described in the past.

It is a simple flood filling game written using the amazing Kirigami framework.

Kolorfill

Have fun with it.

Kookbook 0.1 – write and manage your kitchen recipes

Release Time

A little while ago, I blogged about an application I was writing for my cooking recipes.

I have now gotten to a point where I will declare it version 0.1. The release can be found on a KDE Download server near you: https://download.kde.org/unstable/kookbook/kookbook-0.1.0.tar.xz.mirrorlist.

Desktop app

As written back then, Kookbook is basically displaying markdown, parses semi-structured markdown for ingredients and tags and allows accessing the recipes that way. Kookbook also offers to open a system editor for editing the content.

This is the “normal” view:

Support for images in recipes has also been added since previous blog post.

Mobile app
Since the may blog post, I have also written a little more basic touch-friendly user interface. It does not offer the full set of desktop features, namely it doesn’t offer to launch an editor for you, and it also only allows to access the recipes thru their names, not thru all the other ways of finding recipes. Though the last part is up to discussion for further releases.

The main page looks like

And lets you search thru the titles to find the one you are after.

The recipe view is more or less the same.

The code

The code itself is mit/x11 licensed, and contains a couple of interesting bits that others might want to take advantage of:

  • Kirigami file dialog. Could be polished and upstreamed.
  • Qt Markdown capability (with libdiscount). Could be librarifyied

Have fun
Go forth, do cooking. And feel free to share recipes. Or create patches.

Post Akademy

So, it has been a busy week of Qt and KDE hacking in the beautiful city of Vienna.
Besides getting quite some of the Viennese staple food, schnitzel, it was an interesting adventure of getting smarter.

  • Getting smarter about making sure what happens in North Korea doesn’t stay in North Korea
  • Getting smarter about what is up with this newfangled Wayland technology and how KDE uses it
  • Getting smarter about how to Konquer the world and welcoming new contributors
  • Getting smarter about opensource licensing compliance
  • Getting smarter about KItinerary, the opensource travel assistant
  • Getting smarter about TNEF, a invitation transport format that isn’t that neutral
  • Getting smarter about Yocto, automotive and what KDE can do

And lots of other stuff.

Besides getting smarter, also getting to talk to people about what they do and to write some patches are important events.
I also wrote some code. Here is a highlight:

And a lot of other minor things, including handling a couple of Debian bugs.

What I’m hoping to either put to my own todolist, or preferably others, is

I felt productive, welcome and … ready to sleep for a week.

Invite me to your meetings

I was invited by my boss to a dinner. He uses exchange or outlook365 or something like that. The KMail TNEF parser didn’t succeed in parsing all the info, so I’m kind of trying to fix it.

But I need test data. From Exchange or outlook or outlook365. That I can add to the repoository for unit tests.

So if you can help me generate test data, please setup a meeting and invite me. publicinvites@sune.vuorela.dk

Just to repeat. The data will be made public.

The smart button

I don’t always understand why people do things in some ways.

80bit x87 FPU

Once again, I got surprised by the 80 bit x87 FPU stuff.

First time was around a decade ago. Back then, it was something along the lines of a sort function like:

With some values, first and would be smaller than second, and second smaller than first. All depending on which one got truncated to 64 bit, and which one came directly from the 80bit fpu.

This time, the 80 bit version when cast to integers was 1 smaller than the 64 bit version.

Oh. The joys of x86 CPU’s.

Partially initialized objects

I found this construct some time ago. It took some reading to understand why it worked. I’m still not sure if it is actually legal, or just works only because m_derivedData is not accessed in Base::Base.

Top