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

Possibility of merging projects? #6

Open
martinjungblut opened this issue Jun 12, 2021 · 5 comments
Open

Possibility of merging projects? #6

martinjungblut opened this issue Jun 12, 2021 · 5 comments

Comments

@martinjungblut
Copy link

martinjungblut commented Jun 12, 2021

Hi @anatol, how are you doing?

Following my post and your comment on Reddit (https://www.reddit.com/r/golang/comments/nwtgtn/go_bindings_for_libcryptsetup_luks/), I have a question:

Would you consider merging our projects?
They're both well maintained, and have similar goals.

Thanks,
Martin

@anatol
Copy link
Owner

anatol commented Jun 14, 2021

Hi @martinjungblut, sorry for the delay.

merging these projects sounds like a great idea. At the end of the day they both try to provide a cryptsetup functionality for Golang users.

luks.go idea is to avoid any external *.so deps and rather try to get this functionality with pure Go. So I wonder if it is something that aligns with go-cryptsetup library vision.

@martinjungblut
Copy link
Author

Hi @anatol, thanks for the reply!

I wasn't aware you were trying to avoid shared libraries altogether. That's both cool, and a bit challenging (I think).
Out of curiosity, how does luks.go maintain compatibility with upstream cryptsetup?

My original thought when creating go-cryptsetup was to be a wrapper around the upstream library. Relying on the shared objects isn't perfect for every scenario, for sure. I just thought it would be easy to ensure some consistency with the upstream developers (leveraging their code, performing integration tests, and ensuring it builds against their library, using multiple versions).

@martinjungblut
Copy link
Author

Hi @anatol, I just had an idea regarding this.

Have you considered statically linking, so there are no runtime dependencies on shared libraries?

Thanks

@aep
Copy link

aep commented Nov 2, 2022

Have you considered statically linking, so there are no runtime dependencies on shared libraries?

this seems unfeasible. it needs lvm2 which has a memory allocator that depends on being loaded as dl
also it has to be compiled against kernel headers

@aep
Copy link

aep commented Nov 2, 2022

turns out its possible. https://gist.github.com/aep/ef25923766f4a1fedcc6c9ff09fa5079

but it's a giant PITA and adds GPL infections, so we'll probably instead contribute to this library.

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

No branches or pull requests

3 participants