Merge pull request #21462 from phunehehe/android-studio

Fontconfig for Android Studio
This commit is contained in:
Graham Christensen 2017-01-10 20:05:42 -05:00 committed by GitHub
commit acc889f5ed
2 changed files with 48 additions and 50 deletions

View File

@ -9,7 +9,6 @@
, gnugrep , gnugrep
, gnutar , gnutar
, gzip , gzip
, jdk
, fontconfig , fontconfig
, freetype , freetype
, libpulseaudio , libpulseaudio
@ -29,6 +28,7 @@
, writeTextFile , writeTextFile
, xkeyboard_config , xkeyboard_config
, zlib , zlib
, fontsConf
}: }:
let let
@ -44,13 +44,13 @@ let
]; ];
installPhase = '' installPhase = ''
cp -r . $out cp -r . $out
wrapProgram $out/bin/studio.sh --set PATH "${stdenv.lib.makeBinPath [ wrapProgram $out/bin/studio.sh \
--set PATH "${stdenv.lib.makeBinPath [
# Checked in studio.sh # Checked in studio.sh
coreutils coreutils
findutils findutils
gnugrep gnugrep
jdk
which which
# For Android emulator # For Android emulator
@ -66,7 +66,17 @@ let
# Runtime stuff # Runtime stuff
git git
]}" --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ ]}" \
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [
# Crash at startup without these
fontconfig
freetype
libXext
libXi
libXrender
libXtst
# Gradle wants libstdc++.so.6 # Gradle wants libstdc++.so.6
stdenv.cc.cc.lib stdenv.cc.cc.lib
# mksdcard wants 32 bit libstdc++.so.6 # mksdcard wants 32 bit libstdc++.so.6
@ -81,13 +91,10 @@ let
# For Android emulator # For Android emulator
libpulseaudio libpulseaudio
libX11 libX11
libXext
libXrender ]}" \
libXtst --set QT_XKB_CONFIG_ROOT "${xkeyboard_config}/share/X11/xkb" \
libXi --set FONTCONFIG_FILE ${fontsConf}
freetype
fontconfig
]}" --set QT_XKB_CONFIG_ROOT "${xkeyboard_config}/share/X11/xkb"
''; '';
src = fetchurl { src = fetchurl {
url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.zip"; url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.zip";

View File

@ -12361,19 +12361,10 @@ in
amsn = callPackage ../applications/networking/instant-messengers/amsn { }; amsn = callPackage ../applications/networking/instant-messengers/amsn { };
# Oracle JDK is recommended upstream, but unfree and requires a manual
# download. OpenJDK is straightforward, but may suffer from compatibility
# problems e.g. https://code.google.com/p/android/issues/detail?id=174496.
# To use Oracle JDK add an override to ~/.nixpkgs/config.nix:
# {
# packageOverrides = pkgs: {
# android-studio = pkgs.android-studio.override {
# jdk = pkgs.oraclejdk8;
# };
# };
# }
android-studio = callPackage ../applications/editors/android-studio { android-studio = callPackage ../applications/editors/android-studio {
inherit (xorg) libX11 libXext libXi libXrandr libXrender libXtst; fontsConf = makeFontsConf {
fontDirectories = [];
};
}; };
antimony = qt5.callPackage ../applications/graphics/antimony {}; antimony = qt5.callPackage ../applications/graphics/antimony {};