e3fe6826f8
This makes magrathea use the repostory version of nix and git. This is done in the pursuit of enforcing guaranteed unified experience of magrathea tool across all users of a `tvl-kit`-based repository. Especially among ubuntu users with uncontrolled set of packages and versions installed on their system. Not having this was giving build problems for `mg build` as one of the users has 2.17 version of nix that had inconsistent hash computation with 2.3. Change-Id: I3182faf4c545ac61f6cc1cc862dc23d51c1cd397 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9892 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
39 lines
676 B
Nix
39 lines
676 B
Nix
# magrathea helps you build planets
|
|
#
|
|
# it is a tool for working with monorepos in the style of tvl's depot
|
|
{ pkgs, ... }:
|
|
|
|
let
|
|
inherit (pkgs)
|
|
stdenv
|
|
chicken
|
|
chickenPackages
|
|
makeWrapper
|
|
git
|
|
nix
|
|
lib
|
|
;
|
|
|
|
in
|
|
stdenv.mkDerivation {
|
|
name = "magrathea";
|
|
src = ./.;
|
|
dontInstall = true;
|
|
|
|
nativeBuildInputs = [ chicken makeWrapper ];
|
|
buildInputs = with chickenPackages.chickenEggs; [
|
|
matchable
|
|
srfi-13
|
|
];
|
|
|
|
propagatedBuildInputs = [ git ];
|
|
|
|
buildPhase = ''
|
|
mkdir -p $out/bin
|
|
csc -o $out/bin/mg -host -static ${./mg.scm}
|
|
'';
|
|
|
|
fixupPhase = ''
|
|
wrapProgram $out/bin/mg --prefix PATH ${lib.makeBinPath [ nix ]}
|
|
'';
|
|
}
|