{"id":14982632,"url":"https://github.com/bollos00/libremines","last_synced_at":"2025-04-06T12:11:36.710Z","repository":{"id":43358500,"uuid":"254907990","full_name":"Bollos00/LibreMines","owner":"Bollos00","description":"A Free/Libre and Open Source Software Qt based Minesweeper game available for GNU/Linux, FreeBSD and Windows systems.","archived":false,"fork":false,"pushed_at":"2024-11-08T00:16:30.000Z","size":6216,"stargazers_count":82,"open_issues_count":3,"forks_count":11,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-30T11:09:01.699Z","etag":null,"topics":["cpp","game","minesweeper","qt","qt5","qt6"],"latest_commit_sha":null,"homepage":"https://bollos00.github.io/LibreMines/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Bollos00.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-11T16:24:56.000Z","updated_at":"2025-03-04T12:50:21.000Z","dependencies_parsed_at":"2024-01-17T04:26:29.041Z","dependency_job_id":"4fbd22e6-d65d-4a76-95cb-610083f7ebd6","html_url":"https://github.com/Bollos00/LibreMines","commit_stats":{"total_commits":211,"total_committers":10,"mean_commits":21.1,"dds":0.1090047393364929,"last_synced_commit":"9cf52ae171e9afbb1d58f22dfd3b4e3219cc90db"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bollos00%2FLibreMines","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bollos00%2FLibreMines/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bollos00%2FLibreMines/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bollos00%2FLibreMines/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bollos00","download_url":"https://codeload.github.com/Bollos00/LibreMines/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247478324,"owners_count":20945266,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","game","minesweeper","qt","qt5","qt6"],"created_at":"2024-09-24T14:05:46.683Z","updated_at":"2025-04-06T12:11:36.689Z","avatar_url":"https://github.com/Bollos00.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [LibreMines](https://github.com/Bollos00/LibreMines)\n\n![](./share/Screenshots/Screenshot4.png)\n\n## Introduction\n\nLibreMines is a [Free/Libre](https://en.wikipedia.org/wiki/Free_software) and [Open Source](https://en.wikipedia.org/wiki/Open-source_software) software Qt based Minesweeper clone available for GNU/Linux, FreeBSD and Windows systems.\n\nThe game has dark and light themes, is widely customizable, has options to create customizable fields, allows the user to play with the keyboard, among other things.\n\nThe source code is licensed under the [GNU General Public License at version 3](https://www.gnu.org/licenses/gpl-3.0.en.html) (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](https://creativecommons.org/licenses/by-sa/4.0/), this includes all files on the `share` directory.\n\n## Installing from Package Manager\n\n### Arch User Repository\n\n[LibreMines is available on the Arch User Repository](https://aur.archlinux.org/packages/libremines/). With `yay` it can be installed with:\n\n```sh\nyay -S libremines\n```\n\n### FreeBSD\n\n[LibreMines is available in FreeBSD ports tree](https://www.freshports.org/games/LibreMines). With `pkg` it can be installed with:\n\n```sh\npkg install libremines\n```\n\n### Flatpak\n\nThere is a [package for LibreMines available on FlatHub](https://flathub.org/apps/details/io.github.Bollos00.LibreMines). The package can be installed, via command line, with:\n\n```sh\nflatpak install flathub io.github.Bollos00.LibreMines\n```\n\n## Binary installation for Windows\n\nFor windows systems, you can just get one of the releases [here](https://github.com/Bollos00/LibreMines/releases). And follow those steps:\n\n* Make sure you have [Microsoft Visual C++ Redistributable](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist) installed.\n* Download the file `libremines_vX.X.X_windows_release.zip` of the last version available;\n* Extract it on your preferred location;\n\nThe executable `libremines.exe` will be inside the folder extracted. You can also add a Desktop shortcut or put it on the taskbar.\n\n## Installing from the source code\n\n### Installation Dependencies\n\nThe following dependencies are required for building and running LibreMines:\n* [Qt Core](https://doc.qt.io/qt-5/qtcore-index.html) \u003e= 5.12\n* [Qt Gui](https://doc.qt.io/qt-5/qtgui-index.html) \u003e= 5.12\n* [Qt Widgets](https://doc.qt.io/qt-5/qtwidgets-index.html) \u003e= 5.12\n* [Qt SVG](https://doc.qt.io/qt-5/qtsvg-index.html) \u003e= 5.12\n* [Qt Multimedia](https://doc.qt.io/qt-5/qtmultimedia-index.html) \u003e= 5.12\n* [CMake](https://cmake.org/) \u003e= 3.1\n\nOn Arch Linux and derivatives systems, the dependencies can be installed with `pacman`:\n```sh\nsudo pacman -S base-devel qt6-base qt6-svg qt6-multimedia cmake\n```\n\nFor Ubuntu, you can install the dependencies with the following command:\n```sh\nsudo apt-get install build-essential qt6-base-dev cmake libqt6svg6-dev qt6-multimedia-dev libgl1-mesa-dev\n```\n\nOn Fedora, install the dependencies with:\n```sh\nsudo dnf install qt6-qtbase-devel qt6-qtsvg-devel cmake qt6-qtmultimedia-devel git\n```\n\nOn FreeBSD systems, install the packages [qt6-base](https://www.freshports.org/devel/qt6-base), [qt6-svg](https://www.freshports.org/devel/qt6-svg), [qt6-multimedia](https://www.freshports.org/devel/qt6-multimedia) [git](https://www.freshports.org/devel/git/) and [cmake](https://www.freshports.org/devel/cmake/).\n\n```sh\nsu -\npkg install qt6-base qt6-svg qt6-multimedia git cmake\n```\n\nFor others systems, check the [qt online installers](https://download.qt.io/official_releases/online_installers/) or your preferred package manager.\n\n### Building\n\nIn order to build LibreMines from the source code, follow those steps:\n```sh\ngit clone https://github.com/Bollos00/LibreMines.git\ncd LibreMines\nmkdir build \u0026\u0026 cd build\ncmake -DCMAKE_INSTALL_PREFIX=/usr/local ..\nmake\n```\n\nYou can also get a stable release from [here](https://github.com/Bollos00/LibreMines/releases).\n\nNote 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).\n\nThe executable `libremines` will be generated in the build directory, now it is possible to run it with:\n```sh\n./libremines\n```\n\n### Installing on the system (Unix only)\n\nAt least, if you want install LibreMines on your system, use the following command:\n```sh\nsudo make install\n```\n\nFor uninstall LibreMines, on the `build` directory, run:\n```sh\nsudo xargs rm \u003c install_manifest.txt\n```\n\nOr manually remove the files listed on `install_manifest.txt`.\n\n\n## How to play\n\n### First Steps\n\nWhen you initialize the application, you will face this screen:\n\n![](./share/Screenshots/Screenshot0.png)\n\n\nHere 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 those options and you will be ready to start. (Note the options on the upper left of the screen).\n\nYou will start the timer of the new game when you release the first cell, you can play with your mouse or with your keyboard.\n\n### Playing with the mouse\n\n* **Left Click**: release the cell which the mouse is pointing on;\n* **Right Click**: flag/unflag the cell which the mouse is pointing on.\n\n### Playing with the keyboard\n\nFor activate the keyboard controller mode, press one of the following keys: **A|S|D|W**\n\n* **Escape**: Exit keyboard controller mode;\n\n* **A**: Move Current Cell Left;\n\n* **S**: Move Current Cell Downwards;\n\n* **D**: Move Current Cell Right;\n\n* **W**: Move Current Cell Upwards;\n\n* **O**: Release Current Cell;\n\n* **P**: Flag/Unflag Current Cell;\n\n* **Space**: Locate current cell on middle of the scroll bar;\n\n* **CTRL + R**: Restart the game;\n\n* **CTRL + SHIFT + P**: Save minefield as image;\n\nIf you do not feel comfortable with those keys, you can edit them going to the main menu, then Options \u003e Preferences.\n\nTip: hold the **CTRL** modifier while moving in order to move faster.\n\n## Contributing\n\nAll kinds of contributions are welcome on this project. You can help:\n\n* Making artworks (SVG) for [minefield themes](https://github.com/Bollos00/LibreMines/blob/master/share/minefield_themes/README.md) and new faces reaction;\n* Documenting the source code and making tutorials of the game;\n* Sharing the game in order to attract more users;\n* Adapting the software for other Operational Systems;\n* Packaging the software for other distributions;\n* Increasing the playability and adding new features by making changes on the source code;\n* Reporting new [issues](https://github.com/Bollos00/LibreMines/issues) or solving existing ones;\n* Adding or improve the [translations](https://github.com/Bollos00/LibreMines/blob/master/etc/translations/README.md).\n\n# Third party Repositories used in this software\n* [TwEmoji](https://github.com/twitter/twemoji)\n* [OpenEmoji](https://github.com/hfg-gmuend/openmoji)\n* [socialify](https://github.com/wei/socialify)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbollos00%2Flibremines","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbollos00%2Flibremines","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbollos00%2Flibremines/lists"}