shadow-robot/sr-visualization

Bad or missing install commands which blocks RQT from starting

Closed this issue · 5 comments

UserWarning: icon "/myinstallfolder/ros/indigo/share/sr_gui_advanced_controls/../../sr_visualization_icons/icons/hand.png" not found

which comes from bad install path as all the plugins install in /share and not in /share/advanced as in the src folder structure
This is true for all the plugins in advanced.

then I have
sr_change_controllers_plugin.xml" in package "sr_gui_change_controllers" not found

which is indeed missing in https://github.com/shadow-robot/sr-visualization/blob/indigo-devel/sr_gui_change_controllers/CMakeLists.txt

@ugocupcic is there a reason for the advanced and basic subfolders in the repository structure ? I can understand the grouping in the plugin themselves in the menu, for cleanliness, but this can be achieved without subdirectories in the repository.

I cannot find a nicer way for this issue than moving all the plugins into the root folder.
I tested it works nice.

When installed the plugins are all at the same level anyway and having a difference between install and devel space is always a pain with relative path like in the icons variable.

What do you think about moving all the plugins into the root again ? I can provide a PR if this okay.

The issue seems to be only with the plugin icon specified in the plugin.xml.
Currently all the plugins use the same icon:

<icon type="file">../sr_visualization_icons/icons/hand.png</icon>

but eventually we might want to have them customised.

Our preferred solution for this is to include a copy of this icon in a resource directory in every plugin package:

<icon type="file">resource/hand.png</icon>

And of course add this resource dir to the install instructions.

I hope that this would solve all the issues, as any reference to sr_visualization_icons elements in the python code should be using rospack find to find the right path.

@toliver they use the same icon but have different relative path
https://github.com/shadow-robot/sr-visualization/blob/indigo-devel/advanced/sr_gui_advanced_controls/sr_advanced_controls_plugin.xml#L21
different than that
https://github.com/shadow-robot/sr-visualization/blob/indigo-devel/sr_gui_change_controllers/sr_change_controllers_plugin.xml#L11

having a copy in resource is indeed a better way if you want to keep the structure.

Are you working on that or should I provide a PR for this ? this is really a blocker, I had to run rqt in a /opt/ros/indigo/setup.bash environment instead of my workspace to avoid loading the failed shadow plugins.

If you can provide a PR for this it would be quicker. We will review it and merge it straight away.

let see if the straight forward change works, I will try it, otherwise I will let you do that.