Skip to content
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

Closure size is too large #4

Open
4 of 7 tasks
chpxu opened this issue Feb 5, 2023 · 0 comments
Open
4 of 7 tasks

Closure size is too large #4

chpxu opened this issue Feb 5, 2023 · 0 comments

Comments

@chpxu
Copy link
Owner

chpxu commented Feb 5, 2023

Summary

The complete configuration will download at a bare minimum, 5 GiB, worth of derivations from nixpkgs and other inputs, with a final closure (installed) size of at least 10GiB.

Per update, i.e. when running home-manager switch and nixos-rebuild switch after nix flake update will cause at least 3GiB of downloaded packages and an almost 10GiB install size.

For the amount of programs I use, this isn't too bad, but there are ways of significantly reducing this size and implementing modularity. In terms of packages, the main culprits are:

  • texlive-full
    • I use LaTeX on a daily basis and to have a quick and easy setup with VSCode, I install all packages on a home-manager generation. The closure size of this package is estimated at around 5GiB.
  • Global Python Environment
    • Again, a setup for convenience in VSCode.

Remedies

  • texlive-full

    • Work on rlt.sh (see repo) as an independent method to build LaTeX files on NixOS. This would create a customised shell containing all necessary packages and would reduce the necessity for a global installation.
    • Realise what programs (e.g. LTeX etc.) would function best outside of this.
  • Python

    • Work on using direnv to create python environments for development and projects.
    • Realise what programs/packages would still work best globally. Especially necessary for VSCode environments.
  • Remove unused programs

    • thunderbird(I tend to use web clients more)
    • xournalpp (I use rnote instead and it can open .xopp files which is all I need)
      - mathpix (for now)

More will probably need to be added.

Better ways to optimise this configuration must also be explored.

Package size reduce down to: 440 - 971 - 171
Update size reduced less than 100MB download for updating the nix flake inputs after 3 days.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant