Hello, raingloom <raingl...@riseup.net> writes:
> On Wed, 17 Nov 2021 22:15:28 +0100 > Ludovic Courtès <l...@gnu.org> wrote: > >> Hi! >> >> GHC takes way too much space (GHC itself, not the closure): >> >> --8<---------------cut here---------------start------------->8--- >> $ guix size ghc@8.10 >> konserveja ero >> total self /gnu/store/allyyvs2xg396s23csrmqfx19n9zayp7-ghc-8.10.7 >> 1831.0 1599.4 87.3% >> /gnu/store/z9alkwg8anajvasd01pyx4rzcasli3yf-ghc-8.10.7-doc >> 190.2 150.8 8.2% >> /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31 >> 38.4 36.7 2.0% >> /gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib >> 71.0 32.6 1.8% >> /gnu/store/zzkly5rbfvahwqgcs7crz0ilpi7x5g5p-ncurses-6.2 >> 76.9 5.9 0.3% >> /gnu/store/35afkywncrr5xsb4cxcljf6rpjcb7f61-gmp-6.2.0 >> 73.8 2.7 0.2% >> /gnu/store/mmhimfwmmidf09jw1plw3aw1g1zn2nkh-bash-static-5.0.16 >> 1.6 1.6 0.1% >> /gnu/store/pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16 >> 39.4 1.0 0.1% >> /gnu/store/bw15z9kh9c65ycc2vbhl2izwfwfva7p1-libffi-3.3 >> 71.2 0.2 0.0% total: 1831.0 MiB $ guix describe Generacio >> 194 Nov 07 2021 23:40:30 (nuna) guix bd41e59 repository >> URL: https://git.savannah.gnu.org/git/guix.git branch: master commit: >> bd41e590dd24e54797fb8b6854c244efd4d12df5 --8<---------------cut >> here---------------end--------------->8--- >> >> Most of it comes from $libdir, specifically: >> >> --8<---------------cut here---------------start------------->8--- >> $ du -s >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/*|sort >> -k1 -n| tail 23756 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/haskeline-0.8.2 >> 28776 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/text-1.2.4.1 >> 47664 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/containers-0.6.5.1 >> 48428 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-prim-0.6.1 >> 50768 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghci-8.10.7 >> 54100 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/template-haskell-2.16.0.0 >> 80200 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/bin >> 151868 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/base-4.14.3.0 >> 426416 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/Cabal-3.2.1.0 >> 538168 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7 >> $ du -s >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/*|sort >> -k1 -n|tail 652 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/Llvm >> 716 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/SPARC >> 1108 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/RegAlloc >> 2256 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/DynFlags.dyn_hi >> 2256 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/DynFlags.hi >> 2256 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/DynFlags.p_hi >> 23724 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/GHC >> 90908 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/libHSghc-8.10.7-ghc8.10.7.so >> 127908 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/libHSghc-8.10.7.a >> 225972 >> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/libHSghc-8.10.7_p.a >> --8<---------------cut here---------------end--------------->8--- >> >> Can we at least (re)move those ‘.a’ files? >> >> Thoughts? >> >> Ludo’. >> >> >> > > Shouldn't `.a` be split to a static lib output? In Guix they aren't used typically (everything gets linked dynamically); at 1 GiB+ I think it's fair to get rid of them. Thanks, Maxim