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

Seperate out modules into system-manager-modules repo #117

Open
soupglasses opened this issue Sep 26, 2024 · 4 comments
Open

Seperate out modules into system-manager-modules repo #117

soupglasses opened this issue Sep 26, 2024 · 4 comments
Labels
enhancement New feature or request

Comments

@soupglasses
Copy link
Contributor

Is your feature request related to a problem? Please describe.

This project inherently has a lot of complexity, especially in its flake.nix file to allow for easy development of the project. However, most of this is unneeded when a user wants to depend upon the system-manager flake for the system modules provided in this project.

Describe the solution you'd like

Create a separate system-manager-modules repository including only the absolute minimum inputs to allow reuse, preferably only a nixpkgs import. This could also be a good time to find a default.nix standard to import system manager modules as well.

This would also likely require the upstream packaging of system-manager into nixpkgs, such that pkgs.system-manager can be used over building the project from here. This also gives a free CDN of built binaries.

Describe alternatives you've considered

Alternative would be to remove all the dependencies from this projects flake.nix file to allow for lighter imports. This can also be a good approach, but would require to use more nixpkgs idioms instead of numtide idioms.

Additional context

I am including this project in my own flake.nix file and get over a terminal's worth of output of added inputs I will not be using but still have to version lock and update in my own projects. Which is quite annoying.

@soupglasses soupglasses added the enhancement New feature or request label Sep 26, 2024
@r-vdp
Copy link
Member

r-vdp commented Sep 26, 2024

Yeah, I agree, let's do this!
I will check to get a repo set up.

@soupglasses
Copy link
Contributor Author

Started playing around in the repo https://github.com/soupglasses/system-manager-lite

Might be a better approach to remove all the upstream imports than trying to split this up?

@soupglasses
Copy link
Contributor Author

I think the question is, how should new modules be added, and should we want it inside this repo, or in a dedicated module repo instead. It would signifigantly lessen the need for #125

@zimbatm
Copy link
Member

zimbatm commented Oct 11, 2024

One approach is to create a dev sub-flake to encapsulate the dev dependencies. It's a bit clunky but it works: https://github.com/nix-community/srvos/tree/main/dev (see also the .envrc file)

If we can keep everything together it makes things a bit easier to develop.

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

No branches or pull requests

3 participants