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 support for OpenBSD #1176

Open
lcheylus opened this issue Dec 20, 2023 · 3 comments
Open

Add support for OpenBSD #1176

lcheylus opened this issue Dec 20, 2023 · 3 comments

Comments

@lcheylus
Copy link

lcheylus commented Dec 20, 2023

For a Rust project, I need to add a GitHub workflow for tests on OpenBSD OS (using this GH action vmactions/openbsd-vm).

In this workflow, I'm using nextest to run tests via cargo nextest.

Currently, nextest build fails on OpenBSD because of an error with waitid C function not included in libc crate (included in shared_child crate) => see my PR rust-lang/libc#3490 to fix this issue.

With this patch, build on OpenBSD is OK. I created an initial OpenBSD port for nextest v0.9.66 , see https://github.com/jasperla/openbsd-wip/tree/master/devel/cargo-nextest

I would like to have a specific nextest release for OpenBSD official version to download directly the resulting binary => https://get.nexte.st/latest/openbsd

That would be the simplest solution to download/install nextest in my GH workflow for OpenBSD.

@sunshowers
Copy link
Member

Sure, happy to do an OpenBSD release. But it would seem like we'd need to wait for a libc release with your patch -- is that correct?

@lcheylus
Copy link
Author

But it would seem like we'd need to wait for a libc release with your patch -- is that correct?

Yes, my PR to add waitid function in libc crate is merged => needs a new release to build nextest on OpenBSD

@lcheylus
Copy link
Author

lcheylus commented Jan 7, 2024

Update for this request

In the future OpenBSD stable version (7.5, scheduled for April/May 2024), cargo-nextest will be available in ports and could be installed as package.

As a temporary solution, I created a GitHub workflow to build cargo-nextest binary for OpenBSD-stable (current version = 7.4) and publish it as a release sync with nextest release.

See me repository https://github.com/lcheylus/cargo-nextest-openbsd

build.sh: shell script to build cargo-nextest on OpenBSD

"Build and publish" GH workflow :

  • run an OpenBSD-stable VM on GH Ubuntu runner with vmactions/openbsd-vm action
  • build cargo-nextest bianry on OpenBSD VM
  • publish release : archive tar.gz with built cargo-nextest binary.

Build and GH workflow are OK. I publish with it a release for OpenBSD of cargo-nextest version 0.9.66 (latest release) => https://github.com/lcheylus/cargo-nextest-openbsd/releases/tag/0.9.66

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

2 participants