{
"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": {}
}
]
}