Files
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

84 lines
1.4 KiB
Nix

{
atk,
buildFHSEnv,
cairo,
dpkg,
gdk-pixbuf,
glib,
gtk2-x11,
makeWrapper,
pango,
lib,
stdenv,
xorg,
}:
{
src,
toolName,
version,
...
}@attrs:
let
wrapBinary = libPaths: binaryName: ''
wrapProgram "$out/bin/${binaryName}" \
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libPaths}"
'';
pkg = stdenv.mkDerivation rec {
inherit (attrs) version src;
name = "${toolName}-${version}";
meta =
with lib;
{
homepage = "http://bitscope.com/software/";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [
vidbina
];
}
// (attrs.meta or { });
nativeBuildInputs = [
makeWrapper
dpkg
];
libs =
attrs.libs or [
atk
cairo
gdk-pixbuf
glib
gtk2-x11
pango
xorg.libX11
];
dontBuild = true;
unpackPhase =
attrs.unpackPhase or ''
dpkg-deb -x ${attrs.src} ./
'';
installPhase =
attrs.installPhase or ''
mkdir -p "$out/bin"
cp -a usr/* "$out/"
${(wrapBinary libs) attrs.toolName}
'';
};
in
buildFHSEnv {
pname = attrs.toolName;
inherit (attrs) version;
runScript = "${pkg.outPath}/bin/${attrs.toolName}";
}
// {
inherit (pkg) meta name;
}