diff readme.md @ 0:b73b578a6c11 draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 9a14ed1f2d3c9abdfb080251b3419dd9e0c52a14
author galaxyp
date Wed, 09 Aug 2017 09:34:25 -0400
parents
children 1e9edcc25bbe
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/readme.md	Wed Aug 09 09:34:25 2017 -0400
@@ -0,0 +1,194 @@
+Galaxy wrapper for OpenMS
+=========================
+
+OpenMS is an open-source software C++ library for LC/MS data management and analyses.
+It offers an infrastructure for the rapid development of mass spectrometry related software.
+OpenMS is free software available under the three clause BSD license and runs under Windows, MacOSX and Linux.
+
+More informations are available at:
+
+ * https://github.com/OpenMS/OpenMS
+ * http://open-ms.sourceforge.net
+
+
+Generating OpenMS wrappers
+==========================
+
+ * install OpenMS (you can do this automatically through Conda)
+ * create a folder called CTD
+ * if you installed openms as a binary in a specific directory, execute the following command in the `openms/bin` directory:
+    
+    ```bash
+    for binary in `ls`; do ./$binary -write_ctd /PATH/TO/YOUR/CTD; done;
+    ```
+    
+ * if there is no binary release (e.g. as with version 2.2), download and unpack the Conda package, find the `bin` folder and create a list of the tools as follow:
+ 
+    ```bash
+    ls >> tools.txt
+    ```
+    
+ * search for the `bin` folder of your conda environment containing OpenMS and do:
+ 
+    ```bash
+    while read p; do
+        ./PATH/TO/BIN/$p -write_ctd /PATH/TO/YOUR/CTD;
+    done <tools.txt
+    ```
+    
+ * You should have all CTD files now. `MetaProSIP.ctd` includes a not supported character: To use it, search for `²` and replace it (e.g. with `^2`).
+
+ * clone or install CTDopts
+
+    ```bash
+    git clone https://github.com/genericworkflownodes/CTDopts
+    ```
+
+ * add CTDopts to your `$PYTHONPATH`
+
+    ```bash
+    export PYTHONPATH=/home/user/CTDopts/
+    ```
+
+ * clone or install CTD2Galaxy
+
+    ```bash
+    git clone https://github.com/WorkflowConversion/CTD2Galaxy.git
+    ```
+    
+ * If you have CTDopts and CTD2Galaxy installed you are ready to generate Galaxy Tools from CTD definitions. Change the following command according to your needs, especially the `/PATH/TO` parts. The default files are provided in this repository. You might have to install `libxslt` and `lxml` to run it.
+
+    ```bash
+    python generator.py \ 
+    -i /PATH/TO/YOUR/CTD/*.ctd \
+    -o ./PATH/TO/YOUR/WRAPPERS/ -t tool.conf \
+    -d datatypes_conf.xml -g openms \
+    -b version log debug test no_progress threads \
+     in_type executable myrimatch_executable \
+     fido_executable fidocp_executable \
+     omssa_executable pepnovo_executable \
+     xtandem_executable param_model_directory \
+     java_executable java_memory java_permgen \
+    -f /PATH/TO/filetypes.txt -m /PATH/TO/macros.xml \
+    -s PATH/TO/SKIP_TOOLS_FILES.txt
+    ```
+
+
+ * As last step you need to change manually the binary names of all external binaries you want to use in OpenMS. For example:
+
+    ```
+    sed -i '13 a\-fido_executable fido' wrappers/FidoAdapter.xml
+    sed -i '13 a\-fidocp_executable fido_choose_parameters' wrappers/FidoAdapter.xml
+    sed -i '13 a\-myrimatch_executable myrimatch' wrappers/MyriMatchAdapter.xml
+    sed -i '13 a\-omssa_executable omssa' wrappers/OMSSAAdapter.xml
+    sed -i '13 a\-xtandem_executable xtandem' wrappers/XTandemAdapter.xml
+    ```
+    
+ * For some tools, additional work has to be done. In `MSGFPlusAdapter.xml` the following is needed in the command section at the beginning (check your file to know what to copy where):
+ 
+   ```
+    <command><![CDATA[
+
+    ## check input file type
+    #set $in_type = $param_in.ext
+
+    ## create the symlinks to set the proper file extension, since msgf uses them to choose how to handle the input files
+    ln -s '$param_in' 'param_in.${in_type}' &&
+    ln -s '$param_database' param_database.fasta &&
+    ## find location of the MSGFPlus.jar file of the msgf_plus conda package
+    MSGF_JAR=\$(msgf_plus -get_jar_path) &&
+
+    MSGFPlusAdapter
+    -executable \$MSGF_JAR
+    #if $param_in:
+      -in 'param_in.${in_type}'
+    #end if
+    #if $param_out:
+      -out $param_out
+    #end if
+    #if $param_mzid_out:
+      -mzid_out $param_mzid_out
+    #end if
+    #if $param_database:
+      -database param_database.fasta
+    #end if
+    
+    [...]
+    ]]>
+    ```
+    
+ * In `IDFileConverter.xml` the following is needed in the command section at the beginning (check your file to know what to copy where):
+ 
+   ```
+    <command><![CDATA[
+   
+      ## check input file type
+      #set $in_type = $param_in.ext
+
+      ## create the symlinks to set the proper file extension, since IDFileConverter uses them to choose how to handle the input files
+      ln -s '$param_in' 'param_in.${in_type}' &&
+
+      IDFileConverter
+
+      #if $param_in:
+        -in 'param_in.${in_type}'
+      #end if
+
+        [...]
+        ]]>
+    ```
+
+ * In `IDFileConverter.xml` and `FileConverter.xml` add `auto_format="true"` to the output, e.g.:
+ 
+   - `<data name="param_out" auto_format="true"/>`
+   - `<data name="param_out" metadata_source="param_in" auto_format="true"/>`
+        
+ * To add an example test case to `DecoyDatabase.xml` add the following after the output section. If standard settings change you might have to adjust the options and/or the test files.
+ 
+    ```
+       <tests>
+        <test>
+            <param name="param_in" value="DecoyDatabase_input.fasta"/>
+            <output name="param_out" file="DecoyDatabase_output.fasta"/>
+        </test>
+    </tests>
+    ```
+    
+
+ * These tools have multiple outputs (number of inputs = number of outputs) which is not yet supported in Galaxy-stable and are therefore in `SKIP_TOOLS_FILES.txt`:
+    * SeedListGenerator
+    * SpecLibSearcher
+    * MapAlignerIdentification
+    * MapAlignerPoseClustering
+    * MapAlignerSpectrum
+    * MapAlignerRTTransformer
+    
+ * Additionally cause of lacking dependencies, the following adapters have been removed in `SKIP_TOOLS_FILES.txt` as well:
+    * OMSSAAdapter
+    * MyrimatchAdapter
+    
+ * Additionally cause of a problematic parameter (-model_directory), the following adapter has been removed:
+    * PepNovoAdapter
+
+
+Licence (MIT)
+=============
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+