As I am new to NixOS, so I am using latest OS, and I can’t figure out how to get android-studio
running. Nothing on the internet helped me so far. This is my current situation:
Configuration file:
...
environment.variables = {
GDK_SCALE = ".7";
NIXPKGS_ACCEPT_ANDROID_SDK_LICENSE = 1;
};
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
nixpkgs.config.android_sdk.accept_license = true;
...
environment.systemPackages = with pkgs; [
...
android-studio-full
];
Running android via apps, does nothing. Running it in the terminal:
=== nixpkgs Android Studio wrapper
- ANDROID_SDK_ROOT=/nix/store/qmpmzdabfhi0d91mqyaicbmh6bqy779k-androidsdk/libexec/android-sdk
- ANDROID_NDK_ROOT=/nix/store/qmpmzdabfhi0d91mqyaicbmh6bqy779k-androidsdk/libexec/android-sdk/ndk-bundle
Warning: Not allowed as a service: java.awt.Window.CustomTitleBarPeer
at com.jetbrains.JBR$WindowDecorations__Holder.<clinit>(JBR.java:642)
at com.jetbrains.JBR.getWindowDecorations(JBR.java:662)
at com.intellij.platform.ide.bootstrap.StartupUtil$startApplication$3.invokeSuspend(startup.kt:171)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)
Warning: Service not supported: com.jetbrains.WindowDecorations
at com.jetbrains.JBR$WindowDecorations__Holder.<clinit>(JBR.java:642)
at com.jetbrains.JBR.getWindowDecorations(JBR.java:662)
at com.intellij.platform.ide.bootstrap.StartupUtil$startApplication$3.invokeSuspend(startup.kt:171)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)
2025-02-20 15:08:22,818 [ 307] WARN - #c.i.p.i.b.Splash - Cannot save splash image
java.nio.BufferOverflowException
at java.base/java.nio.Buffer.nextPutIndex(Unknown Source)
at java.base/java.nio.DirectByteBuffer.putInt(Unknown Source)
at com.intellij.platform.ide.bootstrap.SplashManagerKt.writeImage(SplashManager.kt:450)
at com.intellij.platform.ide.bootstrap.SplashManagerKt.access$writeImage(SplashManager.kt:1)
at com.intellij.platform.ide.bootstrap.SplashManagerKt$loadSplashImage$3.invokeSuspend(SplashManager.kt:328)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:125)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:99)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)
**Start Failed**
Internal error
java.lang.IllegalArgumentException: Width (0) and height (0) cannot be <= 0
at java.desktop/java.awt.image.DirectColorModel.createCompatibleWritableRaster(Unknown Source)
at java.desktop/java.awt.image.BufferedImage.<init>(Unknown Source)
at com.intellij.ui.svg.JsvgKt.renderSvgWithSize(jsvg.kt:41)
at com.intellij.ui.svg.JsvgKt.renderSvgWithSize$default(jsvg.kt:39)
at com.intellij.ui.svg.SvgKt.loadWithSizes(svg.kt:308)
at com.intellij.ui.AppUIUtilKt.loadAppIconImage(AppUIUtil.kt:122)
at com.intellij.ui.AppUIUtilKt.updateAppWindowIcon(AppUIUtil.kt:78)
at com.intellij.platform.ide.bootstrap.UiKt$scheduleUpdateFrameClassAndWindowIconAndPreloadSystemFonts$1$2$1.invokeSuspend(ui.kt:247)
at com.intellij.platform.ide.bootstrap.UiKt$scheduleUpdateFrameClassAndWindowIconAndPreloadSystemFonts$1$2$1.invoke(ui.kt)
at com.intellij.platform.ide.bootstrap.UiKt$scheduleUpdateFrameClassAndWindowIconAndPreloadSystemFonts$1$2$1.invoke(ui.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:62)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:163)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
at com.intellij.platform.diagnostic.telemetry.impl.TracerKt.span(tracer.kt:56)
at com.intellij.platform.diagnostic.telemetry.impl.TracerKt.span$default(tracer.kt:49)
at com.intellij.platform.ide.bootstrap.UiKt$scheduleUpdateFrameClassAndWindowIconAndPreloadSystemFonts$1$2.invokeSuspend(ui.kt:246)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)
-----
JRE: 21.0.3+-12282718-b509.11 amd64 (JetBrains s.r.o.)
/nix/store/crl9hhp0vccha4kxazzli3q4jys2minq-android-studio-stable-2024.2.1.9-unwrapped/jbr
-----
Also, a UI exception occurred in an attempt to show the above message:
sun.awt.X11.XException: Cannot write XdndAware property
at java.desktop/sun.awt.X11.XDnDDropTargetProtocol.registerDropTarget(Unknown Source)
at java.desktop/sun.awt.X11.XDropTargetRegistry.registerDropSite(Unknown Source)
at java.desktop/sun.awt.X11.XWindowPeer.addDropTarget(Unknown Source)
at java.desktop/sun.awt.X11.XComponentPeer.addDropTarget(Unknown Source)
at java.desktop/java.awt.dnd.DropTarget.addNotify(Unknown Source)
at java.desktop/java.awt.Component.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/javax.swing.JComponent.addNotify(Unknown Source)
at java.desktop/javax.swing.JRootPane.addNotify(Unknown Source)
at java.desktop/java.awt.Container.addNotify(Unknown Source)
at java.desktop/java.awt.Window.addNotify(Unknown Source)
at java.desktop/java.awt.Dialog.addNotify(Unknown Source)
at java.desktop/java.awt.Window.pack(Unknown Source)
at java.desktop/javax.swing.JOptionPane.initDialog(Unknown Source)
at java.desktop/javax.swing.JOptionPane.createDialog(Unknown Source)
at java.desktop/javax.swing.JOptionPane.showOptionDialog(Unknown Source)
at com.intellij.platform.ide.bootstrap.StartupErrorReporter.showError(StartupErrorReporter.java:130)
at com.intellij.platform.ide.bootstrap.StartupErrorReporter.showError(StartupErrorReporter.java:90)
at com.intellij.idea.Main.mainImpl(Main.kt:76)
at com.intellij.idea.Main.main(Main.kt:47)
at com.android.tools.idea.MainWrapper.main(MainWrapper.java:38)