diff --git a/nix/overlay.nix b/nix/overlay.nix index 1611097e0f..a727f55c91 100644 --- a/nix/overlay.nix +++ b/nix/overlay.nix @@ -7,7 +7,8 @@ self: super: -let inherit (super) stdenv stdenvNoCC callPackage; +let + inherit (super) stdenv stdenvNoCC callPackage; in { # Fix for MacOS mkShell = super.mkShell.override { stdenv = stdenvNoCC; }; @@ -40,6 +41,9 @@ in { version = "11.5"; allowHigher = true; }; + gomobile = super.gomobile.override { + androidPkgs = self.androidEnvCustom.compose; + }; # Android environement androidEnvCustom = callPackage ./pkgs/android-sdk { }; @@ -48,7 +52,6 @@ in { # Custom packages aapt2 = callPackage ./pkgs/aapt2 { }; - gomobile = callPackage ./pkgs/gomobile { }; patchMavenSources = callPackage ./pkgs/patch-maven-srcs { }; goMavenResolver = callPackage ./pkgs/go-maven-resolver { }; } diff --git a/nix/pkgs/gomobile/default.nix b/nix/pkgs/gomobile/default.nix deleted file mode 100644 index 341eef6570..0000000000 --- a/nix/pkgs/gomobile/default.nix +++ /dev/null @@ -1,53 +0,0 @@ -{ stdenv, lib, fetchgit, buildGo116Module, zlib -, makeWrapper, xcodeWrapper, androidPkgs }: - -buildGo116Module { - pname = "gomobile"; - version = "2021-06-14"; - - vendorSha256 = "1irgkgv72rakg7snk1bnp10ibr64ykz9l40s59l4fnl63zsh12a0"; - - src = fetchgit { - rev = "7c8f154d100840bc5828285bb390bbae1cb5a98c"; - name = "gomobile"; - url = "https://go.googlesource.com/mobile"; - sha256 = "1w9mra1mqf60iafp0ywvja5196fjsjyfhvz4yizqq4qkyll5qmj1"; - }; - - subPackages = [ "bind" "cmd/gobind" "cmd/gomobile" ]; - - # Fails with: go: cannot find GOROOT directory - doCheck = false; - - nativeBuildInputs = [ makeWrapper ] - ++ lib.optional stdenv.isDarwin xcodeWrapper; - - # Prevent a non-deterministic temporary directory from polluting the resulting object files - postPatch = '' - substituteInPlace cmd/gomobile/env.go --replace \ - 'tmpdir, err = ioutil.TempDir("", "gomobile-work-")' \ - 'tmpdir = filepath.Join(os.Getenv("NIX_BUILD_TOP"), "gomobile-work")' \ - --replace '"io/ioutil"' "" - substituteInPlace cmd/gomobile/init.go --replace \ - 'tmpdir, err = ioutil.TempDir(gomobilepath, "work-")' \ - 'tmpdir = filepath.Join(os.Getenv("NIX_BUILD_TOP"), "work")' - ''; - - # Necessary for GOPATH when using gomobile. - postInstall = '' - mkdir -p $out/src/golang.org/x - ln -s $src $out/src/golang.org/x/mobile - wrapProgram $out/bin/gomobile \ - --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ zlib ]}" \ - --prefix PATH : "${androidPkgs}/bin" \ - --set ANDROID_NDK_ROOT "${androidPkgs.ndk}" \ - --set ANDROID_HOME "${androidPkgs.sdk}" - ''; - - meta = with lib; { - description = "A tool for building and running mobile apps written in Go"; - homepage = "https://pkg.go.dev/golang.org/x/mobile/cmd/gomobile"; - license = licenses.bsd3; - maintainers = with maintainers; [ jakubgs ]; - }; -}