-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
emanote: patch out erroneous runtime deps due to cabal _Path module #204675
base: master
Are you sure you want to change the base?
Conversation
request reviews: @maralorn @srid @Profpatsch |
Note that this kind of patch should be obsoleted if/when haskell/cabal#8534 lands and affected programs are patched to use the new mechanism for discovering/embedding dependency versions. |
5.5G to 0.5G reduction in size? Great! |
Note that emanote still has a runtime dependency on nodejs via tailwindcss, which accounts for most of the remaining size. |
Tangential, but I really want to rewrite the Tailwind compiler in Haskell. It would also help srid/ema#20 in addition to srid/emanote#384 (comment) |
I notice that
That seems sensible but also the library isn't present in |
Hey @edrex generally the Haskell derivations in nixpkgs build all build outputs of a package, i.e. the library (if it exists) and all executables. This makes a lot of sense because in most Haskell packages the executable depends on the library, so it is needed for compilation. (There is a flag in our mkDerivation script to disable building the library, but for the before mentioned reason that will result in a build fail for most packages.) |
Patch emanote static binary's dependencies to remove erroneous references due to Cabal *_Path modules.
Reduces closure size for static executable reported by
nix path-info -S ./result
from 5643632280to 570510096
What I did:
nix-tree ./result
to the list of disallowed packages (pandoc, warp).Things done
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)