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

feat(modules): use package set for port sources #384

Draft
wants to merge 16 commits into
base: main
Choose a base branch
from

Conversation

getchoo
Copy link
Member

@getchoo getchoo commented Nov 25, 2024

Closes #240

The main goal here is to avoid discrepancies with the versions of Nixpkgs we have tested on and those on our users' systems -- i.e., us falling out of sync or moving too quickly with Nixpkgs will no longer cause problems in our modules

As a side effect of these changes, we also see some other improvements:

  • No more builtin fetchers
    • Builtin fetchers have a large effect on evaluation by blocking it to download files -- similar to IFD. This is why they are not allowed in Nixpkgs.
    • Using Nixpkgs' fetchers allows us to download most sources at build time, considerably improving evaluation performance for those who use many of our modules
  • Less space taken up by (most) sources
    • Done by only packaging what's needed by the module
    • This should make interacting with sources much easier
    • It also allows us to easily share modifications to ports across home-manager and NixOS
  • Fewer rebuilds
    • Some derivations brought over from Nixpkgs have been modified to build and install all variants instead of only one set. While this slightly increases storage use, it avoids rebuilds when you change your accent, flavor, etc options

@getchoo getchoo added this to the 2.0.0 milestone Nov 25, 2024
runHook postInstall
'';

meta = {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

might be worth adding a default meta.maintainers to prevent log spam for users that have nixpkgs.config.showDerivationWarnings = [ "maintainerless" ];

@getchoo getchoo force-pushed the package-set branch 5 times, most recently from 2c76c34 to e7f9411 Compare November 26, 2024 20:20
modules/nixos/sddm.nix Outdated Show resolved Hide resolved
@getchoo getchoo force-pushed the package-set branch 2 times, most recently from 450658b to b908409 Compare November 29, 2024 08:58
@getchoo getchoo force-pushed the package-set branch 3 times, most recently from 3b6e80c to 1bbb798 Compare November 29, 2024 09:36
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

Successfully merging this pull request may close these issues.

Maintain our own derivations of ports where necessary
2 participants