mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-28 01:43:15 +00:00
ps2eps: init at 1.70
This commit is contained in:
parent
7f3f7ec381
commit
393343e2fc
68
pkgs/tools/typesetting/ps2eps/default.nix
Normal file
68
pkgs/tools/typesetting/ps2eps/default.nix
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
{ lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
, perlPackages
|
||||||
|
, substituteAll
|
||||||
|
, ghostscript
|
||||||
|
, installShellFiles
|
||||||
|
}:
|
||||||
|
|
||||||
|
|
||||||
|
perlPackages.buildPerlPackage rec {
|
||||||
|
pname = "ps2eps";
|
||||||
|
version = "1.70";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "roland-bless";
|
||||||
|
repo = pname;
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-SPLwsGKLVhANoqSQ/GJ938cYjbjMbUOXkNn9so3aJTA=";
|
||||||
|
};
|
||||||
|
patches = [
|
||||||
|
(substituteAll {
|
||||||
|
src = ./hardcode-deps.patch;
|
||||||
|
gs = "${ghostscript}/bin/gs";
|
||||||
|
# bbox cannot be substituted here because substituteAll doesn't know what
|
||||||
|
# will be the $out path of the main derivation
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
installShellFiles
|
||||||
|
];
|
||||||
|
|
||||||
|
configurePhase = "true";
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
|
||||||
|
make -C src/C bbox
|
||||||
|
patchShebangs src/perl/ps2eps
|
||||||
|
substituteInPlace src/perl/ps2eps \
|
||||||
|
--replace @bbox@ $out/bin/bbox
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Override buildPerlPackage's outputs setting
|
||||||
|
outputs = ["out" "man"];
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
installManPage \
|
||||||
|
doc/ps2eps.1 \
|
||||||
|
doc/bbox.1
|
||||||
|
|
||||||
|
install -D src/perl/ps2eps $out/bin/ps2eps
|
||||||
|
install -D src/C/bbox $out/bin/bbox
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
inherit (src.meta) homepage;
|
||||||
|
description = "Calculate correct bounding boxes for PostScript and PDF files";
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
platforms = platforms.unix;
|
||||||
|
maintainers = [ maintainers.doronbehar ];
|
||||||
|
};
|
||||||
|
}
|
26
pkgs/tools/typesetting/ps2eps/hardcode-deps.patch
Normal file
26
pkgs/tools/typesetting/ps2eps/hardcode-deps.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
diff --git i/src/perl/ps2eps w/src/perl/ps2eps
|
||||||
|
index 1122a81..31d6a9a 100755
|
||||||
|
--- i/src/perl/ps2eps
|
||||||
|
+++ w/src/perl/ps2eps
|
||||||
|
@@ -43,19 +43,13 @@ Getopt::Long::Configure("no_ignore_case");
|
||||||
|
|
||||||
|
$prgname= "ps2eps";
|
||||||
|
|
||||||
|
-if (! -d "/usr/bin")
|
||||||
|
-{ # we assume that we are running under native windows
|
||||||
|
- $ghostscriptname = "gswin32c";
|
||||||
|
- $NULLDEV = "nul";
|
||||||
|
-}
|
||||||
|
-else
|
||||||
|
{ # Unix or cygwin
|
||||||
|
- $ghostscriptname = "gs";
|
||||||
|
+ $ghostscriptname = "@gs@";
|
||||||
|
$NULLDEV = "/dev/null 2>&1";
|
||||||
|
}
|
||||||
|
|
||||||
|
$bboxver=`bbox >$NULLDEV -V`;
|
||||||
|
-$bboxname= ($?== -1) ? "" : "bbox";
|
||||||
|
+$bboxname= ($?== -1) ? "" : "@bbox@";
|
||||||
|
$version= '$Id: ps2eps,v 1.70 2018-01-09 18:00:00 bless Exp $'; #'
|
||||||
|
$insertPScode= 1; # Insert surrounding Postscript code
|
||||||
|
$infhandle = STDIN; # Standard input is the default input file
|
@ -33080,6 +33080,8 @@ with pkgs;
|
|||||||
|
|
||||||
ps2client = callPackage ../applications/networking/ps2client { };
|
ps2client = callPackage ../applications/networking/ps2client { };
|
||||||
|
|
||||||
|
ps2eps = callPackage ../tools/typesetting/ps2eps { };
|
||||||
|
|
||||||
psi = libsForQt5.callPackage ../applications/networking/instant-messengers/psi { };
|
psi = libsForQt5.callPackage ../applications/networking/instant-messengers/psi { };
|
||||||
|
|
||||||
psi-plus = libsForQt5.callPackage ../applications/networking/instant-messengers/psi-plus { };
|
psi-plus = libsForQt5.callPackage ../applications/networking/instant-messengers/psi-plus { };
|
||||||
|
Loading…
Reference in New Issue
Block a user