Part of: https://github.com/NixOS/nixpkgs/issues/108938 meta = with stdenv.lib; is a widely used pattern. We want to slowly remove the `stdenv.lib` indirection and encourage people to use `lib` directly. Thus let’s start with the meta field. This used a rewriting script to mostly automatically replace all occurances of this pattern, and add the `lib` argument to the package header if it doesn’t exist yet. The script in its current form is available at https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
31 lines
939 B
Nix
31 lines
939 B
Nix
{ lib, stdenv, makeWrapper
|
|
, dxx-rebirth, descent1-assets, descent2-assets }:
|
|
|
|
let
|
|
generic = ver: assets: stdenv.mkDerivation {
|
|
name = "d${toString ver}x-rebirth-full-${assets.version}";
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
buildCommand = ''
|
|
mkdir -p $out/bin
|
|
|
|
makeWrapper ${dxx-rebirth}/bin/d${toString ver}x-rebirth $out/bin/descent${toString ver} \
|
|
--add-flags "-hogdir ${assets}/share/games/descent${toString ver}"
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Descent ${toString ver} using the DXX-Rebirth project engine and game assets from GOG";
|
|
homepage = "https://www.dxx-rebirth.com/";
|
|
license = with licenses; [ free unfree ];
|
|
maintainers = with maintainers; [ peterhoeg ];
|
|
platforms = with platforms; linux;
|
|
hydraPlatforms = [];
|
|
};
|
|
};
|
|
|
|
in {
|
|
d1x-rebirth-full = generic 1 descent1-assets;
|
|
d2x-rebirth-full = generic 2 descent2-assets;
|
|
}
|