Commit bc82281e authored by hacker1024's avatar hacker1024
Browse files

buildDartApplication: Generate Dart wrapper with symlinkJoin

parent f36961c0
Loading
Loading
Loading
Loading
+10 −6
Original line number Diff line number Diff line
{ lib, stdenv, callPackage, fetchDartDeps, runCommand, writeText, dartHooks, makeWrapper, dart, cacert, nodejs, darwin, jq }:
{ lib, stdenv, callPackage, fetchDartDeps, writeText, symlinkJoin, dartHooks, makeWrapper, dart, cacert, nodejs, darwin, jq }:

{ sdkSetupScript ? ""
, pubGetScript ? "dart pub get"
@@ -36,11 +36,15 @@

let
  dartDeps = (fetchDartDeps.override {
    dart = runCommand "dart-fod" { nativeBuildInputs = [ makeWrapper ]; } ''
      mkdir -p "$out/bin"
      makeWrapper "${dart}/bin/dart" "$out/bin/dart" \
    dart = symlinkJoin {
      name = "dart-fod";
      paths = [ dart ];
      nativeBuildInputs = [ makeWrapper ];
      postBuild = ''
        wrapProgram "$out/bin/dart" \
          --add-flags "--root-certs-file=${cacert}/etc/ssl/certs/ca-bundle.crt"
      '';
    };
  }) {
    buildDrvArgs = args;
    inherit sdkSetupScript pubGetScript vendorHash pubspecLockFile;