Skip to main content

UXB Gtk

An implementation of the well-known ‘Mines’ game in Python, using the Gtk+ graphics library. This is derived from the author’s ‘Danger UXB’ game, but includes some additional features (notably a periodic boundary option) that were developed for this version. (Periodic boundaries have now been back-ported to ‘Danger UXB’).

There are no instructions on how to play. If it isn’t self-evident from the UI then I have failed. Please email me (see below) to tell me how to make it better.

There is no written language in the game, so there is no translation.

There are also no timers, clocks, or high-score charts. That way, every time you finish is an achievement. The emphasis is on the fun of playing the game rather than ‘winning’.

The most recent change (v1.1) introduces saving and restoring the game configuration (but not the game itself) between sessions.

Installation

For Version 1.1 the only supported platform is Linux, although in theory this game should play equally well on Windows or Mac. I would like to hear from anyone who can help with porting.

System Requirements:

  • Python 3

  • Gtk

  • Python Gtk+ bindings 3.4.2

Installation (Linux):

  1. Unzip the tar.gz somewhere.

  2. In a console window navigate to the UXBgtk-1.1 directory and run the following command as root (on Ubuntu/Debian use sudo):

    [sudo] python3 setup.py install

  3. On Ubuntu a desktop launcher is installed, which you should be able to find in the Dash and drag to the launcher bar.

Design Notes and Plans

It took me a while to get to grips with Gtk+, but here it is.

This version of the game includes a periodic boundary option. Hopefully it is fairly obvious from the button icons, but in any case some tinkering as you play should help you work out what does what. Certainly, if you are feeling a little jaded with the ‘normal’ game, you will find periodic boundary conditions add a little extra challenge…

I found a bug in the introspected bindings, where the Gtk.Grid.get_child_at() method is not mapped. I am assured this has been fixed in later versions of the bindings, and that the python3-gi package in Ubuntu 12.10 will include the fix. Meanwhile, a workaround has been implemented. It is planned to remove the workaround in later versions.

Please note, if you wish to use the workaround elsewhere, many of the methods needed for a full workaround have not been implemented in my fix.

Author:

Bob Bowles <bobjohnbowles@gmail.com>

Metadata

Release files for UXBgtk 1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for UXBgtk 1.1
File Size Uploaded Provenance Actions
UXBgtk-1.1.tar.gz 97.8 kB Without provenance Details for UXBgtk-1.1.tar.gz

Release files / UXBgtk-1.1.tar.gz

Download URL UXBgtk-1.1.tar.gz
Size 97.8 kB
Tags Source
SHA-256 checksum
How to use checksums
641c191f1ee1c10e86f682192f3a7e6e0692fc1ef5bfa40bd1df1e154cf6eb9c
BLAKE2b-256 checksum
How to use checksums
67e3413779989465953f33453b16c2321f7690ccb920fbad8b361d5fde76ffbf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for UXBgtk 1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.1 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page