Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

This should be possible.

See #q61323, #q132911 and #q189757 for earlier questions about this.

This should be possible.

See #q61323, #q132911 and #q189757 for earlier questions about this.


Edit: a quick work-around for all this would appear to be to copy the $HOME/.ros/rosdep directory from a PC with internet access to the one that doesn't have internet.

But then you run into the issue that for rosdep to be able to install any dependencies it needs internet access (or your pkg manager can't download from the repositories).

rosdep check --from-paths .. --ignore-src and similar would still be able to print the list of missing dependencies for you though.

This should be possible.

See #q61323, #q132911 and #q189757 for earlier questions about this.


Edit: a quick work-around for all this would appear to be to copy the $HOME/.ros/rosdep directory from a PC with internet access to the one that doesn't have internet.

But then you run into the issue that for rosdep to be able to install any dependencies it needs internet access (or your pkg manager can't download from the repositories).

rosdep check --from-paths .. --ignore-src and similar would still be able to print the list of missing dependencies for you though.


Edit2: running the risk of solving the 'wrong' part of an xy-problem: I believe I got this to work. As follows (MWI: machine with internet, MNI: machine no internet):

  1. MWI: wget the files listed in ros/rosdistro/rosdep/20-default.list to somewhere on your disk. Copy these to the machine without.
  2. MNI: sudo mkdir -p /etc/ros/rosdep/sources.list.d.
  3. MWI: wget 20-default.list and copy it to MNI (in the dir we created in the previous step). Replace all http:// URIs with file:///path/to/where/you/put/the/files/from/step/1. Pay attention to the nr of forward slashes, it has to be three.
  4. MWI: git clone https://github.com/ros/rosdistro.git. Copy this to MNI
  5. MNI: export ROSDISTRO_INDEX_URL=file:///path/to/where/you/put/the/rosdistro/clone/index.yaml
  6. MNI: edit /path/to/where/you/put/the/rosdistro/clone/index.yaml, comment all distribution_cache entries.

Now rosdep update should not try and download anything from the internet anymore.

This should be possible.

See #q61323, #q132911 and #q189757 for earlier questions about this.


Edit: a quick work-around for all this would appear to be to copy the $HOME/.ros/rosdep directory from a PC with internet access to the one that doesn't have internet.

But then you run into the issue that for rosdep to be able to install any dependencies it needs internet access (or your pkg manager can't download from the repositories).

rosdep check --from-paths .. --ignore-src and similar would still be able to print the list of missing dependencies for you though.


Edit2: running the risk of solving the 'wrong' part of an xy-problem: I believe I got this to work. As follows (MWI: machine with internet, MNI: machine no internet):

  1. MWI: wget the files listed in ros/rosdistro/rosdep/20-default.list to somewhere on your disk. Copy these to the machine without.
  2. MNI: sudo mkdir -p /etc/ros/rosdep/sources.list.d.
  3. MWI: wget 20-default.list and copy it to MNI (in the dir we created in the previous step). Replace all http:// URIs with file:///path/to/where/you/put/the/files/from/step/1. Pay attention to the nr of forward slashes, it has to be three.
  4. MWI: git clone https://github.com/ros/rosdistro.git. Copy this to MNI
  5. MNI: export ROSDISTRO_INDEX_URL=file:///path/to/where/you/put/the/rosdistro/clone/index.yaml
  6. MNI: edit /path/to/where/you/put/the/rosdistro/clone/index.yaml, comment all distribution_cache entries.

Now rosdep update should not try and download anything from the internet anymore.

Note that this is essentially what @dirk-thomas wrote in his answer to #q132911.

This should be possible.

See #q61323, #q132911 and #q189757 for earlier questions about this.


Edit: a quick work-around for all this would appear to be to copy the $HOME/.ros/rosdep directory from a PC with internet access to the one that doesn't have internet.

But then you run into the issue that for rosdep to be able to install any dependencies it needs internet access (or your pkg manager can't download from the repositories).

rosdep check --from-paths .. --ignore-src and similar would still be able to print the list of missing dependencies for you though.


Edit2: running the risk of solving the 'wrong' part of an xy-problem: I believe I got this to work. As follows (MWI: machine with internet, MNI: machine no internet):

  1. MWI: wget the files listed in ros/rosdistro/rosdep/20-default.list to somewhere on your disk. Copy these to the machine without.
  2. MNI: sudo mkdir -p /etc/ros/rosdep/sources.list.d.
  3. MWI: wget 20-default.list and copy it to MNI (in the dir we created in the previous step). Replace all http:// URIs with file:///path/to/where/you/put/the/files/from/step/1. Pay attention to the nr of forward slashes, it has to be three.
  4. MWI: git clone https://github.com/ros/rosdistro.git. Copy this to MNI
  5. MNI: export ROSDISTRO_INDEX_URL=file:///path/to/where/you/put/the/rosdistro/clone/index.yaml
  6. MNI: edit /path/to/where/you/put/the/rosdistro/clone/index.yaml, comment all distribution_cache entries.

Now rosdep update should not try and download anything from the internet anymore.

Note that this is essentially what @dirk-thomas @Dirk Thomas wrote in his answer to #q132911.