-
Notifications
You must be signed in to change notification settings - Fork 24
Add nix package flake #42
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
base: develop
Are you sure you want to change the base?
Conversation
|
Hi! Sounds cool, can you change PR to merge into develop? And is there a way that the version number (and hash?) does not have to be updated for every release? |
|
I updated to develop. I can update the flake to not use hash checking with a simple |
|
Hi @dakota-marshall , I've been working on a nix package over here. If you wanted to provide feedback or just give it a thumbs up I'd appreciate it! It's a bit slow to add a new package, so anything helps. If you built the package from source, BTW, you wouldn't have to update the hash since it would use the git commit of the flake directory instead. As it is, when you use the flake, the whole source is being copied into the nix store anyway, so you might as well build it. The advantage is that you would be able to get the latest version of the package on any branch the flake exists on instead of only pulling releases, at the cost of (on my slow machine) ~30 seconds of building. My package already builds it from source, so if you want to use it as a reference for this flake I'd be fine with that. |
Hey There! Nice work on the package. Im happy to give it a thumbs up, but im quite new to packaging for nix 😅 (this is my first real contribution to any project for it lol) so probably not much to give in the ways of advice
That would probably be the smarter option for sure, if youre fine with it ill probably take yours as reference and will try and spend some time tonight getting this over to build from source, thank you! Ironically I just got back into DF so im using this again and had to get it updated to the newest release so it was already fresh in my head lol |
|
Alright, so I got this to a point where it does build from source, so that's a big plus! Few problems im not entirely sure how to fix: @donottellmetonottellyou You might be the best to answer these:
And @Kromtec, for you:
I was going to try and see about finding the most recent tag from the repo and using that, but I didnt get too far down that rabbit whole as Id see if it was even an issue first lol |
This should only be a problem if Kromtec updates their dependencies, but is a problem worth looking at. According to the reference, nugetDeps should be a path to a JSON file, a derivation, or a list of derivations. Given that it accepts a derivation, it should be possible to generate the deps and then build them inside the flake (I think). This would obviously make the build time longer, but not by too much I don't think. This outlines how to create the deps.json, so maybe it accepts a deps.json generated at build time? You'd just need to create a package that consists of a file output instead of a directory I think ( I don't think this would be an acceptable option for nixpkgs (I'm new too), but would work for a flake.
Well, for starters, the file already exists as a function Otherwise, you could make the arguments available wherever you want to put the frontend in Nix is confusing in that it uses curly braces for arguments, body, and calling functions lol. But nix uses a set instead of a list for arguments, so I'm not sure how else you would demonstrate that semantically. EDIT: Make sure the
You could use a variation on the nixpkgs versioning conventions, and just call the version I think the point is that it doesn't break semantic versioning because if semver started being used |
This PR adds a functioning nix package flake that pulls from the specified release. This gives NixOS a way to install the latest release onto the system. I will also be pushing the non-flake version of this out to nixpkgs eventually, but figured id contribute the flake if you are interested in storing it in the repo itself.