+31
flake.nix
+31
flake.nix
···
39
39
go build -o ./bin/akami ./main.go
40
40
./bin/akami "$@" || true
41
41
'')
42
+
(pkgs.writeShellScriptBin "akami-build" ''
43
+
echo "Building akami binaries for all platforms..."
44
+
mkdir -p $PWD/bin
45
+
46
+
# Build for Linux (64-bit)
47
+
echo "Building for Linux (x86_64)..."
48
+
GOOS=linux GOARCH=amd64 go build -o $PWD/bin/akami-linux-amd64 ./main.go
49
+
50
+
# Build for Linux ARM (64-bit)
51
+
echo "Building for Linux (aarch64)..."
52
+
GOOS=linux GOARCH=arm64 go build -o $PWD/bin/akami-linux-arm64 ./main.go
53
+
54
+
# Build for macOS (64-bit Intel)
55
+
echo "Building for macOS (x86_64)..."
56
+
GOOS=darwin GOARCH=amd64 go build -o $PWD/bin/akami-darwin-amd64 ./main.go
57
+
58
+
# Build for macOS ARM (64-bit)
59
+
echo "Building for macOS (aarch64)..."
60
+
GOOS=darwin GOARCH=arm64 go build -o $PWD/bin/akami-darwin-arm64 ./main.go
61
+
62
+
# Build for Windows (64-bit)
63
+
echo "Building for Windows (x86_64)..."
64
+
GOOS=windows GOARCH=amd64 go build -o $PWD/bin/akami-windows-amd64.exe ./main.go
65
+
66
+
echo "All binaries built successfully in $PWD/bin/"
67
+
ls -la $PWD/bin/
68
+
'')
42
69
];
43
70
44
71
shellHook = ''
···
59
86
go build -o ./bin/akami ./main.go
60
87
./bin/akami $* || true
61
88
'');
89
+
};
90
+
akami-build = {
91
+
type = "app";
92
+
program = "${self.devShells.${pkgs.system}.default.inputDerivation}/bin/akami-build";
62
93
};
63
94
});
64
95
};