Skip to content

Conversation

@Guelakais
Copy link
Contributor

@Guelakais Guelakais commented Apr 23, 2025

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Apr 23, 2025
@Guelakais
Copy link
Contributor Author

I'm delighted as punch. I'm so close to building and running gazebosim with nixpkgs! The only thing missing is gz-math!

@Guelakais Guelakais moved this to 🔖 Awaits the merge in ROS 2 Apr 24, 2025
@Guelakais Guelakais added this to ROS 2 Apr 24, 2025
Copy link
Contributor

@bengsparks bengsparks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The repository contains tests; you should build these too.
They also contain a test/gtest_vendor, which you should remove from the tree, and prefer gtest from nixpkgs instead.

Copy link
Member

@jopejoe1 jopejoe1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The repository contains tests; you should build these too. They also contain a test/gtest_vendor, which you should remove from the tree, and prefer gtest from nixpkgs instead.

Just doing a doCheck = true; should be enough to run the tests, but I don't see that as something that would block this pr and can be done at a later time.


nativeBuildInputs = [
cmake
gz-cmake
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be in buildInputs or in here?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gz-cmake is a collection of cmake modules, so I imagine this is correct.

@bengsparks
Copy link
Contributor

I'd frankly prefer if this package were merged with tests enabled; something like this tends to slip through the cracks 😄
Alternatively, if you would rather just be done with the PR, then I can take a crack at it after this PR has merged. I'll leave it up to those with merge permissions ^^

@drupol
Copy link
Contributor

drupol commented Apr 24, 2025

I'd frankly prefer if this package were merged with tests enabled; something like this tends to slip through the cracks 😄 Alternatively, if you would rather just be done with the PR, then I can take a crack at it after this PR has merged. I'll leave it up to those with merge permissions ^^

I guess we can do it within this PR, can you give some directions on how to enable the tests?

@wegank wegank added the 12.approvals: 2 This PR was reviewed and approved by two persons. label Apr 24, 2025
@bengsparks
Copy link
Contributor

bengsparks commented Apr 24, 2025

Sure, give me a few minutes.
EDIT: Now that I look more closely, there is more we should do for this package

nativeBuildInputs = [
cmake
gz-cmake
spdlog
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

spdlog should be under buildInputs

gz-cmake
spdlog
];

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additionally, I don't think we want to use the vendored cli11, so

buildInputs = [ cli11 spdlog ];

cmakeFlags = [
  (lib.cmakeBool "GZ_UTILS_VENDOR_CLI11" false)
];

@bengsparks
Copy link
Contributor

Let's hold off on testing for a second; it's not entirely trivial, seeing as gz-cmake provides the testing and documentation functionality, but does not actually provide the libraries and binaries that would generate these.
I think I'll add them in a follow-up PR, which will be easier when a package that uses gz-cmake has been merged.

@drupol drupol merged commit 2a05865 into NixOS:master Apr 25, 2025
25 of 28 checks passed
@drupol
Copy link
Contributor

drupol commented Apr 25, 2025

Thank you all !

@Guelakais Guelakais deleted the gz-utils branch April 25, 2025 10:13
@Guelakais Guelakais moved this from 🔖 Awaits the merge to ✅ Done in ROS 2 Aug 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. 12.approvals: 2 This PR was reviewed and approved by two persons.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

5 participants