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

Demonstrate Rust code from sysroot #3054

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

cgwalters
Copy link
Member

This is a demo/prototype for starting to add new Rust code only for OstreeSysroot.

#2427 (comment)

This is a demo/prototype for starting to add new Rust
code only for `OstreeSysroot`.

ostreedev#2427 (comment)
@openshift-ci
Copy link

openshift-ci bot commented Sep 20, 2023

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@cgwalters
Copy link
Member Author

cgwalters commented Sep 20, 2023

I started thinking about this and couldn't help trying it out; it was easier than I thought.

However, a few obvious things:

  • We definitely want to at least use https://github.com/mozilla/cbindgen; and even with that, error handling still sucks. Maybe we can teach cbindgen about GError...
  • The dynamic linking thing will suck for ergonomics

@cgwalters
Copy link
Member Author

Other binding tool options:

@cgwalters
Copy link
Member Author

[2023-09-20T19:41:39.924Z] ostree: failed to initialize libostreesysrs.so: /usr/libexec/libostree/libostreesysrs.so: cannot open shared object file: No such file or directory

This is because the supermin tooling only knows how to find things shipped as an RPM.

(Hmmm....maybe we could figure out some way to actually ship this thing as part of libostree-1.so...)

Or I guess, the more I think about it, pull off the band aid and just hard require Rust.

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

Successfully merging this pull request may close these issues.

None yet

1 participant