2017-09-20 18:02:45 +02:00
|
|
|
|
{ fetchurl, stdenv, python2, makeWrapper, lib
|
2018-02-24 14:12:44 +01:00
|
|
|
|
, libGLU_combined, SDL, freeglut, ghostscript, pdftk, dejavu_fonts }:
|
2009-03-19 17:40:28 +01:00
|
|
|
|
|
2016-08-14 12:48:17 +02:00
|
|
|
|
let
|
2018-02-27 04:14:14 +01:00
|
|
|
|
version = "0.12.0";
|
2017-09-20 18:02:45 +02:00
|
|
|
|
pythonEnv = python2.withPackages (ps: with ps; [pyopengl pygame pillow]);
|
2016-08-14 12:48:17 +02:00
|
|
|
|
in stdenv.mkDerivation {
|
2009-03-19 17:40:28 +01:00
|
|
|
|
# This project was formerly known as KeyJNote.
|
2017-09-20 18:02:45 +02:00
|
|
|
|
# See http://keyj.emphy.de/apple-lawsuit/ for details.
|
2009-03-19 17:40:28 +01:00
|
|
|
|
|
|
|
|
|
name = "impressive-${version}";
|
|
|
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
|
url = "mirror://sourceforge/impressive/Impressive-${version}.tar.gz";
|
2018-02-27 04:14:14 +01:00
|
|
|
|
sha256 = "0zaqq3yvd296mfr5bxpj2hqlk7vrb0rsbgd4dc1l5ag46giqvivx";
|
2009-03-19 17:40:28 +01:00
|
|
|
|
};
|
|
|
|
|
|
2017-09-20 18:02:45 +02:00
|
|
|
|
buildInputs = [ makeWrapper pythonEnv ];
|
2009-03-19 17:40:28 +01:00
|
|
|
|
|
|
|
|
|
configurePhase = ''
|
2017-09-20 18:02:45 +02:00
|
|
|
|
# Let's fail at build time if the library we're substituting in doesn't
|
|
|
|
|
# exist/isn't marked as executable
|
|
|
|
|
test -x ${SDL}/lib/libSDL.so
|
2009-03-19 17:40:28 +01:00
|
|
|
|
sed -i "impressive.py" \
|
2017-09-20 18:02:45 +02:00
|
|
|
|
-e '/^__website__/a SDL_LIBRARY = "${SDL}/lib/libSDL.so"' \
|
|
|
|
|
-e 's/sdl = CDLL.*/sdl = CDLL(SDL_LIBRARY)/' \
|
|
|
|
|
-e 's^FontPath =.*/usr/.*$^FontPath = ["${dejavu_fonts}/share/fonts", ""]^'
|
2009-03-19 17:40:28 +01:00
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
installPhase = ''
|
2017-09-20 18:02:45 +02:00
|
|
|
|
mkdir -p "$out/bin" "$out/share/doc/impressive" "$out/share/man/man1"
|
2009-03-19 17:40:28 +01:00
|
|
|
|
mv impressive.py "$out/bin/impressive"
|
2017-09-20 18:02:45 +02:00
|
|
|
|
mv impressive.1 "$out/share/man/man1"
|
|
|
|
|
mv changelog.txt impressive.html license.txt "$out/share/doc/impressive"
|
2009-03-19 17:40:28 +01:00
|
|
|
|
|
|
|
|
|
wrapProgram "$out/bin/impressive" \
|
2017-09-20 18:02:45 +02:00
|
|
|
|
--prefix PATH ":" "${ghostscript}/bin:${pdftk}/bin"
|
2009-03-19 17:40:28 +01:00
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
|
description = "Impressive, an effect-rich presentation tool for PDFs";
|
|
|
|
|
|
|
|
|
|
longDescription = ''
|
|
|
|
|
Impressive is a program that displays presentation slides.
|
|
|
|
|
But unlike OpenOffice.org Impress or other similar
|
|
|
|
|
applications, it does so with style. Smooth alpha-blended
|
|
|
|
|
slide transitions are provided for the sake of eye candy, but
|
|
|
|
|
in addition to this, Impressive offers some unique tools that
|
|
|
|
|
are really useful for presentations. Read below if you want
|
|
|
|
|
to know more about these features.
|
|
|
|
|
|
|
|
|
|
Creating presentations for Impressive is very simple: You just
|
|
|
|
|
need to export a PDF file from your presentation software.
|
|
|
|
|
This means that you can create slides in the application of
|
|
|
|
|
your choice and use Impressive for displaying them. If your
|
|
|
|
|
application does not support PDF output, you can alternatively
|
|
|
|
|
use a set of pre-rendered image files – or you use Impressive
|
|
|
|
|
to make a slideshow with your favorite photos.
|
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
homepage = http://impressive.sourceforge.net/;
|
|
|
|
|
|
2014-06-19 06:19:00 +02:00
|
|
|
|
license = stdenv.lib.licenses.gpl2;
|
2010-03-01 18:08:30 +01:00
|
|
|
|
|
2017-09-20 18:02:45 +02:00
|
|
|
|
maintainers = with lib.maintainers; [ lheckemann ];
|
2010-03-01 18:08:30 +01:00
|
|
|
|
platforms = stdenv.lib.platforms.mesaPlatforms;
|
2009-03-19 17:40:28 +01:00
|
|
|
|
};
|
|
|
|
|
}
|