<div dir="ltr">On Fri, May 17, 2013 at 11:39 AM, Toris, Russell Charles <span dir="ltr"><<a href="mailto:rctoris@wpi.edu" target="_blank">rctoris@wpi.edu</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Awesome, thanks William! This is exactly what I needed. I'll add a postinst script to run setcap.<br>
<br>
Two questions for you:<br>
<br>
<br>
  1.  Where should I list libcap-bin in my package.xml dependencies so that it will be installed on the user's machine instead of the build farms?<br></blockquote><div><br></div><div style>You should run_depend on it.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  2.  Can you elaborate on what you mean by "don't forget to run bloom again after the change"? What I understand is I run a release,  bloom-release --ros-distro groovy youbot_driver groovy and then before pushing, I add my postinst file to the debian folder of the debian/groovy/youbot_driver branch, and then push it up to the release repo. Is this correct?<br>
</blockquote><div><br></div><div style>This is what I would do:</div><div style><ol style><li style>clone your release repo manually and go into that directory</li><li style>run `git-bloom-release groovy` (only if you haven't run it for this version)</li>
<li style>change to the branch you want to patch `git checkout debian/groovy/youbot_driver`</li><li style>Make your changes and commit `git add . && git commit -am "some message"`</li><li style>Export the patches `git-bloom-patch export` (shouldn't be required, just to be safe)</li>
<li style>I like to go back to master `git checkout master` (shouldn't be required)</li><li style>run the bloom release again `git-bloom-release groovy` (this makes your changes propagate to the leaf tags which the build farm uses)</li>
<li style>Go to the resulting tag `git checkout debian/ros-groovy-youbot-driver_0.1.3-1_precise` (something like that)</li><li style>Build the deb `git-buildpackage -uc -us`</li><li style>Test it `cd .. && dpkg -i *.deb`</li>
</ol><div style>Some of those commands might need tweaking as I just listed them off the top of my head.</div></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br>
Thanks!!<br>
<br>
<br>
Russell<br>
<div class="im"><br>
--<br>
Russell Toris<br>
Graduate Student | WPI Department of Computer Science<br>
<a href="mailto:rctoris@wpi.edu">rctoris@wpi.edu</a> | <a href="http://users.wpi.edu/~rctoris/" target="_blank">http://users.wpi.edu/~rctoris/</a><br>
<br>
________________________________<br>
</div>From: William Woodall [<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a>]<br>
Sent: Friday, May 17, 2013 2:34 PM<br>
To: Toris, Russell Charles<br>
Cc: Jack O'Quin; <a href="mailto:ros-release@code.ros.org">ros-release@code.ros.org</a><br>
<div class="im">Subject: Re: [Ros-release] sudo not found?<br>
<br>
</div><div class="im">Some related material:<br>
<br>
<a href="http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.en.html#s-maintscripts" target="_blank">http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.en.html#s-maintscripts</a><br>
<br>
<br>
</div><div class="im">On Fri, May 17, 2013 at 11:27 AM, William Woodall <<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a><mailto:<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a>>> wrote:<br>

Or you can change the permissions of the executable (setuid or setcap) in a post install hook.<br>
<br>
So you would write a script which does this, from source I would run this script manually after building and from debian this script would be run as a post install hook.<br>
<br>
I haven't setup a post install hook before, but you should be able to do this in the debian folder of the `debian/groovy/<package_name>` branch in your release repository (don't for get to run bloom again after the change).<br>

<br>
Running `git-buildpackage -uc -us` while on the appropriate debian tag (something like `debian/ros-groovy-youbot-driver_0.1.2-0_precise`) will build debs you can test from your release repository. The debs will be created one folder up.<br>

<br>
Hope that helps,<br>
<br>
<br>
<br>
</div><div class="im">On Fri, May 17, 2013 at 11:12 AM, Toris, Russell Charles <<a href="mailto:rctoris@wpi.edu">rctoris@wpi.edu</a><mailto:<a href="mailto:rctoris@wpi.edu">rctoris@wpi.edu</a>>> wrote:<br>
I had added libcap2-bin yesterday.<br>
<br>
Agreed to all of these but I'm not sure how to get around it. We are attempting to have the existing base youbot software released and the decision to need setcap was made there to communicate over various ethernet devices on the robot. The alternative is to require you to run the executables as root which is equally bad.<br>

<br>
To follow up with Tully, I think you are right about setcap not transferring so now I'm out of ideas on what to do here. Hm....<br>
<br>
<br>
--<br>
Russell Toris<br>
Graduate Student | WPI Department of Computer Science<br>
</div><a href="mailto:rctoris@wpi.edu">rctoris@wpi.edu</a><mailto:<a href="mailto:rctoris@wpi.edu">rctoris@wpi.edu</a>> | <a href="http://users.wpi.edu/~rctoris/" target="_blank">http://users.wpi.edu/~rctoris/</a><br>

<br>
________________________________<br>
From: <a href="mailto:ros-release-bounces@code.ros.org">ros-release-bounces@code.ros.org</a><mailto:<a href="mailto:ros-release-bounces@code.ros.org">ros-release-bounces@code.ros.org</a>> [<a href="mailto:ros-release-bounces@code.ros.org">ros-release-bounces@code.ros.org</a><mailto:<a href="mailto:ros-release-bounces@code.ros.org">ros-release-bounces@code.ros.org</a>>] on behalf of William Woodall [<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a><mailto:<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a>>]<br>

<div class="im">Sent: Friday, May 17, 2013 2:11 PM<br>
To: Jack O'Quin<br>
</div>Cc: <a href="mailto:ros-release@code.ros.org">ros-release@code.ros.org</a><mailto:<a href="mailto:ros-release@code.ros.org">ros-release@code.ros.org</a>><br>
<div class="im">Subject: Re: [Ros-release] sudo not found?<br>
<br>
It should probably be a buildtool_depend, but either way using sudo inside CMake seems really wacky, how am I supposed to build this from source on a machine where I don't have sudo?<br>
<br>
I am not sure if there is a better alternative, but you should consider separating the permissions settings and building. Ideally this would be a post install hook action or a manual step after building for source install.<br>

<br>
Do other projects require sudo at build time for this sort of action?<br>
<br>
<br>
</div>On Fri, May 17, 2013 at 11:07 AM, Jack O'Quin <<a href="mailto:jack.oquin@gmail.com">jack.oquin@gmail.com</a><mailto:<a href="mailto:jack.oquin@gmail.com">jack.oquin@gmail.com</a>><mailto:<a href="mailto:jack.oquin@gmail.com">jack.oquin@gmail.com</a><mailto:<a href="mailto:jack.oquin@gmail.com">jack.oquin@gmail.com</a>>>> wrote:<br>

<div class="im"><br>
On Fri, May 17, 2013 at 12:50 PM, Tully Foote <<a href="mailto:tfoote@osrfoundation.org">tfoote@osrfoundation.org</a><mailto:<a href="mailto:tfoote@osrfoundation.org">tfoote@osrfoundation.org</a>><mailto:<a href="mailto:tfoote@osrfoundation.org">tfoote@osrfoundation.org</a><mailto:<a href="mailto:tfoote@osrfoundation.org">tfoote@osrfoundation.org</a>>>> wrote:<br>

HI Russell,<br>
<br>
The first answer is yes, if you need sudo you need to add it as a dependency.  The builds on the farm will only build with your declared dependencies. The prerelease has a minimal bootstrap which gives you command line capabilities for debugging presumably includes sudo for that purpose.)  You will probably also want to add a build-depend rosdep rule for libcap2-bin to make sure the setcap is installed.<br>

<br>
Since they run on the build machine, shouldn't they use <buildtool_depend>?<br>
--<br>
 joq<br>
<br>
_______________________________________________<br>
Ros-release mailing list<br>
</div><a href="mailto:Ros-release@code.ros.org">Ros-release@code.ros.org</a><mailto:<a href="mailto:Ros-release@code.ros.org">Ros-release@code.ros.org</a>><mailto:<a href="mailto:Ros-release@code.ros.org">Ros-release@code.ros.org</a><mailto:<a href="mailto:Ros-release@code.ros.org">Ros-release@code.ros.org</a>>><br>

<div class="im"><a href="https://code.ros.org/mailman/listinfo/ros-release" target="_blank">https://code.ros.org/mailman/listinfo/ros-release</a><br>
<br>
<br>
<br>
<br>
--<br>
William Woodall<br>
ROS Development Team<br>
</div><a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a><mailto:<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a>><mailto:<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a><mailto:<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a>>><br>

<div class="im"><a href="http://williamjwoodall.com/" target="_blank">http://williamjwoodall.com/</a><br>
<br>
<br>
<br>
--<br>
William Woodall<br>
ROS Development Team<br>
<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a><mailto:<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a>><br>
<a href="http://williamjwoodall.com/" target="_blank">http://williamjwoodall.com/</a><br>
<br>
<br>
<br>
--<br>
William Woodall<br>
ROS Development Team<br>
</div><a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a><mailto:<a href="mailto:william@osrfoundation.org">william@osrfoundation.org</a>><br>
<a href="http://williamjwoodall.com/" target="_blank">http://williamjwoodall.com/</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>William Woodall<div>ROS Development Team</div><div><a href="mailto:william@osrfoundation.org" target="_blank">william@osrfoundation.org</a></div><div><a href="http://williamjwoodall.com/" target="_blank">http://williamjwoodall.com/</a></div>

</div></div>