Skip to content

Overlays are applied both from nixpkgs.overlays and from ~/.config/nixpkgs/overlays.nix #39

@Ekleog

Description

@Ekleog

Hello,

In the process of migrating to colmena, I discovered a weirdness around the handling of overlays: when passing nixpkgs by path to colmena (meta.nixpkgs = ./nixpkgs;), it imports the ~/.config/nixpkgs/overlays.nix overlays.

I'd have expected the default arguments to the nixpkgs lambda to be overlays = [];, so that the impurity of home-local overlays wouldn't come up.

Would that make sense to you, or do you think the current behavior is the correct one? (In which case I'd think maybe a warning somewhere might be appropriate, as I ended up debugging why my overlay was being applied twice, once from ~/.config and once from nixpkgs.overlays, for 45 minutes today, and only figured it out after having failed to create a reproducer for the issue)

Anyway, a simple workaround is to set meta.nixpkgs = import ./nixpkgs { overlays = []; };, which is the way I'm going to go for now, but I'm thinking changing the default might make colmena more accessible to new users that wouldn't expect user-local overlays to be applied to deployments :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions