mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-06 04:53:27 +00:00
445953f80d
libcaca tries to access a private API that is no longer available. It worked before the SDK changes because no Darwin frameworks were available in the build environment, but there is now always an SDK available, causing it to try to build Cocoa code that no longer works.
79 lines
2.1 KiB
Nix
79 lines
2.1 KiB
Nix
{ lib
|
||
, stdenv
|
||
, fetchFromGitHub
|
||
, autoreconfHook
|
||
, imlib2
|
||
, xorg
|
||
, ncurses
|
||
, pkg-config
|
||
, zlib
|
||
, x11Support ? !stdenv.hostPlatform.isDarwin
|
||
}:
|
||
|
||
stdenv.mkDerivation rec {
|
||
pname = "libcaca";
|
||
version = "0.99.beta20";
|
||
|
||
src = fetchFromGitHub {
|
||
owner = "cacalabs";
|
||
repo = pname;
|
||
rev = "v${version}";
|
||
hash = "sha256-N0Lfi0d4kjxirEbIjdeearYWvStkKMyV6lgeyNKXcVw=";
|
||
};
|
||
|
||
nativeBuildInputs = [
|
||
autoreconfHook
|
||
pkg-config
|
||
];
|
||
|
||
buildInputs = [
|
||
ncurses
|
||
zlib
|
||
(imlib2.override { inherit x11Support; })
|
||
] ++ lib.optionals x11Support [
|
||
xorg.libX11
|
||
xorg.libXext
|
||
];
|
||
|
||
outputs = [ "bin" "dev" "out" "man" ];
|
||
|
||
configureFlags = [
|
||
(if x11Support then "--enable-x11" else "--disable-x11")
|
||
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||
# Suppresses a build failure building Cocoa support due to accessing private ivar `_running`,
|
||
# which no longer available.
|
||
(lib.enableFeature false "cocoa")
|
||
];
|
||
|
||
env.NIX_CFLAGS_COMPILE = lib.optionalString (!x11Support) "-DX_DISPLAY_MISSING";
|
||
|
||
postInstall = ''
|
||
mkdir -p $dev/bin
|
||
mv $bin/bin/caca-config $dev/bin/caca-config
|
||
'';
|
||
|
||
meta = with lib; {
|
||
homepage = "http://caca.zoy.org/wiki/libcaca";
|
||
description = "Graphics library that outputs text instead of pixels";
|
||
longDescription = ''
|
||
libcaca is a graphics library that outputs text instead of pixels, so that
|
||
it can work on older video cards or text terminals. It is not unlike the
|
||
famous AAlib library, with the following improvements:
|
||
|
||
- Unicode support
|
||
- 2048 available colours (some devices can only handle 16)
|
||
- dithering of colour images
|
||
- advanced text canvas operations (blitting, rotations)
|
||
|
||
Libcaca works in a text terminal (and should thus work on all Unix systems
|
||
including Mac OS X) using the S-Lang or ncurses libraries. It also works
|
||
natively on DOS and Windows.
|
||
|
||
Libcaca was written by Sam Hocevar and Jean-Yves Lamoureux.
|
||
'';
|
||
license = licenses.wtfpl;
|
||
maintainers = with maintainers; [ AndersonTorres ];
|
||
platforms = platforms.unix;
|
||
};
|
||
}
|