tuxpaint: 0.9.28 -> 0.9.31, refactor
This commit is contained in:
parent
225b3bf66e
commit
a10aa50fc6
@ -1,37 +1,92 @@
|
||||
{ lib, stdenv, fetchurl, SDL, SDL_gfx, SDL_image, SDL_ttf, SDL_mixer, libpng
|
||||
, libimagequant, cairo, librsvg, gettext, libpaper, fribidi, pkg-config, gperf
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, gettext
|
||||
, gperf
|
||||
, imagemagick
|
||||
, makeWrapper
|
||||
, pkg-config
|
||||
, SDL2
|
||||
, cairo
|
||||
, freetype
|
||||
, fribidi
|
||||
, libimagequant
|
||||
, libpaper
|
||||
, libpng
|
||||
, librsvg
|
||||
, pango
|
||||
, SDL2_gfx
|
||||
, SDL2_image
|
||||
, SDL2_mixer
|
||||
, SDL2_Pango
|
||||
, SDL2_ttf
|
||||
, netpbm
|
||||
}:
|
||||
|
||||
let
|
||||
stamps = fetchurl {
|
||||
url = "mirror://sourceforge/project/tuxpaint/tuxpaint-stamps/2023-07-20/tuxpaint-stamps-2023.07.20.tar.gz";
|
||||
hash = "sha256-D7QgYXRRdZpN3Ni/4lXoXCtsJORT+T2hHaLUFpgDeEI=";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.9.28";
|
||||
version = "0.9.31";
|
||||
pname = "tuxpaint";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/tuxpaint/${version}/${pname}-${version}-sdl1.tar.gz";
|
||||
sha256 = "sha256-b4Ru9GqyGf2jMmM24szGXO2vbSxCwvPmA6tgEUWhhos=";
|
||||
url = "mirror://sourceforge/tuxpaint/${version}/tuxpaint-${version}.tar.gz";
|
||||
hash = "sha256-GoXAT6XJrms//Syo+oaoTAyLRitQWfofwsRFtc+oV+4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
SDL SDL_gfx SDL_image SDL_ttf SDL_mixer libpng cairo libimagequant librsvg
|
||||
gettext libpaper fribidi pkg-config gperf imagemagick
|
||||
patches = [
|
||||
./tuxpaint-completion.diff
|
||||
];
|
||||
hardeningDisable = [ "format" ];
|
||||
makeFlags = [ "GPERF=${gperf}/bin/gperf"
|
||||
"PREFIX=$$out"
|
||||
"COMPLETIONDIR=$$out/share/bash-completion/completions"
|
||||
];
|
||||
|
||||
patches = [ ./tuxpaint-completion.diff ];
|
||||
postPatch = ''
|
||||
grep -Zlr include.*SDL . | xargs -0 sed -i -e 's,"SDL,"SDL/SDL,'
|
||||
grep -Zlr include.*SDL . | xargs -0 \
|
||||
sed -i -E \
|
||||
-e 's,"(SDL2?_?[a-zA-Z]*.h),"SDL2/\1,' \
|
||||
-e 's,SDL2/SDL2_Pango.h,SDL2_Pango.h,'
|
||||
'';
|
||||
|
||||
# stamps
|
||||
stamps = fetchurl {
|
||||
url = "mirror://sourceforge/project/tuxpaint/tuxpaint-stamps/2022-06-04/tuxpaint-stamps-2022.06.04.tar.gz";
|
||||
sha256 = "sha256-hCBlV2+uVUNY4A5R1xpJJhamSQsStZIigGdHfCh6C/g=";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
gettext
|
||||
gperf
|
||||
imagemagick
|
||||
makeWrapper
|
||||
pkg-config
|
||||
SDL2
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
cairo
|
||||
freetype
|
||||
fribidi
|
||||
libimagequant
|
||||
libpaper
|
||||
libpng
|
||||
librsvg
|
||||
pango
|
||||
SDL2
|
||||
SDL2_gfx
|
||||
SDL2_image
|
||||
SDL2_mixer
|
||||
SDL2_Pango
|
||||
SDL2_ttf
|
||||
];
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
makeFlags = [
|
||||
"CC=${stdenv.cc.targetPrefix}cc"
|
||||
"COMPLETIONDIR=$(out)/share/bash-completion/completions"
|
||||
"GPERF=${lib.getExe gperf}"
|
||||
"PREFIX=$(out)"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
postInstall = ''
|
||||
# Install desktop file
|
||||
@ -40,13 +95,15 @@ stdenv.mkDerivation rec {
|
||||
sed -e "s+Exec=tuxpaint+Exec=$out/bin/tuxpaint+" < src/tuxpaint.desktop > $out/share/applications/tuxpaint.desktop
|
||||
|
||||
# Install stamps
|
||||
tar xzf $stamps
|
||||
tar xzf ${stamps}
|
||||
cd tuxpaint-stamps-*
|
||||
make install-all PREFIX=$out
|
||||
rm -rf $out/share/tuxpaint/stamps/military
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
# Requirements for tuxpaint-import
|
||||
wrapProgram $out/bin/tuxpaint-import \
|
||||
--prefix PATH : ${lib.makeBinPath [ netpbm ]}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Open Source Drawing Software for Children";
|
||||
|
Loading…
Reference in New Issue
Block a user