First Commit
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
{ pkgs ? import <nixpkgs> { config.allowUnfree = true; } }:
|
||||
|
||||
let
|
||||
androidSdk = pkgs.androidenv.composeAndroidPackages {
|
||||
buildToolsVersions = [ "35.0.0" "36.0.0" ];
|
||||
platformVersions = [ "35" "36" ];
|
||||
abiVersions = [ "x86_64" ];
|
||||
includeEmulator = true;
|
||||
includeSystemImages = true;
|
||||
systemImageTypes = [ "google_apis_playstore" ];
|
||||
includeNDK = false;
|
||||
};
|
||||
in
|
||||
pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
# --- Java ---
|
||||
# jetbrains.jdk
|
||||
jdk21
|
||||
|
||||
# --- Kotlin ---
|
||||
kotlin
|
||||
gradle
|
||||
# kotlin-language-server
|
||||
|
||||
# --- Android ---
|
||||
androidSdk.androidsdk
|
||||
android-tools
|
||||
# yarn
|
||||
|
||||
# --- Web ---
|
||||
# yarn
|
||||
# nodejs_24
|
||||
|
||||
libGL
|
||||
xorg.libX11
|
||||
xorg.libXcursor
|
||||
xorg.libXext
|
||||
xorg.libXi
|
||||
xorg.libXrender
|
||||
fontconfig
|
||||
libxkbcommon
|
||||
];
|
||||
|
||||
shellHook = ''
|
||||
ln -sfn ${pkgs.jdk21}/lib/openjdk .jdk
|
||||
export ANDROID_HOME="${androidSdk.androidsdk}/libexec/android-sdk"
|
||||
export ANDROID_SDK_ROOT="${androidSdk.androidsdk}/libexec/android-sdk"
|
||||
export GRADLE_OPTS="-Dorg.gradle.java.installations.paths=${pkgs.jdk21}/lib/openjdk"
|
||||
export JAVA_HOME=${pkgs.jdk21}
|
||||
export JDK_PATH=${pkgs.jdk21}/lib/openjdk
|
||||
export PATH="$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools/bin:$JAVA_HOME/bin:$PATH"
|
||||
export LD_LIBRARY_PATH=${pkgs.lib.makeLibraryPath [
|
||||
# pkgs.yarn
|
||||
# pkgs.nodejs_24
|
||||
pkgs.libGL
|
||||
pkgs.xorg.libX11
|
||||
pkgs.xorg.libXcursor
|
||||
pkgs.xorg.libXext
|
||||
pkgs.xorg.libXi
|
||||
pkgs.xorg.libXrender
|
||||
pkgs.fontconfig
|
||||
pkgs.libxkbcommon
|
||||
]}
|
||||
|
||||
echo "sdk.dir=$ANDROID_HOME" > local.properties
|
||||
|
||||
echo "Kotlin Multiplatform Dev Environment Loaded!"
|
||||
'';
|
||||
}
|
||||
Reference in New Issue
Block a user