diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix index d5b8314cea5..429de65b568 100644 --- a/pkgs/applications/editors/idea/default.nix +++ b/pkgs/applications/editors/idea/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, makeDesktopItem, makeWrapper, patchelf, p7zip, jdk -, coreutils, gnugrep, which, git, python, unzip +, coreutils, gnugrep, which, git, python, unzip, androidsdk }: assert stdenv.isLinux; @@ -54,25 +54,26 @@ let ''; installPhase = '' - mkdir -vp $out/{bin,$name,share/pixmaps,libexec/${name}} - cp -va . $out/$name + mkdir -p $out/{bin,$name,share/pixmaps,libexec/${name}} + cp -a . $out/$name ln -s $out/$name/bin/${loName}.png $out/share/pixmaps/${execName}.png mv bin/fsnotifier* $out/libexec/${name}/. jdk=${jdk.home} + item=${desktopItem} makeWrapper "$out/$name/bin/${loName}.sh" "$out/bin/${execName}" \ --prefix PATH : "$out/libexec/${name},${jdk}/bin:${coreutils}/bin:${gnugrep}/bin:${which}/bin:${git}/bin" \ --prefix JDK_HOME : "$jdk" \ --prefix ${hiName}_JDK : "$jdk" - cp -a "${desktopItem}"/* "$out" + ln -s "$item/share/applications" $out/share ''; }; buildAndroidStudio = { name, version, build, src, license, description }: - (mkIdeaProduct rec { + let drv = (mkIdeaProduct rec { inherit name version build src; product = "Studio"; meta = with stdenv.lib; { @@ -88,6 +89,13 @@ let maintainers = with maintainers; [ edwtjo ]; }; }); + in stdenv.lib.overrideDerivation drv (x : { + buildInputs = x.buildInputs ++ [ makeWrapper ]; + installPhase = x.installPhase + '' + wrapProgram "$out/bin/android-studio" \ + --set ANDROID_HOME "${androidsdk}/libexec/android-sdk-linux/" + ''; + }); buildClion = { name, version, build, src, license, description }: (mkIdeaProduct rec { @@ -185,14 +193,14 @@ in android-studio = buildAndroidStudio rec { name = "android-studio-${version}"; - version = "1.1.0b2"; - build = "135.1711524"; + version = "1.1.0"; + build = "135.1740770"; description = "Android development environment based on IntelliJ IDEA"; license = stdenv.lib.licenses.asl20; src = fetchurl { url = "https://dl.google.com/dl/android/studio/ide-zips/${version}" + "/android-studio-ide-${build}-linux.zip"; - sha256 = "0pkmyk7ipd4bfbryhanak5mq3x8ix1yv4czx8yi9vdpa34b6pnkw"; + sha256 = "1r2hrld3yfaxq3mw2xmzhvrrhc7w5xlv3d18rv758hy9n40c2nr1"; }; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5274a31f7c7..d0bdc43d78e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8505,7 +8505,7 @@ let cmdline = callPackage ../os-specific/darwin/command-line-tools {}; apple-source-releases = import ../os-specific/darwin/apple-source-releases { inherit stdenv fetchurl pkgs; }; in apple-source-releases // rec { - cctools_cross = callPackage (forceNativeDrv (callPackage ../os-specific/darwin/cctools/port.nix {}).cross) { + cctools_cross = callPackage (forceNativeDrv (callPackage ../os-specific/darwin/cctools/port.nix {}).cross) { cross = assert crossSystem != null; crossSystem; inherit maloader; xctoolchain = xcode.toolchain; @@ -10385,7 +10385,7 @@ let libart = gnome2.libart_lgpl; }; # latest version: gnome3.goffice - idea = recurseIntoAttrs (callPackage ../applications/editors/idea { }); + idea = recurseIntoAttrs (callPackage ../applications/editors/idea { androidsdk = androidsdk_4_4; }); libquvi = callPackage ../applications/video/quvi/library.nix { };