android-studio: Add desktop item
This commit is contained in:
parent
a823fb3ae5
commit
6d28393eb1
1 changed files with 42 additions and 18 deletions
|
@ -34,11 +34,12 @@
|
|||
, writeTextFile
|
||||
, xkeyboard_config
|
||||
, zlib
|
||||
, makeDesktopItem
|
||||
}:
|
||||
|
||||
let
|
||||
drvName = "android-studio-${channel}-${version}";
|
||||
androidStudio = stdenv.mkDerivation {
|
||||
androidStudio = stdenv.mkDerivation rec {
|
||||
name = drvName;
|
||||
|
||||
src = fetchurl {
|
||||
|
@ -110,7 +111,20 @@ let
|
|||
]}" \
|
||||
--set QT_XKB_CONFIG_ROOT "${xkeyboard_config}/share/X11/xkb" \
|
||||
--set FONTCONFIG_FILE ${fontsConf}
|
||||
|
||||
install -Dm644 bin/studio.png $out/share/pixmaps/${drvName}.png
|
||||
ln -s ${desktopItem}/share/applications $out/share/applications
|
||||
'';
|
||||
|
||||
desktopItem = makeDesktopItem rec {
|
||||
name = drvName;
|
||||
exec = pname;
|
||||
icon = drvName;
|
||||
desktopName = "Android Studio";
|
||||
comment = "The official Android IDE";
|
||||
categories = "Development;IDE;";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
# Android Studio downloads prebuilt binaries as part of the SDK. These tools
|
||||
|
@ -121,8 +135,7 @@ let
|
|||
multiPkgs = pkgs: [ pkgs.ncurses5 ];
|
||||
};
|
||||
|
||||
in
|
||||
writeTextFile {
|
||||
wrapper = writeTextFile {
|
||||
name = "${drvName}-wrapper";
|
||||
# TODO: Rename preview -> beta (and add -stable suffix?):
|
||||
destination = "/bin/${pname}";
|
||||
|
@ -131,18 +144,29 @@ in
|
|||
#!${bash}/bin/bash
|
||||
${fhsEnv}/bin/${drvName}-fhs-env ${androidStudio}/bin/studio.sh
|
||||
'';
|
||||
} // {
|
||||
meta = with stdenv.lib; {
|
||||
description = "The Official IDE for Android (${channel} channel)";
|
||||
longDescription = ''
|
||||
Android Studio is the official IDE for Android app development, based on
|
||||
IntelliJ IDEA.
|
||||
'';
|
||||
homepage = if channel == "stable"
|
||||
then https://developer.android.com/studio/index.html
|
||||
else https://developer.android.com/studio/preview/index.html;
|
||||
license = licenses.asl20;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ primeos ];
|
||||
};
|
||||
}
|
||||
};
|
||||
in stdenv.mkDerivation {
|
||||
name = "${drvName}-with-desktop-item";
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -p $out/{bin,share/pixmaps}
|
||||
ln -s ${wrapper}/bin/${pname} $out/bin/${pname}
|
||||
|
||||
ln -s ${androidStudio}/share/pixmaps/${drvName}.png $out/share/pixmaps/${drvName}.png
|
||||
ln -s ${androidStudio}/share/applications $out/share/applications
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "The Official IDE for Android (${channel} channel)";
|
||||
longDescription = ''
|
||||
Android Studio is the official IDE for Android app development, based on
|
||||
IntelliJ IDEA.
|
||||
'';
|
||||
homepage = if channel == "stable"
|
||||
then https://developer.android.com/studio/index.html
|
||||
else https://developer.android.com/studio/preview/index.html;
|
||||
license = licenses.asl20;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ primeos ];
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue