Hi Björn, Sorry for the late reply. I wasn't subscribed to the list when I sent the message and didn't receive your reply but found it here. (http://osdir.com/ml/general/2015-02/msg15128.html) Here is the tool_dependencies.xml <?xml version="1.0"?> <tool_dependency> <package name="gnu_awk" version="4.1.0"> <repository changeset_revision="cbe9f1c8c98b" name="package_gnu_awk_4_1_0" owner="iuc"/> </package> <package name="samtools" version="0.1.19"> <repository changeset_revision="632f1a03db92" name="package_samtools_0_1_19" owner="iuc"/> </package> <package name="R_3_1_1" version="3.1.1"> <repository changeset_revision="d9964efbfbe3" name="package_r_3_1_1" owner="fubar"/> </package> <package name="RNAprobR" version="1.0.0"> <repository changeset_revision="0455dc195eea" name="package_rna_probing_0_99_0" owner="nikos"/> </package> <set_environment version="1.0"> <environment_variable name="RNA_PROBING_SCRIPT_PATH" action="set_to">$REPOSITORY_INSTALL_DIR</environment_variable> </set_environment> </tool_dependency> Bests, Nikos On 11 February 2015 at 17:27, Nikos Sidiropoulos <nikos.sidiro@gmail.com> wrote:
Hi all,
I have a package repository that installs an R package and another repository with a set of tools that use that package repository.
Tools that use an Rscript command interpreter load that module successfully, e.g.:
"normalize.xml"
<requirements> <requirement type="package" version="3.1.1">R_3_1_1</requirement> <requirement type="R-module">RNAprobR</requirement> <requirement type="package" version="1.0.0">RNAprobR</requirement> <requirement type="set_environment">RNA_PROBING_SCRIPT_PATH</requirement> </requirements>
<command interpreter="Rscript"> normalize.R
.... </command>
"normalize.R"
suppressMessages(require(RNAprobR))
...
But there is a tool which executes an Rscript indirectly, meaning:
"summarize_unique_barcodes.sh"
<requirements> <requirement type="package" version="4.1.0">gnu_awk</requirement> <requirement type="package" version="0.1.19">samtools</requirement> <requirement type="package" version="3.1.1">R_3_1_1</requirement> <requirement type="R-module">RNAprobR</requirement> <requirement type="package" version="1.0.0">RNAprobR</requirement> <requirement type="set_environment">RNA_PROBING_SCRIPT_PATH</requirement> </requirements>
<command interpreter="bash"> summarize_unique_barcodes.sh
...
-r \$RNA_PROBING_SCRIPT_PATH </command>
"summarize_unique_barcodes.sh"
....
#Produce k2n file
if [ "$k2n" == "True" ]; then Rscript $R_SCRIPT_PATH/k2n.R merged_temp.gz $output_dir/unique_barcodes.txt $output_dir/k2n.txt fi
"k2n.R" suppressMessages(require(RNAprobR))
I always get the following error:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, : there is no package called 'RNAprobR'
A solution to the problem could be to pass the R library path of the RNAprobR module or the installation folder of package "RNAprobR" as a parameter to the bash wrapper and then the k2n.R script but I can't seem to be able to do it.
Do you have any suggestions?
Regards, Nikos