nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 godot3,
3 callPackage,
4 mkNugetDeps,
5 mono,
6 dotnet-sdk,
7 scons,
8 python311Packages,
9}:
10
11(godot3.override {
12 scons = scons.override {
13 python3Packages = python311Packages;
14 };
15}).overrideAttrs
16 (
17 self: base: {
18 pname = "godot3-mono";
19
20 godotBuildDescription = "mono build";
21
22 nativeBuildInputs = base.nativeBuildInputs ++ [
23 mono
24 dotnet-sdk
25 ];
26
27 glue = callPackage ./glue.nix { };
28
29 buildInputs = base.buildInputs ++ [
30 (mkNugetDeps {
31 name = "deps";
32 sourceFile = ./deps.json;
33 })
34 ];
35
36 sconsFlags = base.sconsFlags ++ [
37 "module_mono_enabled=true"
38 "mono_prefix=${mono}"
39 ];
40
41 postConfigure = ''
42 echo "Setting up buildhome."
43 mkdir buildhome
44 export HOME="$PWD"/buildhome
45
46 echo "Overlaying godot glue."
47 cp -R --no-preserve=mode "$glue"/. .
48 '';
49
50 installedGodotShortcutFileName = "org.godotengine.GodotMono3.desktop";
51 installedGodotShortcutDisplayName = "Godot Engine (Mono) 3";
52
53 passthru = {
54 make-deps = callPackage ./make-deps.nix { };
55 };
56 }
57 )