···
1
-
{ autoPatchelfHook, bzip2, cairo, coreutils, fetchurl, gdk-pixbuf, pango, gtk2, kcoreaddons, ki18n, kio, kservice, lib, qt4, qtbase, stdenv, runtimeShell }:
1
+
{ lib, autoPatchelfHook, bzip2, cairo, coreutils, fetchurl, gdk-pixbuf, glibc, pango, gtk2, kcoreaddons, ki18n, kio, kservice
2
+
, stdenv, runtimeShell, unzip
3
-
stdenv.mkDerivation rec {
8
-
url = "https://www.scootersoftware.com/${pname}-${version}_amd64.deb";
9
-
sha256 = "sha256-zQZrCjXzoOZ5o5M4t1n5/HhGoGTcZSj5rlf9Uz9UZko=";
9
+
throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
12
+
x86_64-linux = fetchurl {
13
+
url = "https://www.scootersoftware.com/${pname}-${version}_amd64.deb";
14
+
sha256 = "sha256-zQZrCjXzoOZ5o5M4t1n5/HhGoGTcZSj5rlf9Uz9UZko=";
17
+
x86_64-darwin = fetchurl {
18
+
url = "https://www.scootersoftware.com/BCompareOSX-${version}.zip";
19
+
sha256 = "sha256-dez30a1sp+4XuBBYhu07Vpn1+AUmX0Ni7aad7hy2ajQ=";
22
+
aarch64-darwin = srcs.x86_64-darwin;
25
+
src = srcs.${stdenv.hostPlatform.system} or throwSystem;
18
-
mkdir -p $out/bin $out/lib $out/share
19
-
cp -R usr/share $out/
27
+
linux = stdenv.mkDerivation {
28
+
inherit pname version src meta;
23
-
# Remove library that refuses to be autoPatchelf'ed
24
-
rm $out/lib/beyondcompare/ext/bcompare_ext_kde.amd64.so
35
+
mkdir -p $out/{bin,lib,share}
26
-
substituteInPlace $out/bin/bcompare \
27
-
--replace "/usr/lib/beyondcompare" "$out/lib/beyondcompare" \
28
-
--replace "/bin/bash" "${runtimeShell}"
37
+
cp -R usr/{bin,lib,share} $out/
30
-
# Create symlink bzip2 library
31
-
ln -s ${bzip2.out}/lib/libbz2.so.1 $out/lib/beyondcompare/libbz2.so.1.0
39
+
# Remove library that refuses to be autoPatchelf'ed
40
+
rm $out/lib/beyondcompare/ext/bcompare_ext_kde.amd64.so
34
-
nativeBuildInputs = [ autoPatchelfHook ];
42
+
substituteInPlace $out/bin/${pname} \
43
+
--replace "/usr/lib/beyondcompare" "$out/lib/beyondcompare" \
44
+
--replace "ldd" "${glibc.out}/bin/ldd" \
45
+
--replace "/bin/bash" "${runtimeShell}"
47
+
# Create symlink bzip2 library
48
+
ln -s ${bzip2.out}/lib/libbz2.so.1 $out/lib/beyondcompare/libbz2.so.1.0
51
+
nativeBuildInputs = [ autoPatchelfHook ];
67
+
dontConfigure = true;
68
+
dontWrapQtApps = true;
71
+
darwin = stdenv.mkDerivation {
72
+
inherit pname version src meta;
73
+
nativeBuildInputs = [ unzip ];
50
-
dontConfigure = true;
51
-
dontWrapQtApps = true;
76
+
mkdir -p $out/Applications/BCompare.app
77
+
cp -R . $out/Applications/BCompare.app
description = "GUI application that allows to quickly and easily compare files and folders";
···
homepage = "https://www.scootersoftware.com";
license = licenses.unfree;
62
-
maintainers = [ maintainers.ktor ];
63
-
platforms = [ "x86_64-linux" ];
90
+
maintainers = with maintainers; [ ktor arkivm ];
91
+
platforms = builtins.attrNames srcs;