eukleides: unbreak, switch to mirror

Changed files
+47 -10
pkgs
by-name
+28 -10
pkgs/by-name/eu/eukleides/package.nix
···
{
lib,
stdenv,
-
fetchurl,
+
fetchFromGitLab,
bison,
flex,
makeWrapper,
-
texinfo4,
getopt,
readline,
+
texinfo,
texlive,
+
versionCheckHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "eukleides";
version = "1.5.4";
-
src = fetchurl {
-
url = "http://www.eukleides.org/files/eukleides-${finalAttrs.version}.tar.bz2";
-
sha256 = "0s8cyh75hdj89v6kpm3z24i48yzpkr8qf0cwxbs9ijxj1i38ki0q";
+
src = fetchFromGitLab {
+
# official upstream www.eukleides.org is down
+
domain = "salsa.debian.org";
+
owner = "georgesk";
+
repo = "eukleides";
+
rev = "upstream/${finalAttrs.version}";
+
hash = "sha256-keX7k14X/97zHh87A/7vUsfGc/S6fByd+rewW+LkJeM=";
};
patches = [
···
./use-CC.patch
# allow PostScript transparency in epstopdf call
./gs-allowpstransparency.patch
+
# fix curly brace escaping in eukleides.texi for newer texinfo compatiblity
+
./texinfo-escape.patch
];
nativeBuildInputs = [
bison
flex
-
texinfo4
+
texinfo
makeWrapper
];
···
preConfigure = ''
substituteInPlace Makefile \
-
--replace mktexlsr true
+
--replace-fail mktexlsr true
substituteInPlace doc/Makefile \
-
--replace ginstall-info install-info
+
--replace-fail ginstall-info install-info
substituteInPlace Config \
-
--replace '/usr/local' "$out" \
-
--replace '$(SHARE_DIR)/texmf' "$tex"
+
--replace-fail '/usr/local' "$out" \
+
--replace-fail '$(SHARE_DIR)/texmf' "$tex"
'';
# Workaround build failure on -fno-common toolchains like upstream
···
# ld: eukleides_build/triangle.o:(.bss+0x28): multiple definition of `A';
# eukleides_build/quadrilateral.o:(.bss+0x18): first defined here
env.NIX_CFLAGS_COMPILE = "-fcommon";
+
+
preBuild = ''
+
mkdir build/eukleides_build
+
mkdir build/euktopst_build
+
'';
+
+
enableParallelBuilding = true;
preInstall = ''
mkdir -p $out/bin
···
];
pkgs = [ finalAttrs.finalPackage.tex ];
};
+
+
doInstallCheck = true;
+
nativeInstallCheckInputs = [ versionCheckHook ];
+
versionCheckProgramArg = "--version";
meta = {
description = "Geometry Drawing Language";
+19
pkgs/by-name/eu/eukleides/texinfo-escape.patch
···
+
--- a/doc/eukleides.texi
+
+++ b/doc/eukleides.texi
+
@@ -6,12 +6,12 @@
+
+
% ------------------------------------------------------------------------------
+
+
-\def\LaTeX{L\kern-.34em\raise.49ex\hbox{\sevenrm A}\kern-.18em\TeX}
+
-\def\mdeg{$^\circ$}
+
+\def\LaTeX@{L\kern-.34em\raise.49ex\hbox@{\sevenrm A@}\kern-.18em\TeX@}
+
+\def\mdeg@{$^\circ$@}
+
\font\degfont=cmtt8
+
-\def\deg{\raise.7ex\hbox{\degfont o}}
+
-\def\exm#1{\noindent{\textit Example:}\quad{\texttt #1}}
+
-\def\exmp{\noindent{\textit Example:}}
+
+\def\deg@{\raise.7ex\hbox@{\degfont o@}@}
+
+\def\exm#1@{\noindent@{\textit Example:@}\quad@{\texttt #1@}@}
+
+\def\exmp@{\noindent@{\textit Example:@}@}
+
+
% ------------------------------------------------------------------------------