Skip to content

Neverwinter Nights: add the game#10981

Closed
abbradar wants to merge 2 commits intoNixOS:masterfrom
abbradar:nwn
Closed

Neverwinter Nights: add the game#10981
abbradar wants to merge 2 commits intoNixOS:masterfrom
abbradar:nwn

Conversation

@abbradar
Copy link
Copy Markdown
Member

This adds a native Linux version of Neverwinter Nights, with data files extracted from the GOG distribution and Linux client taken from official BioWare server. The packaging script was greatly inspired by https://aur.archlinux.org/packages/nwn-gog/ , but changed to patch necessary things for NixOS and also to improve several things.

NWN also requires binkplayer which was added too. Unfortunately, RAD Game Tools disallowed redistribution or automated download of the player (via e-mail), so a user needs to download it by himself.

The main concern of this (so this is a PR) is that this package may be too specific for Nixpkgs. On one hand, it's a native Linux (albeit proprietary) application with a very non-trivial building script. On the other, it's an old game which may be needed by only a few people, of not only by myself. What policy do we have to decide whether a particular package is suited for Nixpkgs?

P.S.: The build sequence is indeed very non-trivial, with very few documentation from BioWare on how actually to build a native distribution. Also the work done by the author of nwmovies, nwuser etc is enormous, he does a lot of binary patching of the game in memory, dynamically searching for key places using a disassembler library (!). Both the authors of those binary patches and of the source nwn-gog AUR package deserve credits ^_^.

@vcunat
Copy link
Copy Markdown
Member

vcunat commented Nov 12, 2015

AFAIK there's some general opposition against packages needing requireFile. I would personally include such packages, as we mark them unfree so they don't even appear to be present by default. (Or we could even invent a new flag meaning that automated installation isn't possible.) IIRC some suggested factoring these into a separate repository, as composition is relatively easy, but I haven't noticed anyone creating such.

@vcunat vcunat mentioned this pull request Nov 16, 2015
@abbradar
Copy link
Copy Markdown
Member Author

One notable difference from #10006 is that this derivation uses only resources from Windows packages (extracting them). However, it does use requireFile, both for the source Windows package and for binkplayer which was disallowed to be downloaded automatically by authors.

cc @edolstra : what's your opinion on this?

@abbradar abbradar added 9.needs: reporter feedback This issue needs the person who filed it to respond 8.has: package (new) This PR adds a new package and removed old-label: new-package labels Nov 25, 2015
@joelmo joelmo mentioned this pull request Mar 2, 2016
@cleverca22 cleverca22 mentioned this pull request Mar 11, 2016
@rasendubi
Copy link
Copy Markdown
Member

(triage) requireFile is used in almost 30 packages now. Can this be rebased and merged?

@edolstra
Copy link
Copy Markdown
Member

No, we should not add more requireFile-based packages unless there is a really good reason. (E.g. OracleJDK, although I'd personally prefer to get rid of that one too.) This would be a candidate for the nixpkgs-warez repo if we ever create it.

@rasendubi
Copy link
Copy Markdown
Member

I think this PR can be closed then.

@joachifm joachifm closed this Jul 28, 2016
@abbradar
Copy link
Copy Markdown
Member Author

abbradar commented Aug 6, 2016

@edolstra Not really warez -- this package works with an official GOG version, how would you get it is on your conscience (I have it bought, for example).

👍 for closing this.

@abbradar abbradar mentioned this pull request Sep 3, 2016
7 tasks
@abbradar
Copy link
Copy Markdown
Member Author

If someone still has an interest for this, I have created a small repo for native games like this one which need non-free (in both senses of word) data but also non-trivial packaging to be playable: https://github.com/abbradar/nixpkgs-nonfree

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

8.has: package (new) This PR adds a new package 9.needs: reporter feedback This issue needs the person who filed it to respond

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants