Bup on arm64 installs haskell etc, 1.2GB 😅

I’m trying out Crostini on a C330 ARM Chromebook and in the container I added Nix, then wanted to restore something with bup, which resulted in adding Haskell, LLVM, Python 3, Python 2… Quite a surprise, given that bup is a Python 2 script and only requires git.

How do I go about finding the dep that caused Haskell to be installed?

Looks like it depends on pandoc. You can determine why one derivation depends on another using the nix why-depends command, or by using the nix edit command to view the Nix expression.

3 Likes

Indeed, that’s the problem, it doesn’t compile on arm64 and therefore it tries to build it locally. Weird that Haskell gets thrown in the mix ¯\_(ツ)_/¯

I got around it by overriding the bup build without pandoc.

1 Like

For the curious, context on why pulling in Haskell is so large:

This could be mitigated by putting each type in a different output maybe?

Also, why is pandoc using ghc?

Because pandoc is written in Haskell? I think I’m missing something.

Oh wow, TIL. I assumed that since it’s been around since 2006 it couldn’t have been written in Haskell, d’oh!

1 Like

See also pandoc - statically linked closure-size · Issue #34376 · NixOS/nixpkgs · GitHub for efforts to reduce the closure size. I think one hackathon would do :slight_smile:

1 Like