{ "metadata": { "name": "", "signature": "sha256:066ec8980adda9e5e69dab64b7d720716dbe6f999a0c75659938735588b5ff78" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "This notebook will build you a Galaxy tool_dependencies.xml file for Perl packages." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Insert you package name into cell 1 and cell 4. A typical package name looks like 'HTTP::Client'." ] }, { "cell_type": "code", "collapsed": false, "input": [ "perl_package_name = 'HTTP::Client'\n", "toolshed_package_name = 'perl_http_client'\n", "toolshed_package_version = '1.57'" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "!cpanm CPAN::FindDependencies" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "!\r\n", "! Can't write to /usr/local/share/perl/5.20.1 and /usr/local/bin: Installing modules to /home/bag/perl5\r\n", "! To turn off this warning, you have to do one of the following:\r\n", "! - run me as a root or with --sudo option (to install to /usr/local/share/perl/5.20.1 and /usr/local/bin)\r\n", "! - Configure local::lib your existing local::lib in this shell to set PERL_MM_OPT etc.\r\n", "! - Install local::lib by running the following commands\r\n", "!\r\n", "! cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)\r\n", "!\r\n" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "CPAN::FindDependencies is up to date. (2.42)\r\n" ] } ], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "!export PERL5LIB=$HOME/perl5/lib/perl5" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "%%perl --out output --err error\n", "use CPAN::FindDependencies;\n", "@deps = CPAN::FindDependencies::finddeps('HTTP::Client');\n", "foreach my $dep (@deps) {\n", " print ' ' x $dep->depth;\n", " print \"http://www.cpan.org/authors/id/\", $dep->distribution(), \"\\n\";\n", "}\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "from string import Template" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "template = Template(\"\"\"\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "$package\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "\"\"\")\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "package_content = []\n", "for line in output.split():\n", " line = line.strip()\n", " if line:\n", " package_content.append( ' %s' % line )\n", "\n", "content = dict(\n", " readme=perl_package_name, \n", " package='\\n'.join( reversed(package_content) ),\n", " toolshed_name=toolshed_package_name,\n", " toolshed_version=toolshed_package_version\n", " )\n", "print template.substitute(content)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " http://www.cpan.org/authors/id/G/GA/GAAS/WWW-RobotRules-6.02.tar.gz\n", " http://www.cpan.org/authors/id/G/GB/GBARR/IO-1.25.tar.gz\n", " http://www.cpan.org/authors/id/M/MS/MSCHILLI/Net-HTTP-6.07.tar.gz\n", " http://www.cpan.org/authors/id/P/PE/PEVANS/Socket-2.016.tar.gz\n", " http://www.cpan.org/authors/id/S/SH/SHAY/libnet-3.04.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/HTTP-Negotiate-6.01.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/HTTP-Daemon-6.01.tar.gz\n", " http://www.cpan.org/authors/id/E/ET/ETHER/URI-1.65.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/LWP-MediaTypes-6.02.tar.gz\n", " http://www.cpan.org/authors/id/D/DL/DLAND/File-Path-2.09.tar.gz\n", " http://www.cpan.org/authors/id/D/DA/DAGOLDEN/File-Temp-0.2304.tar.gz\n", " http://www.cpan.org/authors/id/C/CJ/CJM/IO-HTML-1.001.tar.gz\n", " http://www.cpan.org/authors/id/P/PM/PMQS/Compress-Raw-Bzip2-2.068.tar.gz\n", " http://www.cpan.org/authors/id/P/PM/PMQS/IO-Compress-2.068.tar.gz\n", " http://www.cpan.org/authors/id/P/PM/PMQS/Compress-Raw-Zlib-2.068.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/HTTP-Message-6.06.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/HTTP-Cookies-6.01.tar.gz\n", " http://www.cpan.org/authors/id/P/PE/PETDANCE/HTML-Tagset-3.20.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/HTML-Parser-3.71.tar.gz\n", " http://www.cpan.org/authors/id/D/DR/DROLSKY/Time-Local-1.2300.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/HTTP-Date-6.02.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/File-Listing-6.04.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/Encode-Locale-1.03.tar.gz\n", " http://www.cpan.org/authors/id/S/SA/SAPER/XSLoader-0.16.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/MIME-Base64-3.14.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/Digest-1.17.tar.gz\n", " http://www.cpan.org/authors/id/G/GA/GAAS/Digest-MD5-2.53.tar.gz\n", " http://www.cpan.org/authors/id/M/MS/MSCHILLI/libwww-perl-6.08.tar.gz\n", " http://www.cpan.org/authors/id/A/AD/ADAMK/LWP-Online-1.08.tar.gz\n", " http://www.cpan.org/authors/id/M/MU/MUIR/modules/Text-Tabs+Wrap-2013.0523.tar.gz\n", " http://www.cpan.org/authors/id/J/JE/JESSE/Test-1.26.tar.gz\n", " http://www.cpan.org/authors/id/N/NE/NEILB/Pod-Escapes-1.07.tar.gz\n", " http://www.cpan.org/authors/id/D/DW/DWHEELER/Pod-Simple-3.28.tar.gz\n", " http://www.cpan.org/authors/id/R/RR/RRA/podlators-2.5.3.tar.gz\n", " http://www.cpan.org/authors/id/S/SM/SMUELLER/PathTools-3.47.tar.gz\n", " http://www.cpan.org/authors/id/D/DA/DANKOGAI/Encode-2.67.tar.gz\n", " http://www.cpan.org/authors/id/B/BI/BINGOS/ExtUtils-MakeMaker-7.04.tar.gz\n", " http://www.cpan.org/authors/id/N/NE/NEILB/HTTP-Lite-2.43.tar.gz\n", " http://www.cpan.org/authors/id/C/CO/CORION/parent-0.228.tar.gz\n", " http://www.cpan.org/authors/id/R/RJ/RJBS/perl-5.18.4.tar.gz\n", " http://www.cpan.org/authors/id/L/LE/LEONT/Test-Harness-3.34.tar.gz\n", " http://www.cpan.org/authors/id/P/PE/PEVANS/Scalar-List-Utils-1.41.tar.gz\n", " http://www.cpan.org/authors/id/E/EX/EXODIST/Test-Simple-1.001014.tar.gz\n", " http://www.cpan.org/authors/id/R/RJ/RJBS/perl-5.20.0.tar.gz\n", " http://www.cpan.org/authors/id/T/TO/TODDR/Exporter-5.70.tar.gz\n", " http://www.cpan.org/authors/id/Z/ZE/ZEFRAM/Carp-1.3301.tar.gz\n", " http://www.cpan.org/authors/id/N/NE/NEILB/HTTP-Client-1.57.tar.gz\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "\n" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }