default.nix (1223B)
1 { lib, stdenv, fetchFromGitHub, SDL2, glew, lua, desktopToDarwinBundle }: 2 3 stdenv.mkDerivation rec { 4 pname = "cadzinho"; 5 version = "0.4.1"; 6 7 src = fetchFromGitHub { 8 owner = "zecruel"; 9 repo = "CadZinho"; 10 rev = version; 11 hash = "sha256-6/sBNxQb52FFO2fWLVs6YDOmJLEbSOA5mwdMdJDjEDM="; 12 }; 13 14 postPatch = '' 15 substituteInPlace src/gui_config.c --replace "/usr/share/cadzinho" "$out/share/cadzinho" 16 ''; 17 18 nativeBuildInputs = lib.optional stdenv.isDarwin desktopToDarwinBundle; 19 20 buildInputs = [ SDL2 glew lua ]; 21 22 makeFlags = [ "CC:=$(CC)" ]; 23 24 # https://github.com/llvm/llvm-project/issues/62254 25 env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-fno-builtin-strrchr"; 26 27 hardeningDisable = [ "format" ]; 28 29 installPhase = '' 30 runHook preInstall 31 install -Dm755 cadzinho -t $out/bin 32 install -Dm644 lang/*.lua -t $out/share/cadzinho/lang 33 cp -r linux/CadZinho/share/* $out/share 34 runHook postInstall 35 ''; 36 37 meta = with lib; { 38 description = "Minimalist computer aided design (CAD) software"; 39 inherit (src.meta) homepage; 40 license = licenses.mit; 41 maintainers = [ maintainers.sikmir ]; 42 platforms = platforms.unix; 43 mainProgram = "cadzinho"; 44 }; 45 }