Skip to content

build(nix): add flake for development shell#5451

Draft
elzody wants to merge 3 commits intomainfrom
build/nix-flake
Draft

build(nix): add flake for development shell#5451
elzody wants to merge 3 commits intomainfrom
build/nix-flake

Conversation

@elzody
Copy link
Collaborator

@elzody elzody commented Mar 2, 2026

  • Target version: main

Summary

I have been using and learning Nix, and I thought some good practice would be to create a flake. The main goal right now is to be able to enter a development shell that already has the correct versions of Node, NPM, PHP, and other dependencies set up and ready to use. It is more reproducible and cleaner than using things like NVM (Node Version Manager).

TODO

  • Clean up version string and package name logic
  • Add Nix formatter to the flake
  • Tests somehow?

Checklist

  • Code is properly formatted
  • Sign-off message is added to all commits
  • Documentation (manuals or wiki) has been updated or is not required

elzody added 3 commits March 2, 2026 10:24
Signed-off-by: Elizabeth Danzberger <elizabeth@elzody.dev>
Signed-off-by: Elizabeth Danzberger <elizabeth@elzody.dev>
Signed-off-by: Elizabeth Danzberger <elizabeth@elzody.dev>
@elzody elzody requested a review from provokateurin March 2, 2026 19:03
@elzody elzody self-assigned this Mar 2, 2026
@elzody elzody requested a review from juliusknorr as a code owner March 2, 2026 19:03
@elzody elzody added the 2. developing Work in progress label Mar 2, 2026
@elzody elzody marked this pull request as draft March 2, 2026 19:03
@provokateurin
Copy link
Member

Cool! For Nextcloud apps it's not necessary to have their own flakes though (at least if they don't do anything special), because we have https://github.com/nextcloud/server/blob/master/flake.nix. As long as your app is located somewhere inside the server sources direnv will check recursively and automatically pick it up. You just need to make sure that the server and this repo are "in sync" regarding stable branches, so that the right versions are used.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2. developing Work in progress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants