forked from hswaw/hscloud
47 lines
1.5 KiB
Nix
47 lines
1.5 KiB
Nix
|
{ hscloud, pkgs, ... }:
|
||
|
|
||
|
# This supports building laserproxy in nix, which is used for deploying it to customs.
|
||
|
# This is mildly hacky and should be reworked to function for any hscloud bazel target
|
||
|
# in a more generic fashion.
|
||
|
#
|
||
|
# To build:
|
||
|
# ~/hscloud $ nix-build -A hswaw.laserproxy
|
||
|
|
||
|
pkgs.buildBazelPackage rec {
|
||
|
name = "laserproxy";
|
||
|
src = hscloud.root;
|
||
|
bazelTarget = "//hswaw/laserproxy";
|
||
|
nativeBuildInputs = with pkgs; [
|
||
|
git python3 postgresql go
|
||
|
];
|
||
|
patches = [
|
||
|
./nix-disable-uwsgi.patch
|
||
|
./nix-use-system-go.patch
|
||
|
./nix-disable-workspace-status.patch
|
||
|
];
|
||
|
|
||
|
removeRulesCC = false;
|
||
|
fetchConfigured = true;
|
||
|
fetchAttrs = {
|
||
|
inherit patches;
|
||
|
# Nicked from nixpkgs usages of buildBazelPackage.
|
||
|
preInstall = ''
|
||
|
rm -rf $bazelOut/external/{go_sdk,\@go_sdk.marker}
|
||
|
sed -e '/^FILE:@go_sdk.*/d' -i $bazelOut/external/\@*.marker
|
||
|
|
||
|
chmod -R 755 $bazelOut/external/{bazel_gazelle_go_repository_cache,@\bazel_gazelle_go_repository_cache.marker}
|
||
|
rm -rf $bazelOut/external/{bazel_gazelle_go_repository_cache,@\bazel_gazelle_go_repository_cache.marker}
|
||
|
|
||
|
rm -rf $bazelOut/external/{bazel_gazelle_go_repository_tools,\@bazel_gazelle_go_repository_tools.marker}
|
||
|
sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
|
||
|
'';
|
||
|
sha256 = "0d0vlls1i0nmlqiszfhwb0cn1kwll3ffxd3sn30pk7drhfrbvqhf";
|
||
|
};
|
||
|
buildAttrs = {
|
||
|
inherit patches;
|
||
|
installPhase = ''
|
||
|
install -Dm755 bazel-bin/hswaw/laserproxy/*/laserproxy $out/bin/laserproxy
|
||
|
'';
|
||
|
};
|
||
|
}
|