LibreMines

A Free/Libre and Open Source Software Qt based Minesweeper game available for GNU/Linux, FreeBSD, MacOS and Windows systems.

View on GitHub

LibreMines

Introduction

LibreMines is a Free/Libre and Open Source software Qt based Minesweeper clone available for GNU/Linux, FreeBSD, macOS and Windows systems.

The game has dark and light themes, is widely customizable, has options to create customizable fields, allows the user to play even with the keyboard.

The source code is licensed under the GNU General Public License at version 3 (or any later version), this includes all files inside the src directory. The artworks are licensed under the Creative Commons Attribution-Share Alike 4.0 International, this includes all files on the share directory.

Installing from Package Manager

Arch User Repository

LibreMines is available in Arch User Repository. It can be installed with an AUR helper:

To install using yay:

yay -Sy libremines

To install using paru:

paru -Sy libremines

To install manually using git without an AUR helper:

git clone https://aur.archlinux.org/libremines.git && cd libremines
makepkg -si

FreeBSD

LibreMines is available in FreeBSD ports tree. It can be installed with pkg:

pkg install libremines

Flatpak

LibreMines is available in FlatHub. It can be installed with flatpak:

flatpak install flathub io.github.Bollos00.LibreMines

Downloads & Releases

Pre-built binaries are available for multiple platforms. Download the latest release from the Releases page.

Available Formats

Platform Format Qt Version Architecture Notes
Linux AppImage Qt6 x86_64 Portable, no installation required
macOS .app Bundle Qt5/Qt6 Intel & ARM64 Native macOS application bundles
Windows ZIP Archive Qt5/Qt6 x64 Includes all dependencies

Compiling from the source code

Installation Dependencies

The following dependencies are required for building and running LibreMines:

On Arch Linux and derivatives, the dependencies can be installed with pacman:

sudo pacman -Sy --needed base-devel qt6-base qt6-svg qt6-multimedia cmake

On Debian Linux and derivatives, the dependencies can be installed with apt:

sudo apt-get install build-essential qt6-base-dev cmake libqt6svg6-dev qt6-multimedia-dev libgl1-mesa-dev

On Fedora Linux and derivatives, the dependencies can be installed with dnf:

sudo dnf install qt6-qtbase-devel qt6-qtsvg-devel cmake qt6-qtmultimedia-devel git

On FreeBSD systems, the dependencies can be installed with pkg:

su -
pkg install qt6-base qt6-svg qt6-multimedia git cmake

On macOS systems, the dependencies can be installed with homebrew:

brew install cmake ninja qt

For others systems, check out the qt online installers or use your preferred package manager to install dependencies.

Building

In order to build LibreMines from the source code, run these commands:

git clone https://github.com/Bollos00/LibreMines.git
cd LibreMines
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..
make

You can also get a stable release from here.

Note that the option CMAKE_INSTALL_PREFIX determines the target directory of the installation. If you want to install LibreMines using Qt5 libraries, additionally pass the argument -DUSE_QT6="NO" on the fourth step (the cmake part).

The executable libremines will be generated in the build directory, now it is possible to run it with:

./libremines

Installing on the system (Unix only)

At least, if you want install LibreMines on your system, use the following command:

sudo make install

To uninstall LibreMines, run this while on the build directory:

sudo xargs rm < install_manifest.txt

Or manually remove the files listed on install_manifest.txt.

How to play

First Steps

When you initialize the application, you will face this screen:

Here you can start to play one of the predefined game modes: easy, medium and hard; or you can customize the field the way that you want to play. Select one of these options and you are ready to start. (Also notice “Options” on the menu bar).

You will start the timer when you release the first cell, you can play with your mouse or with your keyboard.

Playing with the mouse

Playing with the keyboard

To activate the keyboard controller mode, press either W, A, S or D.

If you do not feel comfortable with these keys, you can edit them by going to the main menu, then Options > Preferences.

Tip: Hold the CTRL modifier while moving in order to move faster.

Contributing

All kinds of contributions are welcome on this project. You can help by:

Third party Repositories used in this software