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

CI configs: add nix flake #1815

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

CI configs: add nix flake #1815

wants to merge 1 commit into from

Conversation

aca
Copy link
Contributor

@aca aca commented May 25, 2024

elvish is already packaged in nix, but adding flake file in the project can provide reproducible build, develop environment.
And helpful for someone who wants to package any version of elvish they want (nightly build or even fork..).


[mod]
[mod."github.com/creack/pty"]
version = "v1.1.21"
Copy link
Contributor

Choose a reason for hiding this comment

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

How will this dependency data be kept in sync with the go.mod file? If someone submits a change that updates the version of any of these packages (which I have done more than once) do they also have to update this file or is file somehow automatically kept in sync with the go.mod file for the project?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This has to be updated together with the command
nix develop --command gomod2nix.

If adding flake is OK, I'll try to add workflow that generates automatic PR when dependancy changes.

@xiaq
Copy link
Member

xiaq commented Sep 26, 2024

Hi, sorry for not getting to this. I've wanted to try Nix for a while, so I've been sitting on this PR thinking that I'd get to it once I learned enough Nix to understand what's going on. But it's taken a bit too long, so I thought I should at least post a response.

I try to ensure that I can maintain the entire Elvish codebase, so in general I don't accept code that I don't fully understand unless there's a very compelling reason to do so. Can you tell me:

  • I see there's already an Elvish package in nixpkgs. What's the relationship between it and this PR?

  • Can the files in the PR reasonably live in a separate repo?

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.

3 participants