12 stdenv.mkDerivation rec {
16 src = fetchFromGitHub {
20 hash = "sha256-uA+4dnhOnv7qRE7nqew8a14DGaQblsMY2uBZ+iyLtFU=";
23 nativeBuildInputs = [ makeBinaryWrapper ];
25 buildInputs = [ libGL libGLU ] ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib libX11 libXext ];
27 enableParallelBuilding = true;
29 env.NIX_CFLAGS_COMPILE = "-Wno-unused-result";
32 pushd ${if stdenv.hostPlatform.isDarwin then "macos/cmdline" else "unix"}
35 # TODO: build graphic version for darwin
36 buildFlags = (if stdenv.hostPlatform.isDarwin then [ "nox" ] else [ "all" ]) ++ [ "CC=${stdenv.cc.targetPrefix}cc" ];
47 bin/${if stdenv.hostPlatform.isDarwin then "minimacyMac" else "minimacy"} system/demo/demo.fun.mandelbrot.mcy
55 mkdir -p $out/lib/minimacy
56 cp -r {README.md,LICENSE,system,rom,topLevel.mcy} $out/lib/minimacy
57 install bin/minimacy* -Dt $out/bin
63 for prog in $out/bin/minimacy*;
64 do wrapProgram $prog \
65 --set MINIMACY $out/lib/minimacy
70 description = "Open-source minimalist computing technology";
72 Minimacy is an open-source minimalist computation system based on the principle "Less is more".
73 It is designed and programmed by Sylvain Huet.
75 maintainers = with lib.maintainers; [ jboy ];
76 homepage = "https://minimacy.net";
77 license = lib.licenses.gpl2;
78 platforms = lib.platforms.linux ++ lib.platforms.darwin;