ADD scenario with tiny-process-library

This commit is contained in:
Игорь Брылёв 2025-05-29 16:36:11 +03:00
parent 02ca690545
commit 6be62dbefb

View file

@ -1,22 +1,73 @@
# Automatically generated by: ros2nix --distro jazzy --output-dir repos/nix --output-as-nix-pkg-name --fetch
{ lib, buildRosPackage, fetchgit, ament-cmake, gz-math-vendor, gz-msgs-vendor, gz-sim-vendor, gz-transport-vendor }:
# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0
# Copyright 2025 None
# Distributed under the terms of the Apache-2.0 license
{
stdenv,
git,
swig,
cmake,
lib,
buildRosPackage,
ament-cmake,
ament-lint-auto,
ament-lint-common,
gz-ros2-control,
ros-gz-bridge,
ros-gz-sim,
gym-gz,
fetchFromGitLab,
fetchgit
}: let
tiny-process-library = stdenv.mkDerivation rec {
pname = "tiny-process-library";
version = "2.0.4";
src = fetchFromGitLab {
owner = "eidheim";
repo = "tiny-process-library";
rev = "v${version}";
sha256 = "sha256-ntg0e3Ox5swCoimZG6gwpD2eKKFQx5+vXq77cK+wT1Y=";
};
nativeBuildInputs = [cmake git];
meta = with lib; {
description = "A small platform-independent library making it simple to create and stop new processes in C++, as well as writing to stdin and reading from stdout and stderr of a new process";
homepage = "https://gitlab.com/eidheim/tiny-process-library";
license = licenses.mit;
maintainers = [];
mainProgram = "tiny-process-library";
platforms = platforms.all;
};
};
in
buildRosPackage rec {
pname = "ros-jazzy-scenario";
version = "1.5.0";
version = "1.4.0";
src = fetchgit {
url = "rad://z3RBwHLb4j66Q12dwkK1RGQj3ufhi";
rev = "cb8227d85455d32fd6df4f931b4ce031c3063007";
sha256 = "05110l7l533crkk632mvsz5li5ws3pvh8s2l5j11qsi6qfsx291d";
};
src = /home/movefasta/Documents/robossembler/scenario;
buildType = "ament_cmake";
buildInputs = [ ament-cmake ];
propagatedBuildInputs = [ gz-math-vendor gz-msgs-vendor gz-sim-vendor gz-transport-vendor ];
nativeBuildInputs = [ ament-cmake ];
checkInputs = [ament-lint-auto ament-lint-common];
propagatedBuildInputs = [ament-cmake swig cmake tiny-process-library gz-ros2-control ros-gz-bridge ros-gz-sim];
nativeBuildInputs = [ament-cmake];
meta = {
description = "TODO: Package description";
license = with lib.licenses; [ asl20 ];
cmakeFlags = [
"-DSCENARIO_USE_GAZEBO=ON"
"-DSCENARIO_BUILD_SHARED_LIBRARY=OFF"
"-DSCENARIO_USE_SYSTEM_TPL=ON"
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON"
"-DSCENARIO_ENABLE_BINDINGS=ON"
"-DSCENARIO_BINDINGS_USE_ROS=ON"
];
shellHook = ''
export GZ_SIM_SYSTEM_PLUGIN_PATH=${gz-ros2-control}/lib:$out/lib:$LD_LIBRARY_PATH
'';
meta = with lib; {
description = "ROS 2 Jazzy Scenario package";
homepage = "https://gym-gz.pages.dev/";
license = licenses.lgpl21Plus;
};
}