nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib
2, stdenv
3, mkDerivation
4, fetchzip
5, installShellFiles
6, pkg-config
7, qmake
8, qtbase
9, kcoreaddons
10, kwidgetsaddons
11}:
12
13mkDerivation rec {
14 pname = "qelectrotech";
15 version = "0.8.0";
16
17 src = fetchzip {
18 url = "https://git.tuxfamily.org/qet/qet.git/snapshot/qet-${version}.tar.gz";
19 sha256 = "sha256-op2vnMPF9bNnHGphWFB/HEeoThE6tX+9UvX8LWVwkzI=";
20 };
21
22 postPatch = ''
23 substituteInPlace qelectrotech.pro \
24 --replace 'GIT_COMMIT_SHA="\\\"$(shell git -C \""$$_PRO_FILE_PWD_"\" rev-parse --verify HEAD)\\\""' \
25 'GIT_COMMIT_SHA="\\\"${version}\\\""' \
26 --replace "COMPIL_PREFIX = '/usr/local/'" \
27 "COMPIL_PREFIX = '$out/'" \
28 --replace "INSTALL_PREFIX = '/usr/local/'" \
29 "INSTALL_PREFIX = '$out/'"
30 '';
31
32 nativeBuildInputs = [
33 installShellFiles
34 pkg-config
35 qmake
36 ];
37
38 buildInputs = [
39 kcoreaddons
40 kwidgetsaddons
41 qtbase
42 ];
43
44 qmakeFlags = [
45 "INSTALLROOT=$(out)"
46 ];
47
48 installPhase = ''
49 runHook preInstall
50
51 install -Dm555 qelectrotech $out/bin/qelectrotech
52
53 install -Dm444 -t $out/share/applications misc/qelectrotech.desktop
54 install -Dm444 -t $out/share/applications misc/x-qet-titleblock.desktop
55 install -Dm444 -t $out/share/applications misc/x-qet-element.desktop
56 install -Dm444 -t $out/share/applications misc/x-qet-project.desktop
57
58 mkdir -p $out/share/qelectrotech
59 cp -r elements $out/share/qelectrotech
60 cp -r titleblocks $out/share/qelectrotech
61 cp -r lang $out/share/qelectrotech
62 cp -r examples $out/share/qelectrotech
63
64 mkdir -p $out/share/icons/hicolor
65 cp -r ico $out/share/icons/hicolor
66
67 runHook postInstall
68 '';
69
70 meta = with lib; {
71 description = "Free software to create electric diagrams";
72 homepage = "https://qelectrotech.org/";
73 license = licenses.gpl2;
74 maintainers = with maintainers; [ yvesf ];
75 platforms = qtbase.meta.platforms;
76 broken = stdenv.isDarwin;
77 };
78}