On Thu, Aug 18, 2011 at 4:23 PM, Ibrahim Awwal wrote: > > Wow, that was an interesting coincidence. I guess I didn't really search > hard to see whether something like this existed. Hadn't considered branches > though, that's something to keep in mind. I think your tool is actually > better than mine with that in mind, mine could be replaced with a call to > yours and roslocate. I think one possible modification to your rosco to > make it just as easy as mine would be to have it check if the file argument > exists, and if not try running roslocate with that first argument as the > package name, and then read that snippet in and process it as usual. I'd rather avoid ambiguous cases as they've bitten me in the past, so how about: # checkout a package/stack, uses same options and roslocate rosco foo --distro=unstable rosco foo --distro=electric --dev # checkout all entries in a rosinstall file rosco -r foo.rosinstall rosco --rosinstall foo.rosinstall # pipe output from roslocate directly roslocate info eigen --distro=unstable | rosco If you're interested, we could write a REP together and package either as part of rosinstall or as a separate standalone tool. I imagine it would be a fairly short REP. It reminds me that I have a draft for the roslocate tool that I can circulate as well so that we can finalize/vote on the API. - Ken > > -Ibrahim > > On Thu, 18 Aug 2011 16:08:17 -0700, Ken Conley > wrote: >> Here's a different take on a similar idea.  It would be great to >> combine into one tool as I think they are coming from the same >> motivation of "gimme the code". >> >> https://code.ros.org/lurker/message/20110713.092005.2f102738.en.html >> >> To summarize: >> >> # checkout all entries in foo.rosinstall to this directory >> rosco foo.rosinstall >> >> # lookup snippet for eigen and check it out >> roslocate info eigen --distro=unstable | rosco >> >> script here: >> >> https://kforge.ros.org/kwc/rosco/raw-file/437f02319ff3/rosco >> >> The main distinction is my version takes in a rosinstall fragment >> either as a filename or piped output.  The piped output may not be as >> straightforward as yours for people to grok. >> >> The main upgrade that yours would need is to deal with branches/tags >> properly.  Many of the git/hg URIs require a specific branch.  Also, >> you often need to distinguish between the released version of a >> package vs. the development branch. >> >> cheers, >> Ken >> >> >> >> On Thu, Aug 18, 2011 at 3:30 PM, Ibrahim Awwal >> wrote: >>> ... Because life's too short to spend time copying URLs off of ros.org >>> wiki >>> pages... >>> >>> So, in a bout of severe laziness I wrote a tiny bash script to >>> automatically >>> checkout a package/stack that's listed on ros.org. I affectionately > call >>> it >>> rosco, short for ros checkout. You can grab it here: >>> https://gist.github.com/1155414 . If someone like this already exists, > I >>> will feel slightly foolish, but it took me a handful of minutes to > write >>> so >>> it's already saved me enough time to have been worth writing. It's > pretty >>> simple, stick it somewhere in your path (probably want to rename it to >>> rosco >>> and make it executable for ease of use) and then just give it the name > of >>> the package or stack you want to install. For example, all you need to >>> do to >>> check out the 3d_navigation stack (can't wait until it works btw!) is >>> type >>> `rosco 3d_navigation`, and it will look up the repository information >>> automatically and check it out. Currently supports svn, git, and hg, >>> because >>> those were the three that I noticed, haven't really found any > exhaustive >>> list of VCS software that's used in ROS packages though, mainly due to >>> lack >>> of trying (although I guess I could probably script that too). Depends > on >>> roslocate being on your PATH (which I guess comes as part of > rosinstall). >>> Happy coding! >>> >>> -- >>> -Ibrahim Awwal >>> >>> _______________________________________________ >>> ros-users mailing list >>> ros-users@code.ros.org >>> https://code.ros.org/mailman/listinfo/ros-users >>> >>> >> _______________________________________________ >> ros-users mailing list >> ros-users@code.ros.org >> https://code.ros.org/mailman/listinfo/ros-users > > -- > -Ibrahim Awwal > _______________________________________________ > ros-users mailing list > ros-users@code.ros.org > https://code.ros.org/mailman/listinfo/ros-users >