Skip to content

brann-dev/ros_ws

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ros_ws — ROS 2 Jazzy learning workspace

A ROS 2 (Jazzy) workspace set up with Pixi + RoboStack, so it runs on any Linux (including Arch) without building ROS from source.

Setup (fresh machine)

Install pixi, then:

pixi install        # reproduces the exact ROS + toolchain env from pixi.lock

That's it — no system ROS, no AUR, no root. Everything lives in .pixi/ (gitignored).

Build & run

pixi shell                       # enter the ROS environment
colcon build                     # build packages (run from this dir, NOT src/)
source install/setup.zsh         # zsh shell — use setup.bash for bash

turtle_goto — go-to-goal controller

Drives a turtlesim turtle to a goal point (a simple proportional controller — the same shape as real mobile-robot navigation).

# terminal 1
ros2 run turtlesim turtlesim_node

# terminal 2  (after sourcing install/setup.zsh)
ros2 run turtle_goto go_to_goal
# custom goal:
ros2 run turtle_goto go_to_goal --ros-args -p goal_x:=2.0 -p goal_y:=9.0

Gotchas (learned the hard way)

  • Source the right shell flavor: setup.zsh for zsh, setup.bash for bash. Sourcing the wrong one fails with a confusing "no such file" error.
  • Source in every new terminal before ros2 run can find your packages.
  • Build from the workspace root (ros_ws), never from inside src/.
  • Wayland + Qt GUIs: QT_QPA_PLATFORM=xcb is set in pixi.toml so rqt/rviz work via XWayland (RoboStack's Qt has no native Wayland plugin).

Layout

src/turtle_goto/    # the go-to-goal C++ package (versioned)
pixi.toml           # environment definition (versioned)
pixi.lock           # exact pinned versions (versioned)
.pixi/ build/ install/ log/   # generated — gitignored

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors