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

Why not use flake inputs for sources? #388

Closed
LuminarLeaf opened this issue Nov 28, 2024 · 4 comments
Closed

Why not use flake inputs for sources? #388

LuminarLeaf opened this issue Nov 28, 2024 · 4 comments

Comments

@LuminarLeaf
Copy link

As the title states, why aren't the sources being managed by the flake.nix's inputs? Isn't that what its best for(keeping track and updating git repos)?

This would also make overriding the sources a bit easier and also testing development versions as we can just use a local path.

@isabelroses
Copy link
Member

Catppuccin has over 300 ports. If we eventually get up to that 300, having all those inputs would slow down the eval alot. And in terms of keeping track and updated no not really since nvfetcher will keep the ports updated too.

This would also make overriding the sources a bit easier and also testing development versions as we can just use a local path.

You can still do that with the current integration. To do so you need to:

  1. Add your new input
  2. add this code config.catppuccin.sources.portname = inputs.portname;

Also we have plans to start using packages for ports see #384.

@isabelroses isabelroses closed this as not planned Won't fix, can't repro, duplicate, stale Nov 28, 2024
@getchoo
Copy link
Member

getchoo commented Nov 29, 2024

The above is the gist of it, but I also want to note that keeping compatibility with stable Nix is also something considered in how we fetch our sources

@mightyiam
Copy link

Is there a way to permit users the choice between upstream sources as flake inputs and packages, perhaps?

@getchoo
Copy link
Member

getchoo commented Dec 2, 2024

Users can set catppuccin.sources.<port> = inputs.<port>, assuming the port is in their Flake inputs

There isn't an easy way to do this upstream, though. It would require a good amount of work to keep both packages and the inputs up to date and tested -- not to mention that Flake inputs can't even be used for everything, as we have to build some ports. I also don't really see why we would in the first place; packages either offer the same evaluation performance or far better in all ports

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

4 participants