change from mono-home-manager to full flake multi-system configuration
This commit is contained in:
33
home/androidstudio.nix
Normal file
33
home/androidstudio.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
androidSdkRoot = "${config.home.homeDirectory}/Android/Sdk";
|
||||
cfg = config.homeModules.androidstudio;
|
||||
in
|
||||
lib.mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
android-studio
|
||||
# Tools for Android SDK management
|
||||
android-tools
|
||||
jdk11 # or jdk17 if needed by Android Studio
|
||||
gradle
|
||||
];
|
||||
|
||||
# Set up environment variables for Android development
|
||||
home.sessionVariables = {
|
||||
ANDROID_SDK_ROOT = androidSdkRoot;
|
||||
ANDROID_HOME = androidSdkRoot;
|
||||
ANDROID_AVD_HOME = "${config.home.homeDirectory}/.android/avd";
|
||||
JAVA_HOME = "${pkgs.jdk11}/lib/openjdk"; # Or jdk17 if preferred
|
||||
# in _home.nix PATH = lib.mkAfter "${androidSdkRoot}/cmdline-tools/latest/bin:${androidSdkRoot}/platform-tools";
|
||||
};
|
||||
|
||||
# Create needed folders and install SDK components on first run (optional)
|
||||
home.activation.setupAndroidSdk = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||
mkdir -p "${androidSdkRoot}"
|
||||
if ! [ -x "${androidSdkRoot}/cmdline-tools/latest/bin/sdkmanager" ]; then
|
||||
echo "✴️ Installing Android SDK Command-line Tools..."
|
||||
cp -r ${pkgs.androidsdk}/cmdline-tools "${androidSdkRoot}/cmdline-tools"
|
||||
fi
|
||||
'';
|
||||
}
|
||||
Reference in New Issue
Block a user