nixpkgs/pkgs/applications/science/electronics/alliance/default.nix

75 lines
2.1 KiB
Nix
Raw Normal View History

2016-07-30 16:35:51 +02:00
{ stdenv, fetchurl
, xorgproto, motif, libX11, libXt, libXpm, bison
, flex, automake, autoconf, libtool, runtimeShell
2016-07-30 16:35:51 +02:00
}:
2016-07-30 16:35:51 +02:00
stdenv.mkDerivation rec {
pname = "alliance";
2016-07-30 16:35:51 +02:00
version = "5.1.1";
src = fetchurl {
url = "http://www-asim.lip6.fr/pub/alliance/distribution/5.0/${pname}-${version}.tar.bz2";
2016-07-30 16:35:51 +02:00
sha256 = "046c9qwl1vbww0ljm4xyxf5jpz9nq62b2q0wdz9xjimgh4c207w1";
};
2016-07-30 16:35:51 +02:00
nativeBuildInputs = [ libtool automake autoconf flex ];
buildInputs = [ xorgproto motif libX11 libXt libXpm bison ];
2016-07-30 16:35:51 +02:00
sourceRoot = "alliance/src/";
configureFlags = [
"--prefix=$(out)"
];
preConfigure = ''
mkdir -p $out/etc
#texlive for docs seems extreme
mkdir -p $out/share/alliance
mv ./documentation $out/share/alliance
substituteInPlace autostuff \
--replace "$newdirs documentation" "$newdirs" \
--replace documentation Solaris
substituteInPlace sea/src/DEF_grammar_lex.l \
--replace "ifndef FLEX_BETA" "if (YY_FLEX_MAJOR_VERSION <= 2) && (YY_FLEX_MINOR_VERSION < 6)"
./autostuff
'';
allianceInstaller = ''
#!${runtimeShell}
2016-07-30 16:35:51 +02:00
cp -v -r -n --no-preserve=mode $out/etc/* /etc/ > /etc/alliance-install.log
'';
allianceUnInstaller = ''
#!${runtimeShell}
2016-07-30 16:35:51 +02:00
awk '{print \$3}' /etc/alliance-install.log | xargs rm
awk '{print \$3}' /etc/alliance-install.log | xargs rmdir
rm /etc/alliance-install.log
'';
postInstall = ''
sed -i "s|ALLIANCE_TOP|$out|" distrib/*.desktop
mkdir -p $out/share/applications
cp -p distrib/*.desktop $out/share/applications/
mkdir -p $out/icons/hicolor/48x48/apps/
cp -p distrib/*.png $out/icons/hicolor/48x48/apps/
echo "${allianceInstaller}" > $out/bin/alliance-install
chmod +x $out/bin/alliance-install
echo "${allianceUnInstaller}" > $out/bin/alliance-uninstall
chmod +x $out/bin/alliance-uninstall
'';
2016-07-30 16:35:51 +02:00
meta = with stdenv.lib; {
description = "Complete set of free CAD tools and portable libraries for VLSI design";
homepage = "http://www-asim.lip6.fr/recherche/alliance/";
2016-07-30 16:35:51 +02:00
license = with licenses; gpl2Plus;
maintainers = with maintainers; [ ];
platforms = with platforms; linux;
broken = true;
};
}