1{ lib
2, stdenv
3, fetchFromGitHub
4, cmake
5, makeWrapper
6, shared-mime-info
7, wxGTK32
8, boost
9, Cocoa
10}:
11
12stdenv.mkDerivation {
13 pname = "wxFormBuilder";
14 version = "unstable-2022-09-26";
15
16 src = fetchFromGitHub {
17 owner = "wxFormBuilder";
18 repo = "wxFormBuilder";
19 rev = "e2e4764f1f4961c654733287c6e84d7738b4ba2b";
20 fetchSubmodules = true;
21 sha256 = "sha256-DLdwQH3s/ZNVq+A/qtZRy7dA/Ctp2qkOmi6M+rSb4MM=";
22 };
23
24 nativeBuildInputs = [
25 cmake
26 ] ++ lib.optionals stdenv.isDarwin [
27 makeWrapper
28 ] ++ lib.optionals stdenv.isLinux [
29 shared-mime-info
30 ];
31
32 buildInputs = [
33 wxGTK32
34 boost
35 ] ++ lib.optionals stdenv.isDarwin [
36 Cocoa
37 ];
38
39 preConfigure = ''
40 sed -i 's/FATAL_ERROR/WARNING/' cmake/revision-git*.cmake
41 sed -i '/fixup_bundle/d;/codesign/d' cmake/macros.cmake
42 '';
43
44 postInstall = lib.optionalString stdenv.isDarwin ''
45 mkdir -p $out/{Applications,bin}
46 mv $out/wxFormBuilder.app $out/Applications
47 makeWrapper $out/{Applications/wxFormBuilder.app/Contents/MacOS,bin}/wxFormBuilder
48 '';
49
50 meta = with lib; {
51 description = "RAD tool for wxWidgets GUI design";
52 homepage = "https://github.com/wxFormBuilder/wxFormBuilder";
53 license = licenses.gpl2Only;
54 maintainers = with maintainers; [ matthuszagh wegank ];
55 };
56}