Who is using ROS on Archlinux?

Yes. Rviz works great from inside the chroot though you have to allow the X connection from it.

Hi,
no, we donā€™t use bchretienā€™s scripting anymore. We had the problem that the gpb releases are way too old for arch and fixes are coming that late that we need much more patches to get everything working. So we simply decided to follow the development upstream. We developing a new script and a small ci tool around, when everything is fine and we reached our goal completely Iā€™ll publish. The upstream branches made autogenerating PKGBUILDs more complex. We soon have updated everything to dev upstream and have generally a better dev process again. We also now build everything for python3 instead of 2 to follow Archā€™s philosophy instead of ROS ones. And this CI/CD generates binaries, too, so installing will be faster then. Any wishes/suggestions welcome, but let us a little bit time until everythingā€™s finished.

1 Like

Oh, thatā€™s very interesting!
Did you managed to backport your Python 3 patches upstream to help on the Noetic effort?
And thatā€™s very great to know that binary packages will be available.
But does that mean that in the future, we could get the Arch binaries generated by the ROS buildfarm directly?

We open upstream PRs for bugs, but melodic was 99% already py3 compatible, it just was a decision to link against py2.

No, we build ourselves. It would be nice if this would be possible, but Arch wouldnā€™t work well if it uses the same stream Debian/Ubuntu. Donā€™t know if OSRF wants to take this effort. We also thought about getting in Community Repo, but this is currently impossible for some reasons:

  1. Packages should be working without patches during submission. That isnā€™t the case, even though weā€™re at the dev upstream
  2. TUā€™s donā€™t like to have multiple versions of packages in the repo. There are few exceptions, but generally disallowed.
  3. Python2 is unwanted Solved now at least for ros-melodic-desktop, maybe some non-ROS deps of desktop-full still use it.

Some binary packages relating to ros, like ros dependencies such as pcl (which are not available in the repository linked above) are also available on the arch4edu repository (https://wiki.archlinux.org/index.php/Unofficial_user_repositories#arch4edu). They also seem willing and have started to host ros packages (https://github.com/arch4edu/arch4edu/issues/44). Maybe we can join efforts, instead of keeping separate binary repos?

2 Likes

Archlinux binary Repo (Thirdparty) :
pacman-key --recv-keys 289AD6AA32857A04ABA587417EAC11ACDBCFBCEB
pacman-key --edit-key 289AD6AA32857A04ABA587417EAC11ACDBCFBCEB
trust

Add this to your pacman.conf:

[oscloud]
Server = http://repo.oscloud.info/

Does now work, please write if you encounter any issues.

2 Likes

Would be great to have pcl and ros-melodic-pcl-conversions in binary packages
Thank you

Hey @alkersan, while pcl may not be part of the above linked binary repo, it is part of the repository recommened by the ROS installation page: https://wiki.ros.org/melodic/Installation/ArchLinux
I suggest you follow those instructions.

Hello i wanted to add add check (tests) to the PKGBUILDs. But as we build directly with cmake to package I struggle to run tests. I added -DCATKIN_ENABLE_TESTING=TRUE and ran make tests afterwards but it seems like it did nearly nothing in the packages I tested. Does most ROS core packages simply donā€™t have tests or am I making a mistake?
@acxz Do you have an idea?

Sadly I am not familiar with tests on ROS.

So when building a package with -DCATKIN_BUILD_BINARY_PACKAGE=ON I saw the following message during the cmake/catkin process:

-- Using CATKIN_ENABLE_TESTING: ON
-- Skip enable_testing() when building binary package

It seems like catkin does not support testing a package when it is being build in binary mode.
@bionade24

Wow, Iā€™m happy to see there are so many Arch Linux users in the ROS community. Come to say hi, Iā€™ve been using Arch for about 4 years and Iā€™m new to ROS. Iā€™ve recently get ROS2 working on Arch and I think Iā€™ll give a post about it.

For ROS2, as far as I know, there are not yet package groups like ros2-core, ros2-desktop or ros2-desktop-full on Arch. And building ROS2 on Arch will take a lot of efforts handling the dependencies, if itā€™s possible, we can maintain a ros2 AUR package to make the installation easier.

@crystaldust glad to you have in Arch ROS community! A couple of us just recently had a conversation on how we want to proceed with packaging ROS2. Here is some discussion between @ftsell, @bionade24, and me: https://github.com/ros-melodic-arch/ros-melodic-desktop-full/issues/14

If you would like to help us package ROS2 please let us know!

Yes, I would definitely be glad to help!

So right now, we are focusing on getting prebuilt binaries out for ROS Melodic, but once that is finished. I believe we will focus our attention on getting ROS Eloquent building through the AUR. Someone will have to create an organization like bionade24 has or maybe just a single repo with aurpublish for the project. Once that infrastructure is down (github to aur syncing) then we can all start contributing and start pushing PKGBUILDs out for ROS Eloquent.

If you want, you can start pushing PKGBUILDs to the AUR right now and then once we finish/tidy up ROS 1 the rest of us can start helping out with ROS 2. We can also decide on the overall infrastructure and syncing then as well.

Oh one more thing, considering editing the page on ROS in the Archwiki, instead of making a post about it. Or maybe do both, lol.

Thanks @acxz thatā€™s what we should do for both Arch and ROS community. Iā€™ll try the latest melodic on a clean Arch environment and see if there is something to fix.

Btw, my experience on getting ROS2 working is pretty temporary, I fix some deps versions, missing packages and things like that. Once we tide things up on ROS2, everything should just work fine. Thatā€™s not a wiki level job, I think I will just make a post, mark the issues we have for now, and get them fixed in our ROS2 AUR packages.

2 Likes

thanks for your helpful reply. do come back with updates if you would have any, please.
also, may i ask questions if i had some?

1 Like

ROS 2 does have variants akin to the metapackages. Theyā€™re defined in REP-2001 and the source is the ros2/variants repository.


P.S. Iā€™ve been an Archlinux user since 2007 when I made the jump from Slackware. Happy to see the community activity here.

2 Likes

I moved the ROS2 packaging architecture discussion to another thread to hold this free from ROS2 speculations.

1 Like

iā€™m a new user but still happy to see activity because i want to learn more. thanks.