ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Is redistributing ROS2 allowed?

asked 2020-01-14 01:12:40 -0600

jaosef gravatar image

Hi, I have a question about ROS2 and licensing. I would like to create a Python (pip) package for a built version of ROS2 (version Dashing) to allow for simple installation. This package would then be publicly available through a URL (for free, of course). Is this allowed under the current license, and are there any caveats?

It is my understanding that the components that build up ROS2 are all under the Apache 2.0 license, and I have not found any "NOTICE" files in any of them.

Thank you in advance!

edit retag flag offensive close merge delete



I'll explicitly post this as a comment, and not as an answer, as this is NOT a legally binding advice about the question you ask. Also, you'll not receive any legal advice here that you'll be able to point to and say "they told me that it is okay..."

Now that the disclaimer is out of the way...

Is this allowed under the current license

Yes, given that you follow all conditions that the license puts on you (see this for some hints)

are there any caveats

Sure, there might be clashes with packages installed via the regular package manager, depending on how you set that up. And any you'll need to update your package for every new release of a ROS2 package. To just name a few (you'll probably guess that I don't think what you try to do is a very good ...(more)

mgruhler gravatar image mgruhler  ( 2020-01-14 06:39:33 -0600 )edit

license. And those licenses don't need to be the same. It is actually fairly common that some packages, even distributed by the OSRF, don't have the recommended license (take gmapping in ROS1 as an example). So you'll need to check this on a package-per-package basis and comply with the license terms for each package!

I have not found any "NOTICE" files in any of them

Having a "NOTICE" file is not a requirement by the Apache 2.0, nor is distributing a copy of this the only obligation from the Apache 2.0 during redistribution. Check paragraph 4 of the Apache 2.0 license.

So, long story short: Why do you plan to do this in the first place? I guess there are better ways to do this. But to help with that, you'll need to explain in detail your line of thought about proceeding in ...(more)

mgruhler gravatar image mgruhler  ( 2020-01-14 06:49:19 -0600 )edit

Ignoring the legal aspect to this, just some links to ongoing discussions and efforts around "easy distribution" of ROS (2) packages in "a single package" (although not necessarily limited to that):

And it would indeed be good to have a little more information about your intentions @jaosef. Do you have any particular reason for wanting to do this? Or just because it's nice?

+100 for asking this question btw: licensing is not the first thing people think of when looking into this, but it's certainly a very important aspect of the problem.

gvdhoorn gravatar image gvdhoorn  ( 2020-01-14 08:26:23 -0600 )edit

1 Answer

Sort by » oldest newest most voted

answered 2020-01-14 15:27:58 -0600

tfoote gravatar image

Like any open source project you can redistribute ROS. ROS is not monolithic so you will have to pay attention to the licenses of all components that you include.

Overall packaging takes a lot of ongoing work and as an individual I would suggest that it will not something that's sustainable without a community effort. As @gvdhoorn mentions there are several community discussions ongoing and it likely makes more sense to get involved with those than to try to go at it on your own.

Along similar lines please consider the impact that you might have if you name grab package names that then would prevent or interfere with the community projects or upstream maintainers from releasing packages as well if they choose to in the future.

And as @mgruhler mentions I would strongly suggest that you ask a little bit more specifically about what you're looking to do, before jumping to a conclusion about the best way to solve it and asking for specific help on that problem.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2020-01-14 01:12:40 -0600

Seen: 445 times

Last updated: Jan 14 '20