nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 versionCheckHook,
6 nix-update-script,
7}:
8
9stdenv.mkDerivation (finalAttrs: {
10 pname = "fut";
11 version = "3.2.13";
12
13 src = fetchFromGitHub {
14 owner = "fusionlanguage";
15 repo = "fut";
16 tag = "fut-${finalAttrs.version}";
17 hash = "sha256-raYlY3HDL5+lv68IRVUXrpypmXfDkgWzHv/qZVECFhs=";
18 };
19
20 buildPhase = ''
21 runHook preBuild
22
23 make
24
25 runHook postBuild
26 '';
27
28 installPhase = ''
29 runHook preInstall
30
31 mkdir -p $out/bin
32 cp fut $out/bin/
33
34 runHook postInstall
35 '';
36
37 nativeInstallCheckInputs = [ versionCheckHook ];
38 versionCheckProgramArg = "--version";
39 doInstallCheck = false;
40
41 passthru.updateScript = nix-update-script { };
42
43 meta = {
44 description = "Fusion programming language";
45 longDescription = ''
46 Fusion is a programming language designed for implementing reusable components (libraries) for C, C++, C#, D, Java, JavaScript, Python, Swift, TypeScript and OpenCL C, all from a single codebase.
47 '';
48 homepage = "https://fusion-lang.org";
49 changelog = "https://github.com/fusionlanguage/fut/releases/tag/fut-${finalAttrs.version}";
50 license = lib.licenses.gpl3Plus;
51 platforms = lib.platforms.linux;
52 maintainers = with lib.maintainers; [ chillcicada ];
53 mainProgram = "fut";
54 };
55})