Semi-working (not tested) derivation

This commit is contained in:
2026-03-07 08:31:32 +01:00
parent ce785645d6
commit f95b3e11e6
3 changed files with 233 additions and 0 deletions
+69
View File
@@ -0,0 +1,69 @@
{ stdenv
, fetchurl
, lsb-release
, pkg-config
, gtk2
, im
, libGLU
, ftgl
, lua
, lib
}:
stdenv.mkDerivation rec {
pname = "cd";
version = "5.14";
src = fetchurl {
url = "mirror://sourceforge/canvasdraw/${version}/Docs%20and%20Sources/${pname}-${version}_Sources.tar.gz";
sha256 = "sha256-xE7cBBExyaakKTPIeaZE1r2CjWCyikuFWpzeYV/Fr08=";
};
nativeBuildInputs = [
lsb-release
pkg-config
];
buildInputs = [
gtk2
im
libGLU
ftgl
lua
];
postPatch = ''
patchShebangs .
sed -i 's/\bcdpdf\b//g' src/Makefile
sed -i 's/\bcdluapdf5\b//g' src/Makefile
'';
makeFlags = [ "NO_DEPEND=Yes" "USE_PKGCONFIG=Yes" ];
NIX_CFLAGS_COMPILE = ''
-Wno-implicit-function-declaration
-Wno-incompatible-pointer-types
'';
installPhase = ''
runHook preInstall
mkdir -p $out/{lib,include}
cp -vr include/* $out/include/
cp -v lib/Linux*/*.so $out/lib/
cp -v lib/Linux*/*.a $out/lib/ || true
cp -v lib/Linux*/Lua*/*.so $out/lib/
cp -v lib/Linux*/Lua*/*.a $out/lib/ || true
runHook postInstall
'';
meta = with lib; {
description = "A vector graphics toolkit with device independent output";
license = licenses.mit;
maintainers = [ eko5z ];
platforms = with platforms; gnu ++ linux ++ darwin;
};
}
+63
View File
@@ -0,0 +1,63 @@
{ lib
, stdenv
, fetchurl
, lsb-release
, fftw
, fftwFloat
, libpng
, lua
, zlib
, tree
}:
stdenv.mkDerivation rec {
pname = "im";
version = "3.15";
src = fetchurl {
url = "mirror://sourceforge/imtoolkit/${version}/Docs%20and%20Sources/${pname}-${version}_Sources.tar.gz";
sha256 = "sha256-NsxCV/j1+BEouFS7O+KcXL3QkUdlKPMVr2ZtCTC5tX4=";
};
nativeBuildInputs = [
lsb-release
];
buildInputs = [
fftw
fftwFloat
libpng
lua
zlib
];
postPatch = ''
patchShebangs .
sed -i '1i#include <unistd.h>' src/libjasper2/base/jas_stream.c
'';
makeFlags = [ "NO_DEPEND=Yes" ];
installPhase = ''
runHook preInstall
mkdir -p $out/{lib,include}
cp -vr include/* $out/include/
cp -v lib/Linux*/*.so $out/lib/
cp -v lib/Linux*/*.a $out/lib/ || true
cp -v lib/Linux*/Lua*/*.so $out/lib/
cp -v lib/Linux*/Lua*/*.a $out/lib/ || true
runHook postInstall
'';
meta = with lib; {
description = "A toolkit for image representation, storage, capture and processing";
license = licenses.mit;
maintainers = [ eko5z ];
platforms = with platforms; gnu ++ linux ++ darwin;
};
}
+101
View File
@@ -0,0 +1,101 @@
{ stdenv
, cd
, fetchurl
, lsb-release
, pkg-config
, gtk2
, im
, libGLU
, ftgl
, lua51Packages.lua
, lib
}:
stdenv.mkDerivation rec {
pname = "iup";
version = "3.32";
src = fetchurl {
url = "mirror://sourceforge/iup/${version}/Docs%20and%20Sources/iup-${version}_Sources.tar.gz";
sha256 = "sha256-hx4X/KD7BNChO2jS/bmINZYzeCbqRMklTKOOPqu2pqU=";
};
nativeBuildInputs = [
lsb-release
pkg-config
];
buildInputs = [
cd
ftgl
gtk2
im
libGLU
lua51Packages.lua
];
postPatch = ''
patchShebangs .
sed -i 's/\biupweb\b//g' Makefile
sed -i 's/\biupvled\b//g' Makefile
sed -i 's/\biupluaweb\b//g' srclua5/Makefile
substituteInPlace srclua5/config.mak \
--replace-fail "NO_LUALINK = Yes" "NO_LUALINK ="
'';
makeFlags = [
"NO_DEPEND=Yes"
"USE_PKGCONFIG=Yes"
"USE_GTK2=Yes"
"GTK_DEFAULT=Yes"
"LUA_SFX="
"CD_LIB=${cd}/lib"
"IM_LIB=${im}/lib"
"LUA_LIB=${lua51Packages.lua}/lib"
"LUA_INC=${lua51Packages.lua}/include"
];
NIX_CFLAGS_COMPILE = ''
-Wno-implicit-function-declaration
-Wno-incompatible-pointer-types
'';
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,etc,lib,include,share/lua/5.1}
mkdir -p $out/share/lua/5.1/{ctrl,elem,gl,lh,scripter}
cp -vr include/* $out/include/
cp -v lib/Linux*/*.so $out/lib/
cp -v lib/Linux*/*.a $out/lib/ || true
cp -v lib/Linux*/Lua*/*.so $out/lib/
cp -v lib/Linux*/Lua*/*.a $out/lib/ || true
cp -vr bin/Linux612_64/* $out/bin/
chmod +x $out/bin/*
cp -v srclua5/*.lua "$out/share/lua/5.1/"
cp -v srclua5/ctrl/*.lua "$out/share/lua/5.1/ctrl/"
cp -v srclua5/elem/*.lua "$out/share/lua/5.1/elem/"
cp -v srclua5/gl/*.lua "$out/share/lua/5.1/gl/"
cp -v srclua5/lh/*.lh "$out/share/lua/5.1/lh/"
cp -v srclua5/scripter/*.lua "$out/share/lua/5.1/scripter/"
cp -r etc/* $out/etc
runHook postInstall
'';
meta = with lib; {
description = "A portable toolkit for building graphical user interfaces";
license = licenses.mit;
maintainers = [ eko5z ];
platforms = with platforms; gnu ++ linux ++ darwin;
};
}