I’ve been happily updating IntelliJ a number of times using the below overlay 30-macos-apps.nix
(snippet further below).
I’d recently happily updated from 2020.1.3 to 2020.1.4 using nix-env -u IntelliJIDEA
.
Jetbrains have just released another update which I’d like to update to: 2020.2. But when updating my overlay with the new version and sha256 (using nix-prefetch-url) I’m getting the following error.
How do I debug this to see what’s going wrong? Why would it fail for this version?
I’m using the following version of nixpkgs (single user install on macOS Catalina):
nix-instantiate --eval -E '(import <nixpkgs> {}).lib.version'
"20.09pre226586.571212eb839"
logs
% nix-env -u IntelliJIDEA
upgrading 'IntelliJIDEA-2020.1.4' to 'IntelliJIDEA-2020.2'
these derivations will be built:
/nix/store/pybflwfmqzf3pknb3pfc50pl0010sc7x-IntelliJIDEA-2020.2.drv
building '/nix/store/pybflwfmqzf3pknb3pfc50pl0010sc7x-IntelliJIDEA-2020.2.drv'...
unpacking sources
unpacking source archive /nix/store/xm545xvkbl41ng2bcgd5kg5rb0lsk1s0-ideaIU-2020.2.dmg
/nix/store/ndf7qlylf9cgairldjhjny13wcb1q154-undmg-1.0.3/nix-support/setup-hook: line 2: 20993 Segmentation fault: 11 undmg < "$curSrc"
do not know how to unpack source archive /nix/store/xm545xvkbl41ng2bcgd5kg5rb0lsk1s0-ideaIU-2020.2.dmg
builder for '/nix/store/pybflwfmqzf3pknb3pfc50pl0010sc7x-IntelliJIDEA-2020.2.drv' failed with exit code 1
error: build of '/nix/store/pybflwfmqzf3pknb3pfc50pl0010sc7x-IntelliJIDEA-2020.2.drv' failed
30-macos-apps.nix
self: super: {
installApplication =
{ name, appname ? name, version, src, description, homepage,
postInstall ? "", sourceRoot ? ".", ... }:
with super; stdenv.mkDerivation {
name = "${name}-${version}";
version = "${version}";
src = src;
buildInputs = [ undmg unzip ];
sourceRoot = sourceRoot;
phases = [ "unpackPhase" "installPhase" ];
installPhase = ''
mkdir -p "$out/Applications/${appname}.app"
cp -pR * "$out/Applications/${appname}.app"
'' + postInstall;
meta = with stdenv.lib; {
description = description;
homepage = homepage;
maintainers = with maintainers; [ jwiegley ];
platforms = platforms.darwin;
};
};
IntelliJIDEA = self.installApplication rec {
name = "IntelliJIDEA";
appname = "IntelliJ IDEA";
version = "2020.2";
sourceRoot = "IntelliJ IDEA.app";
src = super.fetchurl {
url = "https://download.jetbrains.com/idea/ideaIU-${version}.dmg";
sha256 = "1di3x8dp9vx7gpmq30z7kj1rx70psf17b6bapqdnwx1mnfz4bcrz";
};
description = "The most intelligent JVM IDE";
homepage = https://www.jetbrains.com/idea/;
appcast = https://www.jetbrains.com/idea/download/other.html;
};
}
previous derivation for IntelliJIDEA:
IntelliJIDEA = self.installApplication rec {
name = "IntelliJIDEA";
appname = "IntelliJ IDEA";
version = "2020.1.4";
sourceRoot = "IntelliJ IDEA.app";
src = super.fetchurl {
url = "https://download.jetbrains.com/idea/ideaIU-${version}.dmg";
sha256 = "1csaflazc7412nycziji9zszj6nx7myy69vw389rmwc7kpsp9aci";
};
description = "The most intelligent JVM IDE";
homepage = https://www.jetbrains.com/idea/;
appcast = https://www.jetbrains.com/idea/download/other.html;
};