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.


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