Tag Archives: Hitori

Building a GNOME nightly app: Hitori

Following on from earlier efforts to make Hitori a flatpak app, it’s now available as a GNOME nightly app (click here to install), built from git master.

Thanks to hard work by Alex Larsson and others, this was ridiculously easy (see the wiki page on it):

  1. Write flatpak manifest with source and build instructions for Hitori (test locally with flatpak-builder)
  2. Add .app file pointing to it in gnome-apps-nightly
  3. Wait for build to complete
  4. Add .flatpakref file pointing to the build in gnome-apps-nightly

Speaking of Hitori, I don’t have much time to maintain it at the moment, and there are some interesting open feature requests. If anybody is looking for a fun little project to take on, I am happy to mentor work on them.

Hitori available as an xdg-app preview

I’ve been playing a bit with xdg-app recently, and just spent half an hour packaging Hitori as an xdg-app bundle. It was remarkably easy — in fact, it only took 7 commands.

If you want to install it, make sure you’ve got xdg-app installed, then:

# Install http://sdk.gnome.org/keys/gnome-sdk.gpg to /usr/share/ostree/trusted.gpg.d first
# Then set up the runtimes (if you haven’t already)
xdg-app add-remote --user gnome-sdk http://sdk.gnome.org/repo/
xdg-app install-runtime --user gnome-sdk org.gnome.Platform 3.18
xdg-app install-runtime --user gnome-sdk org.freedesktop.Platform 1.2
# Add the repository for Hitori, then install it
xdg-app add-remote --user --no-gpg-verify pwithnall-hitori https://people.collabora.co.uk/~pwith/xdg-app/repos/hitori/
xdg-app install-app --user pwithnall-hitori org.gnome.Hitori
# Play the game!
xdg-app run org.gnome.Hitori

What works?

  • Playing the game
  • Use of X11
  • Icons
  • Desktop file

What doesn’t work (yet)?

  • GSettings access (I may have misconfigured this, because it’s supposed to work)
  • Help manual

I don’t plan to support this repository especially well, since it was just for playing around, but it shows that xdg-app is coming along nicely!


I've arrived about a week late to the party, but there are now some shiny new releases of Almanah, Hitori, Totem/totem-pl-parser (with my I'm-Bastien-Nocera hatbeard on) and libfolks for people to use and abuse. (Versions: 0.9.0, 0.3.2, 3.3.92, 3.3.92 and 0.6.8, respectively.) Many thanks to all the people who've done all the work on them this cycle (including all the bug fixing and running around which I was supposed to do; sorry about that).

Why so late? I was busy. University has been keeping my work queue full up for the past few months, and it's not going to ease off until June. Doing all these releases has made me realise what a bad maintainer I am for projects like Almanah. It's used by many people, but has seen few releases recently, and even less development work (basically none of which has been done by me). There's an ongoing plan to modernise its design, and I'm sad that I can't put any time into making this happen.

I'm putting Almanah up for adoption. Wanted: an enthusiastic new maintainer with big ideas for the project's future. It's a reasonably stable project, with a well documented, if a little crusty, code base. There's plenty of scope for new features, and I'll try and guide you as appropriate. Let me know if you're interested! If not, Almanah will continue to limp along as best I can manage.

Extended absence

The time has finally arrived, and I'm off on my travels in four days. I'll be away from the computer for up to two months, spending a month trekking in Chile, then a month doing various other things. I might be back in time for the GNOME 2.24 string freeze, but I should definitely be back in time to see the release. In my absence, I obviously won't be able to do any further work on this cycle, but I think all my current contributions are pretty much complete anyway. I won't be replying to mail for at least the period I'm in Chile.

I won't be around to see them get into the archives, but Stefan Ebner has been working on packaging both Diary (now called "Almanah" due to Fedora issues) and Hitori for Ubuntu. My thanks to him for his hard work on that, and patience in helping me fix all the nasty little autofoo problems.

I'll try to make an Almanah (Diary) 0.4 release before I go, but I want to leave as long as possible for translations to catch up with the several string changes.
Almanah 0.4.0 is out! The main change for this release is to rename it and fix some problems preventing it being packaged, and so it should be compatible with old databases. The build requirements haven't changed.

Hitori version 0.2

It's been a long time coming, but here's Hitori version 0.2!

As a short overview, the new version introduces:

  • Dynamic board sizing (allowing for boards from 5×5 to 10×10)
  • Rendering improvements, a Tangoisation, and a conversion to use GtkStyle
  • Relicense to GPLv3+
  • A new user manual!
  • Improvements to the algorithms, halving memory usage in the best case
  • A new icon by Jakub Szypulka
  • A desktop file

Hitori now depends on GTK+ >= 2.13, so it may not be easily compilable on some distributions, which is an unfortunate side-effect of using the new gtk_show_uri function.

As before, please contact me to report bugs.

I don't really have any plans to extend the program any further, but if anybody has any ideas, I'm open to them.

Project announcement: Hitori

It's announcement time! I'd like to announce a little game I've been working on for a week or so (on and off), written because I found this amazing puzzle in a newspaper called Hitori.

A screenshot of Hitori.

Hitori is quite similar in style to Sudoku; probably because both are published by Nikoli. The objective is to remove cells from the grid so that only one of each digit remains in each column and row. However, you can't shade two touching cells, and all the unshaded cells must be connected.

I wrote an application to let you play Hitori on the computer, called – funnily enough – Hitori. At the moment, it supports board generation (algorithm courtesy of a mathematical friend of mine), full validation of solutions against the three rules, hint support, undo/redo, and two different ways of "tagging" cells as you work out the puzzle, to make it a little easier.

Version 0.1 is available as a source download, or you can pull the latest revision from the Bazaar repository at http://tecnocode.co.uk/hitori/ by executing the following commands:

mkdir hitori
cd hitori
bzr init --dirstate-tags
bzr pull http://tecnocode.co.uk/hitori

I've updated the commands to reflect the fact that the repository needs tag support.

If anybody's got any suggestions for features, the only things I'm thinking of adding at the moment are:

  • A shiny icon, if somebody could help me out with it!
  • Support for different board sizes.
  • Looking into themeable colours (or at least making sure the way they're done is HIG-compliant, because at the moment the RGB values are hardcoded).

That's it! If you've got any feedback, comment below, or contact me. :)