about summary refs log tree commit diff
path: root/pkgs/games/humblebundle/opus-magnum.nix
Commit message (Collapse)AuthorAgeFilesLines
* games: Use "mono" instead of "mono50"aszlig2019-02-131-2/+2
| | | | | | | | | | | The use of mono50 was just an old relic where I was debugging some issue with a game, but I used it as a template for packaging other games, so it spread throughout the code base. I've tested all these games just to make sure they still work with the latest version. Signed-off-by: aszlig <aszlig@nix.build>
* games/opus-magnum: Update to latest versionaszlig2018-02-041-79/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstream changelog summarized: * Switch to DirectSound on Windows. * Remove iron-on patch link. * The Hexstabilized Salt puzzle now requires 18 outputs instead of 6. * Add a new journal issue that is entirely production puzzles. * Add a hidden option that will hopefully fix some of the sound issues that were introduced when we rewrote our audio backend. * Add a new issue to the journal with some "battlefield medicine" themed puzzles. * The game's content files are now opened as read-only, which should hopefully fix some of the antivirus-related crashes some players have been experiencing. * Atom spawn/consume effects on glyphs are now cleared when the simulation is stopped, which should fix a bug causing "ghost atoms" to linger on the board. I've made this summary by picking the relevant parts of the upstream Steam announcement page at: http://steamcommunity.com/games/558990/announcements The best part about the changes is that content files are now opened read-only, so we can finally drop all that patching. This also is the first time I can say something positive about AV software, so thanks for bugging Zachtronics into fixing this issue for Nix as well :-) Signed-off-by: aszlig <aszlig@nix.build>
* games/humblebundle: Add Opus Magnumaszlig2017-12-131-0/+118
Upstream URL: http://www.zachtronics.com/opus-magnum/ For this I've ripped apart all of the bundled shared objects including Mono itself, so we're using Mono from <nixpkgs> instead of the provided one. In addition to that I had to patch the intermediate language because the game really doesn't cope very well when the data files are read-only, which is the case in the Nix store. Instead of replacing the CIL, I could have used an LD preloader as well, but I think this is way less error-prone even though we had to patch a few internal classes where we couldn't match the name properly. Compared to this an LD preloader would involve patching several symbols and also implement some logic to distinguish between files read from the data directory and files read/written to XDG_DATA_HOME. The reason why I added $HOME/Desktop to the required sandbox paths is because the game saves gif images into that directory. Signed-off-by: aszlig <aszlig@nix.build>