forked from mirrors/nixpkgs
00c451ad40
Fixes a bug where the build system tried to call `git` to embed the release tag revision into the binary, which isn't allowed. Easily fixed with `substituteInPlace`. Also updates the expression to be a little closer to "standard" expressions (e.g. consistent indentation, importing `stdenv` instead of `lib` and `mkDerivation`, etc.) Signed-off-by: Austin Seipp <aseipp@pobox.com>
48 lines
1.3 KiB
Nix
48 lines
1.3 KiB
Nix
{ stdenv, lib, fetchFromGitHub
|
|
, qtbase, qttools, qmake, wrapQtAppsHook
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "librepcb";
|
|
version = "0.1.5";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = pname;
|
|
repo = pname;
|
|
rev = version;
|
|
sha256 = "0ag8h3id2c1k9ds22rfrvyhf2vjhkv82xnrdrz4n1hnlr9566vcx";
|
|
fetchSubmodules = true;
|
|
};
|
|
|
|
nativeBuildInputs = [ qmake qttools wrapQtAppsHook ];
|
|
buildInputs = [ qtbase ];
|
|
|
|
qmakeFlags = ["-r"];
|
|
enableParallelBuilding = true;
|
|
|
|
postInstall = ''
|
|
mkdir -p $out/share/librepcb/fontobene
|
|
cp share/librepcb/fontobene/newstroke.bene $out/share/librepcb/fontobene/
|
|
'';
|
|
|
|
# the build system tries to use 'git' at build time to find the HEAD hash.
|
|
# that's a no-no, so replace it with a quick hack. NOTE: the # adds a comment
|
|
# at the end of the line to remove the git call.
|
|
patchPhase = ''
|
|
substituteInPlace ./libs/librepcb/common/common.pro \
|
|
--replace 'GIT_COMMIT_SHA' 'GIT_COMMIT_SHA="\\\"${src.rev}\\\"" # '
|
|
'';
|
|
|
|
preFixup = ''
|
|
wrapQtApp $out/bin/librepcb
|
|
'';
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "A free EDA software to develop printed circuit boards";
|
|
homepage = "https://librepcb.org/";
|
|
maintainers = with maintainers; [ luz thoughtpolice ];
|
|
license = licenses.gpl3;
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|