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

add flake.nix #128

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open

add flake.nix #128

wants to merge 4 commits into from

Conversation

ubbabeck
Copy link
Contributor

@ubbabeck ubbabeck commented Jan 29, 2024

About pr

The goal of this pr is to make it easier for us to create examples for the sdk in a language that we dont have installed or don't use. It makes the install process easy and the language version the same across system.

In order to test this you'll have to have to have nix installed have --experimental-features enabled or as an added flag and run nix develop.

Please let me know if this is something you think is useful. In case this is something we'd like yo proceed with then we can make a shell.nix file so that people who don't have flakes enabled can also use it. We can also use these flakes in the CI so that both our systems and the CI have the same versions installed.

Tested systems

  • aarch64-darwin
  • x86_64-darwin
  • aarch64-linux
  • x86_64-linux

Added languages

Swift and rust has not been added since they need more configuration in order to make it work.

  • python
  • react
  • go
  • dart/ flutter
  • kotlin
  • c#
  • swift (only applicable to macOS)
  • rust

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
@ok300
Copy link
Contributor

ok300 commented Jan 29, 2024

That's very cool @ubbabeck !

I tested locally all the languages you checked, and the snippets build for all.

What would be necessary to get the CI to use these flakes too?

@JssDWt
Copy link
Contributor

JssDWt commented Jan 29, 2024

Very cool

@ubbabeck
Copy link
Contributor Author

That's very cool @ubbabeck !

I tested locally all the languages you checked, and the snippets build for all.

What would be necessary to get the CI to use these flakes too?

Thanks,

There's not too much that is needed in order to make the CI use those flakes too. It would also make us sure that they work in a hermetic environment too. For example the kotlin flake fails as java17 isn't set as default so I think my system has the by default so it uses it. We could down also create a build derivation for the flake which does all the ci steps in a flake.

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