1
0
Fork 0
mirror of https://github.com/lopsided98/nix-ros-overlay.git synced 2025-07-13 13:40:32 +03:00
Commit graph

976 commits

Author SHA1 Message Date
Ben Wolsieffer
bcd3392314 rolling, jazzy: update mcap-vendor 2024-07-06 11:21:15 -04:00
Ben Wolsieffer
68f03ce770 iceoryx-posh: use cpptoml from nixpkgs 2024-07-06 10:50:04 -04:00
Ben Wolsieffer
4e8f44c813 google-benchmark-vendor: update vendored commit
Jazzy and rolling use a newer version.
2024-07-06 10:25:20 -04:00
Michal Sojka
9674e125cb Add ROS 2 Jazzy Jalisco
The content of jazzy/overrides.nix is just a copy of
rolling/overrides.nix.

At least ros-core builds successfully (tested on files generated by
superflore today; not yet in this repo).
2024-07-06 10:00:31 -04:00
Superflore
6a16c08989 regenerate all distros, Fri May 24 14:00:52 2024 2024-07-06 09:51:19 -04:00
Superflore
f1c32375c2 regenerate all distros, Fri May 10 13:12:06 2024 2024-05-11 17:24:52 -04:00
Superflore
1d5ae52f3e regenerate all distros, Fri Apr 12 13:51:24 2024 2024-04-19 19:33:34 -04:00
Ben Wolsieffer
e239e71fd2 rosgraph: add patch to fix hang with Python 3.11
This patch is included in an upstream PR but it has not been merged yet.
2024-04-10 21:09:56 -04:00
Ben Wolsieffer
cdb7956e95 Merge branch 'master' into develop 2024-04-10 20:44:44 -04:00
Ben Wolsieffer
674adb5bdf noetic: add patch to fix franka-hw
Fixes #382
2024-04-07 13:36:29 -04:00
Superflore
e6d11a616c regenerate all distros, Fri Apr 5 13:51:29 2024 2024-04-07 12:25:37 -04:00
Superflore
1b9585ae8f regenerate all distros, Sat Mar 23 14:09:25 2024 2024-03-23 13:35:20 -04:00
Ben Wolsieffer
39e6165e90 superflore: unstable-2022-12-09 -> unstable-2024-03-22 2024-03-22 22:24:59 -04:00
Ben Wolsieffer
af86823483 noetic: libphidget22: update vendor URL 2024-03-22 21:48:02 -04:00
Ben Wolsieffer
0cc5bdad01 libphidget22: update vendor URL 2024-03-22 21:38:55 -04:00
Ben Wolsieffer
dc5a4a3fa5 ompl: add patch to fix build
Fix path construction in the pkg-config file.
2024-03-22 21:07:09 -04:00
Superflore
78a454a6a5 regenerate all distros, Fri Mar 22 13:05:17 2024 2024-03-22 20:59:35 -04:00
Michal Sojka
b7be7029bf README: Add example of using the overlay in flake.nix 2024-03-22 20:59:24 -04:00
matthewcroughan
ff3322f90e gazebo: add wrapGAppsHook
makes the derivation more pure, without this it leads to (gzclient:1568911): GLib-GIO-ERROR **: 15:37:29.803: No GSettings schemas are installed on the system, unless you happen to be lucky enough to have the right files in your environment
2024-03-22 20:46:27 -04:00
Superflore
de1ea0a747 regenerate all distros, Fri Mar 8 13:41:18 2024 2024-03-09 13:19:25 -05:00
Ben Wolsieffer
2c2781805f Use nixpkgs version from flake by default
When not using flakes, you would immediately start using the latest
version of the nix-ros branch whenever I updated it, even if it hadn't
been tested or added to the cache yet. Now, it will match the flake
locked version by default even when not using flakes.
2024-03-09 12:27:10 -05:00
Ben Wolsieffer
e761430bde nix-ros-build-action: update dependencies 2024-03-06 19:24:06 -05:00
Ben Wolsieffer
7b0c15e446 actions: don't override cachix compression method
This was breaking cachix and it defaults to zstd anyway.
2024-03-06 19:21:33 -05:00
Ben Wolsieffer
e41c59ae0d actions: reduce parallelism
I already set max-jobs=1 a long time ago, so I'm not sure what effect
this will have.
2024-03-05 20:10:17 -05:00
Ben Wolsieffer
4dc55d14c3 Empty commit to trigger GitHub actions. 2024-03-04 22:01:59 -05:00
Ben Wolsieffer
fc2608672e humble: moveit-kinematics: add missing moveit-ros-planning dep
This was added upstream in 2.7.2 but this has not been released for
humble.
2024-03-04 21:13:14 -05:00
Ben Wolsieffer
c479bc18d7 humble: rcpputils: remove upstreamed patch 2024-03-03 17:41:32 -05:00
Superflore
160dfe7959 regenerate all distros, Fri Mar 1 13:05:06 2024 2024-03-03 14:24:52 -05:00
Michal Sojka
dd9cc83369 buildEnv: Reduce length of AMENT_PREFIX_PATH and other ROS 2 variables
The purpose of ROS-specific version of buildEnv in this overlay is to
reduce the length of environment variables when using many ROS
packages. However, currently it works only for ROS 1 and not for
ROS 2. This commit is an attempt to fix that.

Although the change looks trivial, it took me multiple full days to
figure out what to change and how. The following is my understanding
of how handling of environment variables works in ROS 2 and in
nix-ros-overlay and why the change in this commit works. I'm not
completely sure that it's all correct so feel free to complain if not.

- Every ament_cmake ROS package contains a $out/share/*/local_setup.sh
  script, generated by ament CMake macros, which is responsible for
  setting environment variables required for proper function of the
  package under ROS 2. Every package extends AMENT_PREFIX_PATH and it
  may extend other variables such as PATH. The default prefix used for
  extending the variables is specified at compile time and is equal to
  package's Nix store path ($out).

- local_setup.sh files are sourced when building dependent ROS
  packages. In nix-ros-overlay, this is accomplished by
  ament-cmake-core-setup-hook, which is automatically propagated to
  all dependents.

- ROS-specific buildEnv ensures that ROS packages are not further
  propagated downstream but non-ROS packages are.
  ament-cmake-core-setup-hook is a non-ROS package (it's a Nix native
  package) so if any package in the buildEnv depends on it, it is
  propagated out of buildEnv. Therefore dependents of the buildEnv
  source all local_setup.sh files from the buildEnv (and from other
  ROS packages outside of buildEnv, if there are any).

- The problem when sourcing local_setup.sh files now is the default
  prefix built into them, which causes every package to have a
  separate entry in the extended variables. However, if the file is
  sourced with AMENT_CURRENT_PREFIX variable set, its value overrides
  the default prefix. That's what we do in this commit. We set
  AMENT_CURRENT_PREFIX to the store path of the sourced package; in
  case of normal ROS packages it's equal to the default builtin
  prefix, but in case of buildEnv, it's different and all packages in
  the environment share the same prefix.

I'm testing this change with the following flake.nix:

    {
      inputs = {
        nix-ros-overlay.url = "/path/to/repo/with/this/commit";
        nixpkgs.follows = "nix-ros-overlay/nixpkgs";
      };
      outputs = { self, nixpkgs, nix-ros-overlay }:
        let
          pkgs = import nixpkgs {
            system = "x86_64-linux";
            overlays = [ nix-ros-overlay.overlays.default ];
          };
          rosDistro = pkgs.rosPackages.humble;
          buildEnv = rosDistro.buildEnv {
            paths = with rosDistro; [
              demo-nodes-cpp
            ];
          };
        in
        {
          devShells.x86_64-linux.default = pkgs.mkShell {
            name = "ros-env-test";
            packages = [ buildEnv ];
          };
          packages.x86_64-linux = {
            default = buildEnv;
            inherit (rosDistro) demo-nodes-cpp;
          };
        };
    }

Running `nix develop` and then:

    echo $AMENT_PREFIX_PATH | tr : \\n | wc -l

without this commit returns 71 entries, while with this commit the
result in a single entry!
2024-03-03 14:18:16 -05:00
Ben Wolsieffer
5f5fc56984 librealsense2: only apply patch to ROS 2
Noetic uses an older version that doesn't need this patch.
2024-02-25 21:15:36 -05:00
0aa4c3092a fix librealsense2 compile error 2024-02-25 21:11:05 -05:00
Ben Wolsieffer
07e5ea9e33 Remove catkin-pip override
This package no longer exists in any distro.
2024-02-25 21:07:50 -05:00
hacker1024
a3c7efb5bb buildEnv: Add ROS version environment variables to wrapper 2024-02-25 21:04:52 -05:00
Michal Sojka
5ff3d6e3f9 Fix rosbag2-compression compile error
The error messages were as follows:

    In file included from /build/rosbag2-release-release-humble-rosbag2_compression-0.15.9-1/src/rosbag2_compression/compression_options.cpp:18:
    /build/rosbag2-release-release-humble-rosbag2_compression-0.15.9-1/include/rosbag2_compression/compression_options.hpp:29:6: warning: elaborated-type-specifier for a scoped enum must not use the 'class' keyword
       29 | enum class ROSBAG2_COMPRESSION_PUBLIC CompressionMode: uint32_t
          | ~~~~ ^~~~~
          |      -----
    /build/rosbag2-release-release-humble-rosbag2_compression-0.15.9-1/include/rosbag2_compression/compression_options.hpp:29:54: error: found ':' in nested-name-specifier, expected '::'
       29 | enum class ROSBAG2_COMPRESSION_PUBLIC CompressionMode: uint32_t
          |                                                      ^
          |                                                      ::
    /build/rosbag2-release-release-humble-rosbag2_compression-0.15.9-1/include/rosbag2_compression/compression_options.hpp:29:39: error: 'CompressionMode' has not been declared
       29 | enum class ROSBAG2_COMPRESSION_PUBLIC CompressionMode: uint32_t
          |                                       ^~~~~~~~~~~~~~~
2024-02-25 21:03:05 -05:00
Ben Wolsieffer
0f0f7623c3 humble: cleanup plotjuggler-ros patch 2024-02-25 21:00:49 -05:00
Michal Sojka
35356210dc Fix plotjuggler-ros for Humble 2024-02-25 20:57:12 -05:00
Superflore
1dda479ef2 regenerate all distros, Fri Feb 16 13:29:45 2024 2024-02-25 14:40:29 -05:00
Ben Wolsieffer
d67a2d82a3 Use empy 3 for colcon.
Add an empy_3 package to the global scope and use it for colcon. We
don't want to simply override empy because this will affect other
packages from nixpkgs.
2024-02-25 12:27:36 -05:00
Superflore
9f53d85d2a regenerate all distros, Fri Feb 9 13:42:10 2024 2024-02-10 13:10:28 -05:00
Ben Wolsieffer
c8afb864b6 rolling: update urdfdom patches 2024-02-09 21:16:40 -05:00
Ben Wolsieffer
74fec72eaf Fix deprecated pythonForBuild usages 2024-02-09 21:16:23 -05:00
Ben Wolsieffer
3307ed5ecd humble: libstatistics-collector: add patch to fix build 2024-02-09 21:15:52 -05:00
Ben Wolsieffer
d2fae7143f humble: rcpputils: add patch to fix build 2024-02-09 20:26:05 -05:00
Ben Wolsieffer
b09c3a8518 ignition.common: add patch to fix build 2024-02-09 19:52:44 -05:00
Mike Purvis
0ed407099e Fix overriding in ignition.fuel-tools4 2024-02-09 19:35:29 -05:00
Ben Wolsieffer
d0ed0ee339 Override to use empy 3.3.4
Empy 4.0 has many breaking changes and is not supported by ROS.

Fixes: #340
2024-02-08 21:34:27 -05:00
Ben Wolsieffer
90614baa93 flake.lock: Update
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/ff7b65b44d01cf9ba6a71320833626af21126384' (2023-09-12)
  → 'github:numtide/flake-utils/1ef2e671c3b0c19053962c07dbda38332dcebf26' (2024-01-15)
• Updated input 'nixpkgs':
    'github:lopsided98/nixpkgs/173b74db07f26344f3517716edd4bff6987b512d' (2023-11-26)
  → 'github:lopsided98/nixpkgs/f8e2ebd66d097614d51a56a755450d4ae1632df1' (2024-02-07)
2024-02-08 19:30:30 -05:00
Superflore
28f3a7e900 regenerate all distros, Fri Feb 2 13:15:52 2024 2024-02-04 12:01:23 -05:00
Superflore
5053bf9d76 regenerate all distros, Fri Jan 19 13:36:48 2024 2024-01-21 11:34:12 -05:00
Superflore
1f89e13710 regenerate all distros, Fri Dec 22 13:30:27 2023 2024-01-01 13:14:47 -05:00