nixpkgs/pkgs/development/tools/thrust/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
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
2021-01-11 10:38:22 +01:00

48 lines
1.6 KiB
Nix

{ lib, stdenv, fetchurl, buildEnv, makeWrapper, glib, alsaLib , dbus, gtk2, atk
, pango, freetype, fontconfig, gdk-pixbuf , cairo, cups, expat, nspr, gconf, nss
, xorg, libcap, unzip
}:
let
thrustEnv = buildEnv {
name = "env-thrust";
paths = [
stdenv.cc.cc glib dbus gtk2 atk pango freetype fontconfig gdk-pixbuf
cairo cups expat alsaLib nspr gconf nss xorg.libXrender xorg.libX11
xorg.libXext xorg.libXdamage xorg.libXtst xorg.libXcomposite
xorg.libXi xorg.libXfixes xorg.libXrandr xorg.libXcursor libcap
];
};
in stdenv.mkDerivation rec {
pname = "thrust";
version = "0.7.6";
src = fetchurl {
url = "https://github.com/breach/thrust/releases/download/v${version}/thrust-v${version}-linux-x64.zip";
sha256 = "07rrnlj0gk500pvar4b1wdqm05p4n9yjwn911x93bd2qwc8r5ymc";
};
buildInputs = [ thrustEnv makeWrapper unzip ];
phases = [ "installPhase" "fixupPhase" ];
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/libexec/thrust
unzip -d $out/libexec/thrust/ $src
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
$out/libexec/thrust/thrust_shell
wrapProgram $out/libexec/thrust/thrust_shell \
--prefix "LD_LIBRARY_PATH" : "${thrustEnv}/lib:${thrustEnv}/lib64"
ln -s $out/libexec/thrust/thrust_shell $out/bin
'';
meta = with lib; {
description = "Chromium-based cross-platform / cross-language application framework";
homepage = "https://github.com/breach/thrust";
license = licenses.mit;
maintainers = [ maintainers.osener ];
platforms = [ "x86_64-linux" ];
};
}