11 releases
new 0.0.12 | Dec 7, 2024 |
---|---|
0.0.11 | Nov 8, 2024 |
0.0.8 | Jul 21, 2024 |
0.0.7 | May 22, 2024 |
0.0.1 | Sep 9, 2023 |
#339 in Unix APIs
243 downloads per month
110KB
2.5K
SLoC
lib_game_detector
A Rust library for detecting and parsing data about games installed on the system. Currently only supports Linux.
Description
This is a Rust library intended to be used for programs which need information on currently installed games, such as a games launcher, or mod manager. It can provide information such as what games are installed across multiple launchers (such as Steam and Heroic Games Launcher), where those games are installed, what command will launch them, and more.
Quick start
Install with cargo add lib_game_detector
or add the following to your Cargo.toml
:
[dependencies]
lib_game_detector = "0.0.12"
Usage
use lib_game_detector::{data::SupportedLaunchers, get_detector};
let detector = get_detector();
let detected_launchers = detector.get_detected_launchers();
let all_games = detector.get_all_detected_games();
let all_games_by_launcher = detector.get_all_detected_games_per_launcher();
let all_games_from_steam = detector.get_all_detected_games_from_specific_launcher(SupportedLaunchers::Steam);
Examples
- See rofi-games for an example which uses this library to find games and their box art to use for displaying in a launcher
- Check the examples folder
Currently supported game sources
- Steam
- Non-Steam games added as shortcuts are also supported. Make sure to restart Steam at least once for new shortcuts to be detected
- Heroic Games Launcher (Legendary, Nile and GOG)
- Lutris
- Bottles
- Only lists entries included in the Library
- Modded Minecraft (Prism Launcher, ATLauncher)
- Titles are given as
Minecraft - {instance name}
- Titles are given as
License
Dependencies
~2–13MB
~103K SLoC