You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, the libsodium version used is hardcoded here and checked here.
This works most of the times because of the dependency on the libsodium nuget package. However, that package doesn't include the libsodium for all potential platforms, and it would be impractical, if at all possible, to do so. For example, here are the bundled versions currently:
There's isn't any bundled library for linux on aarch64, so we have to install the library manually somehow. When installing it on linux+aarch64 inside microsoft's docker runtime:5.0 image using apt-get, you get libsodium 1.0.17 instead of 1.0.18.
In my local branch I removed the SODIUM_LIBRARY_VERSION_MINOR check so it works when using the same major version. Maybe you could allow for overriding the hardcoded version and/or allow to disable the check altogether when an environment variable is set?
Thanks.
The text was updated successfully, but these errors were encountered:
The differences between minor versions of libsodium are in practice actually not that minor. So, supporting multiple versions in NSec would require a lot more testing, conditionally compiled code, and polyfills.
I think the solution here is to include the pre-compiled binary for aarch64 in the package. Unfortunately, I don't have access to an aarch64 machine that runs .NET and don't know if/how it's possible to build and test a pre-compiled binary for aarch64 with GitHub Actions. The GitHub Actions workflow is here. If you want to create a pull request adding aarch64 support, I think that would be very welcome.
Support for linux-arm64 and linux-arm has been added in the libsodium 1.0.18.1 nuget package. We're still working out some minor issues, so that likely the next NSec release with have support as well.
Currently, the libsodium version used is hardcoded here and checked here.
This works most of the times because of the dependency on the libsodium nuget package. However, that package doesn't include the libsodium for all potential platforms, and it would be impractical, if at all possible, to do so. For example, here are the bundled versions currently:
There's isn't any bundled library for linux on aarch64, so we have to install the library manually somehow. When installing it on linux+aarch64 inside microsoft's docker
runtime:5.0
image using apt-get, you get libsodium 1.0.17 instead of 1.0.18.In my local branch I removed the
SODIUM_LIBRARY_VERSION_MINOR
check so it works when using the same major version. Maybe you could allow for overriding the hardcoded version and/or allow to disable the check altogether when an environment variable is set?Thanks.
The text was updated successfully, but these errors were encountered: