diff --git a/.claude/worktrees/agent-ae998a3241a635a33 b/.claude/worktrees/agent-ae998a3241a635a33 new file mode 160000 index 00000000..17c4288e --- /dev/null +++ b/.claude/worktrees/agent-ae998a3241a635a33 @@ -0,0 +1 @@ +Subproject commit 17c4288e4045c3b03f24d2f90e56dd3996dec42f diff --git a/.gitignore b/.gitignore index 5d95edf5..0a5ace3b 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ Gemfile Gemfile.lock vendor/ .bundle +*.pyc diff --git a/.markdownlint.json b/.markdownlint.json new file mode 100644 index 00000000..3222235c --- /dev/null +++ b/.markdownlint.json @@ -0,0 +1,5 @@ +{ + "MD013": false, + "MD024": { "siblings_only": true }, + "MD033": false +} diff --git a/CHANGELOG.md b/CHANGELOG.md index ee7397c3..59a3fb69 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,32 +1,87 @@ # Changelog +## [2.1.0] - 2026-06-01 + +### Added + +#### My Templates + +- **"My Templates" section on the home page** — saved templates are shown as thumbnails in the same + grid style as regular apps, using the source app's own icon. Clicking a template opens its source + app form pre-filled with the saved values. +- **Save as Template** button on any application form. Saves the current form values, the source + app path, and the app icon into a YAML file under `{data_dir}/templates/`. +- **Save button** (replaces "Save as Template") when a template has been loaded into the form — + overwrites the stored values without prompting for a name again. +- **Edit (pencil) button** on each template thumbnail — opens an inline modal to rename the + template or update its description without leaving the home page. +- **Delete (×) button** on each template thumbnail — deletes the template after a confirmation prompt. +- New routes: `POST /templates`, `POST /templates/:slug/overwrite`, + `POST /templates/:slug/rename`, `POST /templates/:slug/delete`. + +#### Nodes page + +- **Dynamic GRES columns** — the Nodes table automatically discovers every GRES type reported + by the scheduler (e.g. `gpu`, `nvme`) and creates one column per type. No static column + configuration is needed. +- GRES columns are displayed in **alphabetical order**. +- Each GRES cell shows **available / total** resource counts with the existing resource-bar style, + broken out by subtype (e.g. `A100`, `H100`). +- Removed the **Type** and **Arch** filter checkboxes from the Nodes page. + +#### History page + +- **One-by-one job cancellation** — "Cancel Job" now issues one `scancel` call per selected job + instead of a single bulk call. +- An **animated Bootstrap progress bar** (`X / N jobs`) is shown inside the cancel modal while + cancellation is running. +- On full success the bar turns green and the page auto-reloads after one second. On partial + failure the bar turns yellow and each error is listed. +- New route: `POST /history/cancel_one` — cancels a single job and returns JSON + `{ok: true}` / `{ok: false, error: "..."}`. + +### Fixed + +- Clicking "Save" to overwrite a template no longer discards content that was already entered in the + form. Previously, saving would clear fields the user had filled in; now the existing form values are + preserved correctly. + ## [2.0.0] - 2026-05-11 + ### Add + - Add side-by-side syntax highlighting overlays for the script and submit textareas. - Add configurable `highlight_theme` and `directive_color` settings for history/script highlighting. - Add advanced history search options for date range, AND/OR matching, and field selection. - Add history search elapsed-time output next to the entry count. ### Changed + - Change history storage from PStore to SQLite with automatic migration from legacy `.db` files. - Expand history search to index all stored job values, including Job Details and Job Script contents. - Improve history search highlighting so it follows AND/OR search terms and the selected field. -## Fix +### Fix + - Fix initialization error in Dynamic Form Widget ## [1.9.0] - 2026-03-20 + ### Add + - A warning will be displayed before manual changes to the script and submit sections are deleted. - Support OC_ROUNDING_ROUND, OC_ROUNDING_FLOOR, and OC_ROUNDING_CEIL in calc(). - Local Development is added in install manual. ### Changed + - RACK is used for development. - Improve README to match Appverse documentation standard in [18](https://github.com/RIKEN-RCCS/OpenComposer/issues/28). ## [1.8.0] - 2025-12-26 + ### Add + - Add the function to define multiple login_nodes and ssh_wrappers in conf.yml in [25](https://github.com/RIKEN-RCCS/OpenComposer/discussions/25). - Add calc function in [20](https://github.com/RIKEN-RCCS/OpenComposer/pull/20). - History page items can be freely changed in [19](https://github.com/RIKEN-RCCS/OpenComposer/pull/19). @@ -35,58 +90,73 @@ - Add a variable @OC_DIR_NAME. ### Changed + - Change clusters from cluster in conf.yml (It is an incompatible change). - Change related_apps from related_apps in manifest.yml (It is an incompatible change). - Changed dirname and basename to work the same as linux commands. - Change a variable OC_SCRIPT_CONTENT from SCRIPT_CONTENT. ### Fixed + - Do nothing if expr returns an error. ## [1.7.0] - 2025-11-06 + ### Add + - The function only saves job scripts. - The function allows users to view and edit preprocessing. ### Changed + - Manual format changed from Markdown to HTML. ### Fixed + - An error occurs when you first open the History page in [18](https://github.com/RIKEN-RCCS/OpenComposer/pull/18). - An issue where variables could not be referenced in the submit and check sections. - An error where the separator was not reflected when using an array as the second argument in the options of checkbox and multi_select widgets. - An error that disabled elements could not be referenced on the initial screen. ## [1.6.0] - 2025-10-19 + ### Add + - The function for zeropadding. - The function to output log. - The custom PBS Pro scheduler for Miyabi. ### Changed + - Change the manual format from Markdown to HTML. - Change "cancel job" from "delete job" in history page. - The name of the page from Top Page to Home Page. ### Fixed + - The initial value was not set correctly when the value was a number. - Consolidate querying both running and history jobs in PBS Pro in [9](https://github.com/RIKEN-RCCS/OpenComposer/pull/9). - PBS Pro qstat bug in [8](https://github.com/RIKEN-RCCS/OpenComposer/pull/8). ## [1.5.0] - 2025-05-08 + ### Add + - Add highlights to filtered results in history page. - Support multiple clusters. ### Changed + - Filter in history page searches all job information. ### Fixed + - Sanitization for XSS. ## [1.4.0] - 2025-04-08 ### Added + - Support to set a main label and a sub-label. - Support to hide job scripts. - Dynamic Form Widget is also enabled in the header. @@ -95,6 +165,7 @@ - Add a function oc_assert() which can be used in form.yml. ### Changed + - For slurm, remove init_bash and added --export=NONE to the sbatch option. - For slurm, PBSpro and Fujitsu TCS, increase the amount of verbose output. - On the history page, when you hover the cursor over the image of a visualization app, the name of the application is displayed. @@ -105,11 +176,13 @@ - Display error messages more clearly in form. ### Fixed + - A reference so that it works even if the destination of related_app in manuscript is a link. ## [1.3.0] - 2025-02-12 ### Added + - Support Grid Engine job scheduler. - It is possible to define headers for each application. - For pre-processing, submit section in form.yml is added. And delete submit.yml. @@ -118,28 +191,33 @@ - It is possible to define headers for each application. ### Changed + - Change path selector modal overflow behavior in [1](https://github.com/RIKEN-RCCS/OpenComposer/pull/1) - To speed up the history page, update the status only for the job IDs that are displayed. - The separator option enables output without spaces. - To prevent elements that are initially hidden from appearing for just a moment, make them visible after all loading is complete. ### Fixed + - Fixed behavior of the path widget with or without a slash at the end of a directory. ## [1.2.0] - 2025-01-20 ### Added + - Support PBS job scheduler. - Add bin_overrides in conf.yml.erb. - Add a utility misc/read_yml_erb.rb. ### Changed + - login_node in conf.yml.erb has been made optional. - Simplify `ident` parameter. - When a job scheduler error occurs, output stdout as well as stderr. - Get the job submission date and time from a Ruby function, not from the scheduler. ### Fixed + - Fixed a mistake in the application name link on the form. - Element with disabled is considered unchecked. - When the selected option in select widget becomes disabled by dynamic form widget, the non-disabled option is selected. @@ -148,6 +226,7 @@ ## [1.1.0] - 2025-01-09 ### Added + - Added `ident` parameter in the web form. - Enabled setting related applications. - Added support for Font Awesome icons. @@ -156,6 +235,7 @@ - Added an option to include the value of "Job Name" in the header as part of the job submission command. ### Changed + - Divided the manual into sections for creating web forms and using Open Composer. - Extended the inquiry period for completed Fujitsu_TCS jobs to 365 days. - Improved error handling: when job submission fails, the same page reloads with the failed parameters pre-filled. @@ -165,11 +245,14 @@ - Ensured that changes in header values do not update `JOB_SCRIPT_CONTENTS`. ### Fixed + - Fixed the issue with loading the bash environment when executing `pjsub`/`sbatch` commands. - Resolved the issue where `public/no_image_square.jpg` could not be displayed. ### Security + - Applied URL encoding for special characters on the history page to enhance security. ## [1.0.0] - 12-11-2024 + First release. diff --git a/README.md b/README.md index 84d08d20..b87c9766 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +# Open Composer + ## Overview Open Composer is a web application to generate batch job scripts and submit batch jobs for HPC clusters on [Open OnDemand](https://openondemand.org/). @@ -8,7 +10,7 @@ interface for creating, previewing, editing, and submitting batch job scripts. I supports multiple job schedulers and can be configured for different HPC applications. - **App type:** Workflow Composer (Jobs category) -- **Latest release:** [`v2.0.0`](https://github.com/RIKEN-RCCS/OpenComposer/releases/tag/v2.0.0) (see [Changelog](https://github.com/RIKEN-RCCS/OpenComposer/blob/main/CHANGELOG.md)) +- **Latest release:** [`v2.1.0`](https://github.com/RIKEN-RCCS/OpenComposer/releases/tag/v2.1.0) (see [Changelog](CHANGELOG.md)) - **License:** MIT (see [LICENSE file](https://github.com/RIKEN-RCCS/OpenComposer/blob/main/LICENSE)) - **Requirements:** Open OnDemand 3.0 or later. - **Supported job schedulers:** Slurm, PBS Pro, Grid Engine, Fujitsu TCS @@ -16,23 +18,29 @@ supports multiple job schedulers and can be configured for different HPC applica - Graphical web interface for generating and submitting batch job scripts - Multi-scheduler and multi-cluster support - Job history page with filtering, status tracking, and job cancellation + - One-by-one job cancellation with an animated in-modal progress bar - Editable job script preview before submission - Configurable application forms via `form.yml` - Dynamic form widgets with conditional visibility and validation - Support for preprocessing steps via submit sections - Customizable per-application headers and labels - Path selector widget for file and directory selection + - My Templates — save, manage, and reuse form configurations + - Nodes page with dynamic GRES columns auto-discovered from the scheduler - Bilingual documentation (English and Japanese) ## Screenshots ### Home page + Home ### Application page + Application ### History page + History ## Documents @@ -63,21 +71,20 @@ The following steps assume you have administrator privileges. If you do not have administrator privileges, see [Section 4. "Installation by general user" in installation document](https://riken-rccs.github.io/OpenComposer/docs/install.html#general). ```sh -$ cd /var/www/ood/apps/sys/ -$ sudo git clone https://github.com/RIKEN-RCCS/OpenComposer.git -$ cd OpenComposer -$ sudo cp conf.yml.erb.sample conf.yml.erb +cd /var/www/ood/apps/sys/ +sudo git clone https://github.com/RIKEN-RCCS/OpenComposer.git +cd OpenComposer +sudo cp conf.yml.erb.sample conf.yml.erb ``` You need to edit `conf.yml.erb`. For details, see [Section 2. "Setting" in installation manual](https://riken-rccs.github.io/OpenComposer/docs/install.html#setting). ## Testing -| System | Site | Scheduler | Repository | -|-------------|-------------|--------------------|------------| -| Fugaku | RIKEN RCCS | Fujitsu TCS, Slurm | https://github.com/RIKEN-RCCS/composer_fugaku | -| R-CCS Cloud | RIKEN RCCS | Slurm | https://github.com/RIKEN-RCCS/composer_rccs_cloud | - +| System | Site | Scheduler | Repository | +|-------------|------------|--------------------|------------------------------------------------------------------------------------------| +| Fugaku | RIKEN RCCS | Fujitsu TCS, Slurm | [composer_fugaku](https://github.com/RIKEN-RCCS/composer_fugaku) | +| R-CCS Cloud | RIKEN RCCS | Slurm | [composer_rccs_cloud](https://github.com/RIKEN-RCCS/composer_rccs_cloud) | ## Contributing @@ -88,11 +95,13 @@ For discussions, see the [GitHub Discussions](https://github.com/RIKEN-RCCS/Open For bugs or feature requests, [open an issue](https://github.com/RIKEN-RCCS/OpenComposer/issues) with detailed logs and reproduction steps. ## Reference + If you use this software in your research or development work, please cite the following publication: -> Masahiro Nakao and Keiji Yamamoto. 2025. ``Open Composer: A Web-Based Application for Generating and Managing Batch Jobs on HPC Clusters''. In Proceedings of the SC '25 Workshops of the International Conference for High Performance Computing, Networking, Storage and Analysis (SC Workshops '25). Association for Computing Machinery, New York, NY, USA, 697-704. https://doi.org/10.1145/3731599.3767428 +> Masahiro Nakao and Keiji Yamamoto. 2025. "Open Composer: A Web-Based Application for Generating and Managing Batch Jobs on HPC Clusters". In Proceedings of the SC '25 Workshops of the International Conference for High Performance Computing, Networking, Storage and Analysis (SC Workshops '25). ACM, New York, NY, USA, 697-704. [https://doi.org/10.1145/3731599.3767428](https://doi.org/10.1145/3731599.3767428) ## Presentation + - [HUST: International Workshop on HPC User Support Tools](https://hust-workshop.github.io), St. Louis, USA, Nov. 2025 [[Paper](https://doi.org/10.1145/3731599.3767428)] [[Slide](https://www.mnakao.net/data/2025/HUST2025.pdf)] - [SupercomputingAsia 2025](https://sca25.sc-asia.org/), Singapore, Mar. 2025 [[Poster](https://mnakao.net/data/2025/sca.pdf)] - [The 197th HPC Research Symposium](https://www.ipsj.or.jp/kenkyukai/event/arc251hpc197.html), Fukuoka, Japan, Dec. 2024 [[Paper](https://mnakao.net/data/2024/HPC197.pdf)] [[Slide](https://mnakao.net/data/2024/HPC197-slide.pdf)] (Japanese) diff --git a/apps/ABAQUS/form.yml.erb b/apps/ABAQUS/form.yml.erb new file mode 100644 index 00000000..ac738518 --- /dev/null +++ b/apps/ABAQUS/form.yml.erb @@ -0,0 +1,45 @@ +<%# AI generated %> +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['abaqus_module'] = { + 'widget' => 'module_load', + 'module' => "ABAQUS", + 'label' => "ABAQUS Module" + } + new_form['abaqus_input'] = { + 'widget' => 'text_field', + 'label' => "Input File", + 'help' => "Full path to your ABAQUS input file (.inp), e.g. /nesi/project/nesi99999/my_model.inp" + } + end + new_form[k] = v +end + +base['form'] = new_form + +ntasks = cores_advanced_1.to_i > 1 ? cores_advanced_1.to_i : cores_simple.to_i +cpus = cores_advanced_2.to_i > 1 ? cores_advanced_2.to_i : 1 +has_gpu = [gpu_any, gpu_genoa, gpu_milan].any? { |g| g.to_s != '' && g.to_s != 'None' } +job_name = File.basename(abaqus_input.to_s, '.inp') +if has_gpu + app_cmd = "abaqus input=#{abaqus_input} job=#{job_name} cpus=${SLURM_CPUS_PER_TASK} gpus=${SLURM_GPUS_PER_NODE} mp_mode=threads verbose=2 interactive" +elsif ntasks > 1 + app_cmd = "abaqus input=#{abaqus_input} job=#{job_name} cpus=${SLURM_NTASKS} mp_mode=mpi verbose=2 interactive" +elsif cpus > 1 + app_cmd = "abaqus input=#{abaqus_input} job=#{job_name} cpus=${SLURM_CPUS_PER_TASK} mp_mode=threads verbose=2 interactive" +else + app_cmd = "abaqus input=#{abaqus_input} job=#{job_name} verbose=2 interactive" +end + +base['script'] = base['script'].rstrip + "\n\n" + [ + "module -q purge", + "module load #{abaqus_module}", + app_cmd +].join("\n") + "\n" +%> +<%= base.to_yaml -%> diff --git a/apps/ABAQUS/icon.png b/apps/ABAQUS/icon.png new file mode 100644 index 00000000..078f8398 Binary files /dev/null and b/apps/ABAQUS/icon.png differ diff --git a/apps/ABAQUS/manifest.yml b/apps/ABAQUS/manifest.yml new file mode 100644 index 00000000..e0888755 --- /dev/null +++ b/apps/ABAQUS/manifest.yml @@ -0,0 +1,8 @@ +# AI generated +category: Engineering +description: Finite Element Analysis software for modeling, visualization and best-in-class + implicit and explicit dynamics FEA. +hidden: true +homepage: http://www.simulia.com/products/abaqus_fea.html +icon: icon.png +name: ABAQUS diff --git a/apps/ABRicate/form.yml.erb b/apps/ABRicate/form.yml.erb new file mode 100644 index 00000000..65e2f759 --- /dev/null +++ b/apps/ABRicate/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['abricate_module'] = { + 'widget' => 'module_load', + 'module' => "ABRicate", + 'label' => "ABRicate Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{abricate_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ABRicate/manifest.yml b/apps/ABRicate/manifest.yml new file mode 100644 index 00000000..2d81e788 --- /dev/null +++ b/apps/ABRicate/manifest.yml @@ -0,0 +1,5 @@ +name: ABRicate +category: Biology +description: Mass screening of contigs for antimicrobial and virulence genes. +homepage: https://github.com/tseemann/abricate +hidden: true diff --git a/apps/ABySS/form.yml.erb b/apps/ABySS/form.yml.erb new file mode 100644 index 00000000..fa804f8f --- /dev/null +++ b/apps/ABySS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['abyss_module'] = { + 'widget' => 'module_load', + 'module' => "ABySS", + 'label' => "ABySS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{abyss_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ABySS/manifest.yml b/apps/ABySS/manifest.yml new file mode 100644 index 00000000..00fc614b --- /dev/null +++ b/apps/ABySS/manifest.yml @@ -0,0 +1,5 @@ +name: ABySS +category: Biology +description: Assembly By Short Sequences - a de novo, parallel, paired-end sequence assembler. +homepage: https://www.bcgsc.ca/platform/bioinfo/software/abyss +hidden: true diff --git a/apps/ACTC/form.yml.erb b/apps/ACTC/form.yml.erb new file mode 100644 index 00000000..970d3eef --- /dev/null +++ b/apps/ACTC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['actc_module'] = { + 'widget' => 'module_load', + 'module' => "ACTC", + 'label' => "ACTC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{actc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ACTC/icon.png b/apps/ACTC/icon.png new file mode 100644 index 00000000..d44cad5e Binary files /dev/null and b/apps/ACTC/icon.png differ diff --git a/apps/ACTC/manifest.yml b/apps/ACTC/manifest.yml new file mode 100644 index 00000000..8a193710 --- /dev/null +++ b/apps/ACTC/manifest.yml @@ -0,0 +1,6 @@ +name: ACTC +category: Others +description: ACTC converts independent triangles into triangle strips or fans. +homepage: https://sourceforge.net/projects/actc +icon: icon.png +hidden: true diff --git a/apps/AGAT/form.yml.erb b/apps/AGAT/form.yml.erb new file mode 100644 index 00000000..cba23998 --- /dev/null +++ b/apps/AGAT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['agat_module'] = { + 'widget' => 'module_load', + 'module' => "AGAT", + 'label' => "AGAT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{agat_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AGAT/manifest.yml b/apps/AGAT/manifest.yml new file mode 100644 index 00000000..fa001c01 --- /dev/null +++ b/apps/AGAT/manifest.yml @@ -0,0 +1,5 @@ +name: AGAT +category: Biology +description: Suite of tools to handle gene annotations in any GTF/GFF format. +homepage: https://github.com/NBISweden/AGAT +hidden: true diff --git a/apps/AGE/form.yml.erb b/apps/AGE/form.yml.erb new file mode 100644 index 00000000..0d34bc31 --- /dev/null +++ b/apps/AGE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['age_module'] = { + 'widget' => 'module_load', + 'module' => "AGE", + 'label' => "AGE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{age_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AGE/manifest.yml b/apps/AGE/manifest.yml new file mode 100644 index 00000000..7a1d5a4b --- /dev/null +++ b/apps/AGE/manifest.yml @@ -0,0 +1,5 @@ +name: AGE +category: Biology +description: Alignment of sequences with structural variants. +homepage: https://github.com/abyzovlab/AGE +hidden: true diff --git a/apps/AMOS/form.yml.erb b/apps/AMOS/form.yml.erb new file mode 100644 index 00000000..d2e7831c --- /dev/null +++ b/apps/AMOS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['amos_module'] = { + 'widget' => 'module_load', + 'module' => "AMOS", + 'label' => "AMOS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{amos_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AMOS/manifest.yml b/apps/AMOS/manifest.yml new file mode 100644 index 00000000..c4d8f0e1 --- /dev/null +++ b/apps/AMOS/manifest.yml @@ -0,0 +1,5 @@ +name: AMOS +category: Biology +description: Collection of tools for genome assembly. +homepage: http://amos.sourceforge.net +hidden: true diff --git a/apps/AMRFinderPlus/form.yml.erb b/apps/AMRFinderPlus/form.yml.erb new file mode 100644 index 00000000..3301e538 --- /dev/null +++ b/apps/AMRFinderPlus/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['amrfinderplus_module'] = { + 'widget' => 'module_load', + 'module' => "AMRFinderPlus", + 'label' => "AMRFinderPlus Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{amrfinderplus_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AMRFinderPlus/manifest.yml b/apps/AMRFinderPlus/manifest.yml new file mode 100644 index 00000000..68a676b8 --- /dev/null +++ b/apps/AMRFinderPlus/manifest.yml @@ -0,0 +1,5 @@ +name: AMRFinderPlus +category: Biology +description: NCBI Antimicrobial Resistance Gene Finder Plus. +homepage: https://github.com/ncbi/amr/wiki +hidden: true diff --git a/apps/ANIcalculator/form.yml.erb b/apps/ANIcalculator/form.yml.erb new file mode 100644 index 00000000..fa240279 --- /dev/null +++ b/apps/ANIcalculator/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['anicalculator_module'] = { + 'widget' => 'module_load', + 'module' => "ANIcalculator", + 'label' => "ANIcalculator Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{anicalculator_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ANIcalculator/manifest.yml b/apps/ANIcalculator/manifest.yml new file mode 100644 index 00000000..9317df9a --- /dev/null +++ b/apps/ANIcalculator/manifest.yml @@ -0,0 +1,5 @@ +name: ANIcalculator +category: Biology +description: Calculate the bidirectional average nucleotide identity (gANI) and Alignment Fraction (AF) between two genomes. +homepage: https://ani.jgi.doe.gov/html/home.php +hidden: true diff --git a/apps/ANNOVAR/form.yml.erb b/apps/ANNOVAR/form.yml.erb new file mode 100644 index 00000000..648a624e --- /dev/null +++ b/apps/ANNOVAR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['annovar_module'] = { + 'widget' => 'module_load', + 'module' => "ANNOVAR", + 'label' => "ANNOVAR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{annovar_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ANNOVAR/icon.png b/apps/ANNOVAR/icon.png new file mode 100644 index 00000000..4c6255f9 Binary files /dev/null and b/apps/ANNOVAR/icon.png differ diff --git a/apps/ANNOVAR/manifest.yml b/apps/ANNOVAR/manifest.yml new file mode 100644 index 00000000..7f13f61d --- /dev/null +++ b/apps/ANNOVAR/manifest.yml @@ -0,0 +1,6 @@ +name: ANNOVAR +category: Biology +description: Efficient software tool to utilize update-to-date information to functionally annotate genetic variants detected from diverse genomes. +homepage: http://annovar.openbioinformatics.org/en/latest/ +icon: icon.png +hidden: true diff --git a/apps/ANSYS/form.yml.erb b/apps/ANSYS/form.yml.erb new file mode 100644 index 00000000..a26b9463 --- /dev/null +++ b/apps/ANSYS/form.yml.erb @@ -0,0 +1,75 @@ +<%# AI generated %> +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ansys_module'] = { + 'widget' => 'module_load', + 'module' => "ANSYS", + 'label' => "ANSYS Module" + } + new_form['ansys_solver'] = { + 'widget' => 'select', + 'label' => "ANSYS Solver", + 'help' => "Select the ANSYS application to run.", + 'options' => [["Fluent (CFD)", "fluent"], ["CFX", "cfx"], ["Mechanical APDL", "mapdl"], ["LS-DYNA", "lsdyna"]] + } + new_form['input_file'] = { + 'widget' => 'text_field', + 'label' => "Input File", + 'help' => "Path to your input file. Fluent: .in journal file; CFX: .def file; MAPDL: .dat file; LS-DYNA: .k file. E.g. /nesi/project/nesi99999/simulation.in" + } + new_form['fluent_precision'] = { + 'widget' => 'select', + 'label' => "Fluent Solver Type", + 'help' => "Dimension and precision for Fluent. Only used when Fluent is selected as the solver.", + 'options' => [["3D double precision (3ddp)", "3ddp"], ["3D single precision (3d)", "3d"], ["2D double precision (2ddp)", "2ddp"], ["2D single precision (2d)", "2d"]] + } + end + new_form[k] = v +end + +base['form'] = new_form + +ntasks = cores_advanced_1.to_i > 1 ? cores_advanced_1.to_i : cores_simple.to_i +cpus = cores_advanced_2.to_i > 1 ? cores_advanced_2.to_i : 1 +has_gpu = [gpu_any, gpu_genoa, gpu_milan].any? { |g| g.to_s != '' && g.to_s != 'None' } +case ansys_solver +when "fluent" + if ntasks > 1 + app_cmd = "fluent #{fluent_precision} -g -t ${SLURM_NTASKS} -i #{input_file}" + else + app_cmd = "fluent #{fluent_precision} -g -i #{input_file}" + end +when "cfx" + if ntasks > 1 + app_cmd = "cfx5solve -batch -def \"#{input_file}\" -part ${SLURM_NTASKS}" + else + app_cmd = "cfx5solve -batch -def \"#{input_file}\"" + end +when "mapdl" + if ntasks > 1 + app_cmd = "mapdl -b -dis -np ${SLURM_NTASKS} -i \"#{input_file}\"" + elsif cpus > 1 + app_cmd = "mapdl -b -np ${SLURM_CPUS_PER_TASK} -i \"#{input_file}\"" + else + app_cmd = "mapdl -b -i \"#{input_file}\"" + end +when "lsdyna" + if cpus > 1 + app_cmd = "lsdyna i=#{input_file} NCPUS=${SLURM_CPUS_PER_TASK}" + else + app_cmd = "lsdyna i=#{input_file}" + end +end + +base['script'] = base['script'].rstrip + "\n\n" + [ + "module -q purge", + "module load #{ansys_module}", + app_cmd +].join("\n") + "\n" +%> +<%= base.to_yaml -%> diff --git a/apps/ANSYS/icon.png b/apps/ANSYS/icon.png new file mode 100644 index 00000000..b602b04f Binary files /dev/null and b/apps/ANSYS/icon.png differ diff --git a/apps/ANSYS/manifest.yml b/apps/ANSYS/manifest.yml new file mode 100644 index 00000000..1093fb4e --- /dev/null +++ b/apps/ANSYS/manifest.yml @@ -0,0 +1,8 @@ +# AI generated +category: Engineering +description: A bundle of computer-aided engineering software including Fluent and + CFX. +hidden: true +homepage: https://www.ansys.com +icon: icon.png +name: ANSYS diff --git a/apps/ANTs/form.yml.erb b/apps/ANTs/form.yml.erb new file mode 100644 index 00000000..410aa5a1 --- /dev/null +++ b/apps/ANTs/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ants_module'] = { + 'widget' => 'module_load', + 'module' => "ANTs", + 'label' => "ANTs Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ants_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ANTs/icon.png b/apps/ANTs/icon.png new file mode 100644 index 00000000..dec037f4 Binary files /dev/null and b/apps/ANTs/icon.png differ diff --git a/apps/ANTs/manifest.yml b/apps/ANTs/manifest.yml new file mode 100644 index 00000000..82513daa --- /dev/null +++ b/apps/ANTs/manifest.yml @@ -0,0 +1,6 @@ +name: ANTs +category: Others +description: ANTs extracts information from complex datasets that include imaging. +homepage: https://stnava.github.io/ANTs/ +icon: icon.png +hidden: true diff --git a/apps/ARAGORN/form.yml.erb b/apps/ARAGORN/form.yml.erb new file mode 100644 index 00000000..57895ce3 --- /dev/null +++ b/apps/ARAGORN/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['aragorn_module'] = { + 'widget' => 'module_load', + 'module' => "ARAGORN", + 'label' => "ARAGORN Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{aragorn_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ARAGORN/icon.png b/apps/ARAGORN/icon.png new file mode 100644 index 00000000..2cf905b1 Binary files /dev/null and b/apps/ARAGORN/icon.png differ diff --git a/apps/ARAGORN/manifest.yml b/apps/ARAGORN/manifest.yml new file mode 100644 index 00000000..ab90798b --- /dev/null +++ b/apps/ARAGORN/manifest.yml @@ -0,0 +1,6 @@ +name: ARAGORN +category: Others +description: A program to detect tRNA genes and tmRNA genes in nucleotide sequences. +homepage: https://www.trna.se/ARAGORN/ +icon: icon.png +hidden: true diff --git a/apps/ARIBA/form.yml.erb b/apps/ARIBA/form.yml.erb new file mode 100644 index 00000000..a3e27cfa --- /dev/null +++ b/apps/ARIBA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ariba_module'] = { + 'widget' => 'module_load', + 'module' => "ARIBA", + 'label' => "ARIBA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ariba_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ARIBA/manifest.yml b/apps/ARIBA/manifest.yml new file mode 100644 index 00000000..5309d69e --- /dev/null +++ b/apps/ARIBA/manifest.yml @@ -0,0 +1,5 @@ +name: ARIBA +category: Biology +description: Antimicrobial Resistance Identification By Assembly. +homepage: http://sanger-pathogens.github.io/ariba/ +hidden: true diff --git a/apps/ASAGI/form.yml.erb b/apps/ASAGI/form.yml.erb new file mode 100644 index 00000000..574c3c10 --- /dev/null +++ b/apps/ASAGI/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['asagi_module'] = { + 'widget' => 'module_load', + 'module' => "ASAGI", + 'label' => "ASAGI Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{asagi_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ASAGI/logo.png b/apps/ASAGI/logo.png new file mode 100644 index 00000000..715c4b5d Binary files /dev/null and b/apps/ASAGI/logo.png differ diff --git a/apps/ASAGI/manifest.yml b/apps/ASAGI/manifest.yml new file mode 100644 index 00000000..59b12d21 --- /dev/null +++ b/apps/ASAGI/manifest.yml @@ -0,0 +1,5 @@ +name: ASAGI +category: Earth Science +description: A pArallel Server for Adaptive GeoInformation. +homepage: https://tum-i5.github.io/ASAGI/index.xhtml +hidden: true diff --git a/apps/AUGUSTUS/form.yml.erb b/apps/AUGUSTUS/form.yml.erb new file mode 100644 index 00000000..e86dedf7 --- /dev/null +++ b/apps/AUGUSTUS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['augustus_module'] = { + 'widget' => 'module_load', + 'module' => "AUGUSTUS", + 'label' => "AUGUSTUS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{augustus_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AUGUSTUS/logo.png b/apps/AUGUSTUS/logo.png new file mode 100644 index 00000000..ea3690b9 Binary files /dev/null and b/apps/AUGUSTUS/logo.png differ diff --git a/apps/AUGUSTUS/manifest.yml b/apps/AUGUSTUS/manifest.yml new file mode 100644 index 00000000..16bdb9c7 --- /dev/null +++ b/apps/AUGUSTUS/manifest.yml @@ -0,0 +1,5 @@ +name: AUGUSTUS +category: Biology +description: AUGUSTUS is a program that predicts genes in eukaryotic genomic sequences. +homepage: http://bioinf.uni-greifswald.de/augustus/ +hidden: true diff --git a/apps/AdapterRemoval/form.yml.erb b/apps/AdapterRemoval/form.yml.erb new file mode 100644 index 00000000..8e570f16 --- /dev/null +++ b/apps/AdapterRemoval/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['adapterremoval_module'] = { + 'widget' => 'module_load', + 'module' => "AdapterRemoval", + 'label' => "AdapterRemoval Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{adapterremoval_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AdapterRemoval/manifest.yml b/apps/AdapterRemoval/manifest.yml new file mode 100644 index 00000000..ce16e666 --- /dev/null +++ b/apps/AdapterRemoval/manifest.yml @@ -0,0 +1,5 @@ +name: AdapterRemoval +category: Biology +description: Searches for and removes remnant adapter sequences from High-Throughput Sequencing data. +homepage: https://github.com/%/(github_account)s/adapterremoval +hidden: true diff --git a/apps/AlphaFold/form.yml.erb b/apps/AlphaFold/form.yml.erb new file mode 100644 index 00000000..50a037bf --- /dev/null +++ b/apps/AlphaFold/form.yml.erb @@ -0,0 +1,53 @@ +<% +require 'json' + +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +# Load AlphaFold/AlphaFold2DB/AlphaFold3DB version lists from the module-list +# cache (~/.composer/.module-list-cache.json). Falls back to hard-coded defaults +# if the cache file hasn't been written yet. +cache_path = File.join(ENV["HOME"], "composer", ".module-list-cache.json") +if File.exist?(cache_path) + all_mods = JSON.parse(File.read(cache_path)) + af_versions = (all_mods.dig("AlphaFold", "versions") || []).sort.reverse + af2db_versions = (all_mods.dig("AlphaFold2DB", "versions") || []).sort.reverse + af3db_versions = (all_mods.dig("AlphaFold3DB", "versions") || []).sort.reverse +else + af_versions = ["3.0.2", "3.0.1", "3.0.0", "2.3.2"] + af2db_versions = ["2023-04", "2022-06"] + af3db_versions = ["2024-12"] +end + +af_options = af_versions.map { |v| full = "AlphaFold/#{v}"; [full, full] } + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['alphafold_module'] = { + 'widget' => 'select', + 'label' => 'AlphaFold Module', + 'options' => af_options, + 'value' => af_options.first ? af_options.first[0] : "" + } + new_form['alphafold_db_module'] = { + 'widget' => 'two_module_widget', + 'label' => 'AlphaFold Database Module', + 'driver' => 'alphafold_module', + 'modules' => [ + {'prefix' => 'AlphaFold/2.', 'module' => 'AlphaFold2DB'}, + {'prefix' => 'AlphaFold/3.', 'module' => 'AlphaFold3DB'} + ] + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{alphafold_module} + module load #{alphafold_db_module} +APP_SCRIPT +-%> +<%= base.to_yaml -%> diff --git a/apps/AlphaFold/icon.png b/apps/AlphaFold/icon.png new file mode 100644 index 00000000..22dcb55a Binary files /dev/null and b/apps/AlphaFold/icon.png differ diff --git a/apps/AlphaFold/manifest.yml b/apps/AlphaFold/manifest.yml new file mode 100644 index 00000000..c90a811e --- /dev/null +++ b/apps/AlphaFold/manifest.yml @@ -0,0 +1,6 @@ +name: AlphaFold +category: Biology +description: AlphaFold can predict protein structures with atomic accuracy even where no similar structure is known. +homepage: https://github.com/deepmind/alphafold +icon: icon.png +hidden: true diff --git a/apps/Amber/form.yml.erb b/apps/Amber/form.yml.erb new file mode 100644 index 00000000..f688612c --- /dev/null +++ b/apps/Amber/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['amber_module'] = { + 'widget' => 'module_load', + 'module' => "Amber", + 'label' => "Amber Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{amber_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Amber/icon.jpg b/apps/Amber/icon.jpg new file mode 100644 index 00000000..41085296 Binary files /dev/null and b/apps/Amber/icon.jpg differ diff --git a/apps/Amber/manifest.yml b/apps/Amber/manifest.yml new file mode 100644 index 00000000..6b3e4338 --- /dev/null +++ b/apps/Amber/manifest.yml @@ -0,0 +1,6 @@ +name: Amber +category: Others +description: Amber (originally Assisted Model Building with Energy Refinement) is software for performing molecular dynamics and structure prediction. +homepage: https://ambermd.org/amber.html +icon: icon.jpg +hidden: true diff --git a/apps/Anaconda3/form.yml.erb b/apps/Anaconda3/form.yml.erb new file mode 100644 index 00000000..9bc4b739 --- /dev/null +++ b/apps/Anaconda3/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['anaconda3_module'] = { + 'widget' => 'module_load', + 'module' => "Anaconda3", + 'label' => "Anaconda3 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{anaconda3_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Anaconda3/icon.png b/apps/Anaconda3/icon.png new file mode 100644 index 00000000..e4bbc69b Binary files /dev/null and b/apps/Anaconda3/icon.png differ diff --git a/apps/Anaconda3/manifest.yml b/apps/Anaconda3/manifest.yml new file mode 100644 index 00000000..088debb7 --- /dev/null +++ b/apps/Anaconda3/manifest.yml @@ -0,0 +1,6 @@ +name: Anaconda3 +category: Machine Learning +description: Built to complement the rich, open source Python community, the Anaconda platform provides an enterprise-ready data analytics platform that empowers companies to adopt a modern open data science analytics architecture. +homepage: https://www.continuum.io/anaconda-overview +icon: icon.png +hidden: true diff --git a/apps/Armadillo/form.yml.erb b/apps/Armadillo/form.yml.erb new file mode 100644 index 00000000..697976a1 --- /dev/null +++ b/apps/Armadillo/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['armadillo_module'] = { + 'widget' => 'module_load', + 'module' => "Armadillo", + 'label' => "Armadillo Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{armadillo_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Armadillo/icon.png b/apps/Armadillo/icon.png new file mode 100644 index 00000000..db62b7d7 Binary files /dev/null and b/apps/Armadillo/icon.png differ diff --git a/apps/Armadillo/manifest.yml b/apps/Armadillo/manifest.yml new file mode 100644 index 00000000..1c99e8b9 --- /dev/null +++ b/apps/Armadillo/manifest.yml @@ -0,0 +1,6 @@ +name: Armadillo +category: Mathematics +description: C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. +homepage: http://arma.sourceforge.net/ +icon: icon.png +hidden: true diff --git a/apps/AutoDock-GPU/form.yml.erb b/apps/AutoDock-GPU/form.yml.erb new file mode 100644 index 00000000..101590fb --- /dev/null +++ b/apps/AutoDock-GPU/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['autodock_gpu_module'] = { + 'widget' => 'module_load', + 'module' => "AutoDock-GPU", + 'label' => "AutoDock-GPU Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{autodock_gpu_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AutoDock-GPU/icon.jpg b/apps/AutoDock-GPU/icon.jpg new file mode 100644 index 00000000..6922248f Binary files /dev/null and b/apps/AutoDock-GPU/icon.jpg differ diff --git a/apps/AutoDock-GPU/manifest.yml b/apps/AutoDock-GPU/manifest.yml new file mode 100644 index 00000000..6dae2d33 --- /dev/null +++ b/apps/AutoDock-GPU/manifest.yml @@ -0,0 +1,6 @@ +name: AutoDock-GPU +category: Others +description: OpenCL and Cuda accelerated version of AutoDock. +homepage: https://github.com/ccsb-scripps/AutoDock-GPU +icon: icon.jpg +hidden: true diff --git a/apps/AutoDock_Vina/form.yml.erb b/apps/AutoDock_Vina/form.yml.erb new file mode 100644 index 00000000..f2ef51af --- /dev/null +++ b/apps/AutoDock_Vina/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['autodock_vina_module'] = { + 'widget' => 'module_load', + 'module' => "AutoDock_Vina", + 'label' => "AutoDock_Vina Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{autodock_vina_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/AutoDock_Vina/icon.jpg b/apps/AutoDock_Vina/icon.jpg new file mode 100644 index 00000000..720dbbfa Binary files /dev/null and b/apps/AutoDock_Vina/icon.jpg differ diff --git a/apps/AutoDock_Vina/manifest.yml b/apps/AutoDock_Vina/manifest.yml new file mode 100644 index 00000000..9c199ea2 --- /dev/null +++ b/apps/AutoDock_Vina/manifest.yml @@ -0,0 +1,6 @@ +name: AutoDock_Vina +category: Others +description: AutoDock Vina is an open-source program for doing molecular docking. +homepage: http://vina.scripps.edu/index.html +icon: icon.jpg +hidden: true diff --git a/apps/BBMap/form.yml.erb b/apps/BBMap/form.yml.erb new file mode 100644 index 00000000..a1f59ec1 --- /dev/null +++ b/apps/BBMap/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bbmap_module'] = { + 'widget' => 'module_load', + 'module' => "BBMap", + 'label' => "BBMap Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bbmap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BBMap/manifest.yml b/apps/BBMap/manifest.yml new file mode 100644 index 00000000..a6238f18 --- /dev/null +++ b/apps/BBMap/manifest.yml @@ -0,0 +1,5 @@ +name: BBMap +category: Biology +description: BBMap short read aligner, and other bioinformatic tools. +homepage: https://sourceforge.net/projects/bbmap/ +hidden: true diff --git a/apps/BCFtools/form.yml.erb b/apps/BCFtools/form.yml.erb new file mode 100644 index 00000000..cc6ee3a8 --- /dev/null +++ b/apps/BCFtools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bcftools_module'] = { + 'widget' => 'module_load', + 'module' => "BCFtools", + 'label' => "BCFtools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bcftools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BCFtools/manifest.yml b/apps/BCFtools/manifest.yml new file mode 100644 index 00000000..b550456c --- /dev/null +++ b/apps/BCFtools/manifest.yml @@ -0,0 +1,5 @@ +name: BCFtools +category: Biology +description: Manipulate variant calls in the Variant Call Format (VCF) and its binary counterpart BCF. +homepage: http://www.htslib.org +hidden: true diff --git a/apps/BCL-Convert/form.yml.erb b/apps/BCL-Convert/form.yml.erb new file mode 100644 index 00000000..0b3c9515 --- /dev/null +++ b/apps/BCL-Convert/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bcl_convert_module'] = { + 'widget' => 'module_load', + 'module' => "BCL-Convert", + 'label' => "BCL-Convert Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bcl_convert_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BCL-Convert/manifest.yml b/apps/BCL-Convert/manifest.yml new file mode 100644 index 00000000..ebc08aca --- /dev/null +++ b/apps/BCL-Convert/manifest.yml @@ -0,0 +1,5 @@ +name: BCL-Convert +category: Biology +description: Converts per cycle binary data output by Illumina sequencers containing basecall files and quality scores to per read FASTQ files. +homepage: https://support.illumina.com/sequencing/sequencing_software/bcl-convert.html +hidden: true diff --git a/apps/BEAST/form.yml.erb b/apps/BEAST/form.yml.erb new file mode 100644 index 00000000..5dba8dc3 --- /dev/null +++ b/apps/BEAST/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['beast_module'] = { + 'widget' => 'module_load', + 'module' => "BEAST", + 'label' => "BEAST Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{beast_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BEAST/icon.jpg b/apps/BEAST/icon.jpg new file mode 100644 index 00000000..8475fb73 Binary files /dev/null and b/apps/BEAST/icon.jpg differ diff --git a/apps/BEAST/manifest.yml b/apps/BEAST/manifest.yml new file mode 100644 index 00000000..a15b8cd6 --- /dev/null +++ b/apps/BEAST/manifest.yml @@ -0,0 +1,6 @@ +name: BEAST +category: Biology +description: Bayesian MCMC phylogenetic analysis of molecular sequences for reconstructing phylogenies and testing evolutionary hypotheses. +homepage: http://beast2.org/ +icon: icon.jpg +hidden: true diff --git a/apps/BEDOPS/form.yml.erb b/apps/BEDOPS/form.yml.erb new file mode 100644 index 00000000..6c814b6b --- /dev/null +++ b/apps/BEDOPS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bedops_module'] = { + 'widget' => 'module_load', + 'module' => "BEDOPS", + 'label' => "BEDOPS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bedops_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BEDOPS/icon.png b/apps/BEDOPS/icon.png new file mode 100644 index 00000000..d73f9f53 Binary files /dev/null and b/apps/BEDOPS/icon.png differ diff --git a/apps/BEDOPS/manifest.yml b/apps/BEDOPS/manifest.yml new file mode 100644 index 00000000..edb85f87 --- /dev/null +++ b/apps/BEDOPS/manifest.yml @@ -0,0 +1,6 @@ +name: BEDOPS +category: Biology +description: BEDOPS is an open-source command-line toolkit that performs highly efficient and scalable Boolean and other set operations, statistical calculations, archiving, conversion and other management of genomic data of arbitrary scale. +homepage: https://github.com/bedops/bedops +icon: icon.png +hidden: true diff --git a/apps/BEDTools/form.yml.erb b/apps/BEDTools/form.yml.erb new file mode 100644 index 00000000..a3215fb7 --- /dev/null +++ b/apps/BEDTools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bedtools_module'] = { + 'widget' => 'module_load', + 'module' => "BEDTools", + 'label' => "BEDTools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bedtools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BEDTools/icon.png b/apps/BEDTools/icon.png new file mode 100644 index 00000000..1474247c Binary files /dev/null and b/apps/BEDTools/icon.png differ diff --git a/apps/BEDTools/manifest.yml b/apps/BEDTools/manifest.yml new file mode 100644 index 00000000..5e7f19a6 --- /dev/null +++ b/apps/BEDTools/manifest.yml @@ -0,0 +1,6 @@ +name: BEDTools +category: Biology +description: The BEDTools utilities allow one to address common genomics tasks such as finding feature overlaps and computing coverage. +homepage: https://github.com/arq5x/bedtools2 +icon: icon.png +hidden: true diff --git a/apps/BGC-Bayesian-genomic-clines/form.yml.erb b/apps/BGC-Bayesian-genomic-clines/form.yml.erb new file mode 100644 index 00000000..fbf9e70e --- /dev/null +++ b/apps/BGC-Bayesian-genomic-clines/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bgc_bayesian_genomic_clines_module'] = { + 'widget' => 'module_load', + 'module' => "BGC-Bayesian-genomic-clines", + 'label' => "BGC-Bayesian-genomic-clines Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bgc_bayesian_genomic_clines_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BGC-Bayesian-genomic-clines/manifest.yml b/apps/BGC-Bayesian-genomic-clines/manifest.yml new file mode 100644 index 00000000..f673a52b --- /dev/null +++ b/apps/BGC-Bayesian-genomic-clines/manifest.yml @@ -0,0 +1,5 @@ +name: BGC-Bayesian-genomic-clines +category: Biology +description: Collection of code for Bayesian genomic cline analyses. +homepage: https://github.com/zgompert/BGC-Bayesian-genomic-clines +hidden: true diff --git a/apps/BLAST/form.yml.erb b/apps/BLAST/form.yml.erb new file mode 100644 index 00000000..ea8c8071 --- /dev/null +++ b/apps/BLAST/form.yml.erb @@ -0,0 +1,29 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['blast_module'] = { + 'widget' => 'module_load', + 'module' => "BLAST", + 'label' => "BLAST Module" + } + new_form['blastdb_module'] = { + 'widget' => 'module_load', + 'module' => "BLASTDB", + 'label' => "BLASTDB Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{blast_module} + module load #{blastdb_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BLAST/icon.png b/apps/BLAST/icon.png new file mode 100644 index 00000000..a3ee7673 Binary files /dev/null and b/apps/BLAST/icon.png differ diff --git a/apps/BLAST/manifest.yml b/apps/BLAST/manifest.yml new file mode 100644 index 00000000..bf093f54 --- /dev/null +++ b/apps/BLAST/manifest.yml @@ -0,0 +1,6 @@ +name: BLAST +category: Biology +description: Basic Local Alignment Search Tool (BLAST) for comparing biological sequences. +homepage: http://blast.ncbi.nlm.nih.gov/ +icon: icon.png +hidden: true diff --git a/apps/BLAT/form.yml.erb b/apps/BLAT/form.yml.erb new file mode 100644 index 00000000..4d6ddaec --- /dev/null +++ b/apps/BLAT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['blat_module'] = { + 'widget' => 'module_load', + 'module' => "BLAT", + 'label' => "BLAT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{blat_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BLAT/manifest.yml b/apps/BLAT/manifest.yml new file mode 100644 index 00000000..77c84731 --- /dev/null +++ b/apps/BLAT/manifest.yml @@ -0,0 +1,5 @@ +name: BLAT +category: Biology +description: BLAT on DNA is designed to quickly find sequences of 95% and greater similarity of length 25 bases or more. +homepage: http://genome.ucsc.edu/FAQ/FAQblat.html +hidden: true diff --git a/apps/BOLT-LMM/form.yml.erb b/apps/BOLT-LMM/form.yml.erb new file mode 100644 index 00000000..4ffb95b8 --- /dev/null +++ b/apps/BOLT-LMM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bolt_lmm_module'] = { + 'widget' => 'module_load', + 'module' => "BOLT-LMM", + 'label' => "BOLT-LMM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bolt_lmm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BOLT-LMM/manifest.yml b/apps/BOLT-LMM/manifest.yml new file mode 100644 index 00000000..43f0682d --- /dev/null +++ b/apps/BOLT-LMM/manifest.yml @@ -0,0 +1,5 @@ +name: BOLT-LMM +category: Biology +description: The BOLT-LMM algorithm computes statistics for testing association between phenotype and genotypes using a linear mixed model (LMM) [1]. +homepage: https://storage.googleapis.com/broad-alkesgroup-public/BOLT-LMM/BOLT-LMM_manual.html +hidden: true diff --git a/apps/BRAKER/form.yml.erb b/apps/BRAKER/form.yml.erb new file mode 100644 index 00000000..e6dc1e27 --- /dev/null +++ b/apps/BRAKER/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['braker_module'] = { + 'widget' => 'module_load', + 'module' => "BRAKER", + 'label' => "BRAKER Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{braker_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BRAKER/icon.jpg b/apps/BRAKER/icon.jpg new file mode 100644 index 00000000..e638f246 Binary files /dev/null and b/apps/BRAKER/icon.jpg differ diff --git a/apps/BRAKER/manifest.yml b/apps/BRAKER/manifest.yml new file mode 100644 index 00000000..a18212dc --- /dev/null +++ b/apps/BRAKER/manifest.yml @@ -0,0 +1,6 @@ +name: BRAKER +category: Biology +description: Pipeline for fully automated prediction of protein coding genes with GeneMark-ES/ET and AUGUSTUS in novel eukaryotic genomes. +homepage: https://github.com/Gaius-Augustus/BRAKER +icon: icon.jpg +hidden: true diff --git a/apps/BUSCO/form.yml.erb b/apps/BUSCO/form.yml.erb new file mode 100644 index 00000000..412e2ea3 --- /dev/null +++ b/apps/BUSCO/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['busco_module'] = { + 'widget' => 'module_load', + 'module' => "BUSCO", + 'label' => "BUSCO Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{busco_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BUSCO/icon.png b/apps/BUSCO/icon.png new file mode 100644 index 00000000..824e7627 Binary files /dev/null and b/apps/BUSCO/icon.png differ diff --git a/apps/BUSCO/manifest.yml b/apps/BUSCO/manifest.yml new file mode 100644 index 00000000..775bbf83 --- /dev/null +++ b/apps/BUSCO/manifest.yml @@ -0,0 +1,6 @@ +name: BUSCO +category: Biology +description: Assessing genome assembly and annotation completeness with Benchmarking Universal Single-Copy Orthologs. +homepage: http://busco.ezlab.org +icon: icon.png +hidden: true diff --git a/apps/BWA/form.yml.erb b/apps/BWA/form.yml.erb new file mode 100644 index 00000000..e4e9a73a --- /dev/null +++ b/apps/BWA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bwa_module'] = { + 'widget' => 'module_load', + 'module' => "BWA", + 'label' => "BWA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bwa_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BWA/manifest.yml b/apps/BWA/manifest.yml new file mode 100644 index 00000000..a9e5921c --- /dev/null +++ b/apps/BWA/manifest.yml @@ -0,0 +1,5 @@ +name: BWA +category: Biology +description: Burrows-Wheeler Aligner (BWA) is an efficient program that aligns relatively short nucleotide sequences against a long reference sequence such as the human genome. +homepage: http://bio-bwa.sourceforge.net/ +hidden: true diff --git a/apps/BamTools/form.yml.erb b/apps/BamTools/form.yml.erb new file mode 100644 index 00000000..8ca3099a --- /dev/null +++ b/apps/BamTools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bamtools_module'] = { + 'widget' => 'module_load', + 'module' => "BamTools", + 'label' => "BamTools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bamtools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BamTools/manifest.yml b/apps/BamTools/manifest.yml new file mode 100644 index 00000000..d39b8b39 --- /dev/null +++ b/apps/BamTools/manifest.yml @@ -0,0 +1,5 @@ +name: BamTools +category: Biology +description: BamTools provides both a programmer's API and an end-user's toolkit for handling BAM files. +homepage: https://github.com/pezmaster31/bamtools +hidden: true diff --git a/apps/Bandage/form.yml.erb b/apps/Bandage/form.yml.erb new file mode 100644 index 00000000..4fdb8b6d --- /dev/null +++ b/apps/Bandage/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bandage_module'] = { + 'widget' => 'module_load', + 'module' => "Bandage", + 'label' => "Bandage Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bandage_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bandage/icon.png b/apps/Bandage/icon.png new file mode 100644 index 00000000..1e404715 Binary files /dev/null and b/apps/Bandage/icon.png differ diff --git a/apps/Bandage/manifest.yml b/apps/Bandage/manifest.yml new file mode 100644 index 00000000..df70179f --- /dev/null +++ b/apps/Bandage/manifest.yml @@ -0,0 +1,6 @@ +name: Bandage +category: Biology +description: Bandage is a program for visualising de novo assembly graphs. +homepage: http://rrwick.github.io/Bandage/ +icon: icon.png +hidden: true diff --git a/apps/Basilisk/form.yml.erb b/apps/Basilisk/form.yml.erb new file mode 100644 index 00000000..ea009b12 --- /dev/null +++ b/apps/Basilisk/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['basilisk_module'] = { + 'widget' => 'module_load', + 'module' => "Basilisk", + 'label' => "Basilisk Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{basilisk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Basilisk/icon.png b/apps/Basilisk/icon.png new file mode 100644 index 00000000..f0fa3d15 Binary files /dev/null and b/apps/Basilisk/icon.png differ diff --git a/apps/Basilisk/manifest.yml b/apps/Basilisk/manifest.yml new file mode 100644 index 00000000..b86da255 --- /dev/null +++ b/apps/Basilisk/manifest.yml @@ -0,0 +1,6 @@ +name: Basilisk +category: Mathematics +description: Basilisk is a Free Software program for the solution of partial differential equations on adaptive Cartesian meshes. +homepage: basilisk.fr +icon: icon.png +hidden: true diff --git a/apps/BayPass/form.yml.erb b/apps/BayPass/form.yml.erb new file mode 100644 index 00000000..71c6615d --- /dev/null +++ b/apps/BayPass/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['baypass_module'] = { + 'widget' => 'module_load', + 'module' => "BayPass", + 'label' => "BayPass Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{baypass_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BayPass/manifest.yml b/apps/BayPass/manifest.yml new file mode 100644 index 00000000..e200c271 --- /dev/null +++ b/apps/BayPass/manifest.yml @@ -0,0 +1,5 @@ +name: BayPass +category: Biology +description: Genome-Wide Scan for Adaptive Differentiation and Association Analysis with population-specific covariables. +homepage: https://forge.inrae.fr/mathieu.gautier/baypass_public +hidden: true diff --git a/apps/BayeScan/form.yml.erb b/apps/BayeScan/form.yml.erb new file mode 100644 index 00000000..a07541dd --- /dev/null +++ b/apps/BayeScan/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bayescan_module'] = { + 'widget' => 'module_load', + 'module' => "BayeScan", + 'label' => "BayeScan Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bayescan_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BayeScan/manifest.yml b/apps/BayeScan/manifest.yml new file mode 100644 index 00000000..62b86241 --- /dev/null +++ b/apps/BayeScan/manifest.yml @@ -0,0 +1,5 @@ +name: BayeScan +category: Biology +description: Identify candidate loci under natural selection from genetic data, using differences in allele frequencies between populations. +homepage: http://cmpg.unibe.ch/software/BayeScan/ +hidden: true diff --git a/apps/BayesAss/form.yml.erb b/apps/BayesAss/form.yml.erb new file mode 100644 index 00000000..6d40c226 --- /dev/null +++ b/apps/BayesAss/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bayesass_module'] = { + 'widget' => 'module_load', + 'module' => "BayesAss", + 'label' => "BayesAss Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bayesass_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BayesAss/manifest.yml b/apps/BayesAss/manifest.yml new file mode 100644 index 00000000..c00f6505 --- /dev/null +++ b/apps/BayesAss/manifest.yml @@ -0,0 +1,5 @@ +name: BayesAss +category: Biology +description: Program for inference of recent immigration rates between populations using unlinked multilocus genotypes. +homepage: http://www.rannala.org/?page_id=245 +hidden: true diff --git a/apps/Beagle/form.yml.erb b/apps/Beagle/form.yml.erb new file mode 100644 index 00000000..512b3715 --- /dev/null +++ b/apps/Beagle/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['beagle_module'] = { + 'widget' => 'module_load', + 'module' => "Beagle", + 'label' => "Beagle Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{beagle_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Beagle/manifest.yml b/apps/Beagle/manifest.yml new file mode 100644 index 00000000..3152fb2c --- /dev/null +++ b/apps/Beagle/manifest.yml @@ -0,0 +1,5 @@ +name: Beagle +category: Biology +description: Package for phasing genotypes and for imputing ungenotyped markers. +homepage: https://faculty.washington.edu/browning/beagle/beagle.html +hidden: true diff --git a/apps/BiG-SCAPE/form.yml.erb b/apps/BiG-SCAPE/form.yml.erb new file mode 100644 index 00000000..4e02e1ef --- /dev/null +++ b/apps/BiG-SCAPE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['big_scape_module'] = { + 'widget' => 'module_load', + 'module' => "BiG-SCAPE", + 'label' => "BiG-SCAPE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{big_scape_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BiG-SCAPE/icon.png b/apps/BiG-SCAPE/icon.png new file mode 100644 index 00000000..b9d5acee Binary files /dev/null and b/apps/BiG-SCAPE/icon.png differ diff --git a/apps/BiG-SCAPE/manifest.yml b/apps/BiG-SCAPE/manifest.yml new file mode 100644 index 00000000..1d49bca3 --- /dev/null +++ b/apps/BiG-SCAPE/manifest.yml @@ -0,0 +1,6 @@ +name: BiG-SCAPE +category: Biology +description: Constructs sequence similarity networks of Biosynthetic Gene Clusters (BGCs) and groups them into Gene Cluster Families (GCFs). +homepage: https://bigscape-corason.secondarymetabolites.org/index.html +icon: icon.png +hidden: true diff --git a/apps/Bifrost/form.yml.erb b/apps/Bifrost/form.yml.erb new file mode 100644 index 00000000..3b60c62e --- /dev/null +++ b/apps/Bifrost/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bifrost_module'] = { + 'widget' => 'module_load', + 'module' => "Bifrost", + 'label' => "Bifrost Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bifrost_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bifrost/manifest.yml b/apps/Bifrost/manifest.yml new file mode 100644 index 00000000..a5708d99 --- /dev/null +++ b/apps/Bifrost/manifest.yml @@ -0,0 +1,5 @@ +name: Bifrost +category: Biology +description: Highly parallel construction, indexing and querying of colored and compacted de Bruijn graphs. +homepage: https://github.com/pmelsted/bifrost +hidden: true diff --git a/apps/Bio-DB-BigFile/form.yml.erb b/apps/Bio-DB-BigFile/form.yml.erb new file mode 100644 index 00000000..3a04f6a5 --- /dev/null +++ b/apps/Bio-DB-BigFile/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bio_db_bigfile_module'] = { + 'widget' => 'module_load', + 'module' => "Bio-DB-BigFile", + 'label' => "Bio-DB-BigFile Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bio_db_bigfile_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bio-DB-BigFile/manifest.yml b/apps/Bio-DB-BigFile/manifest.yml new file mode 100644 index 00000000..c9705d66 --- /dev/null +++ b/apps/Bio-DB-BigFile/manifest.yml @@ -0,0 +1,5 @@ +name: Bio-DB-BigFile +category: Biology +description: Read BigWig and BigBed genome feature databases. +homepage: https://metacpan.org/release/Bio-BigFile +hidden: true diff --git a/apps/Bio-DB-HTS/form.yml.erb b/apps/Bio-DB-HTS/form.yml.erb new file mode 100644 index 00000000..6f675903 --- /dev/null +++ b/apps/Bio-DB-HTS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bio_db_hts_module'] = { + 'widget' => 'module_load', + 'module' => "Bio-DB-HTS", + 'label' => "Bio-DB-HTS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bio_db_hts_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bio-DB-HTS/manifest.yml b/apps/Bio-DB-HTS/manifest.yml new file mode 100644 index 00000000..c1841e0c --- /dev/null +++ b/apps/Bio-DB-HTS/manifest.yml @@ -0,0 +1,5 @@ +name: Bio-DB-HTS +category: Biology +description: Read files using HTSlib including BAM/CRAM, Tabix and BCF database files. +homepage: https://metacpan.org/release/Bio-DB-HTS +hidden: true diff --git a/apps/BioPP/form.yml.erb b/apps/BioPP/form.yml.erb new file mode 100644 index 00000000..d0256e73 --- /dev/null +++ b/apps/BioPP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['biopp_module'] = { + 'widget' => 'module_load', + 'module' => "BioPP", + 'label' => "BioPP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{biopp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/BioPP/icon.png b/apps/BioPP/icon.png new file mode 100644 index 00000000..faf44eb9 Binary files /dev/null and b/apps/BioPP/icon.png differ diff --git a/apps/BioPP/manifest.yml b/apps/BioPP/manifest.yml new file mode 100644 index 00000000..f11c2d16 --- /dev/null +++ b/apps/BioPP/manifest.yml @@ -0,0 +1,6 @@ +name: BioPP +category: Biology +description: Bio++ is a set of C++ libraries for Bioinformatics, including sequence analysis, phylogenetics, molecular evolution and population genetics. +homepage: https://github.com/BioPP/bpp-core +icon: icon.png +hidden: true diff --git a/apps/Bismark/form.yml.erb b/apps/Bismark/form.yml.erb new file mode 100644 index 00000000..734e7101 --- /dev/null +++ b/apps/Bismark/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bismark_module'] = { + 'widget' => 'module_load', + 'module' => "Bismark", + 'label' => "Bismark Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bismark_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bismark/icon.png b/apps/Bismark/icon.png new file mode 100644 index 00000000..16ce4402 Binary files /dev/null and b/apps/Bismark/icon.png differ diff --git a/apps/Bismark/manifest.yml b/apps/Bismark/manifest.yml new file mode 100644 index 00000000..e5eb7a41 --- /dev/null +++ b/apps/Bismark/manifest.yml @@ -0,0 +1,6 @@ +name: Bismark +category: Biology +description: A tool to map bisulfite converted sequence reads and determine cytosine methylation states. +homepage: http://www.bioinformatics.babraham.ac.uk/projects/bismark/ +icon: icon.png +hidden: true diff --git a/apps/Bowtie/form.yml.erb b/apps/Bowtie/form.yml.erb new file mode 100644 index 00000000..d0aa5e41 --- /dev/null +++ b/apps/Bowtie/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bowtie_module'] = { + 'widget' => 'module_load', + 'module' => "Bowtie", + 'label' => "Bowtie Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bowtie_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bowtie/icon.png b/apps/Bowtie/icon.png new file mode 100644 index 00000000..381bcd9a Binary files /dev/null and b/apps/Bowtie/icon.png differ diff --git a/apps/Bowtie/manifest.yml b/apps/Bowtie/manifest.yml new file mode 100644 index 00000000..1645df85 --- /dev/null +++ b/apps/Bowtie/manifest.yml @@ -0,0 +1,6 @@ +name: Bowtie +category: Biology +description: Ultrafast, memory-efficient short read aligner. +homepage: http://bowtie-bio.sourceforge.net/index.shtml +icon: icon.png +hidden: true diff --git a/apps/Bowtie2/form.yml.erb b/apps/Bowtie2/form.yml.erb new file mode 100644 index 00000000..62f1932a --- /dev/null +++ b/apps/Bowtie2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bowtie2_module'] = { + 'widget' => 'module_load', + 'module' => "Bowtie2", + 'label' => "Bowtie2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bowtie2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bowtie2/icon.png b/apps/Bowtie2/icon.png new file mode 100644 index 00000000..381bcd9a Binary files /dev/null and b/apps/Bowtie2/icon.png differ diff --git a/apps/Bowtie2/manifest.yml b/apps/Bowtie2/manifest.yml new file mode 100644 index 00000000..82068a16 --- /dev/null +++ b/apps/Bowtie2/manifest.yml @@ -0,0 +1,6 @@ +name: Bowtie2 +category: Biology +description: Ultrafast and memory-efficient tool for aligning sequencing reads to long reference sequences. +homepage: http://bowtie-bio.sourceforge.net/bowtie2/index.shtml +icon: icon.png +hidden: true diff --git a/apps/Bracken/form.yml.erb b/apps/Bracken/form.yml.erb new file mode 100644 index 00000000..8c09bfbd --- /dev/null +++ b/apps/Bracken/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bracken_module'] = { + 'widget' => 'module_load', + 'module' => "Bracken", + 'label' => "Bracken Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bracken_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Bracken/manifest.yml b/apps/Bracken/manifest.yml new file mode 100644 index 00000000..96362326 --- /dev/null +++ b/apps/Bracken/manifest.yml @@ -0,0 +1,5 @@ +name: Bracken +category: Biology +description: Hghly accurate statistical method that computes the abundance of species in DNA sequences from a metagenomics sample. +homepage: https://ccb.jhu.edu/software/bracken/ +hidden: true diff --git a/apps/CD-HIT/form.yml.erb b/apps/CD-HIT/form.yml.erb new file mode 100644 index 00000000..c5883627 --- /dev/null +++ b/apps/CD-HIT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cd_hit_module'] = { + 'widget' => 'module_load', + 'module' => "CD-HIT", + 'label' => "CD-HIT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cd_hit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CD-HIT/icon.gif b/apps/CD-HIT/icon.gif new file mode 100644 index 00000000..7ce4792a Binary files /dev/null and b/apps/CD-HIT/icon.gif differ diff --git a/apps/CD-HIT/manifest.yml b/apps/CD-HIT/manifest.yml new file mode 100644 index 00000000..cfedc6db --- /dev/null +++ b/apps/CD-HIT/manifest.yml @@ -0,0 +1,6 @@ +name: CD-HIT +category: Biology +description: CD-HIT is a very widely used program for clustering and comparing protein or nucleotide sequences. +homepage: http://weizhong-lab.ucsd.edu/cd-hit/ +icon: icon.gif +hidden: true diff --git a/apps/CDO/form.yml.erb b/apps/CDO/form.yml.erb new file mode 100644 index 00000000..1bb550e6 --- /dev/null +++ b/apps/CDO/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cdo_module'] = { + 'widget' => 'module_load', + 'module' => "CDO", + 'label' => "CDO Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cdo_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CDO/manifest.yml b/apps/CDO/manifest.yml new file mode 100644 index 00000000..2a985c56 --- /dev/null +++ b/apps/CDO/manifest.yml @@ -0,0 +1,5 @@ +name: CDO +category: Climate Science +description: CDO is a collection of command line Operators to manipulate and analyse Climate and NWP model Data. +homepage: https://code.zmaw.de/projects/cdo +hidden: true diff --git a/apps/CNVnator/form.yml.erb b/apps/CNVnator/form.yml.erb new file mode 100644 index 00000000..3b88b6d3 --- /dev/null +++ b/apps/CNVnator/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cnvnator_module'] = { + 'widget' => 'module_load', + 'module' => "CNVnator", + 'label' => "CNVnator Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cnvnator_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CNVnator/manifest.yml b/apps/CNVnator/manifest.yml new file mode 100644 index 00000000..00e27ccc --- /dev/null +++ b/apps/CNVnator/manifest.yml @@ -0,0 +1,5 @@ +name: CNVnator +category: Biology +description: Copy Number Variation discovery and genotyping from depth of read mapping. +homepage: http://sv.gersteinlab.org +hidden: true diff --git a/apps/CNVpytor/form.yml.erb b/apps/CNVpytor/form.yml.erb new file mode 100644 index 00000000..938e7cfe --- /dev/null +++ b/apps/CNVpytor/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cnvpytor_module'] = { + 'widget' => 'module_load', + 'module' => "CNVpytor", + 'label' => "CNVpytor Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cnvpytor_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CNVpytor/icon.png b/apps/CNVpytor/icon.png new file mode 100644 index 00000000..32a5e1af Binary files /dev/null and b/apps/CNVpytor/icon.png differ diff --git a/apps/CNVpytor/manifest.yml b/apps/CNVpytor/manifest.yml new file mode 100644 index 00000000..e74598d3 --- /dev/null +++ b/apps/CNVpytor/manifest.yml @@ -0,0 +1,6 @@ +name: CNVpytor +category: Biology +description: Python package and command line tool for CNV/CNA analysis from depth-of-coverage by mapped read. +homepage: https://github.com/abyzovlab/CNVpytor +icon: icon.png +hidden: true diff --git a/apps/COMSOL/form.yml.erb b/apps/COMSOL/form.yml.erb new file mode 100644 index 00000000..2b8596e6 --- /dev/null +++ b/apps/COMSOL/form.yml.erb @@ -0,0 +1,46 @@ +<%# AI generated %> +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['comsol_module'] = { + 'widget' => 'module_load', + 'module' => "COMSOL", + 'label' => "COMSOL Module" + } + new_form['comsol_input'] = { + 'widget' => 'text_field', + 'label' => "Input File", + 'help' => "Path to your COMSOL model file (.mph). Use the full path, e.g. /nesi/project/nesi99999/my_model.mph" + } + new_form['comsol_output'] = { + 'widget' => 'text_field', + 'label' => "Output File", + 'help' => "Path for the output file (.mph), e.g. /nesi/project/nesi99999/my_model_out.mph. If left blank, the input file will be overwritten with results." + } + end + new_form[k] = v +end + +base['form'] = new_form + +ntasks = cores_advanced_1.to_i > 1 ? cores_advanced_1.to_i : cores_simple.to_i +cpus = cores_advanced_2.to_i > 1 ? cores_advanced_2.to_i : 1 +has_gpu = [gpu_any, gpu_genoa, gpu_milan].any? { |g| g.to_s != '' && g.to_s != 'None' } +output_flag = comsol_output.to_s.strip.empty? ? '' : " -outputfile #{comsol_output}" +if ntasks > 1 || cpus > 1 + app_cmd = "comsol batch -mpibootstrap slurm -inputfile #{comsol_input}#{output_flag}" +else + app_cmd = "comsol batch -inputfile #{comsol_input}#{output_flag}" +end + +base['script'] = base['script'].rstrip + "\n\n" + [ + "module -q purge", + "module load #{comsol_module}", + app_cmd +].join("\n") + "\n" +%> +<%= base.to_yaml -%> diff --git a/apps/COMSOL/icon.svg b/apps/COMSOL/icon.svg new file mode 100644 index 00000000..425fab52 --- /dev/null +++ b/apps/COMSOL/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/apps/COMSOL/manifest.yml b/apps/COMSOL/manifest.yml new file mode 100644 index 00000000..c9fa788a --- /dev/null +++ b/apps/COMSOL/manifest.yml @@ -0,0 +1,8 @@ +# AI generated +category: Chemistry +description: COMSOL is a multiphysics solver that provides a unified workflow for + electrical, mechanical, fluid, and chemical applications. +hidden: true +homepage: https://www.comsol.com/ +icon: icon.png +name: COMSOL diff --git a/apps/CONCOCT/form.yml.erb b/apps/CONCOCT/form.yml.erb new file mode 100644 index 00000000..cda5076b --- /dev/null +++ b/apps/CONCOCT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['concoct_module'] = { + 'widget' => 'module_load', + 'module' => "CONCOCT", + 'label' => "CONCOCT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{concoct_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CONCOCT/manifest.yml b/apps/CONCOCT/manifest.yml new file mode 100644 index 00000000..b743818e --- /dev/null +++ b/apps/CONCOCT/manifest.yml @@ -0,0 +1,5 @@ +name: CONCOCT +category: Biology +description: Program for unsupervised binning of metagenomic contigs by using nucleotide composition, coverage data in multiple samples and linkage data from paired end reads. +homepage: https://concoct.readthedocs.io +hidden: true diff --git a/apps/CP2K/form.yml.erb b/apps/CP2K/form.yml.erb new file mode 100644 index 00000000..22808183 --- /dev/null +++ b/apps/CP2K/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cp2k_module'] = { + 'widget' => 'module_load', + 'module' => "CP2K", + 'label' => "CP2K Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cp2k_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CP2K/icon.png b/apps/CP2K/icon.png new file mode 100644 index 00000000..e0b2cb6a Binary files /dev/null and b/apps/CP2K/icon.png differ diff --git a/apps/CP2K/manifest.yml b/apps/CP2K/manifest.yml new file mode 100644 index 00000000..a0f4f03a --- /dev/null +++ b/apps/CP2K/manifest.yml @@ -0,0 +1,6 @@ +name: CP2K +category: Chemistry +description: CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular simulations of solid state, liquid, molecular and biological systems. +homepage: https://www.cp2k.org/ +icon: icon.png +hidden: true diff --git a/apps/CPMD/form.yml.erb b/apps/CPMD/form.yml.erb new file mode 100644 index 00000000..a6cd5ac3 --- /dev/null +++ b/apps/CPMD/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cpmd_module'] = { + 'widget' => 'module_load', + 'module' => "CPMD", + 'label' => "CPMD Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cpmd_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CPMD/icon.jpg b/apps/CPMD/icon.jpg new file mode 100644 index 00000000..6a67467c Binary files /dev/null and b/apps/CPMD/icon.jpg differ diff --git a/apps/CPMD/manifest.yml b/apps/CPMD/manifest.yml new file mode 100644 index 00000000..406aac07 --- /dev/null +++ b/apps/CPMD/manifest.yml @@ -0,0 +1,6 @@ +name: CPMD +category: Chemistry +description: The CPMD code is a parallelized plane wave / pseudopotential implementation of DFT, particularly designed for ab-initio molecular dynamics. +homepage: https://github.com/CPMD-code +icon: icon.jpg +hidden: true diff --git a/apps/CRABS/form.yml.erb b/apps/CRABS/form.yml.erb new file mode 100644 index 00000000..ccd132d1 --- /dev/null +++ b/apps/CRABS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['crabs_module'] = { + 'widget' => 'module_load', + 'module' => "CRABS", + 'label' => "CRABS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{crabs_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CRABS/icon.png b/apps/CRABS/icon.png new file mode 100644 index 00000000..e5528af9 Binary files /dev/null and b/apps/CRABS/icon.png differ diff --git a/apps/CRABS/manifest.yml b/apps/CRABS/manifest.yml new file mode 100644 index 00000000..c2e3a77e --- /dev/null +++ b/apps/CRABS/manifest.yml @@ -0,0 +1,6 @@ +name: CRABS +category: Biology +description: Creating Reference databases for Amplicon-Based Sequencing. +homepage: https://github.com/gjeunen/reference_database_creator +icon: icon.png +hidden: true diff --git a/apps/CRAMINO/form.yml.erb b/apps/CRAMINO/form.yml.erb new file mode 100644 index 00000000..96666906 --- /dev/null +++ b/apps/CRAMINO/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cramino_module'] = { + 'widget' => 'module_load', + 'module' => "CRAMINO", + 'label' => "CRAMINO Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cramino_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CRAMINO/manifest.yml b/apps/CRAMINO/manifest.yml new file mode 100644 index 00000000..3312b03b --- /dev/null +++ b/apps/CRAMINO/manifest.yml @@ -0,0 +1,5 @@ +name: CRAMINO +category: Biology +description: A tool for quick quality assessment of cram and bam files, intended for long read sequencing. +homepage: https://github.com/wdecoster/cramino +hidden: true diff --git a/apps/CREST/form.yml.erb b/apps/CREST/form.yml.erb new file mode 100644 index 00000000..46a69bdc --- /dev/null +++ b/apps/CREST/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['crest_module'] = { + 'widget' => 'module_load', + 'module' => "CREST", + 'label' => "CREST Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{crest_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CREST/icon.jpg b/apps/CREST/icon.jpg new file mode 100644 index 00000000..c0f317af Binary files /dev/null and b/apps/CREST/icon.jpg differ diff --git a/apps/CREST/manifest.yml b/apps/CREST/manifest.yml new file mode 100644 index 00000000..f1da3fbe --- /dev/null +++ b/apps/CREST/manifest.yml @@ -0,0 +1,6 @@ +name: CREST +category: Chemistry +description: CREST is an utility/driver program for the xtb program. +homepage: https://xtb-docs.readthedocs.io/en/latest/crest.html +icon: icon.jpg +hidden: true diff --git a/apps/Canu/form.yml.erb b/apps/Canu/form.yml.erb new file mode 100644 index 00000000..2c31b3b7 --- /dev/null +++ b/apps/Canu/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['canu_module'] = { + 'widget' => 'module_load', + 'module' => "Canu", + 'label' => "Canu Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{canu_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Canu/manifest.yml b/apps/Canu/manifest.yml new file mode 100644 index 00000000..95f0ee9a --- /dev/null +++ b/apps/Canu/manifest.yml @@ -0,0 +1,5 @@ +name: Canu +category: Biology +description: Sequence assembler designed for high-noise single-molecule sequencing. +homepage: https://canu.readthedocs.io +hidden: true diff --git a/apps/CellRanger/form.yml.erb b/apps/CellRanger/form.yml.erb new file mode 100644 index 00000000..1ce98a27 --- /dev/null +++ b/apps/CellRanger/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cellranger_module'] = { + 'widget' => 'module_load', + 'module' => "CellRanger", + 'label' => "CellRanger Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cellranger_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CellRanger/icon.png b/apps/CellRanger/icon.png new file mode 100644 index 00000000..c3d243ff Binary files /dev/null and b/apps/CellRanger/icon.png differ diff --git a/apps/CellRanger/manifest.yml b/apps/CellRanger/manifest.yml new file mode 100644 index 00000000..be38799f --- /dev/null +++ b/apps/CellRanger/manifest.yml @@ -0,0 +1,6 @@ +name: CellRanger +category: Biology +description: Cell Ranger is a set of analysis pipelines that process Chromium single-cell RNA-seq output to align reads, generate gene-cell matrices and perform clustering and gene expression analysis. +homepage: https://support.10xgenomics.com/single-cell-gene-expression/software/pipelines/latest/what-is-cell-ranger +icon: icon.png +hidden: true diff --git a/apps/Centrifuge/form.yml.erb b/apps/Centrifuge/form.yml.erb new file mode 100644 index 00000000..8f5378b3 --- /dev/null +++ b/apps/Centrifuge/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['centrifuge_module'] = { + 'widget' => 'module_load', + 'module' => "Centrifuge", + 'label' => "Centrifuge Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{centrifuge_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Centrifuge/manifest.yml b/apps/Centrifuge/manifest.yml new file mode 100644 index 00000000..4fab9574 --- /dev/null +++ b/apps/Centrifuge/manifest.yml @@ -0,0 +1,5 @@ +name: Centrifuge +category: Biology +description: Classifier for metagenomic sequences. +homepage: https://ccb.jhu.edu/software/centrifuge/ +hidden: true diff --git a/apps/Check/form.yml.erb b/apps/Check/form.yml.erb new file mode 100644 index 00000000..0e9322c6 --- /dev/null +++ b/apps/Check/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['check_module'] = { + 'widget' => 'module_load', + 'module' => "Check", + 'label' => "Check Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{check_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Check/manifest.yml b/apps/Check/manifest.yml new file mode 100644 index 00000000..fc575d59 --- /dev/null +++ b/apps/Check/manifest.yml @@ -0,0 +1,5 @@ +name: Check +category: Others +description: Check is a unit testing framework for C. +homepage: https://libcheck.github.io/check/ +hidden: true diff --git a/apps/CheckM/form.yml.erb b/apps/CheckM/form.yml.erb new file mode 100644 index 00000000..d80cba8e --- /dev/null +++ b/apps/CheckM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['checkm_module'] = { + 'widget' => 'module_load', + 'module' => "CheckM", + 'label' => "CheckM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{checkm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CheckM/manifest.yml b/apps/CheckM/manifest.yml new file mode 100644 index 00000000..52943c94 --- /dev/null +++ b/apps/CheckM/manifest.yml @@ -0,0 +1,5 @@ +name: CheckM +category: Biology +description: CheckM provides a set of tools for assessing the quality of genomes recovered from isolates, single cells, or metagenomes. +homepage: https://github.com/Ecogenomics/CheckM +hidden: true diff --git a/apps/CheckM2/form.yml.erb b/apps/CheckM2/form.yml.erb new file mode 100644 index 00000000..cef2c26f --- /dev/null +++ b/apps/CheckM2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['checkm2_module'] = { + 'widget' => 'module_load', + 'module' => "CheckM2", + 'label' => "CheckM2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{checkm2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CheckM2/manifest.yml b/apps/CheckM2/manifest.yml new file mode 100644 index 00000000..51f693c5 --- /dev/null +++ b/apps/CheckM2/manifest.yml @@ -0,0 +1,5 @@ +name: CheckM2 +category: Biology +description: Rapid assessment of genome bin quality using machine learning. +homepage: https://github.com/chklovski/CheckM2 +hidden: true diff --git a/apps/CheckV/form.yml.erb b/apps/CheckV/form.yml.erb new file mode 100644 index 00000000..20850ea1 --- /dev/null +++ b/apps/CheckV/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['checkv_module'] = { + 'widget' => 'module_load', + 'module' => "CheckV", + 'label' => "CheckV Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{checkv_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CheckV/icon.jpg b/apps/CheckV/icon.jpg new file mode 100644 index 00000000..f7b868dd Binary files /dev/null and b/apps/CheckV/icon.jpg differ diff --git a/apps/CheckV/manifest.yml b/apps/CheckV/manifest.yml new file mode 100644 index 00000000..e9b9e9c7 --- /dev/null +++ b/apps/CheckV/manifest.yml @@ -0,0 +1,6 @@ +name: CheckV +category: Biology +description: Assess the quality of metagenome-assembled viral genomes. +homepage: https://jgi.doe.gov/data-and-tools/checkv/ +icon: icon.jpg +hidden: true diff --git a/apps/Circlator/form.yml.erb b/apps/Circlator/form.yml.erb new file mode 100644 index 00000000..d32f9738 --- /dev/null +++ b/apps/Circlator/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['circlator_module'] = { + 'widget' => 'module_load', + 'module' => "Circlator", + 'label' => "Circlator Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{circlator_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Circlator/manifest.yml b/apps/Circlator/manifest.yml new file mode 100644 index 00000000..e99fb11c --- /dev/null +++ b/apps/Circlator/manifest.yml @@ -0,0 +1,5 @@ +name: Circlator +category: Biology +description: A tool to circularize genome assemblies. +homepage: http://sanger-pathogens.github.io/circlator/ +hidden: true diff --git a/apps/Circos/form.yml.erb b/apps/Circos/form.yml.erb new file mode 100644 index 00000000..fbc33045 --- /dev/null +++ b/apps/Circos/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['circos_module'] = { + 'widget' => 'module_load', + 'module' => "Circos", + 'label' => "Circos Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{circos_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Circos/icon.png b/apps/Circos/icon.png new file mode 100644 index 00000000..6497170f Binary files /dev/null and b/apps/Circos/icon.png differ diff --git a/apps/Circos/manifest.yml b/apps/Circos/manifest.yml new file mode 100644 index 00000000..ad230d5a --- /dev/null +++ b/apps/Circos/manifest.yml @@ -0,0 +1,6 @@ +name: Circos +category: Others +description: Package for visualizing data in a circular layout - this makes Circos ideal for exploring relationships between objects or positions. +homepage: http://www.circos.ca/ +icon: icon.png +hidden: true diff --git a/apps/Clair3/form.yml.erb b/apps/Clair3/form.yml.erb new file mode 100644 index 00000000..baba7285 --- /dev/null +++ b/apps/Clair3/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['clair3_module'] = { + 'widget' => 'module_load', + 'module' => "Clair3", + 'label' => "Clair3 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{clair3_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Clair3/icon.png b/apps/Clair3/icon.png new file mode 100644 index 00000000..ed370e37 Binary files /dev/null and b/apps/Clair3/icon.png differ diff --git a/apps/Clair3/manifest.yml b/apps/Clair3/manifest.yml new file mode 100644 index 00000000..f0889b53 --- /dev/null +++ b/apps/Clair3/manifest.yml @@ -0,0 +1,6 @@ +name: Clair3 +category: Biology +description: Syumphonizing pileup and full-alignment for high-performance long-read variant calling. +homepage: https://github.com/HKU-BAL/Clair3 +icon: icon.png +hidden: true diff --git a/apps/Clustal-Omega/form.yml.erb b/apps/Clustal-Omega/form.yml.erb new file mode 100644 index 00000000..6939ee8b --- /dev/null +++ b/apps/Clustal-Omega/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['clustal_omega_module'] = { + 'widget' => 'module_load', + 'module' => "Clustal-Omega", + 'label' => "Clustal-Omega Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{clustal_omega_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Clustal-Omega/manifest.yml b/apps/Clustal-Omega/manifest.yml new file mode 100644 index 00000000..401be3bf --- /dev/null +++ b/apps/Clustal-Omega/manifest.yml @@ -0,0 +1,5 @@ +name: Clustal-Omega +category: Biology +description: Clustal Omega is a multiple sequence alignment program for proteins. +homepage: http://www.clustal.org/omega/ +hidden: true diff --git a/apps/ClustalW2/form.yml.erb b/apps/ClustalW2/form.yml.erb new file mode 100644 index 00000000..85f531b6 --- /dev/null +++ b/apps/ClustalW2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['clustalw2_module'] = { + 'widget' => 'module_load', + 'module' => "ClustalW2", + 'label' => "ClustalW2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{clustalw2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ClustalW2/manifest.yml b/apps/ClustalW2/manifest.yml new file mode 100644 index 00000000..2a6dd8c3 --- /dev/null +++ b/apps/ClustalW2/manifest.yml @@ -0,0 +1,5 @@ +name: ClustalW2 +category: Biology +description: ClustalW2 is a general purpose multiple sequence alignment program for DNA or proteins. +homepage: http://www.ebi.ac.uk/Tools/msa/clustalw2/ +hidden: true diff --git a/apps/CoverM/form.yml.erb b/apps/CoverM/form.yml.erb new file mode 100644 index 00000000..5f351293 --- /dev/null +++ b/apps/CoverM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['coverm_module'] = { + 'widget' => 'module_load', + 'module' => "CoverM", + 'label' => "CoverM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{coverm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/CoverM/icon.png b/apps/CoverM/icon.png new file mode 100644 index 00000000..203ab4b8 Binary files /dev/null and b/apps/CoverM/icon.png differ diff --git a/apps/CoverM/manifest.yml b/apps/CoverM/manifest.yml new file mode 100644 index 00000000..1877039e --- /dev/null +++ b/apps/CoverM/manifest.yml @@ -0,0 +1,6 @@ +name: CoverM +category: Biology +description: DNA read coverage and relative abundance calculator focused on metagenomics applications. +homepage: https://github.com/wwood/CoverM +icon: icon.png +hidden: true diff --git a/apps/Cytoscape/form.yml.erb b/apps/Cytoscape/form.yml.erb new file mode 100644 index 00000000..291cc0f0 --- /dev/null +++ b/apps/Cytoscape/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cytoscape_module'] = { + 'widget' => 'module_load', + 'module' => "Cytoscape", + 'label' => "Cytoscape Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cytoscape_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Cytoscape/icon.png b/apps/Cytoscape/icon.png new file mode 100644 index 00000000..c8f4eb7b Binary files /dev/null and b/apps/Cytoscape/icon.png differ diff --git a/apps/Cytoscape/manifest.yml b/apps/Cytoscape/manifest.yml new file mode 100644 index 00000000..a75ee3cf --- /dev/null +++ b/apps/Cytoscape/manifest.yml @@ -0,0 +1,6 @@ +name: Cytoscape +category: Biology +description: Cytoscape is an open source software platform for visualizing molecular interaction networks and biological pathways and integrating these networks with annotations, gene expression profiles and other state data. +homepage: https://cytoscape.org/ +icon: icon.png +hidden: true diff --git a/apps/D-Genies/form.yml.erb b/apps/D-Genies/form.yml.erb new file mode 100644 index 00000000..2f8456c0 --- /dev/null +++ b/apps/D-Genies/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['d_genies_module'] = { + 'widget' => 'module_load', + 'module' => "D-Genies", + 'label' => "D-Genies Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{d_genies_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/D-Genies/manifest.yml b/apps/D-Genies/manifest.yml new file mode 100644 index 00000000..3d20ea9d --- /dev/null +++ b/apps/D-Genies/manifest.yml @@ -0,0 +1,5 @@ +name: D-Genies +category: Biology +description: D-Genies also allows to display dot plots from other aligners by uploading their PAF or MAF alignment file. +homepage: http://dgenies.toulouse.inra.fr/ +hidden: true diff --git a/apps/DAS_Tool/form.yml.erb b/apps/DAS_Tool/form.yml.erb new file mode 100644 index 00000000..9303f306 --- /dev/null +++ b/apps/DAS_Tool/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['das_tool_module'] = { + 'widget' => 'module_load', + 'module' => "DAS_Tool", + 'label' => "DAS_Tool Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{das_tool_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/DAS_Tool/icon.png b/apps/DAS_Tool/icon.png new file mode 100644 index 00000000..b5b6dded Binary files /dev/null and b/apps/DAS_Tool/icon.png differ diff --git a/apps/DAS_Tool/manifest.yml b/apps/DAS_Tool/manifest.yml new file mode 100644 index 00000000..f3b7daa2 --- /dev/null +++ b/apps/DAS_Tool/manifest.yml @@ -0,0 +1,6 @@ +name: DAS_Tool +category: Biology +description: DAS Tool is an automated method that integrates the results of a flexible number of binning algorithms to calculate an optimized, non-redundant set of bins from a single assembly. +homepage: https://github.com/cmks/DAS_Tool +icon: icon.png +hidden: true diff --git a/apps/DFT-D4/form.yml.erb b/apps/DFT-D4/form.yml.erb new file mode 100644 index 00000000..73eb2b98 --- /dev/null +++ b/apps/DFT-D4/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['dft_d4_module'] = { + 'widget' => 'module_load', + 'module' => "DFT-D4", + 'label' => "DFT-D4 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{dft_d4_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/DFT-D4/icon.png b/apps/DFT-D4/icon.png new file mode 100644 index 00000000..f815e789 Binary files /dev/null and b/apps/DFT-D4/icon.png differ diff --git a/apps/DFT-D4/manifest.yml b/apps/DFT-D4/manifest.yml new file mode 100644 index 00000000..2e0a6252 --- /dev/null +++ b/apps/DFT-D4/manifest.yml @@ -0,0 +1,6 @@ +name: DFT-D4 +category: Chemistry +description: Generally Applicable Atomic-Charge Dependent London Dispersion Correction. +homepage: https://github.com/dftd4/dftd4 +icon: icon.png +hidden: true diff --git a/apps/DIAMOND/form.yml.erb b/apps/DIAMOND/form.yml.erb new file mode 100644 index 00000000..6e7a1d42 --- /dev/null +++ b/apps/DIAMOND/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['diamond_module'] = { + 'widget' => 'module_load', + 'module' => "DIAMOND", + 'label' => "DIAMOND Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{diamond_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/DIAMOND/icon.png b/apps/DIAMOND/icon.png new file mode 100644 index 00000000..94f82a10 Binary files /dev/null and b/apps/DIAMOND/icon.png differ diff --git a/apps/DIAMOND/manifest.yml b/apps/DIAMOND/manifest.yml new file mode 100644 index 00000000..36b860c8 --- /dev/null +++ b/apps/DIAMOND/manifest.yml @@ -0,0 +1,6 @@ +name: DIAMOND +category: Biology +description: Sequence aligner for protein and translated DNA searches. +homepage: https://github.com/bbuchfink/diamond +icon: icon.png +hidden: true diff --git a/apps/DRAM/form.yml.erb b/apps/DRAM/form.yml.erb new file mode 100644 index 00000000..ee04a444 --- /dev/null +++ b/apps/DRAM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['dram_module'] = { + 'widget' => 'module_load', + 'module' => "DRAM", + 'label' => "DRAM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{dram_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/DRAM/manifest.yml b/apps/DRAM/manifest.yml new file mode 100644 index 00000000..9c375c32 --- /dev/null +++ b/apps/DRAM/manifest.yml @@ -0,0 +1,5 @@ +name: DRAM +category: Biology +description: Tool for annotating metagenomic assembled genomes and VirSorter identified viral contigs. +homepage: https://pypi.org/project/DRAM-bio/ +hidden: true diff --git a/apps/DeconSeq/form.yml.erb b/apps/DeconSeq/form.yml.erb new file mode 100644 index 00000000..06e2b9b1 --- /dev/null +++ b/apps/DeconSeq/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['deconseq_module'] = { + 'widget' => 'module_load', + 'module' => "DeconSeq", + 'label' => "DeconSeq Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{deconseq_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/DeconSeq/icon.png b/apps/DeconSeq/icon.png new file mode 100644 index 00000000..9385497e Binary files /dev/null and b/apps/DeconSeq/icon.png differ diff --git a/apps/DeconSeq/manifest.yml b/apps/DeconSeq/manifest.yml new file mode 100644 index 00000000..15137c3a --- /dev/null +++ b/apps/DeconSeq/manifest.yml @@ -0,0 +1,6 @@ +name: DeconSeq +category: Biology +description: A tool that can be used to automatically detect and efficiently remove sequence contaminations from genomic and metagenomic datasets. +homepage: http://deconseq.sourceforge.net/ +icon: icon.png +hidden: true diff --git a/apps/DeePMD-kit/form.yml.erb b/apps/DeePMD-kit/form.yml.erb new file mode 100644 index 00000000..0c9cb99a --- /dev/null +++ b/apps/DeePMD-kit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['deepmd_kit_module'] = { + 'widget' => 'module_load', + 'module' => "DeePMD-kit", + 'label' => "DeePMD-kit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{deepmd_kit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/DeePMD-kit/icon.svg b/apps/DeePMD-kit/icon.svg new file mode 100644 index 00000000..f0459c3d --- /dev/null +++ b/apps/DeePMD-kit/icon.svg @@ -0,0 +1 @@ + diff --git a/apps/DeePMD-kit/manifest.yml b/apps/DeePMD-kit/manifest.yml new file mode 100644 index 00000000..454ec42d --- /dev/null +++ b/apps/DeePMD-kit/manifest.yml @@ -0,0 +1,6 @@ +name: DeePMD-kit +category: Chemistry +description: Package written in Python/C++, designed to minimize the effort required to build deep learning-based models of interatomic potential energy and force field and to perform molecular dynamics. +homepage: https://docs.deepmodeling.com/projects/deepmd/en/master/ +icon: icon.svg +hidden: true diff --git a/apps/DeepLabCut/form.yml.erb b/apps/DeepLabCut/form.yml.erb new file mode 100644 index 00000000..60d6fac2 --- /dev/null +++ b/apps/DeepLabCut/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['deeplabcut_module'] = { + 'widget' => 'module_load', + 'module' => "DeepLabCut", + 'label' => "DeepLabCut Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{deeplabcut_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/DeepLabCut/icon.webp b/apps/DeepLabCut/icon.webp new file mode 100644 index 00000000..ee6abac4 Binary files /dev/null and b/apps/DeepLabCut/icon.webp differ diff --git a/apps/DeepLabCut/manifest.yml b/apps/DeepLabCut/manifest.yml new file mode 100644 index 00000000..45b83344 --- /dev/null +++ b/apps/DeepLabCut/manifest.yml @@ -0,0 +1,6 @@ +name: DeepLabCut +category: Biology +description: Efficient method for 3D markerless pose estimation based on transfer learning with deep neural networks. +homepage: http://www.mackenziemathislab.org/deeplabcut +icon: icon.webp +hidden: true diff --git a/apps/Delft3D/form.yml.erb b/apps/Delft3D/form.yml.erb new file mode 100644 index 00000000..dc7cce4f --- /dev/null +++ b/apps/Delft3D/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['delft3d_module'] = { + 'widget' => 'module_load', + 'module' => "Delft3D", + 'label' => "Delft3D Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{delft3d_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Delft3D/icon.png b/apps/Delft3D/icon.png new file mode 100644 index 00000000..9c0c75f3 Binary files /dev/null and b/apps/Delft3D/icon.png differ diff --git a/apps/Delft3D/manifest.yml b/apps/Delft3D/manifest.yml new file mode 100644 index 00000000..730cf639 --- /dev/null +++ b/apps/Delft3D/manifest.yml @@ -0,0 +1,6 @@ +name: Delft3D +category: Earth Science +description: Integrated simulation of sediment transport and morphology, waves, water quality and ecology. +homepage: http://oss.deltares.nl/web/delft3d +icon: icon.png +hidden: true diff --git a/apps/Delft3D_FM/form.yml.erb b/apps/Delft3D_FM/form.yml.erb new file mode 100644 index 00000000..0930106d --- /dev/null +++ b/apps/Delft3D_FM/form.yml.erb @@ -0,0 +1,29 @@ +<%# AI generated %> +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['delft3d_fm_module'] = { + 'widget' => 'module_load', + 'module' => "Delft3D_FM", + 'label' => "Delft3D_FM Module" + } + + end + new_form[k] = v +end + +base['form'] = new_form + + + +base['script'] = base['script'].rstrip + "\n\n" + [ + "module -q purge", + "module load #{delft3d_fm_module}", + app_cmd +].join("\n") + "\n" +%> +<%= base.to_yaml -%> diff --git a/apps/Delft3D_FM/icon.png b/apps/Delft3D_FM/icon.png new file mode 100644 index 00000000..9c0c75f3 Binary files /dev/null and b/apps/Delft3D_FM/icon.png differ diff --git a/apps/Delft3D_FM/manifest.yml b/apps/Delft3D_FM/manifest.yml new file mode 100644 index 00000000..caa9757b --- /dev/null +++ b/apps/Delft3D_FM/manifest.yml @@ -0,0 +1,8 @@ +# AI generated +category: Earth Science +description: 3D modeling suite to investigate hydrodynamics, sediment transport and + morphology and water quality for fluvial, estuarine and coastal environments +hidden: true +homepage: http://oss.deltares.nl/web/delft3d +icon: icon.png +name: Delft3D_FM diff --git a/apps/Delly/form.yml.erb b/apps/Delly/form.yml.erb new file mode 100644 index 00000000..54c81c39 --- /dev/null +++ b/apps/Delly/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['delly_module'] = { + 'widget' => 'module_load', + 'module' => "Delly", + 'label' => "Delly Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{delly_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Delly/icon.png b/apps/Delly/icon.png new file mode 100644 index 00000000..e122ea2b Binary files /dev/null and b/apps/Delly/icon.png differ diff --git a/apps/Delly/manifest.yml b/apps/Delly/manifest.yml new file mode 100644 index 00000000..299cdc36 --- /dev/null +++ b/apps/Delly/manifest.yml @@ -0,0 +1,6 @@ +name: Delly +category: Biology +description: Structural variant discovery by integrated paired-end and split-read analysis. +homepage: https://github.com/dellytools/delly +icon: icon.png +hidden: true diff --git a/apps/Dorado/form.yml.erb b/apps/Dorado/form.yml.erb new file mode 100644 index 00000000..00248641 --- /dev/null +++ b/apps/Dorado/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['dorado_module'] = { + 'widget' => 'module_load', + 'module' => "Dorado", + 'label' => "Dorado Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{dorado_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Dorado/icon.png b/apps/Dorado/icon.png new file mode 100644 index 00000000..58c5d012 Binary files /dev/null and b/apps/Dorado/icon.png differ diff --git a/apps/Dorado/manifest.yml b/apps/Dorado/manifest.yml new file mode 100644 index 00000000..affb46e4 --- /dev/null +++ b/apps/Dorado/manifest.yml @@ -0,0 +1,6 @@ +name: Dorado +category: Biology +description: High-performance, easy-to-use, open source basecaller for Oxford Nanopore reads. +homepage: https://nanoporetech.com/products/minit +icon: icon.png +hidden: true diff --git a/apps/Dsuite/form.yml.erb b/apps/Dsuite/form.yml.erb new file mode 100644 index 00000000..b58fce27 --- /dev/null +++ b/apps/Dsuite/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['dsuite_module'] = { + 'widget' => 'module_load', + 'module' => "Dsuite", + 'label' => "Dsuite Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{dsuite_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Dsuite/manifest.yml b/apps/Dsuite/manifest.yml new file mode 100644 index 00000000..d9715564 --- /dev/null +++ b/apps/Dsuite/manifest.yml @@ -0,0 +1,5 @@ +name: Dsuite +category: Biology +description: Fast calculation of the ABBA-BABA statistics across many populations/species. +homepage: https://github.com/millanek/Dsuite +hidden: true diff --git a/apps/EDTA/form.yml.erb b/apps/EDTA/form.yml.erb new file mode 100644 index 00000000..e74e2878 --- /dev/null +++ b/apps/EDTA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['edta_module'] = { + 'widget' => 'module_load', + 'module' => "EDTA", + 'label' => "EDTA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{edta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/EDTA/manifest.yml b/apps/EDTA/manifest.yml new file mode 100644 index 00000000..5252fd0f --- /dev/null +++ b/apps/EDTA/manifest.yml @@ -0,0 +1,5 @@ +name: EDTA +category: Biology +description: Automated whole-genome de-novo TE annotation and benchmarking the annotation performance of TE libraries. +homepage: https://github.com/oushujun/EDTA +hidden: true diff --git a/apps/EIGENSOFT/form.yml.erb b/apps/EIGENSOFT/form.yml.erb new file mode 100644 index 00000000..2744e6c5 --- /dev/null +++ b/apps/EIGENSOFT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['eigensoft_module'] = { + 'widget' => 'module_load', + 'module' => "EIGENSOFT", + 'label' => "EIGENSOFT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{eigensoft_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/EIGENSOFT/manifest.yml b/apps/EIGENSOFT/manifest.yml new file mode 100644 index 00000000..775bd0dd --- /dev/null +++ b/apps/EIGENSOFT/manifest.yml @@ -0,0 +1,5 @@ +name: EIGENSOFT +category: Biology +description: The EIGENSOFT package combines functionality from our population genetics methods (Patterson et al. 2006) and our EIGENSTRAT stratification correction method (Price et al. 2006). +homepage: http://www.hsph.harvard.edu/alkes-price/software/ +hidden: true diff --git a/apps/ELPA/form.yml.erb b/apps/ELPA/form.yml.erb new file mode 100644 index 00000000..bc07f9ff --- /dev/null +++ b/apps/ELPA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['elpa_module'] = { + 'widget' => 'module_load', + 'module' => "ELPA", + 'label' => "ELPA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{elpa_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ELPA/icon.png b/apps/ELPA/icon.png new file mode 100644 index 00000000..aa2e40eb Binary files /dev/null and b/apps/ELPA/icon.png differ diff --git a/apps/ELPA/manifest.yml b/apps/ELPA/manifest.yml new file mode 100644 index 00000000..79ca0c5e --- /dev/null +++ b/apps/ELPA/manifest.yml @@ -0,0 +1,6 @@ +name: ELPA +category: Astronomy +description: Eigenvalue SoLvers for Petaflop-Applications. +homepage: https://elpa.mpcdf.mpg.de/ +icon: icon.png +hidden: true diff --git a/apps/EMAN2/form.yml.erb b/apps/EMAN2/form.yml.erb new file mode 100644 index 00000000..fe81bc2d --- /dev/null +++ b/apps/EMAN2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['eman2_module'] = { + 'widget' => 'module_load', + 'module' => "EMAN2", + 'label' => "EMAN2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{eman2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/EMAN2/manifest.yml b/apps/EMAN2/manifest.yml new file mode 100644 index 00000000..3b4b9cfc --- /dev/null +++ b/apps/EMAN2/manifest.yml @@ -0,0 +1,5 @@ +name: EMAN2 +category: Biology +description: Greyscale scientific image processing suite with a primary focus on processing data from transmission electron microscopes. +homepage: http://blake.bcm.edu/emanwiki/EMAN2/ +hidden: true diff --git a/apps/EMBOSS/form.yml.erb b/apps/EMBOSS/form.yml.erb new file mode 100644 index 00000000..56307d71 --- /dev/null +++ b/apps/EMBOSS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['emboss_module'] = { + 'widget' => 'module_load', + 'module' => "EMBOSS", + 'label' => "EMBOSS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{emboss_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/EMBOSS/icon.jpg b/apps/EMBOSS/icon.jpg new file mode 100644 index 00000000..e50bae90 Binary files /dev/null and b/apps/EMBOSS/icon.jpg differ diff --git a/apps/EMBOSS/manifest.yml b/apps/EMBOSS/manifest.yml new file mode 100644 index 00000000..6ae478ce --- /dev/null +++ b/apps/EMBOSS/manifest.yml @@ -0,0 +1,6 @@ +name: EMBOSS +category: Biology +description: EMBOSS is 'The European Molecular Biology Open Software Suite'. +homepage: http://emboss.sourceforge.net/ +icon: icon.jpg +hidden: true diff --git a/apps/ESMF/form.yml.erb b/apps/ESMF/form.yml.erb new file mode 100644 index 00000000..5fdbe370 --- /dev/null +++ b/apps/ESMF/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['esmf_module'] = { + 'widget' => 'module_load', + 'module' => "ESMF", + 'label' => "ESMF Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{esmf_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ESMF/manifest.yml b/apps/ESMF/manifest.yml new file mode 100644 index 00000000..9cde6704 --- /dev/null +++ b/apps/ESMF/manifest.yml @@ -0,0 +1,5 @@ +name: ESMF +category: Climate Science +description: The Earth System Modeling Framework (ESMF) is a suite of software tools for developing high-performance, multi-component Earth science modeling applications. +homepage: https://www.earthsystemcog.org/projects/esmf/ +hidden: true diff --git a/apps/ETE/form.yml.erb b/apps/ETE/form.yml.erb new file mode 100644 index 00000000..0c144e69 --- /dev/null +++ b/apps/ETE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ete_module'] = { + 'widget' => 'module_load', + 'module' => "ETE", + 'label' => "ETE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ete_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ETE/icon.jpg b/apps/ETE/icon.jpg new file mode 100644 index 00000000..145214b5 Binary files /dev/null and b/apps/ETE/icon.jpg differ diff --git a/apps/ETE/manifest.yml b/apps/ETE/manifest.yml new file mode 100644 index 00000000..75ecdc4f --- /dev/null +++ b/apps/ETE/manifest.yml @@ -0,0 +1,6 @@ +name: ETE +category: Biology +description: A Python framework for the analysis and visualization of phylogenetic trees. +homepage: http://etetoolkit.org +icon: icon.jpg +hidden: true diff --git a/apps/Emu/form.yml.erb b/apps/Emu/form.yml.erb new file mode 100644 index 00000000..3522bdf0 --- /dev/null +++ b/apps/Emu/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['emu_module'] = { + 'widget' => 'module_load', + 'module' => "Emu", + 'label' => "Emu Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{emu_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Emu/icon.png b/apps/Emu/icon.png new file mode 100644 index 00000000..71d06fb0 Binary files /dev/null and b/apps/Emu/icon.png differ diff --git a/apps/Emu/manifest.yml b/apps/Emu/manifest.yml new file mode 100644 index 00000000..4e79879c --- /dev/null +++ b/apps/Emu/manifest.yml @@ -0,0 +1,6 @@ +name: Emu +category: Biology +description: Species-level taxonomic abundance for full-length 16S reads. +homepage: https://gitlab.com/treangenlab/emu +icon: icon.png +hidden: true diff --git a/apps/EukRep-EukCC/form.yml.erb b/apps/EukRep-EukCC/form.yml.erb new file mode 100644 index 00000000..6a906fd3 --- /dev/null +++ b/apps/EukRep-EukCC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['eukrep_eukcc_module'] = { + 'widget' => 'module_load', + 'module' => "EukRep-EukCC", + 'label' => "EukRep-EukCC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{eukrep_eukcc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/EukRep-EukCC/icon.png b/apps/EukRep-EukCC/icon.png new file mode 100644 index 00000000..82b829da Binary files /dev/null and b/apps/EukRep-EukCC/icon.png differ diff --git a/apps/EukRep-EukCC/manifest.yml b/apps/EukRep-EukCC/manifest.yml new file mode 100644 index 00000000..9fcdbc33 --- /dev/null +++ b/apps/EukRep-EukCC/manifest.yml @@ -0,0 +1,6 @@ +name: EukRep-EukCC +category: Biology +description: Completeness and contamination estimator for metagenomic assembled microbial eukaryotic genomes. +homepage: https://www.repeatmasker.org/ +icon: icon.png +hidden: true diff --git a/apps/ExaBayes/form.yml.erb b/apps/ExaBayes/form.yml.erb new file mode 100644 index 00000000..b1b46bc2 --- /dev/null +++ b/apps/ExaBayes/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['exabayes_module'] = { + 'widget' => 'module_load', + 'module' => "ExaBayes", + 'label' => "ExaBayes Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{exabayes_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ExaBayes/icon.png b/apps/ExaBayes/icon.png new file mode 100644 index 00000000..a74693d3 Binary files /dev/null and b/apps/ExaBayes/icon.png differ diff --git a/apps/ExaBayes/manifest.yml b/apps/ExaBayes/manifest.yml new file mode 100644 index 00000000..9eb119f2 --- /dev/null +++ b/apps/ExaBayes/manifest.yml @@ -0,0 +1,6 @@ +name: ExaBayes +category: Biology +description: Bayesian tree inference, particularly suitable for large-scale analyses. +homepage: https://sco.h-its.org/exelixis/web/software/exabayes/ +icon: icon.png +hidden: true diff --git a/apps/ExaML/form.yml.erb b/apps/ExaML/form.yml.erb new file mode 100644 index 00000000..ffaf787c --- /dev/null +++ b/apps/ExaML/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['examl_module'] = { + 'widget' => 'module_load', + 'module' => "ExaML", + 'label' => "ExaML Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{examl_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ExaML/manifest.yml b/apps/ExaML/manifest.yml new file mode 100644 index 00000000..6d8cce22 --- /dev/null +++ b/apps/ExaML/manifest.yml @@ -0,0 +1,5 @@ +name: ExaML +category: Biology +description: Exascale Maximum Likelihood for phylogenetic inference using MPI. +homepage: https://sco.h-its.org/exelixis/web/software/examl/index.html +hidden: true diff --git a/apps/Exonerate/form.yml.erb b/apps/Exonerate/form.yml.erb new file mode 100644 index 00000000..f1bfe616 --- /dev/null +++ b/apps/Exonerate/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['exonerate_module'] = { + 'widget' => 'module_load', + 'module' => "Exonerate", + 'label' => "Exonerate Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{exonerate_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Exonerate/manifest.yml b/apps/Exonerate/manifest.yml new file mode 100644 index 00000000..e5186ca2 --- /dev/null +++ b/apps/Exonerate/manifest.yml @@ -0,0 +1,5 @@ +name: Exonerate +category: Others +description: Exonerate is a generic tool for pairwise sequence comparison. +homepage: https://www.ebi.ac.uk/about/vertebrate-genomics/software/exonerate +hidden: true diff --git a/apps/ExpansionHunter/form.yml.erb b/apps/ExpansionHunter/form.yml.erb new file mode 100644 index 00000000..a0301683 --- /dev/null +++ b/apps/ExpansionHunter/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['expansionhunter_module'] = { + 'widget' => 'module_load', + 'module' => "ExpansionHunter", + 'label' => "ExpansionHunter Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{expansionhunter_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ExpansionHunter/manifest.yml b/apps/ExpansionHunter/manifest.yml new file mode 100644 index 00000000..ebb0efc3 --- /dev/null +++ b/apps/ExpansionHunter/manifest.yml @@ -0,0 +1,5 @@ +name: ExpansionHunter +category: Biology +description: Tool for estimating repeat sizes. +homepage: https://github.com/Illumina/ExpansionHunter +hidden: true diff --git a/apps/FASTX-Toolkit/form.yml.erb b/apps/FASTX-Toolkit/form.yml.erb new file mode 100644 index 00000000..dd6dc199 --- /dev/null +++ b/apps/FASTX-Toolkit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fastx_toolkit_module'] = { + 'widget' => 'module_load', + 'module' => "FASTX-Toolkit", + 'label' => "FASTX-Toolkit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fastx_toolkit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FASTX-Toolkit/manifest.yml b/apps/FASTX-Toolkit/manifest.yml new file mode 100644 index 00000000..5831e3f9 --- /dev/null +++ b/apps/FASTX-Toolkit/manifest.yml @@ -0,0 +1,5 @@ +name: FASTX-Toolkit +category: Biology +description: Tools for Short-Reads FASTA/FASTQ files preprocessing. +homepage: http://hannonlab.cshl.edu/fastx_toolkit/ +hidden: true diff --git a/apps/FDS/form.yml.erb b/apps/FDS/form.yml.erb new file mode 100644 index 00000000..ed43c024 --- /dev/null +++ b/apps/FDS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fds_module'] = { + 'widget' => 'module_load', + 'module' => "FDS", + 'label' => "FDS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fds_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FDS/manifest.yml b/apps/FDS/manifest.yml new file mode 100644 index 00000000..bc5e2b93 --- /dev/null +++ b/apps/FDS/manifest.yml @@ -0,0 +1,5 @@ +name: FDS +category: Engineering +description: Fire Dynamics Simulator (FDS) is a large-eddy simulation (LES) code for low-speed flows, with an emphasis on smoke and heat transport from fires. +homepage: https://pages.nist.gov/fds-smv/ +hidden: true diff --git a/apps/FIGARO/form.yml.erb b/apps/FIGARO/form.yml.erb new file mode 100644 index 00000000..0628a9d9 --- /dev/null +++ b/apps/FIGARO/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['figaro_module'] = { + 'widget' => 'module_load', + 'module' => "FIGARO", + 'label' => "FIGARO Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{figaro_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FIGARO/manifest.yml b/apps/FIGARO/manifest.yml new file mode 100644 index 00000000..f5a1d482 --- /dev/null +++ b/apps/FIGARO/manifest.yml @@ -0,0 +1,5 @@ +name: FIGARO +category: Biology +description: An efficient and objective tool for optimizing microbiome rRNA gene trimming parameters. +homepage: https://github.com/Zymo-Research/figaro +hidden: true diff --git a/apps/Faiss/form.yml.erb b/apps/Faiss/form.yml.erb new file mode 100644 index 00000000..7bc21fbe --- /dev/null +++ b/apps/Faiss/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['faiss_module'] = { + 'widget' => 'module_load', + 'module' => "Faiss", + 'label' => "Faiss Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{faiss_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Faiss/manifest.yml b/apps/Faiss/manifest.yml new file mode 100644 index 00000000..e53b3126 --- /dev/null +++ b/apps/Faiss/manifest.yml @@ -0,0 +1,5 @@ +name: Faiss +category: Mathematics +description: Faiss is a library for efficient similarity search and clustering of dense vectors. +homepage: https://github.com/facebookresearch/faiss +hidden: true diff --git a/apps/FastANI/form.yml.erb b/apps/FastANI/form.yml.erb new file mode 100644 index 00000000..72a5cf8b --- /dev/null +++ b/apps/FastANI/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fastani_module'] = { + 'widget' => 'module_load', + 'module' => "FastANI", + 'label' => "FastANI Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fastani_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FastANI/manifest.yml b/apps/FastANI/manifest.yml new file mode 100644 index 00000000..bf737fca --- /dev/null +++ b/apps/FastANI/manifest.yml @@ -0,0 +1,5 @@ +name: FastANI +category: Biology +description: Tool for fast alignment-free computation of whole-genome Average Nucleotide Identity (ANI). +homepage: http://www.iodbc.org/ +hidden: true diff --git a/apps/FastME/form.yml.erb b/apps/FastME/form.yml.erb new file mode 100644 index 00000000..cb665246 --- /dev/null +++ b/apps/FastME/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fastme_module'] = { + 'widget' => 'module_load', + 'module' => "FastME", + 'label' => "FastME Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fastme_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FastME/manifest.yml b/apps/FastME/manifest.yml new file mode 100644 index 00000000..943f5c11 --- /dev/null +++ b/apps/FastME/manifest.yml @@ -0,0 +1,5 @@ +name: FastME +category: Biology +description: 'FastME: a comprehensive, accurate and fast distance-based phylogeny inference program.' +homepage: http://www.atgc-montpellier.fr/fastme/ +hidden: true diff --git a/apps/FastQC/form.yml.erb b/apps/FastQC/form.yml.erb new file mode 100644 index 00000000..7cc20d71 --- /dev/null +++ b/apps/FastQC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fastqc_module'] = { + 'widget' => 'module_load', + 'module' => "FastQC", + 'label' => "FastQC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fastqc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FastQC/manifest.yml b/apps/FastQC/manifest.yml new file mode 100644 index 00000000..b089ff87 --- /dev/null +++ b/apps/FastQC/manifest.yml @@ -0,0 +1,5 @@ +name: FastQC +category: Biology +description: A set of tools (in Java) for working with next generation sequencing data in the BAM format. +homepage: http://www.bioinformatics.babraham.ac.uk/projects/fastqc/ +hidden: true diff --git a/apps/FastQ_Screen/form.yml.erb b/apps/FastQ_Screen/form.yml.erb new file mode 100644 index 00000000..d075444a --- /dev/null +++ b/apps/FastQ_Screen/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fastq_screen_module'] = { + 'widget' => 'module_load', + 'module' => "FastQ_Screen", + 'label' => "FastQ_Screen Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fastq_screen_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FastQ_Screen/icon.png b/apps/FastQ_Screen/icon.png new file mode 100644 index 00000000..92ac83ec Binary files /dev/null and b/apps/FastQ_Screen/icon.png differ diff --git a/apps/FastQ_Screen/manifest.yml b/apps/FastQ_Screen/manifest.yml new file mode 100644 index 00000000..4c7d646b --- /dev/null +++ b/apps/FastQ_Screen/manifest.yml @@ -0,0 +1,6 @@ +name: FastQ_Screen +category: Biology +description: FastQ Screen allows you to screen a library of sequences in FastQ format against a set of sequence databases so you can see if the composition of the library matches with what you expect. +homepage: http://www.bioinformatics.babraham.ac.uk/projects/fastq_screen/ +icon: icon.png +hidden: true diff --git a/apps/FastTree/form.yml.erb b/apps/FastTree/form.yml.erb new file mode 100644 index 00000000..8df6da3c --- /dev/null +++ b/apps/FastTree/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fasttree_module'] = { + 'widget' => 'module_load', + 'module' => "FastTree", + 'label' => "FastTree Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fasttree_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FastTree/manifest.yml b/apps/FastTree/manifest.yml new file mode 100644 index 00000000..ddf552e0 --- /dev/null +++ b/apps/FastTree/manifest.yml @@ -0,0 +1,5 @@ +name: FastTree +category: Biology +description: FastTree infers approximately-maximum-likelihood phylogenetic trees from alignments of nucleotide or protein sequences. +homepage: http://www.microbesonline.org/fasttree/ +hidden: true diff --git a/apps/Fastsimcoal2/form.yml.erb b/apps/Fastsimcoal2/form.yml.erb new file mode 100644 index 00000000..2c49a340 --- /dev/null +++ b/apps/Fastsimcoal2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fastsimcoal2_module'] = { + 'widget' => 'module_load', + 'module' => "Fastsimcoal2", + 'label' => "Fastsimcoal2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fastsimcoal2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Fastsimcoal2/manifest.yml b/apps/Fastsimcoal2/manifest.yml new file mode 100644 index 00000000..997fb81e --- /dev/null +++ b/apps/Fastsimcoal2/manifest.yml @@ -0,0 +1,5 @@ +name: Fastsimcoal2 +category: Biology +description: While preserving all the simulation flexibility of simcoal2, fastsimcoal is now implemented under a faster continous-time sequential Markovian coalescent approximation, allowing it to efficiently generate genetic diversity for different types of markers along large genomic regions, for both present or ancient samples. +homepage: http://cmpg.unibe.ch/software/fastsimcoal2/ +hidden: true diff --git a/apps/FileSender/form.yml.erb b/apps/FileSender/form.yml.erb new file mode 100644 index 00000000..91e7872e --- /dev/null +++ b/apps/FileSender/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['filesender_module'] = { + 'widget' => 'module_load', + 'module' => "FileSender", + 'label' => "FileSender Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{filesender_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FileSender/images.png b/apps/FileSender/images.png new file mode 100644 index 00000000..05538c8e Binary files /dev/null and b/apps/FileSender/images.png differ diff --git a/apps/FileSender/manifest.yml b/apps/FileSender/manifest.yml new file mode 100644 index 00000000..08b6fa48 --- /dev/null +++ b/apps/FileSender/manifest.yml @@ -0,0 +1,5 @@ +name: FileSender +category: Others +description: Send large files quickly and securely using REANNZ FileSender. +homepage: https://www.reannz.co.nz/products-and-services/filesender/ +hidden: true diff --git a/apps/Filtlong/form.yml.erb b/apps/Filtlong/form.yml.erb new file mode 100644 index 00000000..cb4e58ca --- /dev/null +++ b/apps/Filtlong/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['filtlong_module'] = { + 'widget' => 'module_load', + 'module' => "Filtlong", + 'label' => "Filtlong Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{filtlong_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Filtlong/icon.png b/apps/Filtlong/icon.png new file mode 100644 index 00000000..10a5bc88 Binary files /dev/null and b/apps/Filtlong/icon.png differ diff --git a/apps/Filtlong/manifest.yml b/apps/Filtlong/manifest.yml new file mode 100644 index 00000000..d2f6ee46 --- /dev/null +++ b/apps/Filtlong/manifest.yml @@ -0,0 +1,6 @@ +name: Filtlong +category: Biology +description: Tool for filtering long reads by quality. +homepage: https://github.com/rrwick/Filtlong +icon: icon.png +hidden: true diff --git a/apps/FimTyper/form.yml.erb b/apps/FimTyper/form.yml.erb new file mode 100644 index 00000000..995ffbaf --- /dev/null +++ b/apps/FimTyper/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fimtyper_module'] = { + 'widget' => 'module_load', + 'module' => "FimTyper", + 'label' => "FimTyper Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fimtyper_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FimTyper/manifest.yml b/apps/FimTyper/manifest.yml new file mode 100644 index 00000000..3dea47e6 --- /dev/null +++ b/apps/FimTyper/manifest.yml @@ -0,0 +1,5 @@ +name: FimTyper +category: Biology +description: Identifies the FimH type in total or partial sequenced isolates of E. coli. +homepage: https://bitbucket.org/genomicepidemiology/fimtyper +hidden: true diff --git a/apps/Flye/form.yml.erb b/apps/Flye/form.yml.erb new file mode 100644 index 00000000..1a0e5101 --- /dev/null +++ b/apps/Flye/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['flye_module'] = { + 'widget' => 'module_load', + 'module' => "Flye", + 'label' => "Flye Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{flye_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Flye/manifest.yml b/apps/Flye/manifest.yml new file mode 100644 index 00000000..8975e31e --- /dev/null +++ b/apps/Flye/manifest.yml @@ -0,0 +1,5 @@ +name: Flye +category: Biology +description: Flye is a de novo assembler for long and noisy reads, such as those produced by PacBio and Oxford Nanopore Technologies. +homepage: https://github.com/fenderglass/Flye +hidden: true diff --git a/apps/Foldseek/form.yml.erb b/apps/Foldseek/form.yml.erb new file mode 100644 index 00000000..0c87c7fa --- /dev/null +++ b/apps/Foldseek/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['foldseek_module'] = { + 'widget' => 'module_load', + 'module' => "Foldseek", + 'label' => "Foldseek Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{foldseek_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Foldseek/icon.png b/apps/Foldseek/icon.png new file mode 100644 index 00000000..76f98c85 Binary files /dev/null and b/apps/Foldseek/icon.png differ diff --git a/apps/Foldseek/manifest.yml b/apps/Foldseek/manifest.yml new file mode 100644 index 00000000..a57e7ff6 --- /dev/null +++ b/apps/Foldseek/manifest.yml @@ -0,0 +1,6 @@ +name: Foldseek +category: Biology +description: Foldseek enables fast and sensitive comparisons of large protein structure sets, supporting monomer and multimer searches, as well as clustering. +homepage: https://github.com/steineggerlab/foldseek +icon: icon.png +hidden: true diff --git a/apps/FragGeneScan/form.yml.erb b/apps/FragGeneScan/form.yml.erb new file mode 100644 index 00000000..75be351e --- /dev/null +++ b/apps/FragGeneScan/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fraggenescan_module'] = { + 'widget' => 'module_load', + 'module' => "FragGeneScan", + 'label' => "FragGeneScan Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fraggenescan_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FragGeneScan/manifest.yml b/apps/FragGeneScan/manifest.yml new file mode 100644 index 00000000..43bc34e5 --- /dev/null +++ b/apps/FragGeneScan/manifest.yml @@ -0,0 +1,5 @@ +name: FragGeneScan +category: Biology +description: FragGeneScan is an application for finding (fragmented) genes in short reads. +homepage: http://omics.informatics.indiana.edu/FragGeneScan/ +hidden: true diff --git a/apps/FreeBayes/form.yml.erb b/apps/FreeBayes/form.yml.erb new file mode 100644 index 00000000..b9c7d2cb --- /dev/null +++ b/apps/FreeBayes/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['freebayes_module'] = { + 'widget' => 'module_load', + 'module' => "FreeBayes", + 'label' => "FreeBayes Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{freebayes_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FreeBayes/manifest.yml b/apps/FreeBayes/manifest.yml new file mode 100644 index 00000000..42bc6342 --- /dev/null +++ b/apps/FreeBayes/manifest.yml @@ -0,0 +1,5 @@ +name: FreeBayes +category: Biology +description: Genetic variant detector designed to find polymorphisms smaller than the length of a short-read sequencing alignment. +homepage: https://github.com/ekg/freebayes/blob/master/README.md +hidden: true diff --git a/apps/FreeFEM/form.yml.erb b/apps/FreeFEM/form.yml.erb new file mode 100644 index 00000000..fda0c566 --- /dev/null +++ b/apps/FreeFEM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['freefem_module'] = { + 'widget' => 'module_load', + 'module' => "FreeFEM", + 'label' => "FreeFEM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{freefem_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FreeFEM/icon.png b/apps/FreeFEM/icon.png new file mode 100644 index 00000000..3254465e Binary files /dev/null and b/apps/FreeFEM/icon.png differ diff --git a/apps/FreeFEM/manifest.yml b/apps/FreeFEM/manifest.yml new file mode 100644 index 00000000..3d46d7de --- /dev/null +++ b/apps/FreeFEM/manifest.yml @@ -0,0 +1,6 @@ +name: FreeFEM +category: Mathematics +description: FreeFEM offers a fast interpolation algorithm and a language for the manipulation of data on multiple meshes. +homepage: https://freefem.org +icon: icon.png +hidden: true diff --git a/apps/FreeSurfer/form.yml.erb b/apps/FreeSurfer/form.yml.erb new file mode 100644 index 00000000..563d8096 --- /dev/null +++ b/apps/FreeSurfer/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['freesurfer_module'] = { + 'widget' => 'module_load', + 'module' => "FreeSurfer", + 'label' => "FreeSurfer Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{freesurfer_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/FreeSurfer/icon.jpg b/apps/FreeSurfer/icon.jpg new file mode 100644 index 00000000..bbb300aa Binary files /dev/null and b/apps/FreeSurfer/icon.jpg differ diff --git a/apps/FreeSurfer/manifest.yml b/apps/FreeSurfer/manifest.yml new file mode 100644 index 00000000..a573ce1d --- /dev/null +++ b/apps/FreeSurfer/manifest.yml @@ -0,0 +1,6 @@ +name: FreeSurfer +category: Biology +description: FreeSurfer is a set of tools for analysis and visualization of structural and functional brain imaging data. +homepage: https://surfer.nmr.mgh.harvard.edu/ +icon: icon.jpg +hidden: true diff --git a/apps/GATK/form.yml.erb b/apps/GATK/form.yml.erb new file mode 100644 index 00000000..73484353 --- /dev/null +++ b/apps/GATK/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gatk_module'] = { + 'widget' => 'module_load', + 'module' => "GATK", + 'label' => "GATK Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gatk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GATK/icon.png b/apps/GATK/icon.png new file mode 100644 index 00000000..684f5f2c Binary files /dev/null and b/apps/GATK/icon.png differ diff --git a/apps/GATK/manifest.yml b/apps/GATK/manifest.yml new file mode 100644 index 00000000..2b623370 --- /dev/null +++ b/apps/GATK/manifest.yml @@ -0,0 +1,6 @@ +name: GATK +category: Biology +description: The Genome Analysis Toolkit or GATK is a software package developed at the Broad Institute to analyse next-generation resequencing data. +homepage: http://www.broadinstitute.org/gatk/ +icon: icon.png +hidden: true diff --git a/apps/GDAL/form.yml.erb b/apps/GDAL/form.yml.erb new file mode 100644 index 00000000..0ebad6ed --- /dev/null +++ b/apps/GDAL/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gdal_module'] = { + 'widget' => 'module_load', + 'module' => "GDAL", + 'label' => "GDAL Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gdal_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GDAL/icon.webp b/apps/GDAL/icon.webp new file mode 100644 index 00000000..2d10051c Binary files /dev/null and b/apps/GDAL/icon.webp differ diff --git a/apps/GDAL/manifest.yml b/apps/GDAL/manifest.yml new file mode 100644 index 00000000..65ed5469 --- /dev/null +++ b/apps/GDAL/manifest.yml @@ -0,0 +1,6 @@ +name: GDAL +category: Earth Science +description: GDAL is a translator library for raster geospatial data formats that is released under an X/MIT style Open Source license by the Open Source Geospatial Foundation. +homepage: http://www.gdal.org/ +icon: icon.webp +hidden: true diff --git a/apps/GEMMA/form.yml.erb b/apps/GEMMA/form.yml.erb new file mode 100644 index 00000000..6bcc6566 --- /dev/null +++ b/apps/GEMMA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gemma_module'] = { + 'widget' => 'module_load', + 'module' => "GEMMA", + 'label' => "GEMMA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gemma_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GEMMA/manifest.yml b/apps/GEMMA/manifest.yml new file mode 100644 index 00000000..2775a7cd --- /dev/null +++ b/apps/GEMMA/manifest.yml @@ -0,0 +1,5 @@ +name: GEMMA +category: Biology +description: Genome-wide Efficient Mixed Model Association. +homepage: https://github.com/genetics-statistics/GEMMA +hidden: true diff --git a/apps/GEOS/form.yml.erb b/apps/GEOS/form.yml.erb new file mode 100644 index 00000000..fbe25082 --- /dev/null +++ b/apps/GEOS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['geos_module'] = { + 'widget' => 'module_load', + 'module' => "GEOS", + 'label' => "GEOS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{geos_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GEOS/icon.gif b/apps/GEOS/icon.gif new file mode 100644 index 00000000..39d3c6b8 Binary files /dev/null and b/apps/GEOS/icon.gif differ diff --git a/apps/GEOS/manifest.yml b/apps/GEOS/manifest.yml new file mode 100644 index 00000000..1f12f125 --- /dev/null +++ b/apps/GEOS/manifest.yml @@ -0,0 +1,6 @@ +name: GEOS +category: Mathematics +description: GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS). +homepage: http://trac.osgeo.org/geos +icon: icon.gif +hidden: true diff --git a/apps/GMAP-GSNAP/form.yml.erb b/apps/GMAP-GSNAP/form.yml.erb new file mode 100644 index 00000000..608ccef0 --- /dev/null +++ b/apps/GMAP-GSNAP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gmap_gsnap_module'] = { + 'widget' => 'module_load', + 'module' => "GMAP-GSNAP", + 'label' => "GMAP-GSNAP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gmap_gsnap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GMAP-GSNAP/manifest.yml b/apps/GMAP-GSNAP/manifest.yml new file mode 100644 index 00000000..c0775da9 --- /dev/null +++ b/apps/GMAP-GSNAP/manifest.yml @@ -0,0 +1,5 @@ +name: GMAP-GSNAP +category: Biology +description: 'GMAP: A Genomic Mapping and Alignment Program for mRNA and EST Sequences GSNAP: Genomic Short-read Nucleotide Alignment Program.' +homepage: http://research-pub.gene.com/gmap/ +hidden: true diff --git a/apps/GMP/form.yml.erb b/apps/GMP/form.yml.erb new file mode 100644 index 00000000..ebb0280d --- /dev/null +++ b/apps/GMP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gmp_module'] = { + 'widget' => 'module_load', + 'module' => "GMP", + 'label' => "GMP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gmp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GMP/manifest.yml b/apps/GMP/manifest.yml new file mode 100644 index 00000000..0253bfe2 --- /dev/null +++ b/apps/GMP/manifest.yml @@ -0,0 +1,5 @@ +name: GMP +category: Mathematics +description: GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. +homepage: https://gmplib.org/ +hidden: true diff --git a/apps/GOLD/form.yml.erb b/apps/GOLD/form.yml.erb new file mode 100644 index 00000000..0c0291e1 --- /dev/null +++ b/apps/GOLD/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gold_module'] = { + 'widget' => 'module_load', + 'module' => "GOLD", + 'label' => "GOLD Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gold_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GOLD/icon.png b/apps/GOLD/icon.png new file mode 100644 index 00000000..f4202c73 Binary files /dev/null and b/apps/GOLD/icon.png differ diff --git a/apps/GOLD/manifest.yml b/apps/GOLD/manifest.yml new file mode 100644 index 00000000..c1ab3bf4 --- /dev/null +++ b/apps/GOLD/manifest.yml @@ -0,0 +1,6 @@ +name: GOLD +category: Biology +description: A genetic algorithm for docking flexible ligands into protein binding sites. +homepage: https://www.ccdc.cam.ac.uk/solutions/csd-discovery/Components/Gold/ +icon: icon.png +hidden: true diff --git a/apps/GPAW/form.yml.erb b/apps/GPAW/form.yml.erb new file mode 100644 index 00000000..52269f21 --- /dev/null +++ b/apps/GPAW/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gpaw_module'] = { + 'widget' => 'module_load', + 'module' => "GPAW", + 'label' => "GPAW Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gpaw_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GPAW/icon.svg b/apps/GPAW/icon.svg new file mode 100644 index 00000000..1692ca90 --- /dev/null +++ b/apps/GPAW/icon.svg @@ -0,0 +1,109 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/apps/GPAW/manifest.yml b/apps/GPAW/manifest.yml new file mode 100644 index 00000000..9818d7fc --- /dev/null +++ b/apps/GPAW/manifest.yml @@ -0,0 +1,6 @@ +name: GPAW +category: Chemistry +description: GPAW is a density-functional theory (DFT) Python code based on the projector-augmented wave (PAW) method and the atomic simulation environment (ASE). +homepage: https://wiki.fysik.dtu.dk/gpaw/ +icon: icon.svg +hidden: true diff --git a/apps/GPUMD/form.yml.erb b/apps/GPUMD/form.yml.erb new file mode 100644 index 00000000..e916d122 --- /dev/null +++ b/apps/GPUMD/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gpumd_module'] = { + 'widget' => 'module_load', + 'module' => "GPUMD", + 'label' => "GPUMD Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gpumd_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GPUMD/icon.png b/apps/GPUMD/icon.png new file mode 100644 index 00000000..14e49ca5 Binary files /dev/null and b/apps/GPUMD/icon.png differ diff --git a/apps/GPUMD/manifest.yml b/apps/GPUMD/manifest.yml new file mode 100644 index 00000000..535b8ef0 --- /dev/null +++ b/apps/GPUMD/manifest.yml @@ -0,0 +1,6 @@ +name: GPUMD +category: Chemistry +description: GPUMD stands for Graphics Processing Units Molecular Dynamics. +homepage: https://gpumd.org/ +icon: icon.png +hidden: true diff --git a/apps/GRASS/form.yml.erb b/apps/GRASS/form.yml.erb new file mode 100644 index 00000000..1dc946d4 --- /dev/null +++ b/apps/GRASS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['grass_module'] = { + 'widget' => 'module_load', + 'module' => "GRASS", + 'label' => "GRASS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{grass_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GRASS/icon.png b/apps/GRASS/icon.png new file mode 100644 index 00000000..415949e1 Binary files /dev/null and b/apps/GRASS/icon.png differ diff --git a/apps/GRASS/manifest.yml b/apps/GRASS/manifest.yml new file mode 100644 index 00000000..c251460e --- /dev/null +++ b/apps/GRASS/manifest.yml @@ -0,0 +1,6 @@ +name: GRASS +category: Earth Science +description: The Geographic Resources Analysis Support System - used for geospatial data management and analysis, image processing, graphics and maps production, spatial modeling, and visualization. +homepage: http://grass.osgeo.org +icon: icon.png +hidden: true diff --git a/apps/GRIDSS/form.yml.erb b/apps/GRIDSS/form.yml.erb new file mode 100644 index 00000000..5c052eb2 --- /dev/null +++ b/apps/GRIDSS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gridss_module'] = { + 'widget' => 'module_load', + 'module' => "GRIDSS", + 'label' => "GRIDSS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gridss_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GRIDSS/manifest.yml b/apps/GRIDSS/manifest.yml new file mode 100644 index 00000000..9def80ba --- /dev/null +++ b/apps/GRIDSS/manifest.yml @@ -0,0 +1,5 @@ +name: GRIDSS +category: Biology +description: GRIDSS is a module software suite containing tools useful for the detection of genomic rearrangements. +homepage: https://github.com/PapenfussLab/gridss/wiki/GRIDSS-Documentation +hidden: true diff --git a/apps/GROMACS/form.yml.erb b/apps/GROMACS/form.yml.erb new file mode 100644 index 00000000..17c7c7b1 --- /dev/null +++ b/apps/GROMACS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gromacs_module'] = { + 'widget' => 'module_load', + 'module' => "GROMACS", + 'label' => "GROMACS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gromacs_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GROMACS/icon.png b/apps/GROMACS/icon.png new file mode 100644 index 00000000..7f85eb88 Binary files /dev/null and b/apps/GROMACS/icon.png differ diff --git a/apps/GROMACS/manifest.yml b/apps/GROMACS/manifest.yml new file mode 100644 index 00000000..a5bb009a --- /dev/null +++ b/apps/GROMACS/manifest.yml @@ -0,0 +1,6 @@ +name: GROMACS +category: Chemistry +description: GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles. +homepage: http://www.gromacs.org +icon: icon.png +hidden: true diff --git a/apps/GTDB-Tk/form.yml.erb b/apps/GTDB-Tk/form.yml.erb new file mode 100644 index 00000000..2fbdf158 --- /dev/null +++ b/apps/GTDB-Tk/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gtdb_tk_module'] = { + 'widget' => 'module_load', + 'module' => "GTDB-Tk", + 'label' => "GTDB-Tk Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gtdb_tk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GTDB-Tk/manifest.yml b/apps/GTDB-Tk/manifest.yml new file mode 100644 index 00000000..107cf848 --- /dev/null +++ b/apps/GTDB-Tk/manifest.yml @@ -0,0 +1,5 @@ +name: GTDB-Tk +category: Biology +description: A toolkit for assigning objective taxonomic classifications to bacterial and archaeal genomes. +homepage: https://github.com/Ecogenomics/GTDBTk +hidden: true diff --git a/apps/GUSHR/form.yml.erb b/apps/GUSHR/form.yml.erb new file mode 100644 index 00000000..c823871e --- /dev/null +++ b/apps/GUSHR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gushr_module'] = { + 'widget' => 'module_load', + 'module' => "GUSHR", + 'label' => "GUSHR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gushr_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GUSHR/manifest.yml b/apps/GUSHR/manifest.yml new file mode 100644 index 00000000..9e446f7c --- /dev/null +++ b/apps/GUSHR/manifest.yml @@ -0,0 +1,5 @@ +name: GUSHR +category: Biology +description: Assembly-free construction of UTRs from short read RNA-Seq data on the basis of coding sequence annotation. +homepage: https://github.com/Gaius-Augustus/GUSHR +hidden: true diff --git a/apps/Gaussian/form.yml.erb b/apps/Gaussian/form.yml.erb new file mode 100644 index 00000000..90de0fd7 --- /dev/null +++ b/apps/Gaussian/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gaussian_module'] = { + 'widget' => 'module_load', + 'module' => "Gaussian", + 'label' => "Gaussian Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gaussian_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Gaussian/icon.png b/apps/Gaussian/icon.png new file mode 100644 index 00000000..a53728be Binary files /dev/null and b/apps/Gaussian/icon.png differ diff --git a/apps/Gaussian/manifest.yml b/apps/Gaussian/manifest.yml new file mode 100644 index 00000000..fad00d39 --- /dev/null +++ b/apps/Gaussian/manifest.yml @@ -0,0 +1,5 @@ +name: Gaussian +category: Chemistry +description: Gaussian application. +icon: icon.png +hidden: true diff --git a/apps/GeneMark-ES/form.yml.erb b/apps/GeneMark-ES/form.yml.erb new file mode 100644 index 00000000..10efcbba --- /dev/null +++ b/apps/GeneMark-ES/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['genemark_es_module'] = { + 'widget' => 'module_load', + 'module' => "GeneMark-ES", + 'label' => "GeneMark-ES Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{genemark_es_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GeneMark-ES/manifest.yml b/apps/GeneMark-ES/manifest.yml new file mode 100644 index 00000000..6d7543b3 --- /dev/null +++ b/apps/GeneMark-ES/manifest.yml @@ -0,0 +1,5 @@ +name: GeneMark-ES +category: Biology +description: Eukaryotic gene prediction suite with automatic training. +homepage: http://exon.gatech.edu/GeneMark/gmes_instructions.html +hidden: true diff --git a/apps/GeneMark-ET/form.yml.erb b/apps/GeneMark-ET/form.yml.erb new file mode 100644 index 00000000..0cd59678 --- /dev/null +++ b/apps/GeneMark-ET/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['genemark_et_module'] = { + 'widget' => 'module_load', + 'module' => "GeneMark-ET", + 'label' => "GeneMark-ET Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{genemark_et_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GeneMark-ET/manifest.yml b/apps/GeneMark-ET/manifest.yml new file mode 100644 index 00000000..5ade99d2 --- /dev/null +++ b/apps/GeneMark-ET/manifest.yml @@ -0,0 +1,5 @@ +name: GeneMark-ET +category: Others +description: Eukaryotic gene prediction suite with automatic training. +homepage: http://exon.gatech.edu/GeneMark +hidden: true diff --git a/apps/GenoVi/form.yml.erb b/apps/GenoVi/form.yml.erb new file mode 100644 index 00000000..3a847c4b --- /dev/null +++ b/apps/GenoVi/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['genovi_module'] = { + 'widget' => 'module_load', + 'module' => "GenoVi", + 'label' => "GenoVi Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{genovi_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GenoVi/manifest.yml b/apps/GenoVi/manifest.yml new file mode 100644 index 00000000..e5dc2cc5 --- /dev/null +++ b/apps/GenoVi/manifest.yml @@ -0,0 +1,5 @@ +name: GenoVi +category: Biology +description: Generates circular genome representations for complete, draft, and multiple bacterial and archaeal genomes. +homepage: https://www.repeatmasker.org/ +hidden: true diff --git a/apps/GenomeThreader/form.yml.erb b/apps/GenomeThreader/form.yml.erb new file mode 100644 index 00000000..2be90940 --- /dev/null +++ b/apps/GenomeThreader/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['genomethreader_module'] = { + 'widget' => 'module_load', + 'module' => "GenomeThreader", + 'label' => "GenomeThreader Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{genomethreader_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GenomeThreader/manifest.yml b/apps/GenomeThreader/manifest.yml new file mode 100644 index 00000000..33751e3a --- /dev/null +++ b/apps/GenomeThreader/manifest.yml @@ -0,0 +1,5 @@ +name: GenomeThreader +category: Biology +description: GenomeThreader is a software tool to compute gene structure predictions. +homepage: http://genomethreader.org +hidden: true diff --git a/apps/GetOrganelle/form.yml.erb b/apps/GetOrganelle/form.yml.erb new file mode 100644 index 00000000..e9d4e943 --- /dev/null +++ b/apps/GetOrganelle/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['getorganelle_module'] = { + 'widget' => 'module_load', + 'module' => "GetOrganelle", + 'label' => "GetOrganelle Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{getorganelle_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GetOrganelle/manifest.yml b/apps/GetOrganelle/manifest.yml new file mode 100644 index 00000000..fe49a782 --- /dev/null +++ b/apps/GetOrganelle/manifest.yml @@ -0,0 +1,5 @@ +name: GetOrganelle +category: Biology +description: Toolkit to assemble organelle genome from genomic skimming data. +homepage: https://github.com/Kinggerm/GetOrganelle +hidden: true diff --git a/apps/GlimmerHMM/form.yml.erb b/apps/GlimmerHMM/form.yml.erb new file mode 100644 index 00000000..f4435117 --- /dev/null +++ b/apps/GlimmerHMM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['glimmerhmm_module'] = { + 'widget' => 'module_load', + 'module' => "GlimmerHMM", + 'label' => "GlimmerHMM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{glimmerhmm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/GlimmerHMM/manifest.yml b/apps/GlimmerHMM/manifest.yml new file mode 100644 index 00000000..c1d35f5e --- /dev/null +++ b/apps/GlimmerHMM/manifest.yml @@ -0,0 +1,5 @@ +name: GlimmerHMM +category: Biology +description: Gene finder based on a Generalized Hidden Markov Model. +homepage: https://ccb.jhu.edu/software/glimmerhmm +hidden: true diff --git a/apps/Go/form.yml.erb b/apps/Go/form.yml.erb new file mode 100644 index 00000000..ee0ae24e --- /dev/null +++ b/apps/Go/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['go_module'] = { + 'widget' => 'module_load', + 'module' => "Go", + 'label' => "Go Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{go_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Go/icon.png b/apps/Go/icon.png new file mode 100644 index 00000000..f68a065d Binary files /dev/null and b/apps/Go/icon.png differ diff --git a/apps/Go/manifest.yml b/apps/Go/manifest.yml new file mode 100644 index 00000000..d49ae4c6 --- /dev/null +++ b/apps/Go/manifest.yml @@ -0,0 +1,6 @@ +name: Go +category: Language +description: An open source programming language. +homepage: http://www.golang.org +icon: icon.png +hidden: true diff --git a/apps/Gubbins/form.yml.erb b/apps/Gubbins/form.yml.erb new file mode 100644 index 00000000..80588c10 --- /dev/null +++ b/apps/Gubbins/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gubbins_module'] = { + 'widget' => 'module_load', + 'module' => "Gubbins", + 'label' => "Gubbins Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gubbins_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Gubbins/manifest.yml b/apps/Gubbins/manifest.yml new file mode 100644 index 00000000..a5cd35ef --- /dev/null +++ b/apps/Gubbins/manifest.yml @@ -0,0 +1,5 @@ +name: Gubbins +category: Biology +description: Genealogies Unbiased By recomBinations In Nucleotide Sequences. +homepage: https://sanger-pathogens.github.io/gubbins/ +hidden: true diff --git a/apps/HAL/form.yml.erb b/apps/HAL/form.yml.erb new file mode 100644 index 00000000..82683c90 --- /dev/null +++ b/apps/HAL/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['hal_module'] = { + 'widget' => 'module_load', + 'module' => "HAL", + 'label' => "HAL Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{hal_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/HAL/manifest.yml b/apps/HAL/manifest.yml new file mode 100644 index 00000000..4279286b --- /dev/null +++ b/apps/HAL/manifest.yml @@ -0,0 +1,7 @@ +name: HAL +category: Biology +description: HAL is a structure to efficiently store and index multiple genome alignments and ancestral reconstructions. +homepage: 'https://github.com/ComparativeGenomicsToolkit/hal + + This package includes the HAL API and several analysis and conversion tools which are described below. HAL files are presently stored in either HDF5 or mmap format, but we note that the tools and most of the API are format-independent, so other databases could be implemented in the future.' +hidden: true diff --git a/apps/HISAT2/form.yml.erb b/apps/HISAT2/form.yml.erb new file mode 100644 index 00000000..ff259566 --- /dev/null +++ b/apps/HISAT2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['hisat2_module'] = { + 'widget' => 'module_load', + 'module' => "HISAT2", + 'label' => "HISAT2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{hisat2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/HISAT2/icon.png b/apps/HISAT2/icon.png new file mode 100644 index 00000000..59e200a6 Binary files /dev/null and b/apps/HISAT2/icon.png differ diff --git a/apps/HISAT2/manifest.yml b/apps/HISAT2/manifest.yml new file mode 100644 index 00000000..50602b8e --- /dev/null +++ b/apps/HISAT2/manifest.yml @@ -0,0 +1,6 @@ +name: HISAT2 +category: Biology +description: HISAT2 is a fast and sensitive alignment program for mapping next-generation sequencing reads (both DNA and RNA) against the general human population (as well as against a single reference genome). +homepage: https://daehwankimlab.github.io/hisat2 +icon: icon.png +hidden: true diff --git a/apps/HMMER/form.yml.erb b/apps/HMMER/form.yml.erb new file mode 100644 index 00000000..fadab93a --- /dev/null +++ b/apps/HMMER/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['hmmer_module'] = { + 'widget' => 'module_load', + 'module' => "HMMER", + 'label' => "HMMER Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{hmmer_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/HMMER/icon.png b/apps/HMMER/icon.png new file mode 100644 index 00000000..8faaedf3 Binary files /dev/null and b/apps/HMMER/icon.png differ diff --git a/apps/HMMER/manifest.yml b/apps/HMMER/manifest.yml new file mode 100644 index 00000000..6b54e202 --- /dev/null +++ b/apps/HMMER/manifest.yml @@ -0,0 +1,6 @@ +name: HMMER +category: Biology +description: HMMER is used for searching sequence databases for homologs of protein sequences, and for making protein sequence alignments. +homepage: http://hmmer.org/ +icon: icon.png +hidden: true diff --git a/apps/HMMER2/form.yml.erb b/apps/HMMER2/form.yml.erb new file mode 100644 index 00000000..1e5f8aaa --- /dev/null +++ b/apps/HMMER2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['hmmer2_module'] = { + 'widget' => 'module_load', + 'module' => "HMMER2", + 'label' => "HMMER2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{hmmer2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/HMMER2/icon.png b/apps/HMMER2/icon.png new file mode 100644 index 00000000..8faaedf3 Binary files /dev/null and b/apps/HMMER2/icon.png differ diff --git a/apps/HMMER2/manifest.yml b/apps/HMMER2/manifest.yml new file mode 100644 index 00000000..5b9f648f --- /dev/null +++ b/apps/HMMER2/manifest.yml @@ -0,0 +1,6 @@ +name: HMMER2 +category: Biology +description: HMMER is used for searching sequence databases for homologs of protein sequences, and for making protein sequence alignments. +homepage: http://hmmer.org +icon: icon.png +hidden: true diff --git a/apps/HTSeq/form.yml.erb b/apps/HTSeq/form.yml.erb new file mode 100644 index 00000000..658751fb --- /dev/null +++ b/apps/HTSeq/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['htseq_module'] = { + 'widget' => 'module_load', + 'module' => "HTSeq", + 'label' => "HTSeq Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{htseq_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/HTSeq/manifest.yml b/apps/HTSeq/manifest.yml new file mode 100644 index 00000000..560aa376 --- /dev/null +++ b/apps/HTSeq/manifest.yml @@ -0,0 +1,5 @@ +name: HTSeq +category: Biology +description: HTSeq is a Python library to facilitate processing and analysis of data from high-throughput sequencing (HTS) experiments. +homepage: https://github.com/simon-anders/htseq +hidden: true diff --git a/apps/HTSlib/form.yml.erb b/apps/HTSlib/form.yml.erb new file mode 100644 index 00000000..79b61d8f --- /dev/null +++ b/apps/HTSlib/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['htslib_module'] = { + 'widget' => 'module_load', + 'module' => "HTSlib", + 'label' => "HTSlib Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{htslib_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/HTSlib/manifest.yml b/apps/HTSlib/manifest.yml new file mode 100644 index 00000000..c809add7 --- /dev/null +++ b/apps/HTSlib/manifest.yml @@ -0,0 +1,5 @@ +name: HTSlib +category: Biology +description: A C library for reading/writing high-throughput sequencing data. +homepage: http://www.htslib.org/ +hidden: true diff --git a/apps/Humann/form.yml.erb b/apps/Humann/form.yml.erb new file mode 100644 index 00000000..02df707f --- /dev/null +++ b/apps/Humann/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['humann_module'] = { + 'widget' => 'module_load', + 'module' => "Humann", + 'label' => "Humann Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{humann_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Humann/manifest.yml b/apps/Humann/manifest.yml new file mode 100644 index 00000000..b5ae8421 --- /dev/null +++ b/apps/Humann/manifest.yml @@ -0,0 +1,5 @@ +name: Humann +category: Biology +description: Pipeline for efficiently and accurately determining the coverage and abundance of microbial pathways in a community from metagenomic data. +homepage: https://huttenhower.sph.harvard.edu/humann +hidden: true diff --git a/apps/HybPiper/form.yml.erb b/apps/HybPiper/form.yml.erb new file mode 100644 index 00000000..ba143b4c --- /dev/null +++ b/apps/HybPiper/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['hybpiper_module'] = { + 'widget' => 'module_load', + 'module' => "HybPiper", + 'label' => "HybPiper Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{hybpiper_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/HybPiper/icon.png b/apps/HybPiper/icon.png new file mode 100644 index 00000000..246140f9 Binary files /dev/null and b/apps/HybPiper/icon.png differ diff --git a/apps/HybPiper/manifest.yml b/apps/HybPiper/manifest.yml new file mode 100644 index 00000000..42920850 --- /dev/null +++ b/apps/HybPiper/manifest.yml @@ -0,0 +1,6 @@ +name: HybPiper +category: Biology +description: Extracting Coding Sequence and Introns for Phylogenetics from High-Throughput Sequencing Reads Using Target Enrichment. +homepage: https://github.com/mossmatters/HybPiper +icon: icon.png +hidden: true diff --git a/apps/Hypre/form.yml.erb b/apps/Hypre/form.yml.erb new file mode 100644 index 00000000..b6ac79e1 --- /dev/null +++ b/apps/Hypre/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['hypre_module'] = { + 'widget' => 'module_load', + 'module' => "Hypre", + 'label' => "Hypre Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{hypre_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Hypre/icon.png b/apps/Hypre/icon.png new file mode 100644 index 00000000..c63d2f3f Binary files /dev/null and b/apps/Hypre/icon.png differ diff --git a/apps/Hypre/manifest.yml b/apps/Hypre/manifest.yml new file mode 100644 index 00000000..d51030f8 --- /dev/null +++ b/apps/Hypre/manifest.yml @@ -0,0 +1,6 @@ +name: Hypre +category: Others +description: Hypre is a library for solving large, sparse linear systems of equations on massively parallel computers. +homepage: https://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods +icon: icon.png +hidden: true diff --git a/apps/IDBA-UD/form.yml.erb b/apps/IDBA-UD/form.yml.erb new file mode 100644 index 00000000..0452a934 --- /dev/null +++ b/apps/IDBA-UD/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['idba_ud_module'] = { + 'widget' => 'module_load', + 'module' => "IDBA-UD", + 'label' => "IDBA-UD Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{idba_ud_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/IDBA-UD/manifest.yml b/apps/IDBA-UD/manifest.yml new file mode 100644 index 00000000..1adc0859 --- /dev/null +++ b/apps/IDBA-UD/manifest.yml @@ -0,0 +1,5 @@ +name: IDBA-UD +category: Biology +description: IDBA-UD is a iterative De Bruijn Graph De Novo Assembler for Short Reads Sequencing data with Highly Uneven Sequencing Depth. +homepage: http://i.cs.hku.hk/~alse/hkubrg/projects/idba_ud/ +hidden: true diff --git a/apps/IQ-TREE/form.yml.erb b/apps/IQ-TREE/form.yml.erb new file mode 100644 index 00000000..1dd95790 --- /dev/null +++ b/apps/IQ-TREE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['iq_tree_module'] = { + 'widget' => 'module_load', + 'module' => "IQ-TREE", + 'label' => "IQ-TREE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{iq_tree_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/IQ-TREE/icon.png b/apps/IQ-TREE/icon.png new file mode 100644 index 00000000..166817dc Binary files /dev/null and b/apps/IQ-TREE/icon.png differ diff --git a/apps/IQ-TREE/manifest.yml b/apps/IQ-TREE/manifest.yml new file mode 100644 index 00000000..13928dfc --- /dev/null +++ b/apps/IQ-TREE/manifest.yml @@ -0,0 +1,6 @@ +name: IQ-TREE +category: Biology +description: Efficient phylogenomic software by maximum likelihood. +homepage: http://www.iqtree.org/ +icon: icon.png +hidden: true diff --git a/apps/Infernal/form.yml.erb b/apps/Infernal/form.yml.erb new file mode 100644 index 00000000..7fd7b19b --- /dev/null +++ b/apps/Infernal/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['infernal_module'] = { + 'widget' => 'module_load', + 'module' => "Infernal", + 'label' => "Infernal Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{infernal_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Infernal/icon.png b/apps/Infernal/icon.png new file mode 100644 index 00000000..a93a9afc Binary files /dev/null and b/apps/Infernal/icon.png differ diff --git a/apps/Infernal/manifest.yml b/apps/Infernal/manifest.yml new file mode 100644 index 00000000..737cd254 --- /dev/null +++ b/apps/Infernal/manifest.yml @@ -0,0 +1,6 @@ +name: Infernal +category: Biology +description: Infernal ('INFERence of RNA ALignment') is for searching DNA sequence databases for RNA structure and sequence similarities. +homepage: http://eddylab.org/infernal/ +icon: icon.png +hidden: true diff --git a/apps/InterProScan/form.yml.erb b/apps/InterProScan/form.yml.erb new file mode 100644 index 00000000..56d490b9 --- /dev/null +++ b/apps/InterProScan/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['interproscan_module'] = { + 'widget' => 'module_load', + 'module' => "InterProScan", + 'label' => "InterProScan Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{interproscan_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/InterProScan/manifest.yml b/apps/InterProScan/manifest.yml new file mode 100644 index 00000000..91c9f2ad --- /dev/null +++ b/apps/InterProScan/manifest.yml @@ -0,0 +1,5 @@ +name: InterProScan +category: Biology +description: Sequence analysis application (nucleotide and protein sequences) that combines different protein signature recognition methods into one resource. +homepage: http://www.ebi.ac.uk/interpro/ +hidden: true diff --git a/apps/JAGS/form.yml.erb b/apps/JAGS/form.yml.erb new file mode 100644 index 00000000..8a80e3ae --- /dev/null +++ b/apps/JAGS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['jags_module'] = { + 'widget' => 'module_load', + 'module' => "JAGS", + 'label' => "JAGS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{jags_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/JAGS/manifest.yml b/apps/JAGS/manifest.yml new file mode 100644 index 00000000..297c41f6 --- /dev/null +++ b/apps/JAGS/manifest.yml @@ -0,0 +1,5 @@ +name: JAGS +category: Mathematics +description: Just Another Gibbs Sampler - a program for the statistical analysis of Bayesian hierarchical models by Markov Chain Monte Carlo. +homepage: http://mcmc-jags.sourceforge.net +hidden: true diff --git a/apps/JasPer/form.yml.erb b/apps/JasPer/form.yml.erb new file mode 100644 index 00000000..1313a9be --- /dev/null +++ b/apps/JasPer/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['jasper_module'] = { + 'widget' => 'module_load', + 'module' => "JasPer", + 'label' => "JasPer Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{jasper_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/JasPer/manifest.yml b/apps/JasPer/manifest.yml new file mode 100644 index 00000000..5a9356aa --- /dev/null +++ b/apps/JasPer/manifest.yml @@ -0,0 +1,5 @@ +name: JasPer +category: Others +description: The JasPer Project is an open-source initiative to provide a free software-based reference implementation of the codec specified in the JPEG-2000 Part-1 standard. +homepage: http://www.ece.uvic.ca/~frodo/jasper/ +hidden: true diff --git a/apps/Java/form.yml.erb b/apps/Java/form.yml.erb new file mode 100644 index 00000000..bb272d31 --- /dev/null +++ b/apps/Java/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['java_module'] = { + 'widget' => 'module_load', + 'module' => "Java", + 'label' => "Java Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{java_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Java/icon.png b/apps/Java/icon.png new file mode 100644 index 00000000..4b959ca1 Binary files /dev/null and b/apps/Java/icon.png differ diff --git a/apps/Java/manifest.yml b/apps/Java/manifest.yml new file mode 100644 index 00000000..b7f2715f --- /dev/null +++ b/apps/Java/manifest.yml @@ -0,0 +1,6 @@ +name: Java +category: Language +description: Java Platform, Standard Edition (Java SE) lets you develop and deploy Java applications on desktops and servers. +homepage: http://java.com/ +icon: icon.png +hidden: true diff --git a/apps/Jellyfish/form.yml.erb b/apps/Jellyfish/form.yml.erb new file mode 100644 index 00000000..717c3136 --- /dev/null +++ b/apps/Jellyfish/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['jellyfish_module'] = { + 'widget' => 'module_load', + 'module' => "Jellyfish", + 'label' => "Jellyfish Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{jellyfish_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Jellyfish/icon.jpg b/apps/Jellyfish/icon.jpg new file mode 100644 index 00000000..d6c819a4 Binary files /dev/null and b/apps/Jellyfish/icon.jpg differ diff --git a/apps/Jellyfish/manifest.yml b/apps/Jellyfish/manifest.yml new file mode 100644 index 00000000..3923fa91 --- /dev/null +++ b/apps/Jellyfish/manifest.yml @@ -0,0 +1,6 @@ +name: Jellyfish +category: Biology +description: Jellyfish is a tool for fast, memory-efficient counting of k-mers in DNA. +homepage: http://www.genome.umd.edu/jellyfish.html +icon: icon.jpg +hidden: true diff --git a/apps/Julia/form.yml.erb b/apps/Julia/form.yml.erb new file mode 100644 index 00000000..b6be66c0 --- /dev/null +++ b/apps/Julia/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['julia_module'] = { + 'widget' => 'module_load', + 'module' => "Julia", + 'label' => "Julia Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{julia_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Julia/icon.png b/apps/Julia/icon.png new file mode 100644 index 00000000..2cddc6c6 Binary files /dev/null and b/apps/Julia/icon.png differ diff --git a/apps/Julia/manifest.yml b/apps/Julia/manifest.yml new file mode 100644 index 00000000..f6c8610d --- /dev/null +++ b/apps/Julia/manifest.yml @@ -0,0 +1,6 @@ +name: Julia +category: Language +description: A high-level, high-performance dynamic language for technical computing. +homepage: https://julialang.org/ +icon: icon.png +hidden: true diff --git a/apps/KAT/form.yml.erb b/apps/KAT/form.yml.erb new file mode 100644 index 00000000..75991848 --- /dev/null +++ b/apps/KAT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kat_module'] = { + 'widget' => 'module_load', + 'module' => "KAT", + 'label' => "KAT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kat_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/KAT/manifest.yml b/apps/KAT/manifest.yml new file mode 100644 index 00000000..61af4a9d --- /dev/null +++ b/apps/KAT/manifest.yml @@ -0,0 +1,5 @@ +name: KAT +category: Biology +description: The K-mer Analysis Toolkit (KAT) contains a number of tools that analyse and compare K-mer spectra. +homepage: http://www.earlham.ac.uk/kat-tools +hidden: true diff --git a/apps/KMC/form.yml.erb b/apps/KMC/form.yml.erb new file mode 100644 index 00000000..de2699db --- /dev/null +++ b/apps/KMC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kmc_module'] = { + 'widget' => 'module_load', + 'module' => "KMC", + 'label' => "KMC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kmc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/KMC/manifest.yml b/apps/KMC/manifest.yml new file mode 100644 index 00000000..85ee2ffd --- /dev/null +++ b/apps/KMC/manifest.yml @@ -0,0 +1,5 @@ +name: KMC +category: Biology +description: Disk-based programm for counting k-mers from (possibly gzipped) FASTQ/FASTA files. +homepage: http://sun.aei.polsl.pl/kmc +hidden: true diff --git a/apps/Kaiju/form.yml.erb b/apps/Kaiju/form.yml.erb new file mode 100644 index 00000000..a284fd10 --- /dev/null +++ b/apps/Kaiju/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kaiju_module'] = { + 'widget' => 'module_load', + 'module' => "Kaiju", + 'label' => "Kaiju Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kaiju_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Kaiju/icon.gif b/apps/Kaiju/icon.gif new file mode 100644 index 00000000..4c02b33b Binary files /dev/null and b/apps/Kaiju/icon.gif differ diff --git a/apps/Kaiju/manifest.yml b/apps/Kaiju/manifest.yml new file mode 100644 index 00000000..e5ff99ad --- /dev/null +++ b/apps/Kaiju/manifest.yml @@ -0,0 +1,6 @@ +name: Kaiju +category: Biology +description: Kaiju is a program for sensitive taxonomic classification of high-throughput sequencing reads from metagenomic whole genome sequencing experiments. +homepage: http://kaiju.binf.ku.dk/ +icon: icon.gif +hidden: true diff --git a/apps/Kent_tools/form.yml.erb b/apps/Kent_tools/form.yml.erb new file mode 100644 index 00000000..c7581441 --- /dev/null +++ b/apps/Kent_tools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kent_tools_module'] = { + 'widget' => 'module_load', + 'module' => "Kent_tools", + 'label' => "Kent_tools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kent_tools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Kent_tools/manifest.yml b/apps/Kent_tools/manifest.yml new file mode 100644 index 00000000..d0c74610 --- /dev/null +++ b/apps/Kent_tools/manifest.yml @@ -0,0 +1,5 @@ +name: Kent_tools +category: Biology +description: Collection of tools used by the UCSC genome browser. +homepage: http://genome.cse.ucsc.edu/ +hidden: true diff --git a/apps/KmerGenie/form.yml.erb b/apps/KmerGenie/form.yml.erb new file mode 100644 index 00000000..e46cef55 --- /dev/null +++ b/apps/KmerGenie/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kmergenie_module'] = { + 'widget' => 'module_load', + 'module' => "KmerGenie", + 'label' => "KmerGenie Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kmergenie_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/KmerGenie/manifest.yml b/apps/KmerGenie/manifest.yml new file mode 100644 index 00000000..fe1d8b53 --- /dev/null +++ b/apps/KmerGenie/manifest.yml @@ -0,0 +1,5 @@ +name: KmerGenie +category: Biology +description: KmerGenie estimates the best k-mer length for genome de novo assembly. +homepage: http://kmergenie.bx.psu.edu/ +hidden: true diff --git a/apps/KorfSNAP/form.yml.erb b/apps/KorfSNAP/form.yml.erb new file mode 100644 index 00000000..45fa7e02 --- /dev/null +++ b/apps/KorfSNAP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['korfsnap_module'] = { + 'widget' => 'module_load', + 'module' => "KorfSNAP", + 'label' => "KorfSNAP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{korfsnap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/KorfSNAP/manifest.yml b/apps/KorfSNAP/manifest.yml new file mode 100644 index 00000000..d3a37ec0 --- /dev/null +++ b/apps/KorfSNAP/manifest.yml @@ -0,0 +1,5 @@ +name: KorfSNAP +category: Biology +description: Semi-HMM-based Nucleic Acid Parser. +homepage: http://korflab.ucdavis.edu/software.html +hidden: true diff --git a/apps/Kraken2/form.yml.erb b/apps/Kraken2/form.yml.erb new file mode 100644 index 00000000..add3542a --- /dev/null +++ b/apps/Kraken2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kraken2_module'] = { + 'widget' => 'module_load', + 'module' => "Kraken2", + 'label' => "Kraken2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kraken2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Kraken2/manifest.yml b/apps/Kraken2/manifest.yml new file mode 100644 index 00000000..ec7953d0 --- /dev/null +++ b/apps/Kraken2/manifest.yml @@ -0,0 +1,5 @@ +name: Kraken2 +category: Biology +description: Taxonomic sequence classifier. +homepage: http://ccb.jhu.edu/software/kraken/MANUAL.html +hidden: true diff --git a/apps/KronaTools/form.yml.erb b/apps/KronaTools/form.yml.erb new file mode 100644 index 00000000..8858fd64 --- /dev/null +++ b/apps/KronaTools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kronatools_module'] = { + 'widget' => 'module_load', + 'module' => "KronaTools", + 'label' => "KronaTools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kronatools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/KronaTools/icon.png b/apps/KronaTools/icon.png new file mode 100644 index 00000000..632298b7 Binary files /dev/null and b/apps/KronaTools/icon.png differ diff --git a/apps/KronaTools/manifest.yml b/apps/KronaTools/manifest.yml new file mode 100644 index 00000000..dff2e31a --- /dev/null +++ b/apps/KronaTools/manifest.yml @@ -0,0 +1,6 @@ +name: KronaTools +category: Biology +description: Krona Tools is a set of scripts to create Krona charts from several Bioinformatics tools as well as from text and XML files. +homepage: https://github.com/marbl/Krona/wiki/KronaTools +icon: icon.png +hidden: true diff --git a/apps/LAMMPS/README_icon.md b/apps/LAMMPS/README_icon.md new file mode 100644 index 00000000..885b7506 --- /dev/null +++ b/apps/LAMMPS/README_icon.md @@ -0,0 +1 @@ +The icon is obtained from https://upload.wikimedia.org/wikipedia/commons/3/3a/Slurm_logo.svg \ No newline at end of file diff --git a/apps/LAMMPS/form.yml.erb b/apps/LAMMPS/form.yml.erb new file mode 100644 index 00000000..250ec082 --- /dev/null +++ b/apps/LAMMPS/form.yml.erb @@ -0,0 +1,26 @@ +<% +# Inherit all widgets from GPU Job Script (Slurm), then splice in lammps_module +# immediately before time_days_hours_minutes so it works with any base template +# (GPU or non-GPU) without needing to know which GPU widgets are present. +slurm_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(slurm_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['lammps_module'] = { + 'widget' => 'module_load', + 'module' => 'LAMMPS', + 'label' => 'LAMMPS Module' + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{lammps_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LAMMPS/icon.png b/apps/LAMMPS/icon.png new file mode 100644 index 00000000..33a78766 Binary files /dev/null and b/apps/LAMMPS/icon.png differ diff --git a/apps/LAMMPS/manifest.yml b/apps/LAMMPS/manifest.yml new file mode 100644 index 00000000..d9930ecf --- /dev/null +++ b/apps/LAMMPS/manifest.yml @@ -0,0 +1,6 @@ +name: LAMMPS +category: Chemistry +description: This application generates a job script for LAMMPS. +homepage: http://lammps.sandia.gov/ +icon: icon.png +hidden: true diff --git a/apps/LAST/form.yml.erb b/apps/LAST/form.yml.erb new file mode 100644 index 00000000..4b5ae923 --- /dev/null +++ b/apps/LAST/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['last_module'] = { + 'widget' => 'module_load', + 'module' => "LAST", + 'label' => "LAST Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{last_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LAST/manifest.yml b/apps/LAST/manifest.yml new file mode 100644 index 00000000..f7873517 --- /dev/null +++ b/apps/LAST/manifest.yml @@ -0,0 +1,5 @@ +name: LAST +category: Biology +description: LAST finds similar regions between sequences. +homepage: http://last.cbrc.jp/ +hidden: true diff --git a/apps/LASTZ/form.yml.erb b/apps/LASTZ/form.yml.erb new file mode 100644 index 00000000..dfd1a88d --- /dev/null +++ b/apps/LASTZ/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['lastz_module'] = { + 'widget' => 'module_load', + 'module' => "LASTZ", + 'label' => "LASTZ Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{lastz_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LASTZ/manifest.yml b/apps/LASTZ/manifest.yml new file mode 100644 index 00000000..16960462 --- /dev/null +++ b/apps/LASTZ/manifest.yml @@ -0,0 +1,5 @@ +name: LASTZ +category: Biology +description: LASTZ is a program for aligning DNA sequences, a pairwise aligner. +homepage: http://www.bx.psu.edu/~rsharris/lastz/ +hidden: true diff --git a/apps/LDC/form.yml.erb b/apps/LDC/form.yml.erb new file mode 100644 index 00000000..e21b2ae1 --- /dev/null +++ b/apps/LDC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ldc_module'] = { + 'widget' => 'module_load', + 'module' => "LDC", + 'label' => "LDC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ldc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LDC/icon.png b/apps/LDC/icon.png new file mode 100644 index 00000000..caad611e Binary files /dev/null and b/apps/LDC/icon.png differ diff --git a/apps/LDC/manifest.yml b/apps/LDC/manifest.yml new file mode 100644 index 00000000..025652d0 --- /dev/null +++ b/apps/LDC/manifest.yml @@ -0,0 +1,6 @@ +name: LDC +category: Language +description: D programming language compiler. +homepage: http://wiki.dlang.org/LDC +icon: icon.png +hidden: true diff --git a/apps/LEfSe/form.yml.erb b/apps/LEfSe/form.yml.erb new file mode 100644 index 00000000..e8c134db --- /dev/null +++ b/apps/LEfSe/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['lefse_module'] = { + 'widget' => 'module_load', + 'module' => "LEfSe", + 'label' => "LEfSe Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{lefse_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LEfSe/manifest.yml b/apps/LEfSe/manifest.yml new file mode 100644 index 00000000..1a8beeea --- /dev/null +++ b/apps/LEfSe/manifest.yml @@ -0,0 +1,5 @@ +name: LEfSe +category: Biology +description: Determines the features most likely to explain differences between classes by coupling standard tests for statistical significance with additional tests encoding biological consistency and effect relevance. +homepage: https://cole-trapnell-lab.github.io/monocle3/ +hidden: true diff --git a/apps/LIBSVM/form.yml.erb b/apps/LIBSVM/form.yml.erb new file mode 100644 index 00000000..3bfc1497 --- /dev/null +++ b/apps/LIBSVM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['libsvm_module'] = { + 'widget' => 'module_load', + 'module' => "LIBSVM", + 'label' => "LIBSVM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{libsvm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LIBSVM/icon.png b/apps/LIBSVM/icon.png new file mode 100644 index 00000000..75de37f5 Binary files /dev/null and b/apps/LIBSVM/icon.png differ diff --git a/apps/LIBSVM/manifest.yml b/apps/LIBSVM/manifest.yml new file mode 100644 index 00000000..2c15eaf5 --- /dev/null +++ b/apps/LIBSVM/manifest.yml @@ -0,0 +1,6 @@ +name: LIBSVM +category: Others +description: LIBSVM is an integrated software for support vector classification, (C-SVC, nu-SVC), regression (epsilon-SVR, nu-SVR) and distribution estimation (one-class SVM). +homepage: https://www.csie.ntu.edu.tw/~cjlin/libsvm/ +icon: icon.png +hidden: true diff --git a/apps/LINKS/form.yml.erb b/apps/LINKS/form.yml.erb new file mode 100644 index 00000000..f7e2d65f --- /dev/null +++ b/apps/LINKS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['links_module'] = { + 'widget' => 'module_load', + 'module' => "LINKS", + 'label' => "LINKS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{links_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LINKS/icon.png b/apps/LINKS/icon.png new file mode 100644 index 00000000..74c714c5 Binary files /dev/null and b/apps/LINKS/icon.png differ diff --git a/apps/LINKS/manifest.yml b/apps/LINKS/manifest.yml new file mode 100644 index 00000000..2a6704fa --- /dev/null +++ b/apps/LINKS/manifest.yml @@ -0,0 +1,6 @@ +name: LINKS +category: Biology +description: Alignment-free scaffolding of genome assembly drafts with long reads. +homepage: http://www.bcgsc.ca/bioinfo/software/links +icon: icon.png +hidden: true diff --git a/apps/LISFLOOD-FP/form.yml.erb b/apps/LISFLOOD-FP/form.yml.erb new file mode 100644 index 00000000..3792cc02 --- /dev/null +++ b/apps/LISFLOOD-FP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['lisflood_fp_module'] = { + 'widget' => 'module_load', + 'module' => "LISFLOOD-FP", + 'label' => "LISFLOOD-FP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{lisflood_fp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LISFLOOD-FP/manifest.yml b/apps/LISFLOOD-FP/manifest.yml new file mode 100644 index 00000000..7d1152b5 --- /dev/null +++ b/apps/LISFLOOD-FP/manifest.yml @@ -0,0 +1,5 @@ +name: LISFLOOD-FP +category: Others +description: The LISFLOOD-FP is a raster-based hydrodynamic model originally developed by the University of Bristol. +homepage: https://www.seamlesswave.com/LISFLOOD8.0.html +hidden: true diff --git a/apps/LSD2/form.yml.erb b/apps/LSD2/form.yml.erb new file mode 100644 index 00000000..9da764e4 --- /dev/null +++ b/apps/LSD2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['lsd2_module'] = { + 'widget' => 'module_load', + 'module' => "LSD2", + 'label' => "LSD2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{lsd2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LSD2/manifest.yml b/apps/LSD2/manifest.yml new file mode 100644 index 00000000..1fa104dc --- /dev/null +++ b/apps/LSD2/manifest.yml @@ -0,0 +1,5 @@ +name: LSD2 +category: Biology +description: Least-squares methods to estimate rates and dates from phylogenies. +homepage: https://github.com/tothuhien/lsd2 +hidden: true diff --git a/apps/LTR_retriever/form.yml.erb b/apps/LTR_retriever/form.yml.erb new file mode 100644 index 00000000..177ae711 --- /dev/null +++ b/apps/LTR_retriever/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ltr_retriever_module'] = { + 'widget' => 'module_load', + 'module' => "LTR_retriever", + 'label' => "LTR_retriever Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ltr_retriever_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LTR_retriever/manifest.yml b/apps/LTR_retriever/manifest.yml new file mode 100644 index 00000000..5388a2c3 --- /dev/null +++ b/apps/LTR_retriever/manifest.yml @@ -0,0 +1,5 @@ +name: LTR_retriever +category: Biology +description: Highly accurate and sensitive program for identification of LTR retrotransposons; The LTR Assembly Index (LAI) is also included in this package. +homepage: https://github.com/oushujun/LTR_retriever +hidden: true diff --git a/apps/LUMPY/form.yml.erb b/apps/LUMPY/form.yml.erb new file mode 100644 index 00000000..b3bc41f6 --- /dev/null +++ b/apps/LUMPY/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['lumpy_module'] = { + 'widget' => 'module_load', + 'module' => "LUMPY", + 'label' => "LUMPY Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{lumpy_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LUMPY/manifest.yml b/apps/LUMPY/manifest.yml new file mode 100644 index 00000000..b9ce685f --- /dev/null +++ b/apps/LUMPY/manifest.yml @@ -0,0 +1,5 @@ +name: LUMPY +category: Biology +description: A probabilistic framework for structural variant discovery. +homepage: https://github.com/arq5x/lumpy-sv +hidden: true diff --git a/apps/Liftoff/form.yml.erb b/apps/Liftoff/form.yml.erb new file mode 100644 index 00000000..c456a342 --- /dev/null +++ b/apps/Liftoff/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['liftoff_module'] = { + 'widget' => 'module_load', + 'module' => "Liftoff", + 'label' => "Liftoff Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{liftoff_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Liftoff/icon.svg b/apps/Liftoff/icon.svg new file mode 100644 index 00000000..806edc49 --- /dev/null +++ b/apps/Liftoff/icon.svg @@ -0,0 +1,591 @@ + +image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/Liftoff/manifest.yml b/apps/Liftoff/manifest.yml new file mode 100644 index 00000000..21a6cac8 --- /dev/null +++ b/apps/Liftoff/manifest.yml @@ -0,0 +1,6 @@ +name: Liftoff +category: Biology +description: Tool that accurately maps annotations in GFF or GTF between assemblies of the same, or closely-related species. +homepage: https://github.com/agshumate/Liftoff +icon: icon.svg +hidden: true diff --git a/apps/LongStitch/form.yml.erb b/apps/LongStitch/form.yml.erb new file mode 100644 index 00000000..29344a59 --- /dev/null +++ b/apps/LongStitch/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['longstitch_module'] = { + 'widget' => 'module_load', + 'module' => "LongStitch", + 'label' => "LongStitch Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{longstitch_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/LongStitch/icon.png b/apps/LongStitch/icon.png new file mode 100644 index 00000000..3d7a3cd5 Binary files /dev/null and b/apps/LongStitch/icon.png differ diff --git a/apps/LongStitch/manifest.yml b/apps/LongStitch/manifest.yml new file mode 100644 index 00000000..b87d95cc --- /dev/null +++ b/apps/LongStitch/manifest.yml @@ -0,0 +1,6 @@ +name: LongStitch +category: Biology +description: A genome assembly correction and scaffolding pipeline using long reads. +homepage: https://github.com/bcgsc/LongStitch +icon: icon.png +hidden: true diff --git a/apps/MAFFT/form.yml.erb b/apps/MAFFT/form.yml.erb new file mode 100644 index 00000000..9b83d84c --- /dev/null +++ b/apps/MAFFT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mafft_module'] = { + 'widget' => 'module_load', + 'module' => "MAFFT", + 'label' => "MAFFT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mafft_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MAFFT/manifest.yml b/apps/MAFFT/manifest.yml new file mode 100644 index 00000000..71cccd0a --- /dev/null +++ b/apps/MAFFT/manifest.yml @@ -0,0 +1,5 @@ +name: MAFFT +category: Biology +description: Multiple sequence alignment program offering a range of methods. +homepage: https://mafft.cbrc.jp/alignment/software/ +hidden: true diff --git a/apps/MAKER/form.yml.erb b/apps/MAKER/form.yml.erb new file mode 100644 index 00000000..07e64d4b --- /dev/null +++ b/apps/MAKER/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['maker_module'] = { + 'widget' => 'module_load', + 'module' => "MAKER", + 'label' => "MAKER Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{maker_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MAKER/manifest.yml b/apps/MAKER/manifest.yml new file mode 100644 index 00000000..7317d183 --- /dev/null +++ b/apps/MAKER/manifest.yml @@ -0,0 +1,5 @@ +name: MAKER +category: Biology +description: Genome annotation pipeline. +homepage: http://www.yandell-lab.org/software/maker.html +hidden: true diff --git a/apps/MATLAB/form.yml.erb b/apps/MATLAB/form.yml.erb new file mode 100644 index 00000000..c71372b2 --- /dev/null +++ b/apps/MATLAB/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['matlab_module'] = { + 'widget' => 'module_load', + 'module' => "MATLAB", + 'label' => "MATLAB Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{matlab_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MATLAB/icon.png b/apps/MATLAB/icon.png new file mode 100644 index 00000000..bc37cf67 Binary files /dev/null and b/apps/MATLAB/icon.png differ diff --git a/apps/MATLAB/manifest.yml b/apps/MATLAB/manifest.yml new file mode 100644 index 00000000..155df6d1 --- /dev/null +++ b/apps/MATLAB/manifest.yml @@ -0,0 +1,6 @@ +name: MATLAB +category: Engineering +description: A high-level language and interactive environment for numerical computing. +homepage: http://www.mathworks.com/products/matlab +icon: icon.png +hidden: true diff --git a/apps/MCL/form.yml.erb b/apps/MCL/form.yml.erb new file mode 100644 index 00000000..edc46fac --- /dev/null +++ b/apps/MCL/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mcl_module'] = { + 'widget' => 'module_load', + 'module' => "MCL", + 'label' => "MCL Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mcl_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MCL/manifest.yml b/apps/MCL/manifest.yml new file mode 100644 index 00000000..24c7ebe4 --- /dev/null +++ b/apps/MCL/manifest.yml @@ -0,0 +1,5 @@ +name: MCL +category: Biology +description: The MCL algorithm is short for the Markov Cluster Algorithm, a fast and scalable unsupervised cluster algorithm for graphs (also known as networks) based on simulation of (stochastic) flow in graphs. +homepage: http://micans.org/mcl/ +hidden: true diff --git a/apps/MCR/form.yml.erb b/apps/MCR/form.yml.erb new file mode 100644 index 00000000..28cabd09 --- /dev/null +++ b/apps/MCR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mcr_module'] = { + 'widget' => 'module_load', + 'module' => "MCR", + 'label' => "MCR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mcr_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MCR/icon.png b/apps/MCR/icon.png new file mode 100644 index 00000000..d28f855e Binary files /dev/null and b/apps/MCR/icon.png differ diff --git a/apps/MCR/manifest.yml b/apps/MCR/manifest.yml new file mode 100644 index 00000000..1f7411c7 --- /dev/null +++ b/apps/MCR/manifest.yml @@ -0,0 +1,6 @@ +name: MCR +category: Engineering +description: The Matlab Compiler Runtime is required for running compiled MATLAB executables without MATLAB itself. +homepage: http://www.mathworks.com/products/compiler/mcr.html +icon: icon.png +hidden: true diff --git a/apps/MEGAHIT/form.yml.erb b/apps/MEGAHIT/form.yml.erb new file mode 100644 index 00000000..4342aa63 --- /dev/null +++ b/apps/MEGAHIT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['megahit_module'] = { + 'widget' => 'module_load', + 'module' => "MEGAHIT", + 'label' => "MEGAHIT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{megahit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MEGAHIT/manifest.yml b/apps/MEGAHIT/manifest.yml new file mode 100644 index 00000000..2e934082 --- /dev/null +++ b/apps/MEGAHIT/manifest.yml @@ -0,0 +1,5 @@ +name: MEGAHIT +category: Biology +description: An ultra-fast single-node solution for large and complex metagenomics assembly via succinct de Bruijn graph. +homepage: https://github.com/voutcn/megahit +hidden: true diff --git a/apps/METABOLIC/form.yml.erb b/apps/METABOLIC/form.yml.erb new file mode 100644 index 00000000..f5eb6a1d --- /dev/null +++ b/apps/METABOLIC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metabolic_module'] = { + 'widget' => 'module_load', + 'module' => "METABOLIC", + 'label' => "METABOLIC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metabolic_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/METABOLIC/icon.jpg b/apps/METABOLIC/icon.jpg new file mode 100644 index 00000000..3ad00fef Binary files /dev/null and b/apps/METABOLIC/icon.jpg differ diff --git a/apps/METABOLIC/manifest.yml b/apps/METABOLIC/manifest.yml new file mode 100644 index 00000000..d7ce1694 --- /dev/null +++ b/apps/METABOLIC/manifest.yml @@ -0,0 +1,6 @@ +name: METABOLIC +category: Biology +description: Metabolic And Biogeochemistry anaLyses In microbes. +homepage: https://github.com/AnantharamanLab/METABOLIC/wiki +icon: icon.jpg +hidden: true diff --git a/apps/METIS/form.yml.erb b/apps/METIS/form.yml.erb new file mode 100644 index 00000000..37c4bbce --- /dev/null +++ b/apps/METIS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metis_module'] = { + 'widget' => 'module_load', + 'module' => "METIS", + 'label' => "METIS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metis_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/METIS/manifest.yml b/apps/METIS/manifest.yml new file mode 100644 index 00000000..29dc1ae6 --- /dev/null +++ b/apps/METIS/manifest.yml @@ -0,0 +1,5 @@ +name: METIS +category: Mathematics +description: METIS is a set of serial programs for partitioning graphs, partitioning finite element meshes, and producing fill reducing orderings for sparse matrices. +homepage: http://glaros.dtc.umn.edu/gkhome/metis/metis/overview +hidden: true diff --git a/apps/MMseqs2/form.yml.erb b/apps/MMseqs2/form.yml.erb new file mode 100644 index 00000000..ccca4aab --- /dev/null +++ b/apps/MMseqs2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mmseqs2_module'] = { + 'widget' => 'module_load', + 'module' => "MMseqs2", + 'label' => "MMseqs2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mmseqs2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MMseqs2/icon.png b/apps/MMseqs2/icon.png new file mode 100644 index 00000000..d614c999 Binary files /dev/null and b/apps/MMseqs2/icon.png differ diff --git a/apps/MMseqs2/manifest.yml b/apps/MMseqs2/manifest.yml new file mode 100644 index 00000000..1c2d97b7 --- /dev/null +++ b/apps/MMseqs2/manifest.yml @@ -0,0 +1,6 @@ +name: MMseqs2 +category: Biology +description: 'MMseqs2: ultra fast and sensitive search and clustering suite.' +homepage: https://mmseqs.com +icon: icon.png +hidden: true diff --git a/apps/MPFR/form.yml.erb b/apps/MPFR/form.yml.erb new file mode 100644 index 00000000..cd4078cc --- /dev/null +++ b/apps/MPFR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mpfr_module'] = { + 'widget' => 'module_load', + 'module' => "MPFR", + 'label' => "MPFR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mpfr_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MPFR/icon.png b/apps/MPFR/icon.png new file mode 100644 index 00000000..11c6990d Binary files /dev/null and b/apps/MPFR/icon.png differ diff --git a/apps/MPFR/manifest.yml b/apps/MPFR/manifest.yml new file mode 100644 index 00000000..c2c30bd1 --- /dev/null +++ b/apps/MPFR/manifest.yml @@ -0,0 +1,6 @@ +name: MPFR +category: Mathematics +description: The MPFR library is a C library for multiple-precision floating-point computations with correct rounding. +homepage: http://www.mpfr.org +icon: icon.png +hidden: true diff --git a/apps/MUMPS/form.yml.erb b/apps/MUMPS/form.yml.erb new file mode 100644 index 00000000..ceb386cc --- /dev/null +++ b/apps/MUMPS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mumps_module'] = { + 'widget' => 'module_load', + 'module' => "MUMPS", + 'label' => "MUMPS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mumps_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MUMPS/manifest.yml b/apps/MUMPS/manifest.yml new file mode 100644 index 00000000..a87076ab --- /dev/null +++ b/apps/MUMPS/manifest.yml @@ -0,0 +1,5 @@ +name: MUMPS +category: Mathematics +description: A parallel sparse direct solver. +homepage: https://graal.ens-lyon.fr/MUMPS/ +hidden: true diff --git a/apps/MUMmer/form.yml.erb b/apps/MUMmer/form.yml.erb new file mode 100644 index 00000000..e257c4f5 --- /dev/null +++ b/apps/MUMmer/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mummer_module'] = { + 'widget' => 'module_load', + 'module' => "MUMmer", + 'label' => "MUMmer Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mummer_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MUMmer/manifest.yml b/apps/MUMmer/manifest.yml new file mode 100644 index 00000000..8b0ac1e1 --- /dev/null +++ b/apps/MUMmer/manifest.yml @@ -0,0 +1,5 @@ +name: MUMmer +category: Biology +description: MUMmer is a system for rapidly aligning entire genomes, whether in complete or draft form. +homepage: http://mummer.sourceforge.net/ +hidden: true diff --git a/apps/MUSCLE/form.yml.erb b/apps/MUSCLE/form.yml.erb new file mode 100644 index 00000000..263560ee --- /dev/null +++ b/apps/MUSCLE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['muscle_module'] = { + 'widget' => 'module_load', + 'module' => "MUSCLE", + 'label' => "MUSCLE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{muscle_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MUSCLE/icon.png b/apps/MUSCLE/icon.png new file mode 100644 index 00000000..4404bfb9 Binary files /dev/null and b/apps/MUSCLE/icon.png differ diff --git a/apps/MUSCLE/manifest.yml b/apps/MUSCLE/manifest.yml new file mode 100644 index 00000000..20da0456 --- /dev/null +++ b/apps/MUSCLE/manifest.yml @@ -0,0 +1,6 @@ +name: MUSCLE +category: Biology +description: MUSCLE is a program for creating multiple alignments of amino acid or nucleotide sequences. +homepage: http://drive5.com/muscle/ +icon: icon.png +hidden: true diff --git a/apps/MaSuRCA/form.yml.erb b/apps/MaSuRCA/form.yml.erb new file mode 100644 index 00000000..024e65ea --- /dev/null +++ b/apps/MaSuRCA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['masurca_module'] = { + 'widget' => 'module_load', + 'module' => "MaSuRCA", + 'label' => "MaSuRCA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{masurca_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MaSuRCA/manifest.yml b/apps/MaSuRCA/manifest.yml new file mode 100644 index 00000000..f04b7201 --- /dev/null +++ b/apps/MaSuRCA/manifest.yml @@ -0,0 +1,5 @@ +name: MaSuRCA +category: Biology +description: MaSuRCA is whole genome assembly software. +homepage: http://www.genome.umd.edu/masurca.html +hidden: true diff --git a/apps/Mash/form.yml.erb b/apps/Mash/form.yml.erb new file mode 100644 index 00000000..c0946652 --- /dev/null +++ b/apps/Mash/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mash_module'] = { + 'widget' => 'module_load', + 'module' => "Mash", + 'label' => "Mash Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mash_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Mash/icon.webp b/apps/Mash/icon.webp new file mode 100644 index 00000000..b722bc0b Binary files /dev/null and b/apps/Mash/icon.webp differ diff --git a/apps/Mash/manifest.yml b/apps/Mash/manifest.yml new file mode 100644 index 00000000..f03f2457 --- /dev/null +++ b/apps/Mash/manifest.yml @@ -0,0 +1,6 @@ +name: Mash +category: Biology +description: Fast genome and metagenome distance estimation using MinHash. +homepage: http://mash.readthedocs.org +icon: icon.webp +hidden: true diff --git a/apps/MashMap/form.yml.erb b/apps/MashMap/form.yml.erb new file mode 100644 index 00000000..97aae8b8 --- /dev/null +++ b/apps/MashMap/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mashmap_module'] = { + 'widget' => 'module_load', + 'module' => "MashMap", + 'label' => "MashMap Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mashmap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MashMap/manifest.yml b/apps/MashMap/manifest.yml new file mode 100644 index 00000000..1830522d --- /dev/null +++ b/apps/MashMap/manifest.yml @@ -0,0 +1,5 @@ +name: MashMap +category: Biology +description: Implements a fast and approximate algorithm for computing local alignment boundaries between long DNA sequences. +homepage: https://github.com/marbl/merqury +hidden: true diff --git a/apps/Mashtree/form.yml.erb b/apps/Mashtree/form.yml.erb new file mode 100644 index 00000000..bda871a2 --- /dev/null +++ b/apps/Mashtree/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mashtree_module'] = { + 'widget' => 'module_load', + 'module' => "Mashtree", + 'label' => "Mashtree Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mashtree_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Mashtree/manifest.yml b/apps/Mashtree/manifest.yml new file mode 100644 index 00000000..82e2f5b4 --- /dev/null +++ b/apps/Mashtree/manifest.yml @@ -0,0 +1,5 @@ +name: Mashtree +category: Biology +description: Create a tree using Mash distances. +homepage: https://github.com/lskatz/mashtree +hidden: true diff --git a/apps/MaxBin/form.yml.erb b/apps/MaxBin/form.yml.erb new file mode 100644 index 00000000..3d8d3b19 --- /dev/null +++ b/apps/MaxBin/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['maxbin_module'] = { + 'widget' => 'module_load', + 'module' => "MaxBin", + 'label' => "MaxBin Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{maxbin_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MaxBin/manifest.yml b/apps/MaxBin/manifest.yml new file mode 100644 index 00000000..fe883ddc --- /dev/null +++ b/apps/MaxBin/manifest.yml @@ -0,0 +1,5 @@ +name: MaxBin +category: Biology +description: MaxBin is software for binning assembled metagenomic sequences based on an Expectation-Maximization algorithm. +homepage: https://downloads.jbei.org/data/microbial_communities/MaxBin/MaxBin.html +hidden: true diff --git a/apps/Merqury/form.yml.erb b/apps/Merqury/form.yml.erb new file mode 100644 index 00000000..c1cc39ce --- /dev/null +++ b/apps/Merqury/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['merqury_module'] = { + 'widget' => 'module_load', + 'module' => "Merqury", + 'label' => "Merqury Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{merqury_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Merqury/icon.png b/apps/Merqury/icon.png new file mode 100644 index 00000000..632298b7 Binary files /dev/null and b/apps/Merqury/icon.png differ diff --git a/apps/Merqury/manifest.yml b/apps/Merqury/manifest.yml new file mode 100644 index 00000000..b2c4895c --- /dev/null +++ b/apps/Merqury/manifest.yml @@ -0,0 +1,6 @@ +name: Merqury +category: Biology +description: Evaluate genome assemblies with k-mers and more. +homepage: https://github.com/marbl/merqury +icon: icon.png +hidden: true diff --git a/apps/MetaBAT/form.yml.erb b/apps/MetaBAT/form.yml.erb new file mode 100644 index 00000000..f3d2a854 --- /dev/null +++ b/apps/MetaBAT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metabat_module'] = { + 'widget' => 'module_load', + 'module' => "MetaBAT", + 'label' => "MetaBAT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metabat_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MetaBAT/icon.jpg b/apps/MetaBAT/icon.jpg new file mode 100644 index 00000000..71bbbbfe Binary files /dev/null and b/apps/MetaBAT/icon.jpg differ diff --git a/apps/MetaBAT/manifest.yml b/apps/MetaBAT/manifest.yml new file mode 100644 index 00000000..2fc10b9f --- /dev/null +++ b/apps/MetaBAT/manifest.yml @@ -0,0 +1,6 @@ +name: MetaBAT +category: Biology +description: An efficient tool for accurately reconstructing single genomes from complex microbial communities. +homepage: https://bitbucket.org/berkeleylab/metabat +icon: icon.jpg +hidden: true diff --git a/apps/MetaEuk/form.yml.erb b/apps/MetaEuk/form.yml.erb new file mode 100644 index 00000000..fbfebe46 --- /dev/null +++ b/apps/MetaEuk/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metaeuk_module'] = { + 'widget' => 'module_load', + 'module' => "MetaEuk", + 'label' => "MetaEuk Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metaeuk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MetaEuk/manifest.yml b/apps/MetaEuk/manifest.yml new file mode 100644 index 00000000..26ceff28 --- /dev/null +++ b/apps/MetaEuk/manifest.yml @@ -0,0 +1,5 @@ +name: MetaEuk +category: Biology +description: MetaEuk is a modular toolkit designed for large-scale gene discovery and annotation in eukaryotic metagenomic contigs. +homepage: https://metaeuk.soedinglab.org +hidden: true diff --git a/apps/MetaGeneAnnotator/form.yml.erb b/apps/MetaGeneAnnotator/form.yml.erb new file mode 100644 index 00000000..bd8663aa --- /dev/null +++ b/apps/MetaGeneAnnotator/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metageneannotator_module'] = { + 'widget' => 'module_load', + 'module' => "MetaGeneAnnotator", + 'label' => "MetaGeneAnnotator Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metageneannotator_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MetaGeneAnnotator/manifest.yml b/apps/MetaGeneAnnotator/manifest.yml new file mode 100644 index 00000000..dc7b8737 --- /dev/null +++ b/apps/MetaGeneAnnotator/manifest.yml @@ -0,0 +1,5 @@ +name: MetaGeneAnnotator +category: Biology +description: MetaGeneAnnotator is a gene-finding program for prokaryote and phage. +homepage: http://metagene.nig.ac.jp/ +hidden: true diff --git a/apps/MetaPhlAn/form.yml.erb b/apps/MetaPhlAn/form.yml.erb new file mode 100644 index 00000000..d1def0bd --- /dev/null +++ b/apps/MetaPhlAn/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metaphlan_module'] = { + 'widget' => 'module_load', + 'module' => "MetaPhlAn", + 'label' => "MetaPhlAn Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metaphlan_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MetaPhlAn/manifest.yml b/apps/MetaPhlAn/manifest.yml new file mode 100644 index 00000000..37500454 --- /dev/null +++ b/apps/MetaPhlAn/manifest.yml @@ -0,0 +1,5 @@ +name: MetaPhlAn +category: Biology +description: MetaPhlAn is a computational tool for profiling the composition of microbial communities (Bacteria, Archaea, Eukaryotes and Viruses) from metagenomic shotgun sequencing data (i.e. not 16S) with species-level. +homepage: https://huttenhower.sph.harvard.edu/metaphlan/ +hidden: true diff --git a/apps/MetaPhlAn2/form.yml.erb b/apps/MetaPhlAn2/form.yml.erb new file mode 100644 index 00000000..e3232f33 --- /dev/null +++ b/apps/MetaPhlAn2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metaphlan2_module'] = { + 'widget' => 'module_load', + 'module' => "MetaPhlAn2", + 'label' => "MetaPhlAn2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metaphlan2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MetaPhlAn2/manifest.yml b/apps/MetaPhlAn2/manifest.yml new file mode 100644 index 00000000..2d45aace --- /dev/null +++ b/apps/MetaPhlAn2/manifest.yml @@ -0,0 +1,5 @@ +name: MetaPhlAn2 +category: Biology +description: MetaPhlAn is a computational tool for profiling the composition of microbial communities (Bacteria, Archaea, Eukaryotes and Viruses) from metagenomic shotgun sequencing data (i.e. not 16S) with species-level. +homepage: https://bitbucket.org/%(bitbucket_account)s/%(namelower)s/ +hidden: true diff --git a/apps/MetaSV/form.yml.erb b/apps/MetaSV/form.yml.erb new file mode 100644 index 00000000..9bd5b1df --- /dev/null +++ b/apps/MetaSV/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metasv_module'] = { + 'widget' => 'module_load', + 'module' => "MetaSV", + 'label' => "MetaSV Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metasv_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MetaSV/manifest.yml b/apps/MetaSV/manifest.yml new file mode 100644 index 00000000..0447a387 --- /dev/null +++ b/apps/MetaSV/manifest.yml @@ -0,0 +1,5 @@ +name: MetaSV +category: Biology +description: Structural-variant caller. +homepage: http://bioinform.github.io/metasv/ +hidden: true diff --git a/apps/MetalWalls/form.yml.erb b/apps/MetalWalls/form.yml.erb new file mode 100644 index 00000000..b62a1255 --- /dev/null +++ b/apps/MetalWalls/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metalwalls_module'] = { + 'widget' => 'module_load', + 'module' => "MetalWalls", + 'label' => "MetalWalls Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metalwalls_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MetalWalls/manifest.yml b/apps/MetalWalls/manifest.yml new file mode 100644 index 00000000..f622361f --- /dev/null +++ b/apps/MetalWalls/manifest.yml @@ -0,0 +1,5 @@ +name: MetalWalls +category: Others +description: MetalWalls (MW) is a molecular dynamics code dedicated to the modelling of electrochemical systems. +homepage: https://gitlab.com/ampere2/metalwalls +hidden: true diff --git a/apps/Metaxa2/form.yml.erb b/apps/Metaxa2/form.yml.erb new file mode 100644 index 00000000..7dcfbc60 --- /dev/null +++ b/apps/Metaxa2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metaxa2_module'] = { + 'widget' => 'module_load', + 'module' => "Metaxa2", + 'label' => "Metaxa2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metaxa2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Metaxa2/manifest.yml b/apps/Metaxa2/manifest.yml new file mode 100644 index 00000000..60b319e8 --- /dev/null +++ b/apps/Metaxa2/manifest.yml @@ -0,0 +1,5 @@ +name: Metaxa2 +category: Biology +description: Taxonomic classification of rRNA. +homepage: https://microbiology.se/software/metaxa2/ +hidden: true diff --git a/apps/MiMiC/form.yml.erb b/apps/MiMiC/form.yml.erb new file mode 100644 index 00000000..c2679f86 --- /dev/null +++ b/apps/MiMiC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mimic_module'] = { + 'widget' => 'module_load', + 'module' => "MiMiC", + 'label' => "MiMiC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mimic_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MiMiC/manifest.yml b/apps/MiMiC/manifest.yml new file mode 100644 index 00000000..7f3c0b46 --- /dev/null +++ b/apps/MiMiC/manifest.yml @@ -0,0 +1,5 @@ +name: MiMiC +category: Chemistry +description: 'MiMiC: A Framework for Multiscale Modeling in Computational Chemistry.' +homepage: https://gitlab.com/MiMiC-projects +hidden: true diff --git a/apps/Miniconda3/form.yml.erb b/apps/Miniconda3/form.yml.erb new file mode 100644 index 00000000..05289011 --- /dev/null +++ b/apps/Miniconda3/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['miniconda3_module'] = { + 'widget' => 'module_load', + 'module' => "Miniconda3", + 'label' => "Miniconda3 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{miniconda3_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Miniconda3/icon.png b/apps/Miniconda3/icon.png new file mode 100644 index 00000000..e4bbc69b Binary files /dev/null and b/apps/Miniconda3/icon.png differ diff --git a/apps/Miniconda3/manifest.yml b/apps/Miniconda3/manifest.yml new file mode 100644 index 00000000..d7da6b2a --- /dev/null +++ b/apps/Miniconda3/manifest.yml @@ -0,0 +1,6 @@ +name: Miniconda3 +category: Language +description: A platform for Python-based data analytics. +homepage: https://www.continuum.io/anaconda-overview +icon: icon.png +hidden: true diff --git a/apps/Miniforge3/form.yml.erb b/apps/Miniforge3/form.yml.erb new file mode 100644 index 00000000..b70d92e5 --- /dev/null +++ b/apps/Miniforge3/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['miniforge3_module'] = { + 'widget' => 'module_load', + 'module' => "Miniforge3", + 'label' => "Miniforge3 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{miniforge3_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Miniforge3/icon.svg b/apps/Miniforge3/icon.svg new file mode 100644 index 00000000..a76dfc40 --- /dev/null +++ b/apps/Miniforge3/icon.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/Miniforge3/manifest.yml b/apps/Miniforge3/manifest.yml new file mode 100644 index 00000000..f9fd558c --- /dev/null +++ b/apps/Miniforge3/manifest.yml @@ -0,0 +1,6 @@ +name: Miniforge3 +category: Others +description: Community-led recipes, infrastructure and distributions for conda. +homepage: https://conda-forge.org +icon: icon.svg +hidden: true diff --git a/apps/Minimac3/form.yml.erb b/apps/Minimac3/form.yml.erb new file mode 100644 index 00000000..faa80b99 --- /dev/null +++ b/apps/Minimac3/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['minimac3_module'] = { + 'widget' => 'module_load', + 'module' => "Minimac3", + 'label' => "Minimac3 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{minimac3_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Minimac3/manifest.yml b/apps/Minimac3/manifest.yml new file mode 100644 index 00000000..8c78260c --- /dev/null +++ b/apps/Minimac3/manifest.yml @@ -0,0 +1,5 @@ +name: Minimac3 +category: Biology +description: Low memory and more computationally efficient implementation of the genotype imputation algorithms. +homepage: https://genome.sph.umich.edu/wiki/Minimac3 +hidden: true diff --git a/apps/Minimac4/form.yml.erb b/apps/Minimac4/form.yml.erb new file mode 100644 index 00000000..d5090ebc --- /dev/null +++ b/apps/Minimac4/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['minimac4_module'] = { + 'widget' => 'module_load', + 'module' => "Minimac4", + 'label' => "Minimac4 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{minimac4_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Minimac4/manifest.yml b/apps/Minimac4/manifest.yml new file mode 100644 index 00000000..0c7d7f6f --- /dev/null +++ b/apps/Minimac4/manifest.yml @@ -0,0 +1,5 @@ +name: Minimac4 +category: Biology +description: Low memory and more computationally efficient implementation of the genotype imputation algorithms. +homepage: https://genome.sph.umich.edu/wiki/Minimac4 +hidden: true diff --git a/apps/MitoZ/form.yml.erb b/apps/MitoZ/form.yml.erb new file mode 100644 index 00000000..3eca2fef --- /dev/null +++ b/apps/MitoZ/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mitoz_module'] = { + 'widget' => 'module_load', + 'module' => "MitoZ", + 'label' => "MitoZ Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mitoz_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MitoZ/manifest.yml b/apps/MitoZ/manifest.yml new file mode 100644 index 00000000..d1bde477 --- /dev/null +++ b/apps/MitoZ/manifest.yml @@ -0,0 +1,5 @@ +name: MitoZ +category: Biology +description: Toolkit which aims to automatically filter pair-end raw data, assemble genome, search for mitogenome sequences from the genome assembly result, annotate mitogenome, and mitogenome visualization. +homepage: https://github.com/linzhi2013/MitoZ +hidden: true diff --git a/apps/Mmg/form.yml.erb b/apps/Mmg/form.yml.erb new file mode 100644 index 00000000..519fa520 --- /dev/null +++ b/apps/Mmg/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mmg_module'] = { + 'widget' => 'module_load', + 'module' => "Mmg", + 'label' => "Mmg Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mmg_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Mmg/manifest.yml b/apps/Mmg/manifest.yml new file mode 100644 index 00000000..18c4801d --- /dev/null +++ b/apps/Mmg/manifest.yml @@ -0,0 +1,5 @@ +name: Mmg +category: Others +description: Mmg is an open source software for simplicial remeshing. +homepage: https://www.mmgtools.org/ +hidden: true diff --git a/apps/ModDotPlot/form.yml.erb b/apps/ModDotPlot/form.yml.erb new file mode 100644 index 00000000..7860b389 --- /dev/null +++ b/apps/ModDotPlot/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['moddotplot_module'] = { + 'widget' => 'module_load', + 'module' => "ModDotPlot", + 'label' => "ModDotPlot Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{moddotplot_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ModDotPlot/manifest.yml b/apps/ModDotPlot/manifest.yml new file mode 100644 index 00000000..327975c5 --- /dev/null +++ b/apps/ModDotPlot/manifest.yml @@ -0,0 +1,5 @@ +name: ModDotPlot +category: Biology +description: Novel dot plot visualization tool used to view tandem repeats. +homepage: https://github.com/agshumate/Liftoff +hidden: true diff --git a/apps/ModelTest-NG/form.yml.erb b/apps/ModelTest-NG/form.yml.erb new file mode 100644 index 00000000..d08ba4a8 --- /dev/null +++ b/apps/ModelTest-NG/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['modeltest_ng_module'] = { + 'widget' => 'module_load', + 'module' => "ModelTest-NG", + 'label' => "ModelTest-NG Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{modeltest_ng_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ModelTest-NG/icon.png b/apps/ModelTest-NG/icon.png new file mode 100644 index 00000000..556590b8 Binary files /dev/null and b/apps/ModelTest-NG/icon.png differ diff --git a/apps/ModelTest-NG/manifest.yml b/apps/ModelTest-NG/manifest.yml new file mode 100644 index 00000000..2617899d --- /dev/null +++ b/apps/ModelTest-NG/manifest.yml @@ -0,0 +1,6 @@ +name: ModelTest-NG +category: Biology +description: Tool for selecting the best-fit model of evolution for DNA and protein alignments. +homepage: https://github.com/ddarriba/modeltest +icon: icon.png +hidden: true diff --git a/apps/Molpro/form.yml.erb b/apps/Molpro/form.yml.erb new file mode 100644 index 00000000..f1213f9e --- /dev/null +++ b/apps/Molpro/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['molpro_module'] = { + 'widget' => 'module_load', + 'module' => "Molpro", + 'label' => "Molpro Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{molpro_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Molpro/icon.png b/apps/Molpro/icon.png new file mode 100644 index 00000000..b828a2dc Binary files /dev/null and b/apps/Molpro/icon.png differ diff --git a/apps/Molpro/manifest.yml b/apps/Molpro/manifest.yml new file mode 100644 index 00000000..ab647e99 --- /dev/null +++ b/apps/Molpro/manifest.yml @@ -0,0 +1,6 @@ +name: Molpro +category: Chemistry +description: Molpro is a complete system of ab initio programs for molecular electronic structure calculations. +homepage: https://molpro.net +icon: icon.png +hidden: true diff --git a/apps/Monocle3/form.yml.erb b/apps/Monocle3/form.yml.erb new file mode 100644 index 00000000..6d828c43 --- /dev/null +++ b/apps/Monocle3/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['monocle3_module'] = { + 'widget' => 'module_load', + 'module' => "Monocle3", + 'label' => "Monocle3 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{monocle3_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Monocle3/icon.png b/apps/Monocle3/icon.png new file mode 100644 index 00000000..c55b9160 Binary files /dev/null and b/apps/Monocle3/icon.png differ diff --git a/apps/Monocle3/manifest.yml b/apps/Monocle3/manifest.yml new file mode 100644 index 00000000..8a54e589 --- /dev/null +++ b/apps/Monocle3/manifest.yml @@ -0,0 +1,6 @@ +name: Monocle3 +category: Biology +description: An analysis toolkit for single-cell RNA-seq. +homepage: https://cole-trapnell-lab.github.io/monocle3/ +icon: icon.png +hidden: true diff --git a/apps/Mothur/form.yml.erb b/apps/Mothur/form.yml.erb new file mode 100644 index 00000000..8e07f3b8 --- /dev/null +++ b/apps/Mothur/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mothur_module'] = { + 'widget' => 'module_load', + 'module' => "Mothur", + 'label' => "Mothur Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mothur_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Mothur/icon.png b/apps/Mothur/icon.png new file mode 100644 index 00000000..75bb8879 Binary files /dev/null and b/apps/Mothur/icon.png differ diff --git a/apps/Mothur/manifest.yml b/apps/Mothur/manifest.yml new file mode 100644 index 00000000..77bda101 --- /dev/null +++ b/apps/Mothur/manifest.yml @@ -0,0 +1,6 @@ +name: Mothur +category: Biology +description: Mothur is a single piece of open-source, expandable software to fill the bioinformatics needs of the microbial ecology community. +homepage: http://www.mothur.org/ +icon: icon.png +hidden: true diff --git a/apps/MrBayes/form.yml.erb b/apps/MrBayes/form.yml.erb new file mode 100644 index 00000000..080a8236 --- /dev/null +++ b/apps/MrBayes/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mrbayes_module'] = { + 'widget' => 'module_load', + 'module' => "MrBayes", + 'label' => "MrBayes Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mrbayes_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MrBayes/manifest.yml b/apps/MrBayes/manifest.yml new file mode 100644 index 00000000..ba6a1464 --- /dev/null +++ b/apps/MrBayes/manifest.yml @@ -0,0 +1,5 @@ +name: MrBayes +category: Biology +description: MrBayes is a program for the Bayesian estimation of phylogeny. +homepage: https://nbisweden.github.io/MrBayes/ +hidden: true diff --git a/apps/MultiQC/form.yml.erb b/apps/MultiQC/form.yml.erb new file mode 100644 index 00000000..c35fc45e --- /dev/null +++ b/apps/MultiQC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['multiqc_module'] = { + 'widget' => 'module_load', + 'module' => "MultiQC", + 'label' => "MultiQC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{multiqc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/MultiQC/icon.png b/apps/MultiQC/icon.png new file mode 100644 index 00000000..c3199626 Binary files /dev/null and b/apps/MultiQC/icon.png differ diff --git a/apps/MultiQC/manifest.yml b/apps/MultiQC/manifest.yml new file mode 100644 index 00000000..64d695e0 --- /dev/null +++ b/apps/MultiQC/manifest.yml @@ -0,0 +1,6 @@ +name: MultiQC +category: Biology +description: Aggregate results from bioinformatics analyses across many samples into a single report. +homepage: http://multiqc.info +icon: icon.png +hidden: true diff --git a/apps/NAMD/form.yml.erb b/apps/NAMD/form.yml.erb new file mode 100644 index 00000000..2bd451b2 --- /dev/null +++ b/apps/NAMD/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['namd_module'] = { + 'widget' => 'module_load', + 'module' => "NAMD", + 'label' => "NAMD Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{namd_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NAMD/icon.jpg b/apps/NAMD/icon.jpg new file mode 100644 index 00000000..f5a2d69b Binary files /dev/null and b/apps/NAMD/icon.jpg differ diff --git a/apps/NAMD/manifest.yml b/apps/NAMD/manifest.yml new file mode 100644 index 00000000..149fed3f --- /dev/null +++ b/apps/NAMD/manifest.yml @@ -0,0 +1,6 @@ +name: NAMD +category: Biology +description: NAMD is a parallel molecular dynamics code designed for high-performance simulation of large biomolecular systems. +homepage: https://www.ks.uiuc.edu/Research/namd/ +icon: icon.jpg +hidden: true diff --git a/apps/NASM/form.yml.erb b/apps/NASM/form.yml.erb new file mode 100644 index 00000000..f40a0273 --- /dev/null +++ b/apps/NASM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nasm_module'] = { + 'widget' => 'module_load', + 'module' => "NASM", + 'label' => "NASM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nasm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NASM/icon.svg.png b/apps/NASM/icon.svg.png new file mode 100644 index 00000000..2bf04b7f Binary files /dev/null and b/apps/NASM/icon.svg.png differ diff --git a/apps/NASM/manifest.yml b/apps/NASM/manifest.yml new file mode 100644 index 00000000..97fd8e6f --- /dev/null +++ b/apps/NASM/manifest.yml @@ -0,0 +1,6 @@ +name: NASM +category: Language +description: 'NASM: General-purpose x86 assembler.' +homepage: https://www.nasm.us/ +icon: icon.svg.png +hidden: true diff --git a/apps/NECAT/form.yml.erb b/apps/NECAT/form.yml.erb new file mode 100644 index 00000000..765a17b1 --- /dev/null +++ b/apps/NECAT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['necat_module'] = { + 'widget' => 'module_load', + 'module' => "NECAT", + 'label' => "NECAT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{necat_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NECAT/manifest.yml b/apps/NECAT/manifest.yml new file mode 100644 index 00000000..4fbfc7d3 --- /dev/null +++ b/apps/NECAT/manifest.yml @@ -0,0 +1,5 @@ +name: NECAT +category: Biology +description: Rrror correction and de-novo assembly tool for Nanopore long noisy reads. +homepage: https://github.com/xiaochuanle/NECAT +hidden: true diff --git a/apps/NGS/form.yml.erb b/apps/NGS/form.yml.erb new file mode 100644 index 00000000..706526b4 --- /dev/null +++ b/apps/NGS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ngs_module'] = { + 'widget' => 'module_load', + 'module' => "NGS", + 'label' => "NGS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ngs_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NGS/manifest.yml b/apps/NGS/manifest.yml new file mode 100644 index 00000000..621b4cf0 --- /dev/null +++ b/apps/NGS/manifest.yml @@ -0,0 +1,5 @@ +name: NGS +category: Biology +description: NGS is a new, domain-specific API for accessing reads, alignments and pileups produced from Next Generation Sequencing. +homepage: https://github.com/ncbi/ngs +hidden: true diff --git a/apps/NWChem/form.yml.erb b/apps/NWChem/form.yml.erb new file mode 100644 index 00000000..3244ce55 --- /dev/null +++ b/apps/NWChem/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nwchem_module'] = { + 'widget' => 'module_load', + 'module' => "NWChem", + 'label' => "NWChem Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nwchem_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NWChem/icon.png b/apps/NWChem/icon.png new file mode 100644 index 00000000..9983b3ff Binary files /dev/null and b/apps/NWChem/icon.png differ diff --git a/apps/NWChem/manifest.yml b/apps/NWChem/manifest.yml new file mode 100644 index 00000000..5c8e260b --- /dev/null +++ b/apps/NWChem/manifest.yml @@ -0,0 +1,6 @@ +name: NWChem +category: Biology +description: NWChem aims to provide its users with computational chemistry tools that are scalable both in their ability to treat large scientific computational chemistry problems efficiently, and in their use of available parallel computing resources from high-performance parallel supercomputers to conventional workstation clusters. +homepage: https://nwchemgit.github.io/ +icon: icon.png +hidden: true diff --git a/apps/NanoComp/form.yml.erb b/apps/NanoComp/form.yml.erb new file mode 100644 index 00000000..896a8f8d --- /dev/null +++ b/apps/NanoComp/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nanocomp_module'] = { + 'widget' => 'module_load', + 'module' => "NanoComp", + 'label' => "NanoComp Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nanocomp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NanoComp/manifest.yml b/apps/NanoComp/manifest.yml new file mode 100644 index 00000000..816afacb --- /dev/null +++ b/apps/NanoComp/manifest.yml @@ -0,0 +1,5 @@ +name: NanoComp +category: Biology +description: Comparing runs of Oxford Nanopore sequencing data and alignments. +homepage: https://github.com/wdecoster/NanoComp +hidden: true diff --git a/apps/NanoLyse/form.yml.erb b/apps/NanoLyse/form.yml.erb new file mode 100644 index 00000000..8ff51bed --- /dev/null +++ b/apps/NanoLyse/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nanolyse_module'] = { + 'widget' => 'module_load', + 'module' => "NanoLyse", + 'label' => "NanoLyse Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nanolyse_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NanoLyse/manifest.yml b/apps/NanoLyse/manifest.yml new file mode 100644 index 00000000..e73442bd --- /dev/null +++ b/apps/NanoLyse/manifest.yml @@ -0,0 +1,5 @@ +name: NanoLyse +category: Biology +description: Removing reads mapping to the lambda genome. +homepage: https://github.com/wdecoster/nanolyse +hidden: true diff --git a/apps/NanoStat/form.yml.erb b/apps/NanoStat/form.yml.erb new file mode 100644 index 00000000..f6f03116 --- /dev/null +++ b/apps/NanoStat/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nanostat_module'] = { + 'widget' => 'module_load', + 'module' => "NanoStat", + 'label' => "NanoStat Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nanostat_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NanoStat/manifest.yml b/apps/NanoStat/manifest.yml new file mode 100644 index 00000000..722d09ac --- /dev/null +++ b/apps/NanoStat/manifest.yml @@ -0,0 +1,5 @@ +name: NanoStat +category: Biology +description: Tool for phasing genomic variants using DNA sequencing reads, also called read-based phasing or haplotype assembly. +homepage: https://github.com/wdecoster/nanostat +hidden: true diff --git a/apps/NewHybrids/form.yml.erb b/apps/NewHybrids/form.yml.erb new file mode 100644 index 00000000..bdab75c7 --- /dev/null +++ b/apps/NewHybrids/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['newhybrids_module'] = { + 'widget' => 'module_load', + 'module' => "NewHybrids", + 'label' => "NewHybrids Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{newhybrids_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NewHybrids/manifest.yml b/apps/NewHybrids/manifest.yml new file mode 100644 index 00000000..b8fdd4cf --- /dev/null +++ b/apps/NewHybrids/manifest.yml @@ -0,0 +1,5 @@ +name: NewHybrids +category: Biology +description: This implements a Gibbs sampler to estimate the posterior probability that genetically sampled individuals fall into each of a set of user-defined hybrid categories. +homepage: https://ib.berkeley.edu/labs/slatkin/eriq/software/software.htm#NewHybs +hidden: true diff --git a/apps/Newton-X/form.yml.erb b/apps/Newton-X/form.yml.erb new file mode 100644 index 00000000..cfc9ba59 --- /dev/null +++ b/apps/Newton-X/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['newton_x_module'] = { + 'widget' => 'module_load', + 'module' => "Newton-X", + 'label' => "Newton-X Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{newton_x_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Newton-X/icon.webp b/apps/Newton-X/icon.webp new file mode 100644 index 00000000..a0f1745d Binary files /dev/null and b/apps/Newton-X/icon.webp differ diff --git a/apps/Newton-X/manifest.yml b/apps/Newton-X/manifest.yml new file mode 100644 index 00000000..590361aa --- /dev/null +++ b/apps/Newton-X/manifest.yml @@ -0,0 +1,6 @@ +name: Newton-X +category: Chemistry +description: NX is a general-purpose program package for simulating the dynamics of electronically excited molecules and molecular assemblies. +homepage: https://newtonx.org/ +icon: icon.webp +hidden: true diff --git a/apps/NextPolish2/form.yml.erb b/apps/NextPolish2/form.yml.erb new file mode 100644 index 00000000..d8dc337c --- /dev/null +++ b/apps/NextPolish2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nextpolish2_module'] = { + 'widget' => 'module_load', + 'module' => "NextPolish2", + 'label' => "NextPolish2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nextpolish2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/NextPolish2/manifest.yml b/apps/NextPolish2/manifest.yml new file mode 100644 index 00000000..4db1ec27 --- /dev/null +++ b/apps/NextPolish2/manifest.yml @@ -0,0 +1,5 @@ +name: NextPolish2 +category: Biology +description: A fast and efficient genome polishing tool for long-read assembly. +homepage: https://github.com/Nextomics/NextPolish2 +hidden: true diff --git a/apps/Nextflow/form.yml.erb b/apps/Nextflow/form.yml.erb new file mode 100644 index 00000000..e9342fc0 --- /dev/null +++ b/apps/Nextflow/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nextflow_module'] = { + 'widget' => 'module_load', + 'module' => "Nextflow", + 'label' => "Nextflow Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nextflow_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Nextflow/icon.png b/apps/Nextflow/icon.png new file mode 100644 index 00000000..b6705329 Binary files /dev/null and b/apps/Nextflow/icon.png differ diff --git a/apps/Nextflow/manifest.yml b/apps/Nextflow/manifest.yml new file mode 100644 index 00000000..00424312 --- /dev/null +++ b/apps/Nextflow/manifest.yml @@ -0,0 +1,6 @@ +name: Nextflow +category: Workflow Management +description: Nextflow is a reactive workflow framework and a programming DSL that eases writing computational pipelines with complex data. +homepage: https://www.nextflow.io/ +icon: icon.png +hidden: true diff --git a/apps/Nim/form.yml.erb b/apps/Nim/form.yml.erb new file mode 100644 index 00000000..870aa87f --- /dev/null +++ b/apps/Nim/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nim_module'] = { + 'widget' => 'module_load', + 'module' => "Nim", + 'label' => "Nim Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nim_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Nim/icon.png b/apps/Nim/icon.png new file mode 100644 index 00000000..02f761ca Binary files /dev/null and b/apps/Nim/icon.png differ diff --git a/apps/Nim/manifest.yml b/apps/Nim/manifest.yml new file mode 100644 index 00000000..8c42bb5e --- /dev/null +++ b/apps/Nim/manifest.yml @@ -0,0 +1,6 @@ +name: Nim +category: Language +description: Nim is a systems and applications programming language. +homepage: https://nim-lang.org/ +icon: icon.png +hidden: true diff --git a/apps/ORCA/form.yml.erb b/apps/ORCA/form.yml.erb new file mode 100644 index 00000000..db125b19 --- /dev/null +++ b/apps/ORCA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['orca_module'] = { + 'widget' => 'module_load', + 'module' => "ORCA", + 'label' => "ORCA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{orca_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ORCA/logo.png b/apps/ORCA/logo.png new file mode 100644 index 00000000..16688311 Binary files /dev/null and b/apps/ORCA/logo.png differ diff --git a/apps/ORCA/manifest.yml b/apps/ORCA/manifest.yml new file mode 100644 index 00000000..8749cc8d --- /dev/null +++ b/apps/ORCA/manifest.yml @@ -0,0 +1,5 @@ +name: ORCA +category: Chemistry +description: ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum chemistry with specific emphasis on spectroscopic properties of open-shell molecules. +homepage: https://orcaforum.kofo.mpg.de +hidden: true diff --git a/apps/OSU-Micro-Benchmarks/form.yml.erb b/apps/OSU-Micro-Benchmarks/form.yml.erb new file mode 100644 index 00000000..191ff42f --- /dev/null +++ b/apps/OSU-Micro-Benchmarks/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['osu_micro_benchmarks_module'] = { + 'widget' => 'module_load', + 'module' => "OSU-Micro-Benchmarks", + 'label' => "OSU-Micro-Benchmarks Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{osu_micro_benchmarks_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/OSU-Micro-Benchmarks/icon.png b/apps/OSU-Micro-Benchmarks/icon.png new file mode 100644 index 00000000..3003c3cd Binary files /dev/null and b/apps/OSU-Micro-Benchmarks/icon.png differ diff --git a/apps/OSU-Micro-Benchmarks/manifest.yml b/apps/OSU-Micro-Benchmarks/manifest.yml new file mode 100644 index 00000000..a542ffda --- /dev/null +++ b/apps/OSU-Micro-Benchmarks/manifest.yml @@ -0,0 +1,6 @@ +name: OSU-Micro-Benchmarks +category: Others +description: OSU Micro-Benchmarks. +homepage: https://mvapich.cse.ohio-state.edu/benchmarks/ +icon: icon.png +hidden: true diff --git a/apps/OrthoFinder/form.yml.erb b/apps/OrthoFinder/form.yml.erb new file mode 100644 index 00000000..20da35e2 --- /dev/null +++ b/apps/OrthoFinder/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['orthofinder_module'] = { + 'widget' => 'module_load', + 'module' => "OrthoFinder", + 'label' => "OrthoFinder Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{orthofinder_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/OrthoFinder/manifest.yml b/apps/OrthoFinder/manifest.yml new file mode 100644 index 00000000..6f592baa --- /dev/null +++ b/apps/OrthoFinder/manifest.yml @@ -0,0 +1,5 @@ +name: OrthoFinder +category: Biology +description: OrthoFinder is a fast, accurate and comprehensive platform for comparative genomics. +homepage: https://github.com/OrthoFinder/OrthoFinder +hidden: true diff --git a/apps/PALEOMIX/form.yml.erb b/apps/PALEOMIX/form.yml.erb new file mode 100644 index 00000000..7bc154b9 --- /dev/null +++ b/apps/PALEOMIX/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['paleomix_module'] = { + 'widget' => 'module_load', + 'module' => "PALEOMIX", + 'label' => "PALEOMIX Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{paleomix_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PALEOMIX/manifest.yml b/apps/PALEOMIX/manifest.yml new file mode 100644 index 00000000..86f63a67 --- /dev/null +++ b/apps/PALEOMIX/manifest.yml @@ -0,0 +1,5 @@ +name: PALEOMIX +category: Biology +description: Pipelines and tools designed to aid the rapid processing of High-Throughput Sequencing (HTS) data. +homepage: https://paleomix.readthedocs.io/en/latest/index.html +hidden: true diff --git a/apps/PAML/form.yml.erb b/apps/PAML/form.yml.erb new file mode 100644 index 00000000..1b4f913d --- /dev/null +++ b/apps/PAML/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['paml_module'] = { + 'widget' => 'module_load', + 'module' => "PAML", + 'label' => "PAML Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{paml_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PAML/icon.svg b/apps/PAML/icon.svg new file mode 100644 index 00000000..583eb89e --- /dev/null +++ b/apps/PAML/icon.svg @@ -0,0 +1,178 @@ + + + +PAML diff --git a/apps/PAML/manifest.yml b/apps/PAML/manifest.yml new file mode 100644 index 00000000..90a7d146 --- /dev/null +++ b/apps/PAML/manifest.yml @@ -0,0 +1,6 @@ +name: PAML +category: Biology +description: PAML is a package of programs for phylogenetic analyses of DNA or protein sequences using maximum likelihood. +homepage: http://abacus.gene.ucl.ac.uk/software/paml.html +icon: icon.svg +hidden: true diff --git a/apps/PDAL/form.yml.erb b/apps/PDAL/form.yml.erb new file mode 100644 index 00000000..af09da70 --- /dev/null +++ b/apps/PDAL/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pdal_module'] = { + 'widget' => 'module_load', + 'module' => "PDAL", + 'label' => "PDAL Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pdal_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PDAL/icon.webp b/apps/PDAL/icon.webp new file mode 100644 index 00000000..aa4147b8 Binary files /dev/null and b/apps/PDAL/icon.webp differ diff --git a/apps/PDAL/manifest.yml b/apps/PDAL/manifest.yml new file mode 100644 index 00000000..bb1edb7d --- /dev/null +++ b/apps/PDAL/manifest.yml @@ -0,0 +1,6 @@ +name: PDAL +category: Climate Science +description: PDAL is Point Data Abstraction Library. +homepage: https://pdal.io/ +icon: icon.webp +hidden: true diff --git a/apps/PEAR/form.yml.erb b/apps/PEAR/form.yml.erb new file mode 100644 index 00000000..a7df44c4 --- /dev/null +++ b/apps/PEAR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pear_module'] = { + 'widget' => 'module_load', + 'module' => "PEAR", + 'label' => "PEAR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pear_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PEAR/manifest.yml b/apps/PEAR/manifest.yml new file mode 100644 index 00000000..869a6994 --- /dev/null +++ b/apps/PEAR/manifest.yml @@ -0,0 +1,5 @@ +name: PEAR +category: Biology +description: Memory-efficient,fully parallelized and highly accurate pair-end read merger. +homepage: https://cme.h-its.org/exelixis/web/software/pear/ +hidden: true diff --git a/apps/PILERCR/form.yml.erb b/apps/PILERCR/form.yml.erb new file mode 100644 index 00000000..95aca2e3 --- /dev/null +++ b/apps/PILERCR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pilercr_module'] = { + 'widget' => 'module_load', + 'module' => "PILERCR", + 'label' => "PILERCR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pilercr_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PILERCR/manifest.yml b/apps/PILERCR/manifest.yml new file mode 100644 index 00000000..ba8e10a0 --- /dev/null +++ b/apps/PILERCR/manifest.yml @@ -0,0 +1,5 @@ +name: PILERCR +category: Others +description: PILER-CR is a program specifically designed for the identification and analysis of CRISPR repeats. +homepage: https://www.drive5.com/pilercr/ +hidden: true diff --git a/apps/PISM/form.yml.erb b/apps/PISM/form.yml.erb new file mode 100644 index 00000000..6dd6ef93 --- /dev/null +++ b/apps/PISM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pism_module'] = { + 'widget' => 'module_load', + 'module' => "PISM", + 'label' => "PISM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pism_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PISM/icon.png b/apps/PISM/icon.png new file mode 100644 index 00000000..9040031b Binary files /dev/null and b/apps/PISM/icon.png differ diff --git a/apps/PISM/manifest.yml b/apps/PISM/manifest.yml new file mode 100644 index 00000000..d6bb8d9d --- /dev/null +++ b/apps/PISM/manifest.yml @@ -0,0 +1,6 @@ +name: PISM +category: Others +description: The Parallel Ice Sheet Model (PISM) is a computer program used in climate science to simulate the past and future of glaciers and ice sheets, including the Earth’s two large ice sheets in Greenland and Antarctica. +homepage: https://www.pism.io/ +icon: icon.png +hidden: true diff --git a/apps/PLINK/form.yml.erb b/apps/PLINK/form.yml.erb new file mode 100644 index 00000000..d920d0d1 --- /dev/null +++ b/apps/PLINK/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['plink_module'] = { + 'widget' => 'module_load', + 'module' => "PLINK", + 'label' => "PLINK Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{plink_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PLINK/manifest.yml b/apps/PLINK/manifest.yml new file mode 100644 index 00000000..92a00a5e --- /dev/null +++ b/apps/PLINK/manifest.yml @@ -0,0 +1,5 @@ +name: PLINK +category: Biology +description: PLINK is a free, open-source whole genome association analysis toolset, designed to perform a range of basic, large-scale analyses in a computationally efficient manner. +homepage: https://www.cog-genomics.org/plink2 +hidden: true diff --git a/apps/PLUMED/form.yml.erb b/apps/PLUMED/form.yml.erb new file mode 100644 index 00000000..343e082a --- /dev/null +++ b/apps/PLUMED/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['plumed_module'] = { + 'widget' => 'module_load', + 'module' => "PLUMED", + 'label' => "PLUMED Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{plumed_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PLUMED/icon.png b/apps/PLUMED/icon.png new file mode 100644 index 00000000..35d7d922 Binary files /dev/null and b/apps/PLUMED/icon.png differ diff --git a/apps/PLUMED/manifest.yml b/apps/PLUMED/manifest.yml new file mode 100644 index 00000000..8cafffd0 --- /dev/null +++ b/apps/PLUMED/manifest.yml @@ -0,0 +1,6 @@ +name: PLUMED +category: Biology +description: PLUMED is an open source library for free energy calculations in molecular systems which works together with some of the most popular molecular dynamics engines. +homepage: http://www.plumed-code.org +icon: icon.png +hidden: true diff --git a/apps/PRANK/form.yml.erb b/apps/PRANK/form.yml.erb new file mode 100644 index 00000000..f634440a --- /dev/null +++ b/apps/PRANK/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['prank_module'] = { + 'widget' => 'module_load', + 'module' => "PRANK", + 'label' => "PRANK Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{prank_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PRANK/icon.png b/apps/PRANK/icon.png new file mode 100644 index 00000000..71e0b5f0 Binary files /dev/null and b/apps/PRANK/icon.png differ diff --git a/apps/PRANK/manifest.yml b/apps/PRANK/manifest.yml new file mode 100644 index 00000000..fca737c2 --- /dev/null +++ b/apps/PRANK/manifest.yml @@ -0,0 +1,6 @@ +name: PRANK +category: Biology +description: Probabilistic multiple alignment program for DNA, codon and amino-acid sequences. +homepage: http://wasabiapp.org/software/prank/ +icon: icon.png +hidden: true diff --git a/apps/PROJ/form.yml.erb b/apps/PROJ/form.yml.erb new file mode 100644 index 00000000..ecb5a977 --- /dev/null +++ b/apps/PROJ/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['proj_module'] = { + 'widget' => 'module_load', + 'module' => "PROJ", + 'label' => "PROJ Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{proj_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PROJ/icon.webp b/apps/PROJ/icon.webp new file mode 100644 index 00000000..c7e15e47 Binary files /dev/null and b/apps/PROJ/icon.webp differ diff --git a/apps/PROJ/manifest.yml b/apps/PROJ/manifest.yml new file mode 100644 index 00000000..4f9ae72e --- /dev/null +++ b/apps/PROJ/manifest.yml @@ -0,0 +1,6 @@ +name: PROJ +category: Earth Science +description: Program proj is a standard Unix filter function which converts geographic longitude and latitude coordinates into cartesian coordinates. +homepage: http://trac.osgeo.org/proj/ +icon: icon.webp +hidden: true diff --git a/apps/PSpaMM/form.yml.erb b/apps/PSpaMM/form.yml.erb new file mode 100644 index 00000000..555c1c57 --- /dev/null +++ b/apps/PSpaMM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pspamm_module'] = { + 'widget' => 'module_load', + 'module' => "PSpaMM", + 'label' => "PSpaMM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pspamm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PSpaMM/manifest.yml b/apps/PSpaMM/manifest.yml new file mode 100644 index 00000000..f336633c --- /dev/null +++ b/apps/PSpaMM/manifest.yml @@ -0,0 +1,5 @@ +name: PSpaMM +category: Others +description: Generates inline-Assembly for sparse Matrix Multiplication. +homepage: https://github.com/SeisSol/PSpaMM +hidden: true diff --git a/apps/ParMETIS/form.yml.erb b/apps/ParMETIS/form.yml.erb new file mode 100644 index 00000000..a2fd101f --- /dev/null +++ b/apps/ParMETIS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['parmetis_module'] = { + 'widget' => 'module_load', + 'module' => "ParMETIS", + 'label' => "ParMETIS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{parmetis_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ParMETIS/manifest.yml b/apps/ParMETIS/manifest.yml new file mode 100644 index 00000000..41cf3052 --- /dev/null +++ b/apps/ParMETIS/manifest.yml @@ -0,0 +1,5 @@ +name: ParMETIS +category: Mathematics +description: ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices. +homepage: http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview +hidden: true diff --git a/apps/Perl/form.yml.erb b/apps/Perl/form.yml.erb new file mode 100644 index 00000000..3a4f70fd --- /dev/null +++ b/apps/Perl/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['perl_module'] = { + 'widget' => 'module_load', + 'module' => "Perl", + 'label' => "Perl Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{perl_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Perl/icon.png b/apps/Perl/icon.png new file mode 100644 index 00000000..d95266d5 Binary files /dev/null and b/apps/Perl/icon.png differ diff --git a/apps/Perl/manifest.yml b/apps/Perl/manifest.yml new file mode 100644 index 00000000..cfb33b05 --- /dev/null +++ b/apps/Perl/manifest.yml @@ -0,0 +1,6 @@ +name: Perl +category: Language +description: Larry Wall's Practical Extraction and Report Language. +homepage: http://www.perl.org/ +icon: icon.png +hidden: true diff --git a/apps/PhyML/form.yml.erb b/apps/PhyML/form.yml.erb new file mode 100644 index 00000000..053a3e85 --- /dev/null +++ b/apps/PhyML/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['phyml_module'] = { + 'widget' => 'module_load', + 'module' => "PhyML", + 'label' => "PhyML Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{phyml_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PhyML/manifest.yml b/apps/PhyML/manifest.yml new file mode 100644 index 00000000..ab96d05b --- /dev/null +++ b/apps/PhyML/manifest.yml @@ -0,0 +1,5 @@ +name: PhyML +category: Biology +description: Phylogenetic estimation using Maximum Likelihood. +homepage: https://github.com/stephaneguindon/phyml +hidden: true diff --git a/apps/PhyloPhlAn/form.yml.erb b/apps/PhyloPhlAn/form.yml.erb new file mode 100644 index 00000000..78dabeb9 --- /dev/null +++ b/apps/PhyloPhlAn/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['phylophlan_module'] = { + 'widget' => 'module_load', + 'module' => "PhyloPhlAn", + 'label' => "PhyloPhlAn Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{phylophlan_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PhyloPhlAn/manifest.yml b/apps/PhyloPhlAn/manifest.yml new file mode 100644 index 00000000..7b583b4a --- /dev/null +++ b/apps/PhyloPhlAn/manifest.yml @@ -0,0 +1,5 @@ +name: PhyloPhlAn +category: Biology +description: Integrated pipeline for large-scale phylogenetic profiling of genomes and metagenomes. +homepage: https://huttenhower.sph.harvard.edu/phylophlan/ +hidden: true diff --git a/apps/Pilon/form.yml.erb b/apps/Pilon/form.yml.erb new file mode 100644 index 00000000..d9eee918 --- /dev/null +++ b/apps/Pilon/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pilon_module'] = { + 'widget' => 'module_load', + 'module' => "Pilon", + 'label' => "Pilon Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pilon_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Pilon/manifest.yml b/apps/Pilon/manifest.yml new file mode 100644 index 00000000..67e36f0f --- /dev/null +++ b/apps/Pilon/manifest.yml @@ -0,0 +1,5 @@ +name: Pilon +category: Biology +description: Pilon is an automated genome assembly improvement and variant detection tool. +homepage: https://github.com/broadinstitute/pilon +hidden: true diff --git a/apps/Porechop/form.yml.erb b/apps/Porechop/form.yml.erb new file mode 100644 index 00000000..a759fb41 --- /dev/null +++ b/apps/Porechop/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['porechop_module'] = { + 'widget' => 'module_load', + 'module' => "Porechop", + 'label' => "Porechop Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{porechop_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Porechop/icon.png b/apps/Porechop/icon.png new file mode 100644 index 00000000..8c7503db Binary files /dev/null and b/apps/Porechop/icon.png differ diff --git a/apps/Porechop/manifest.yml b/apps/Porechop/manifest.yml new file mode 100644 index 00000000..e8b4d17e --- /dev/null +++ b/apps/Porechop/manifest.yml @@ -0,0 +1,6 @@ +name: Porechop +category: Biology +description: Porechop is a tool for finding and removing adapters from Oxford Nanopore reads. +homepage: https://github.com/rrwick/Porechop +icon: icon.png +hidden: true diff --git a/apps/Porechop_ABI/form.yml.erb b/apps/Porechop_ABI/form.yml.erb new file mode 100644 index 00000000..f756bdca --- /dev/null +++ b/apps/Porechop_ABI/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['porechop_abi_module'] = { + 'widget' => 'module_load', + 'module' => "Porechop_ABI", + 'label' => "Porechop_ABI Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{porechop_abi_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Porechop_ABI/manifest.yml b/apps/Porechop_ABI/manifest.yml new file mode 100644 index 00000000..99a760ce --- /dev/null +++ b/apps/Porechop_ABI/manifest.yml @@ -0,0 +1,5 @@ +name: Porechop_ABI +category: Biology +description: Extension of Porechop whose purpose is to process adapter sequences in ONT reads. +homepage: https://busco.ezlab.org/ +hidden: true diff --git a/apps/PostgreSQL/form.yml.erb b/apps/PostgreSQL/form.yml.erb new file mode 100644 index 00000000..35e8cb53 --- /dev/null +++ b/apps/PostgreSQL/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['postgresql_module'] = { + 'widget' => 'module_load', + 'module' => "PostgreSQL", + 'label' => "PostgreSQL Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{postgresql_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PostgreSQL/icon.png b/apps/PostgreSQL/icon.png new file mode 100644 index 00000000..40597f31 Binary files /dev/null and b/apps/PostgreSQL/icon.png differ diff --git a/apps/PostgreSQL/manifest.yml b/apps/PostgreSQL/manifest.yml new file mode 100644 index 00000000..d0b6b693 --- /dev/null +++ b/apps/PostgreSQL/manifest.yml @@ -0,0 +1,6 @@ +name: PostgreSQL +category: Others +description: Object-relational database system. +homepage: https://www.postgresql.org/ +icon: icon.png +hidden: true diff --git a/apps/ProtHint/form.yml.erb b/apps/ProtHint/form.yml.erb new file mode 100644 index 00000000..1ff1295f --- /dev/null +++ b/apps/ProtHint/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['prothint_module'] = { + 'widget' => 'module_load', + 'module' => "ProtHint", + 'label' => "ProtHint Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{prothint_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ProtHint/manifest.yml b/apps/ProtHint/manifest.yml new file mode 100644 index 00000000..0dc7132a --- /dev/null +++ b/apps/ProtHint/manifest.yml @@ -0,0 +1,5 @@ +name: ProtHint +category: Biology +description: Pipeline for predicting and scoring hints (in the form of introns, start and stop codons) in the genome of interest by mapping and spliced aligning predicted genes to a database of reference protein sequences. +homepage: https://github.com/gatech-genemark/ProtHint +hidden: true diff --git a/apps/Proteinortho/form.yml.erb b/apps/Proteinortho/form.yml.erb new file mode 100644 index 00000000..4f95a54e --- /dev/null +++ b/apps/Proteinortho/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['proteinortho_module'] = { + 'widget' => 'module_load', + 'module' => "Proteinortho", + 'label' => "Proteinortho Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{proteinortho_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Proteinortho/icon.png b/apps/Proteinortho/icon.png new file mode 100644 index 00000000..227d00e4 Binary files /dev/null and b/apps/Proteinortho/icon.png differ diff --git a/apps/Proteinortho/manifest.yml b/apps/Proteinortho/manifest.yml new file mode 100644 index 00000000..cfcde6a3 --- /dev/null +++ b/apps/Proteinortho/manifest.yml @@ -0,0 +1,6 @@ +name: Proteinortho +category: Others +description: Proteinortho is a tool to detect orthologous genes within different species. +homepage: https://gitlab.com/paulklemm_PHD/proteinortho +icon: icon.png +hidden: true diff --git a/apps/PyTorch/form.yml.erb b/apps/PyTorch/form.yml.erb new file mode 100644 index 00000000..496bdb2d --- /dev/null +++ b/apps/PyTorch/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pytorch_module'] = { + 'widget' => 'module_load', + 'module' => "PyTorch", + 'label' => "PyTorch Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pytorch_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/PyTorch/icon.png b/apps/PyTorch/icon.png new file mode 100644 index 00000000..cd47f9de Binary files /dev/null and b/apps/PyTorch/icon.png differ diff --git a/apps/PyTorch/manifest.yml b/apps/PyTorch/manifest.yml new file mode 100644 index 00000000..85f1b114 --- /dev/null +++ b/apps/PyTorch/manifest.yml @@ -0,0 +1,6 @@ +name: PyTorch +category: Others +description: Tensors and Dynamic neural networks in Python with strong GPU acceleration. +homepage: https://pytorch.org/ +icon: icon.png +hidden: true diff --git a/apps/Python-Geo/form.yml.erb b/apps/Python-Geo/form.yml.erb new file mode 100644 index 00000000..810e7a83 --- /dev/null +++ b/apps/Python-Geo/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['python_geo_module'] = { + 'widget' => 'module_load', + 'module' => "Python-Geo", + 'label' => "Python-Geo Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{python_geo_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Python-Geo/icon.png b/apps/Python-Geo/icon.png new file mode 100644 index 00000000..064c6ebd Binary files /dev/null and b/apps/Python-Geo/icon.png differ diff --git a/apps/Python-Geo/manifest.yml b/apps/Python-Geo/manifest.yml new file mode 100644 index 00000000..65740997 --- /dev/null +++ b/apps/Python-Geo/manifest.yml @@ -0,0 +1,6 @@ +name: Python-Geo +category: Earth Science +description: Python packages for geospatial data I/O, mostly based on the OSGEO libraries GDAL and OGR. +homepage: http://www.python.org/ +icon: icon.png +hidden: true diff --git a/apps/Python/form.yml.erb b/apps/Python/form.yml.erb new file mode 100644 index 00000000..ba8a0820 --- /dev/null +++ b/apps/Python/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['python_module'] = { + 'widget' => 'module_load', + 'module' => "Python", + 'label' => "Python Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{python_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Python/icon.png b/apps/Python/icon.png new file mode 100644 index 00000000..064c6ebd Binary files /dev/null and b/apps/Python/icon.png differ diff --git a/apps/Python/manifest.yml b/apps/Python/manifest.yml new file mode 100644 index 00000000..1792d7e2 --- /dev/null +++ b/apps/Python/manifest.yml @@ -0,0 +1,6 @@ +name: Python +category: Data Analytics +description: Python is a programming language that lets you work more quickly and integrate your systems more effectively. +homepage: http://python.org/ +icon: icon.png +hidden: true diff --git a/apps/QChem/form.yml.erb b/apps/QChem/form.yml.erb new file mode 100644 index 00000000..90a04740 --- /dev/null +++ b/apps/QChem/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['qchem_module'] = { + 'widget' => 'module_load', + 'module' => "QChem", + 'label' => "QChem Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{qchem_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/QChem/icon.jpg b/apps/QChem/icon.jpg new file mode 100644 index 00000000..dbdc0933 Binary files /dev/null and b/apps/QChem/icon.jpg differ diff --git a/apps/QChem/manifest.yml b/apps/QChem/manifest.yml new file mode 100644 index 00000000..8984f2a9 --- /dev/null +++ b/apps/QChem/manifest.yml @@ -0,0 +1,5 @@ +name: QChem +category: Chemistry +description: QChem application. +icon: icon.jpg +hidden: true diff --git a/apps/QIIME2/form.yml.erb b/apps/QIIME2/form.yml.erb new file mode 100644 index 00000000..69a25dcd --- /dev/null +++ b/apps/QIIME2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['qiime2_module'] = { + 'widget' => 'module_load', + 'module' => "QIIME2", + 'label' => "QIIME2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{qiime2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/QIIME2/icon.png b/apps/QIIME2/icon.png new file mode 100644 index 00000000..e9f782fb Binary files /dev/null and b/apps/QIIME2/icon.png differ diff --git a/apps/QIIME2/manifest.yml b/apps/QIIME2/manifest.yml new file mode 100644 index 00000000..1e94a924 --- /dev/null +++ b/apps/QIIME2/manifest.yml @@ -0,0 +1,6 @@ +name: QIIME2 +category: Biology +description: An open-source bioinformatics pipeline for microbiome analysis from raw DNA sequencing data. +homepage: http://qiime2.org/ +icon: icon.png +hidden: true diff --git a/apps/QUAST/form.yml.erb b/apps/QUAST/form.yml.erb new file mode 100644 index 00000000..df2e826b --- /dev/null +++ b/apps/QUAST/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['quast_module'] = { + 'widget' => 'module_load', + 'module' => "QUAST", + 'label' => "QUAST Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{quast_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/QUAST/manifest.yml b/apps/QUAST/manifest.yml new file mode 100644 index 00000000..f154172d --- /dev/null +++ b/apps/QUAST/manifest.yml @@ -0,0 +1,5 @@ +name: QUAST +category: Biology +description: Evaluates genome assemblies. +homepage: http://quast.sourceforge.net/quast +hidden: true diff --git a/apps/QuantumESPRESSO/form.yml.erb b/apps/QuantumESPRESSO/form.yml.erb new file mode 100644 index 00000000..edd6d8d2 --- /dev/null +++ b/apps/QuantumESPRESSO/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['quantumespresso_module'] = { + 'widget' => 'module_load', + 'module' => "QuantumESPRESSO", + 'label' => "QuantumESPRESSO Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{quantumespresso_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/QuantumESPRESSO/icon.jpg b/apps/QuantumESPRESSO/icon.jpg new file mode 100644 index 00000000..bcd48026 Binary files /dev/null and b/apps/QuantumESPRESSO/icon.jpg differ diff --git a/apps/QuantumESPRESSO/manifest.yml b/apps/QuantumESPRESSO/manifest.yml new file mode 100644 index 00000000..d1f4e8a4 --- /dev/null +++ b/apps/QuantumESPRESSO/manifest.yml @@ -0,0 +1,6 @@ +name: QuantumESPRESSO +category: Chemistry +description: Quantum ESPRESSO is an integrated suite of computer codes for electronic-structure calculations and materials modeling at the nanoscale. +homepage: https://www.quantum-espresso.org +icon: icon.jpg +hidden: true diff --git a/apps/QuickTree/form.yml.erb b/apps/QuickTree/form.yml.erb new file mode 100644 index 00000000..00b2d7af --- /dev/null +++ b/apps/QuickTree/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['quicktree_module'] = { + 'widget' => 'module_load', + 'module' => "QuickTree", + 'label' => "QuickTree Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{quicktree_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/QuickTree/manifest.yml b/apps/QuickTree/manifest.yml new file mode 100644 index 00000000..09ecc821 --- /dev/null +++ b/apps/QuickTree/manifest.yml @@ -0,0 +1,5 @@ +name: QuickTree +category: Biology +description: Efficient implementation of the Neighbor-Joining algorithm, capable of reconstructing phylogenies from huge alignments. +homepage: https://github.com/khowe/quicktree +hidden: true diff --git a/apps/R-Geo/form.yml.erb b/apps/R-Geo/form.yml.erb new file mode 100644 index 00000000..a5aad3f6 --- /dev/null +++ b/apps/R-Geo/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['r_geo_module'] = { + 'widget' => 'module_load', + 'module' => "R-Geo", + 'label' => "R-Geo Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{r_geo_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/R-Geo/icon.png b/apps/R-Geo/icon.png new file mode 100644 index 00000000..79ca9530 Binary files /dev/null and b/apps/R-Geo/icon.png differ diff --git a/apps/R-Geo/manifest.yml b/apps/R-Geo/manifest.yml new file mode 100644 index 00000000..4599d171 --- /dev/null +++ b/apps/R-Geo/manifest.yml @@ -0,0 +1,6 @@ +name: R-Geo +category: Earth Science +description: R packages for Geometric and Geospatial data which depend on GEOS and/or GDAL. +homepage: http://www.r-project.org/ +icon: icon.png +hidden: true diff --git a/apps/R-bundle-Bioconductor/form.yml.erb b/apps/R-bundle-Bioconductor/form.yml.erb new file mode 100644 index 00000000..6f5de4f2 --- /dev/null +++ b/apps/R-bundle-Bioconductor/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['r_bundle_bioconductor_module'] = { + 'widget' => 'module_load', + 'module' => "R-bundle-Bioconductor", + 'label' => "R-bundle-Bioconductor Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{r_bundle_bioconductor_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/R-bundle-Bioconductor/icon.png b/apps/R-bundle-Bioconductor/icon.png new file mode 100644 index 00000000..79ca9530 Binary files /dev/null and b/apps/R-bundle-Bioconductor/icon.png differ diff --git a/apps/R-bundle-Bioconductor/manifest.yml b/apps/R-bundle-Bioconductor/manifest.yml new file mode 100644 index 00000000..105615d5 --- /dev/null +++ b/apps/R-bundle-Bioconductor/manifest.yml @@ -0,0 +1,6 @@ +name: R-bundle-Bioconductor +category: Biology +description: Bioconductor provides tools for the analysis and comprehension of high-throughput genomic data. +homepage: https://bioconductor.org +icon: icon.png +hidden: true diff --git a/apps/R/form.yml.erb b/apps/R/form.yml.erb new file mode 100644 index 00000000..fd0d9455 --- /dev/null +++ b/apps/R/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['r_module'] = { + 'widget' => 'module_load', + 'module' => "R", + 'label' => "R Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{r_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/R/icon.png b/apps/R/icon.png new file mode 100644 index 00000000..79ca9530 Binary files /dev/null and b/apps/R/icon.png differ diff --git a/apps/R/manifest.yml b/apps/R/manifest.yml new file mode 100644 index 00000000..4f8fed59 --- /dev/null +++ b/apps/R/manifest.yml @@ -0,0 +1,6 @@ +name: R +category: Data Analytics +description: R is a free software environment for statistical computing and graphics. +homepage: http://www.r-project.org/ +icon: icon.png +hidden: true diff --git a/apps/RAxML-NG/form.yml.erb b/apps/RAxML-NG/form.yml.erb new file mode 100644 index 00000000..d1ccedfb --- /dev/null +++ b/apps/RAxML-NG/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['raxml_ng_module'] = { + 'widget' => 'module_load', + 'module' => "RAxML-NG", + 'label' => "RAxML-NG Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{raxml_ng_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RAxML-NG/manifest.yml b/apps/RAxML-NG/manifest.yml new file mode 100644 index 00000000..0adf5e5c --- /dev/null +++ b/apps/RAxML-NG/manifest.yml @@ -0,0 +1,5 @@ +name: RAxML-NG +category: Biology +description: RAxML-NG is a phylogenetic tree inference tool which uses maximum-likelihood (ML) optimality criterion. +homepage: https://github.com/amkozlov/raxml-ng +hidden: true diff --git a/apps/RAxML/form.yml.erb b/apps/RAxML/form.yml.erb new file mode 100644 index 00000000..bf6a74a4 --- /dev/null +++ b/apps/RAxML/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['raxml_module'] = { + 'widget' => 'module_load', + 'module' => "RAxML", + 'label' => "RAxML Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{raxml_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RAxML/manifest.yml b/apps/RAxML/manifest.yml new file mode 100644 index 00000000..71caa0ab --- /dev/null +++ b/apps/RAxML/manifest.yml @@ -0,0 +1,5 @@ +name: RAxML +category: Biology +description: RAxML search algorithm for maximum likelihood based inference of phylogenetic trees. +homepage: https://github.com/stamatak/standard-RAxML +hidden: true diff --git a/apps/RDP-Classifier/form.yml.erb b/apps/RDP-Classifier/form.yml.erb new file mode 100644 index 00000000..0f4c6368 --- /dev/null +++ b/apps/RDP-Classifier/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rdp_classifier_module'] = { + 'widget' => 'module_load', + 'module' => "RDP-Classifier", + 'label' => "RDP-Classifier Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rdp_classifier_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RDP-Classifier/manifest.yml b/apps/RDP-Classifier/manifest.yml new file mode 100644 index 00000000..d44af58e --- /dev/null +++ b/apps/RDP-Classifier/manifest.yml @@ -0,0 +1,5 @@ +name: RDP-Classifier +category: Biology +description: The RDP Classifier is a naive Bayesian classifier that can rapidly and accurately provides taxonomic assignments from domain to genus, with confidence estimates for each assignment. +homepage: http://sourceforge.net/projects/rdp-classifier +hidden: true diff --git a/apps/RECON/form.yml.erb b/apps/RECON/form.yml.erb new file mode 100644 index 00000000..b50aaa2d --- /dev/null +++ b/apps/RECON/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['recon_module'] = { + 'widget' => 'module_load', + 'module' => "RECON", + 'label' => "RECON Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{recon_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RECON/manifest.yml b/apps/RECON/manifest.yml new file mode 100644 index 00000000..3bf54802 --- /dev/null +++ b/apps/RECON/manifest.yml @@ -0,0 +1,5 @@ +name: RECON +category: Biology +description: De novo identification and classification of repeat sequence families from genomic sequences. +homepage: http://eddylab.org/software/recon/ +hidden: true diff --git a/apps/RFPlasmid/form.yml.erb b/apps/RFPlasmid/form.yml.erb new file mode 100644 index 00000000..33fdcded --- /dev/null +++ b/apps/RFPlasmid/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rfplasmid_module'] = { + 'widget' => 'module_load', + 'module' => "RFPlasmid", + 'label' => "RFPlasmid Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rfplasmid_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RFPlasmid/manifest.yml b/apps/RFPlasmid/manifest.yml new file mode 100644 index 00000000..dffecd54 --- /dev/null +++ b/apps/RFPlasmid/manifest.yml @@ -0,0 +1,5 @@ +name: RFPlasmid +category: Biology +description: Predicting plasmid contigs from assemblies. +homepage: https://github.com/aldertzomer/RFPlasmid +hidden: true diff --git a/apps/RFdiffusion/form.yml.erb b/apps/RFdiffusion/form.yml.erb new file mode 100644 index 00000000..be324f4d --- /dev/null +++ b/apps/RFdiffusion/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rfdiffusion_module'] = { + 'widget' => 'module_load', + 'module' => "RFdiffusion", + 'label' => "RFdiffusion Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rfdiffusion_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RFdiffusion/icon.jpg b/apps/RFdiffusion/icon.jpg new file mode 100644 index 00000000..a7e1f4fd Binary files /dev/null and b/apps/RFdiffusion/icon.jpg differ diff --git a/apps/RFdiffusion/manifest.yml b/apps/RFdiffusion/manifest.yml new file mode 100644 index 00000000..993525f4 --- /dev/null +++ b/apps/RFdiffusion/manifest.yml @@ -0,0 +1,6 @@ +name: RFdiffusion +category: Biology +description: Structure generation, with or without conditional information (a motif, target etc) It can perform a whole range of protein design challenges as we have outlined in the RFdiffusion paper. +homepage: https://github.com/RosettaCommons/RFdiffusion +icon: icon.jpg +hidden: true diff --git a/apps/RJMCMC/form.yml.erb b/apps/RJMCMC/form.yml.erb new file mode 100644 index 00000000..f0cc3a7c --- /dev/null +++ b/apps/RJMCMC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rjmcmc_module'] = { + 'widget' => 'module_load', + 'module' => "RJMCMC", + 'label' => "RJMCMC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rjmcmc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RJMCMC/manifest.yml b/apps/RJMCMC/manifest.yml new file mode 100644 index 00000000..37c19eca --- /dev/null +++ b/apps/RJMCMC/manifest.yml @@ -0,0 +1,5 @@ +name: RJMCMC +category: Others +description: This library provides routines for running Reversible Jump Monte-Carlo Markov chains for 1-D and 2-D spatial regression problems. +homepage: https://iearth.edu.au/codes/rj-MCMC/ +hidden: true diff --git a/apps/RMBlast/form.yml.erb b/apps/RMBlast/form.yml.erb new file mode 100644 index 00000000..d8f6fe2f --- /dev/null +++ b/apps/RMBlast/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rmblast_module'] = { + 'widget' => 'module_load', + 'module' => "RMBlast", + 'label' => "RMBlast Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rmblast_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RMBlast/manifest.yml b/apps/RMBlast/manifest.yml new file mode 100644 index 00000000..2678c764 --- /dev/null +++ b/apps/RMBlast/manifest.yml @@ -0,0 +1,5 @@ +name: RMBlast +category: Biology +description: RMBlast supports RepeatMasker searches by adding a few necessary features to the stock NCBI blastn program. +homepage: http://www.repeatmasker.org/RMBlast.html +hidden: true diff --git a/apps/RNAmmer/form.yml.erb b/apps/RNAmmer/form.yml.erb new file mode 100644 index 00000000..02afa2c7 --- /dev/null +++ b/apps/RNAmmer/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rnammer_module'] = { + 'widget' => 'module_load', + 'module' => "RNAmmer", + 'label' => "RNAmmer Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rnammer_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RNAmmer/manifest.yml b/apps/RNAmmer/manifest.yml new file mode 100644 index 00000000..4cefa59e --- /dev/null +++ b/apps/RNAmmer/manifest.yml @@ -0,0 +1,5 @@ +name: RNAmmer +category: Biology +description: Consistent and rapid annotation of ribosomal RNA genes. +homepage: https://www.cbs.dtu.dk/services/RNAmmer +hidden: true diff --git a/apps/RSEM/form.yml.erb b/apps/RSEM/form.yml.erb new file mode 100644 index 00000000..c104ac5e --- /dev/null +++ b/apps/RSEM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rsem_module'] = { + 'widget' => 'module_load', + 'module' => "RSEM", + 'label' => "RSEM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rsem_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RSEM/manifest.yml b/apps/RSEM/manifest.yml new file mode 100644 index 00000000..a00f099a --- /dev/null +++ b/apps/RSEM/manifest.yml @@ -0,0 +1,5 @@ +name: RSEM +category: Biology +description: Estimates gene and isoform expression levels from RNA-Seq data. +homepage: http://deweylab.biostat.wisc.edu/rsem/ +hidden: true diff --git a/apps/RSGISLib/form.yml.erb b/apps/RSGISLib/form.yml.erb new file mode 100644 index 00000000..9fd6a3e2 --- /dev/null +++ b/apps/RSGISLib/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rsgislib_module'] = { + 'widget' => 'module_load', + 'module' => "RSGISLib", + 'label' => "RSGISLib Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rsgislib_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RSGISLib/manifest.yml b/apps/RSGISLib/manifest.yml new file mode 100644 index 00000000..ca05dbc4 --- /dev/null +++ b/apps/RSGISLib/manifest.yml @@ -0,0 +1,5 @@ +name: RSGISLib +category: Earth Science +description: The Remote Sensing and GIS software library (RSGISLib) is a collection of tools for processing remote sensing and GIS datasets. +homepage: http://www.rsgislib.org +hidden: true diff --git a/apps/Racon/form.yml.erb b/apps/Racon/form.yml.erb new file mode 100644 index 00000000..149212d8 --- /dev/null +++ b/apps/Racon/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['racon_module'] = { + 'widget' => 'module_load', + 'module' => "Racon", + 'label' => "Racon Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{racon_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Racon/manifest.yml b/apps/Racon/manifest.yml new file mode 100644 index 00000000..f79a572c --- /dev/null +++ b/apps/Racon/manifest.yml @@ -0,0 +1,5 @@ +name: Racon +category: Biology +description: Ultrafast consensus module for raw de novo genome assembly of long uncorrected reads. +homepage: https://github.com/lbcb-sci/racon +hidden: true diff --git a/apps/Ragout/form.yml.erb b/apps/Ragout/form.yml.erb new file mode 100644 index 00000000..5cfe9ae7 --- /dev/null +++ b/apps/Ragout/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ragout_module'] = { + 'widget' => 'module_load', + 'module' => "Ragout", + 'label' => "Ragout Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ragout_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Ragout/manifest.yml b/apps/Ragout/manifest.yml new file mode 100644 index 00000000..413b8fdb --- /dev/null +++ b/apps/Ragout/manifest.yml @@ -0,0 +1,5 @@ +name: Ragout +category: Biology +description: Tool for chromosome assembly using multiple references. +homepage: http://fenderglass.github.io/Ragout/ +hidden: true diff --git a/apps/RapidNJ/form.yml.erb b/apps/RapidNJ/form.yml.erb new file mode 100644 index 00000000..59bed014 --- /dev/null +++ b/apps/RapidNJ/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rapidnj_module'] = { + 'widget' => 'module_load', + 'module' => "RapidNJ", + 'label' => "RapidNJ Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rapidnj_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RapidNJ/manifest.yml b/apps/RapidNJ/manifest.yml new file mode 100644 index 00000000..1b75539e --- /dev/null +++ b/apps/RapidNJ/manifest.yml @@ -0,0 +1,5 @@ +name: RapidNJ +category: Biology +description: An algorithmic engineered implementation of canonical neighbour-joining. +homepage: https://birc.au.dk/software/rapidnj +hidden: true diff --git a/apps/Ratatosk/form.yml.erb b/apps/Ratatosk/form.yml.erb new file mode 100644 index 00000000..16e66449 --- /dev/null +++ b/apps/Ratatosk/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ratatosk_module'] = { + 'widget' => 'module_load', + 'module' => "Ratatosk", + 'label' => "Ratatosk Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ratatosk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Ratatosk/manifest.yml b/apps/Ratatosk/manifest.yml new file mode 100644 index 00000000..a8bd3abe --- /dev/null +++ b/apps/Ratatosk/manifest.yml @@ -0,0 +1,5 @@ +name: Ratatosk +category: Biology +description: Phased hybrid error correction of long reads using colored de Bruijn graphs. +homepage: https://github.com/DecodeGenetics/Ratatosk +hidden: true diff --git a/apps/Raven/form.yml.erb b/apps/Raven/form.yml.erb new file mode 100644 index 00000000..2e812b61 --- /dev/null +++ b/apps/Raven/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['raven_module'] = { + 'widget' => 'module_load', + 'module' => "Raven", + 'label' => "Raven Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{raven_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Raven/manifest.yml b/apps/Raven/manifest.yml new file mode 100644 index 00000000..d93df004 --- /dev/null +++ b/apps/Raven/manifest.yml @@ -0,0 +1,5 @@ +name: Raven +category: Biology +description: De novo genome assembler for long uncorrected reads. +homepage: https://mmseqs.com +hidden: true diff --git a/apps/Rcorrector/form.yml.erb b/apps/Rcorrector/form.yml.erb new file mode 100644 index 00000000..d372149c --- /dev/null +++ b/apps/Rcorrector/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rcorrector_module'] = { + 'widget' => 'module_load', + 'module' => "Rcorrector", + 'label' => "Rcorrector Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rcorrector_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Rcorrector/manifest.yml b/apps/Rcorrector/manifest.yml new file mode 100644 index 00000000..93bf6d8b --- /dev/null +++ b/apps/Rcorrector/manifest.yml @@ -0,0 +1,5 @@ +name: Rcorrector +category: Biology +description: Kmer-based error correction method for RNA-seq data. +homepage: https://github.com/mourisl/Rcorrector +hidden: true diff --git a/apps/Relion/form.yml.erb b/apps/Relion/form.yml.erb new file mode 100644 index 00000000..4f88a265 --- /dev/null +++ b/apps/Relion/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['relion_module'] = { + 'widget' => 'module_load', + 'module' => "Relion", + 'label' => "Relion Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{relion_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Relion/icon.webp b/apps/Relion/icon.webp new file mode 100644 index 00000000..8905076f Binary files /dev/null and b/apps/Relion/icon.webp differ diff --git a/apps/Relion/manifest.yml b/apps/Relion/manifest.yml new file mode 100644 index 00000000..3d8e96c4 --- /dev/null +++ b/apps/Relion/manifest.yml @@ -0,0 +1,6 @@ +name: Relion +category: Biology +description: RELION (for REgularised LIkelihood OptimisatioN, pronounce rely-on) is a stand-alone computer program that employs an empirical Bayesian approach to refinement of (multiple) 3D reconstructions or 2D class averages in electron cryo-microscopy (cryo-EM). +homepage: http://www2.mrc-lmb.cam.ac.uk/relion/index.php/Main_Page +icon: icon.webp +hidden: true diff --git a/apps/RepeatMasker/form.yml.erb b/apps/RepeatMasker/form.yml.erb new file mode 100644 index 00000000..693904e8 --- /dev/null +++ b/apps/RepeatMasker/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['repeatmasker_module'] = { + 'widget' => 'module_load', + 'module' => "RepeatMasker", + 'label' => "RepeatMasker Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{repeatmasker_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RepeatMasker/manifest.yml b/apps/RepeatMasker/manifest.yml new file mode 100644 index 00000000..f309737c --- /dev/null +++ b/apps/RepeatMasker/manifest.yml @@ -0,0 +1,5 @@ +name: RepeatMasker +category: Biology +description: RepeatMasker is a program that screens DNA sequences for interspersed repeats and low complexity DNA sequences. +homepage: https://www.repeatmasker.org/ +hidden: true diff --git a/apps/RepeatModeler/form.yml.erb b/apps/RepeatModeler/form.yml.erb new file mode 100644 index 00000000..a23612bc --- /dev/null +++ b/apps/RepeatModeler/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['repeatmodeler_module'] = { + 'widget' => 'module_load', + 'module' => "RepeatModeler", + 'label' => "RepeatModeler Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{repeatmodeler_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RepeatModeler/manifest.yml b/apps/RepeatModeler/manifest.yml new file mode 100644 index 00000000..e0ec1784 --- /dev/null +++ b/apps/RepeatModeler/manifest.yml @@ -0,0 +1,5 @@ +name: RepeatModeler +category: Biology +description: De novo transposable element (TE) family identification and modeling package. +homepage: https://www.repeatmasker.org/ +hidden: true diff --git a/apps/RepeatScout/form.yml.erb b/apps/RepeatScout/form.yml.erb new file mode 100644 index 00000000..dc3547b4 --- /dev/null +++ b/apps/RepeatScout/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['repeatscout_module'] = { + 'widget' => 'module_load', + 'module' => "RepeatScout", + 'label' => "RepeatScout Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{repeatscout_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/RepeatScout/manifest.yml b/apps/RepeatScout/manifest.yml new file mode 100644 index 00000000..e3c906fc --- /dev/null +++ b/apps/RepeatScout/manifest.yml @@ -0,0 +1,5 @@ +name: RepeatScout +category: Biology +description: De novo identification of repeat families in large genomes. +homepage: http://bix.ucsd.edu/repeatscout/ +hidden: true diff --git a/apps/Riskscape/form.yml.erb b/apps/Riskscape/form.yml.erb new file mode 100644 index 00000000..481cef36 --- /dev/null +++ b/apps/Riskscape/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['riskscape_module'] = { + 'widget' => 'module_load', + 'module' => "Riskscape", + 'label' => "Riskscape Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{riskscape_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Riskscape/icon.webp b/apps/Riskscape/icon.webp new file mode 100644 index 00000000..582ce594 Binary files /dev/null and b/apps/Riskscape/icon.webp differ diff --git a/apps/Riskscape/manifest.yml b/apps/Riskscape/manifest.yml new file mode 100644 index 00000000..8cf1c05f --- /dev/null +++ b/apps/Riskscape/manifest.yml @@ -0,0 +1,6 @@ +name: Riskscape +category: Earth Science +description: RiskScape is an open-source spatial data processing application used for multi-hazard risk analysis. +homepage: https://riskscape.org.nz/ +icon: icon.webp +hidden: true diff --git a/apps/Roary/form.yml.erb b/apps/Roary/form.yml.erb new file mode 100644 index 00000000..49e3975a --- /dev/null +++ b/apps/Roary/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['roary_module'] = { + 'widget' => 'module_load', + 'module' => "Roary", + 'label' => "Roary Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{roary_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Roary/manifest.yml b/apps/Roary/manifest.yml new file mode 100644 index 00000000..41e2f72b --- /dev/null +++ b/apps/Roary/manifest.yml @@ -0,0 +1,5 @@ +name: Roary +category: Biology +description: Rapid large-scale prokaryote pan genome analysis. +homepage: https://github.com/sanger-pathogens/Roary +hidden: true diff --git a/apps/Rosetta/form.yml.erb b/apps/Rosetta/form.yml.erb new file mode 100644 index 00000000..1a393e4f --- /dev/null +++ b/apps/Rosetta/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rosetta_module'] = { + 'widget' => 'module_load', + 'module' => "Rosetta", + 'label' => "Rosetta Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rosetta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Rosetta/icon.png b/apps/Rosetta/icon.png new file mode 100644 index 00000000..f960e5f6 Binary files /dev/null and b/apps/Rosetta/icon.png differ diff --git a/apps/Rosetta/manifest.yml b/apps/Rosetta/manifest.yml new file mode 100644 index 00000000..0f900bb7 --- /dev/null +++ b/apps/Rosetta/manifest.yml @@ -0,0 +1,6 @@ +name: Rosetta +category: Biology +description: Rosetta is the premier software suite for modeling macromolecular structures. +homepage: https://www.rosettacommons.org +icon: icon.png +hidden: true diff --git a/apps/Ruby/form.yml.erb b/apps/Ruby/form.yml.erb new file mode 100644 index 00000000..989f625d --- /dev/null +++ b/apps/Ruby/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ruby_module'] = { + 'widget' => 'module_load', + 'module' => "Ruby", + 'label' => "Ruby Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ruby_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Ruby/icon.png b/apps/Ruby/icon.png new file mode 100644 index 00000000..f025d068 Binary files /dev/null and b/apps/Ruby/icon.png differ diff --git a/apps/Ruby/manifest.yml b/apps/Ruby/manifest.yml new file mode 100644 index 00000000..518d2704 --- /dev/null +++ b/apps/Ruby/manifest.yml @@ -0,0 +1,6 @@ +name: Ruby +category: Language +description: Ruby is a dynamic, open source programming language with a focus on simplicity and productivity. +homepage: https://www.ruby-lang.org +icon: icon.png +hidden: true diff --git a/apps/Rust/form.yml.erb b/apps/Rust/form.yml.erb new file mode 100644 index 00000000..b11a9ddf --- /dev/null +++ b/apps/Rust/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rust_module'] = { + 'widget' => 'module_load', + 'module' => "Rust", + 'label' => "Rust Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rust_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Rust/icon.png b/apps/Rust/icon.png new file mode 100644 index 00000000..2efadd5a Binary files /dev/null and b/apps/Rust/icon.png differ diff --git a/apps/Rust/manifest.yml b/apps/Rust/manifest.yml new file mode 100644 index 00000000..56475c9c --- /dev/null +++ b/apps/Rust/manifest.yml @@ -0,0 +1,6 @@ +name: Rust +category: Language +description: Systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. +homepage: https://www.rust-lang.org +icon: icon.png +hidden: true diff --git a/apps/SAGE/form.yml.erb b/apps/SAGE/form.yml.erb new file mode 100644 index 00000000..7330f22b --- /dev/null +++ b/apps/SAGE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sage_module'] = { + 'widget' => 'module_load', + 'module' => "SAGE", + 'label' => "SAGE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sage_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SAGE/icon.gif b/apps/SAGE/icon.gif new file mode 100644 index 00000000..83a3483c Binary files /dev/null and b/apps/SAGE/icon.gif differ diff --git a/apps/SAGE/manifest.yml b/apps/SAGE/manifest.yml new file mode 100644 index 00000000..7139df00 --- /dev/null +++ b/apps/SAGE/manifest.yml @@ -0,0 +1,6 @@ +name: SAGE +category: Biology +description: Ppackage containing programs for use in the genetic analysis of family, pedigree and individual data. +homepage: http://darwin.cwru.edu/sage/ +icon: icon.gif +hidden: true diff --git a/apps/SAMtools/form.yml.erb b/apps/SAMtools/form.yml.erb new file mode 100644 index 00000000..fee7905b --- /dev/null +++ b/apps/SAMtools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['samtools_module'] = { + 'widget' => 'module_load', + 'module' => "SAMtools", + 'label' => "SAMtools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{samtools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SAMtools/icon.png b/apps/SAMtools/icon.png new file mode 100644 index 00000000..11af56d6 Binary files /dev/null and b/apps/SAMtools/icon.png differ diff --git a/apps/SAMtools/manifest.yml b/apps/SAMtools/manifest.yml new file mode 100644 index 00000000..6173c518 --- /dev/null +++ b/apps/SAMtools/manifest.yml @@ -0,0 +1,6 @@ +name: SAMtools +category: Biology +description: Samtools is a suite of programs for interacting with high-throughput sequencing data. +homepage: http://www.htslib.org/ +icon: icon.png +hidden: true diff --git a/apps/SCOTCH/form.yml.erb b/apps/SCOTCH/form.yml.erb new file mode 100644 index 00000000..e0e153a5 --- /dev/null +++ b/apps/SCOTCH/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['scotch_module'] = { + 'widget' => 'module_load', + 'module' => "SCOTCH", + 'label' => "SCOTCH Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{scotch_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SCOTCH/icon.gif b/apps/SCOTCH/icon.gif new file mode 100644 index 00000000..4f27a12b Binary files /dev/null and b/apps/SCOTCH/icon.gif differ diff --git a/apps/SCOTCH/manifest.yml b/apps/SCOTCH/manifest.yml new file mode 100644 index 00000000..fa70f12a --- /dev/null +++ b/apps/SCOTCH/manifest.yml @@ -0,0 +1,6 @@ +name: SCOTCH +category: Mathematics +description: Software package and libraries for sequential and parallel graph partitioning, static mapping, and sparse matrix block ordering, and sequential mesh and hypergraph partitioning. +homepage: https://www.labri.fr/perso/pelegrin/scotch/ +icon: icon.gif +hidden: true diff --git a/apps/SDL2/form.yml.erb b/apps/SDL2/form.yml.erb new file mode 100644 index 00000000..dd6dab78 --- /dev/null +++ b/apps/SDL2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sdl2_module'] = { + 'widget' => 'module_load', + 'module' => "SDL2", + 'label' => "SDL2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sdl2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SDL2/icon.png b/apps/SDL2/icon.png new file mode 100644 index 00000000..9b16abb7 Binary files /dev/null and b/apps/SDL2/icon.png differ diff --git a/apps/SDL2/manifest.yml b/apps/SDL2/manifest.yml new file mode 100644 index 00000000..56a65ba9 --- /dev/null +++ b/apps/SDL2/manifest.yml @@ -0,0 +1,6 @@ +name: SDL2 +category: Others +description: Simple DirectMedia Layer, a cross-platform multimedia library. +homepage: http://www.libsdl.org/ +icon: icon.png +hidden: true diff --git a/apps/SEPP/form.yml.erb b/apps/SEPP/form.yml.erb new file mode 100644 index 00000000..26726a8c --- /dev/null +++ b/apps/SEPP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sepp_module'] = { + 'widget' => 'module_load', + 'module' => "SEPP", + 'label' => "SEPP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sepp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SEPP/manifest.yml b/apps/SEPP/manifest.yml new file mode 100644 index 00000000..32cd053c --- /dev/null +++ b/apps/SEPP/manifest.yml @@ -0,0 +1,5 @@ +name: SEPP +category: Biology +description: SATe-enabled Phylogenetic Placement - addresses the problem of phylogenetic placement of short reads into reference alignments and trees. +homepage: https://github.com/smirarab/sepp +hidden: true diff --git a/apps/SHAPEIT4/form.yml.erb b/apps/SHAPEIT4/form.yml.erb new file mode 100644 index 00000000..01a283cf --- /dev/null +++ b/apps/SHAPEIT4/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['shapeit4_module'] = { + 'widget' => 'module_load', + 'module' => "SHAPEIT4", + 'label' => "SHAPEIT4 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{shapeit4_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SHAPEIT4/manifest.yml b/apps/SHAPEIT4/manifest.yml new file mode 100644 index 00000000..a217d262 --- /dev/null +++ b/apps/SHAPEIT4/manifest.yml @@ -0,0 +1,5 @@ +name: SHAPEIT4 +category: Biology +description: Estimation of haplotypes (aka phasing) for SNP array and high coverage sequencing data. +homepage: https://odelaneau.github.io/shapeit4/ +hidden: true diff --git a/apps/SKA2/form.yml.erb b/apps/SKA2/form.yml.erb new file mode 100644 index 00000000..74fa88dd --- /dev/null +++ b/apps/SKA2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ska2_module'] = { + 'widget' => 'module_load', + 'module' => "SKA2", + 'label' => "SKA2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ska2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SKA2/manifest.yml b/apps/SKA2/manifest.yml new file mode 100644 index 00000000..12a1d0db --- /dev/null +++ b/apps/SKA2/manifest.yml @@ -0,0 +1,5 @@ +name: SKA2 +category: Biology +description: Split k-mer analysis (version 2) uses exact matching of split k-mer sequences to align closely related sequences, typically small haploid genomes such as bacteria and viruses. +homepage: https://docs.rs/ska/latest/ska/ +hidden: true diff --git a/apps/SKESA/form.yml.erb b/apps/SKESA/form.yml.erb new file mode 100644 index 00000000..ce9c0441 --- /dev/null +++ b/apps/SKESA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['skesa_module'] = { + 'widget' => 'module_load', + 'module' => "SKESA", + 'label' => "SKESA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{skesa_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SKESA/icon.png b/apps/SKESA/icon.png new file mode 100644 index 00000000..a3ee7673 Binary files /dev/null and b/apps/SKESA/icon.png differ diff --git a/apps/SKESA/manifest.yml b/apps/SKESA/manifest.yml new file mode 100644 index 00000000..cf48913e --- /dev/null +++ b/apps/SKESA/manifest.yml @@ -0,0 +1,6 @@ +name: SKESA +category: Biology +description: SKESA is a de-novo sequence read assembler for cultured single isolate genomes based on DeBruijn graphs. +homepage: https://github.com/ncbi/SKESA +icon: icon.png +hidden: true diff --git a/apps/SLEPc/form.yml.erb b/apps/SLEPc/form.yml.erb new file mode 100644 index 00000000..dc6f4053 --- /dev/null +++ b/apps/SLEPc/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['slepc_module'] = { + 'widget' => 'module_load', + 'module' => "SLEPc", + 'label' => "SLEPc Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{slepc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SLEPc/icon.gif b/apps/SLEPc/icon.gif new file mode 100644 index 00000000..7653f6b2 Binary files /dev/null and b/apps/SLEPc/icon.gif differ diff --git a/apps/SLEPc/manifest.yml b/apps/SLEPc/manifest.yml new file mode 100644 index 00000000..6a681f47 --- /dev/null +++ b/apps/SLEPc/manifest.yml @@ -0,0 +1,6 @@ +name: SLEPc +category: Others +description: SLEPc (Scalable Library for Eigenvalue Problem Computations) is a software library for the solution of large scale sparse eigenvalue problems on parallel computers. +homepage: https://slepc.upv.es +icon: icon.gif +hidden: true diff --git a/apps/SMRT-Link/form.yml.erb b/apps/SMRT-Link/form.yml.erb new file mode 100644 index 00000000..7429911c --- /dev/null +++ b/apps/SMRT-Link/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['smrt_link_module'] = { + 'widget' => 'module_load', + 'module' => "SMRT-Link", + 'label' => "SMRT-Link Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{smrt_link_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SMRT-Link/icon.png b/apps/SMRT-Link/icon.png new file mode 100644 index 00000000..8b54dfac Binary files /dev/null and b/apps/SMRT-Link/icon.png differ diff --git a/apps/SMRT-Link/manifest.yml b/apps/SMRT-Link/manifest.yml new file mode 100644 index 00000000..925ee15b --- /dev/null +++ b/apps/SMRT-Link/manifest.yml @@ -0,0 +1,6 @@ +name: SMRT-Link +category: Biology +description: PacBio’s open-source software suite is designed for use with Single Molecule, Real-Time (SMRT) Sequencing data. +homepage: https://www.pacb.com/support/software-downloads/ +icon: icon.png +hidden: true diff --git a/apps/SNVoter-NanoMethPhase/NanoMethPhase.png b/apps/SNVoter-NanoMethPhase/NanoMethPhase.png new file mode 100644 index 00000000..55bb15af Binary files /dev/null and b/apps/SNVoter-NanoMethPhase/NanoMethPhase.png differ diff --git a/apps/SNVoter-NanoMethPhase/SNVoter.png b/apps/SNVoter-NanoMethPhase/SNVoter.png new file mode 100644 index 00000000..451b283f Binary files /dev/null and b/apps/SNVoter-NanoMethPhase/SNVoter.png differ diff --git a/apps/SNVoter-NanoMethPhase/form.yml.erb b/apps/SNVoter-NanoMethPhase/form.yml.erb new file mode 100644 index 00000000..376c0a74 --- /dev/null +++ b/apps/SNVoter-NanoMethPhase/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['snvoter_nanomethphase_module'] = { + 'widget' => 'module_load', + 'module' => "SNVoter-NanoMethPhase", + 'label' => "SNVoter-NanoMethPhase Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{snvoter_nanomethphase_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SNVoter-NanoMethPhase/icon.png b/apps/SNVoter-NanoMethPhase/icon.png new file mode 100644 index 00000000..451b283f Binary files /dev/null and b/apps/SNVoter-NanoMethPhase/icon.png differ diff --git a/apps/SNVoter-NanoMethPhase/manifest.yml b/apps/SNVoter-NanoMethPhase/manifest.yml new file mode 100644 index 00000000..8a562e76 --- /dev/null +++ b/apps/SNVoter-NanoMethPhase/manifest.yml @@ -0,0 +1,6 @@ +name: SNVoter-NanoMethPhase +category: Biology +description: SNVoter - A top up tool to enhance SNV calling from Nanopore sequencing data & NanoMethPhase - Phase long reads and CpG methylations from Oxford Nanopore Technologies. +homepage: https://github.com/vahidAK/ +icon: icon.png +hidden: true diff --git a/apps/SPAdes/form.yml.erb b/apps/SPAdes/form.yml.erb new file mode 100644 index 00000000..f59d2b68 --- /dev/null +++ b/apps/SPAdes/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['spades_module'] = { + 'widget' => 'module_load', + 'module' => "SPAdes", + 'label' => "SPAdes Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{spades_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SPAdes/icon.png b/apps/SPAdes/icon.png new file mode 100644 index 00000000..2a688294 Binary files /dev/null and b/apps/SPAdes/icon.png differ diff --git a/apps/SPAdes/manifest.yml b/apps/SPAdes/manifest.yml new file mode 100644 index 00000000..0d619a46 --- /dev/null +++ b/apps/SPAdes/manifest.yml @@ -0,0 +1,6 @@ +name: SPAdes +category: Biology +description: Genome assembler for single-cell and isolates data sets. +homepage: https://ablab.github.io/spades/ +icon: icon.png +hidden: true diff --git a/apps/SQLite/form.yml.erb b/apps/SQLite/form.yml.erb new file mode 100644 index 00000000..d515dad1 --- /dev/null +++ b/apps/SQLite/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sqlite_module'] = { + 'widget' => 'module_load', + 'module' => "SQLite", + 'label' => "SQLite Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sqlite_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SQLite/icon.jpg b/apps/SQLite/icon.jpg new file mode 100644 index 00000000..4470067a Binary files /dev/null and b/apps/SQLite/icon.jpg differ diff --git a/apps/SQLite/manifest.yml b/apps/SQLite/manifest.yml new file mode 100644 index 00000000..d187615f --- /dev/null +++ b/apps/SQLite/manifest.yml @@ -0,0 +1,6 @@ +name: SQLite +category: Others +description: 'SQLite: SQL Database Engine in a C Library.' +homepage: https://www.sqlite.org/ +icon: icon.jpg +hidden: true diff --git a/apps/SSAHA2/form.yml.erb b/apps/SSAHA2/form.yml.erb new file mode 100644 index 00000000..44cea133 --- /dev/null +++ b/apps/SSAHA2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ssaha2_module'] = { + 'widget' => 'module_load', + 'module' => "SSAHA2", + 'label' => "SSAHA2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ssaha2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SSAHA2/manifest.yml b/apps/SSAHA2/manifest.yml new file mode 100644 index 00000000..6bfb118a --- /dev/null +++ b/apps/SSAHA2/manifest.yml @@ -0,0 +1,5 @@ +name: SSAHA2 +category: Biology +description: Pairwise sequence alignment program designed for the efficient mapping of sequencing reads onto genomic reference sequences. +homepage: http://www.sanger.ac.uk/resources/software/ssaha2/ +hidden: true diff --git a/apps/STAR/form.yml.erb b/apps/STAR/form.yml.erb new file mode 100644 index 00000000..dcd89e70 --- /dev/null +++ b/apps/STAR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['star_module'] = { + 'widget' => 'module_load', + 'module' => "STAR", + 'label' => "STAR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{star_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/STAR/manifest.yml b/apps/STAR/manifest.yml new file mode 100644 index 00000000..7329b24e --- /dev/null +++ b/apps/STAR/manifest.yml @@ -0,0 +1,5 @@ +name: STAR +category: Biology +description: Fast universal RNA-seq aligner. +homepage: https://github.com/alexdobin/STAR +hidden: true diff --git a/apps/SUNDIALS/form.yml.erb b/apps/SUNDIALS/form.yml.erb new file mode 100644 index 00000000..82820480 --- /dev/null +++ b/apps/SUNDIALS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sundials_module'] = { + 'widget' => 'module_load', + 'module' => "SUNDIALS", + 'label' => "SUNDIALS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sundials_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SUNDIALS/icon.png b/apps/SUNDIALS/icon.png new file mode 100644 index 00000000..ab359b1f Binary files /dev/null and b/apps/SUNDIALS/icon.png differ diff --git a/apps/SUNDIALS/manifest.yml b/apps/SUNDIALS/manifest.yml new file mode 100644 index 00000000..2f851ad7 --- /dev/null +++ b/apps/SUNDIALS/manifest.yml @@ -0,0 +1,6 @@ +name: SUNDIALS +category: Mathematics +description: 'SUNDIALS: SUite of Nonlinear and DIfferential/ALgebraic Equation Solvers.' +homepage: http://computation.llnl.gov/projects/sundials +icon: icon.png +hidden: true diff --git a/apps/SURVIVOR/form.yml.erb b/apps/SURVIVOR/form.yml.erb new file mode 100644 index 00000000..ee3f5394 --- /dev/null +++ b/apps/SURVIVOR/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['survivor_module'] = { + 'widget' => 'module_load', + 'module' => "SURVIVOR", + 'label' => "SURVIVOR Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{survivor_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SURVIVOR/manifest.yml b/apps/SURVIVOR/manifest.yml new file mode 100644 index 00000000..043d2f33 --- /dev/null +++ b/apps/SURVIVOR/manifest.yml @@ -0,0 +1,5 @@ +name: SURVIVOR +category: Biology +description: Tool set for simulating/evaluating SVs, merging and comparing SVs within and among samples, and includes various methods to reformat or summarize SVs. +homepage: https://github.com/fritzsedlazeck/SURVIVOR/wiki +hidden: true diff --git a/apps/Salmon/form.yml.erb b/apps/Salmon/form.yml.erb new file mode 100644 index 00000000..48027383 --- /dev/null +++ b/apps/Salmon/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['salmon_module'] = { + 'widget' => 'module_load', + 'module' => "Salmon", + 'label' => "Salmon Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{salmon_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Salmon/icon.png b/apps/Salmon/icon.png new file mode 100644 index 00000000..fdd67f4a Binary files /dev/null and b/apps/Salmon/icon.png differ diff --git a/apps/Salmon/manifest.yml b/apps/Salmon/manifest.yml new file mode 100644 index 00000000..f96bca46 --- /dev/null +++ b/apps/Salmon/manifest.yml @@ -0,0 +1,6 @@ +name: Salmon +category: Biology +description: Salmon is a wicked-fast program to produce a highly-accurate, transcript-level quantification estimates from RNA-seq data. +homepage: https://github.com/COMBINE-lab/salmon +icon: icon.png +hidden: true diff --git a/apps/Sambamba/form.yml.erb b/apps/Sambamba/form.yml.erb new file mode 100644 index 00000000..f949844d --- /dev/null +++ b/apps/Sambamba/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sambamba_module'] = { + 'widget' => 'module_load', + 'module' => "Sambamba", + 'label' => "Sambamba Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sambamba_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Sambamba/icon.jpg b/apps/Sambamba/icon.jpg new file mode 100644 index 00000000..49e66423 Binary files /dev/null and b/apps/Sambamba/icon.jpg differ diff --git a/apps/Sambamba/manifest.yml b/apps/Sambamba/manifest.yml new file mode 100644 index 00000000..9a8c5718 --- /dev/null +++ b/apps/Sambamba/manifest.yml @@ -0,0 +1,6 @@ +name: Sambamba +category: Biology +description: Tools for working with SAM/BAM data. +homepage: https://lomereiter.github.io/sambamba/ +icon: icon.jpg +hidden: true diff --git a/apps/SeiSol/form.yml.erb b/apps/SeiSol/form.yml.erb new file mode 100644 index 00000000..d66222c4 --- /dev/null +++ b/apps/SeiSol/form.yml.erb @@ -0,0 +1,29 @@ +<%# AI generated %> +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['seisol_module'] = { + 'widget' => 'module_load', + 'module' => "SeiSol", + 'label' => "SeiSol Module" + } + + end + new_form[k] = v +end + +base['form'] = new_form + + + +base['script'] = base['script'].rstrip + "\n\n" + [ + "module -q purge", + "module load #{seisol_module}", + app_cmd +].join("\n") + "\n" +%> +<%= base.to_yaml -%> diff --git a/apps/SeiSol/manifest.yml b/apps/SeiSol/manifest.yml new file mode 100644 index 00000000..2bc694a9 --- /dev/null +++ b/apps/SeiSol/manifest.yml @@ -0,0 +1,7 @@ +# AI generated +category: Other +description: '' +hidden: true +homepage: '' +icon: icon.png +name: SeiSol diff --git a/apps/SeisSol/form.yml.erb b/apps/SeisSol/form.yml.erb new file mode 100644 index 00000000..83a65282 --- /dev/null +++ b/apps/SeisSol/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['seissol_module'] = { + 'widget' => 'module_load', + 'module' => "SeisSol", + 'label' => "SeisSol Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{seissol_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SeisSol/icon.svg b/apps/SeisSol/icon.svg new file mode 100644 index 00000000..c243326b --- /dev/null +++ b/apps/SeisSol/icon.svg @@ -0,0 +1,108 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/SeisSol/manifest.yml b/apps/SeisSol/manifest.yml new file mode 100644 index 00000000..96da84df --- /dev/null +++ b/apps/SeisSol/manifest.yml @@ -0,0 +1,6 @@ +name: SeisSol +category: Earth Science +description: SeisSol is a software package for simulating wave propagation and dynamic rupture based on the arbitrary high-order accurate derivative discontinuous Galerkin method (ADER-DG). +homepage: http://www.seissol.org +icon: icon.svg +hidden: true diff --git a/apps/SeqAn/form.yml.erb b/apps/SeqAn/form.yml.erb new file mode 100644 index 00000000..e6ebcf1d --- /dev/null +++ b/apps/SeqAn/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['seqan_module'] = { + 'widget' => 'module_load', + 'module' => "SeqAn", + 'label' => "SeqAn Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{seqan_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SeqAn/icon.png b/apps/SeqAn/icon.png new file mode 100644 index 00000000..b7158a79 Binary files /dev/null and b/apps/SeqAn/icon.png differ diff --git a/apps/SeqAn/manifest.yml b/apps/SeqAn/manifest.yml new file mode 100644 index 00000000..14a3e1f9 --- /dev/null +++ b/apps/SeqAn/manifest.yml @@ -0,0 +1,6 @@ +name: SeqAn +category: Biology +description: SeqAn is an open source C++ library of efficient algorithms and data structures for the analysis of sequences with the focus on biological data. +homepage: https://github.com/seqan/seqan +icon: icon.png +hidden: true diff --git a/apps/SeqAn3/form.yml.erb b/apps/SeqAn3/form.yml.erb new file mode 100644 index 00000000..ba51de9d --- /dev/null +++ b/apps/SeqAn3/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['seqan3_module'] = { + 'widget' => 'module_load', + 'module' => "SeqAn3", + 'label' => "SeqAn3 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{seqan3_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SeqAn3/icon.png b/apps/SeqAn3/icon.png new file mode 100644 index 00000000..b7158a79 Binary files /dev/null and b/apps/SeqAn3/icon.png differ diff --git a/apps/SeqAn3/manifest.yml b/apps/SeqAn3/manifest.yml new file mode 100644 index 00000000..99ea44a3 --- /dev/null +++ b/apps/SeqAn3/manifest.yml @@ -0,0 +1,6 @@ +name: SeqAn3 +category: Biology +description: C++ library of efficient algorithms and data structures for the analysis of sequences with the focus on biological data. +homepage: https://github.com/seqan/seqan3 +icon: icon.png +hidden: true diff --git a/apps/SeqKit/form.yml.erb b/apps/SeqKit/form.yml.erb new file mode 100644 index 00000000..f55cee47 --- /dev/null +++ b/apps/SeqKit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['seqkit_module'] = { + 'widget' => 'module_load', + 'module' => "SeqKit", + 'label' => "SeqKit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{seqkit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SeqKit/manifest.yml b/apps/SeqKit/manifest.yml new file mode 100644 index 00000000..da5e6fcf --- /dev/null +++ b/apps/SeqKit/manifest.yml @@ -0,0 +1,5 @@ +name: SeqKit +category: Biology +description: Ultrafast toolkit for FASTA/Q file manipulation. +homepage: https://bioinf.shenwei.me/seqkit/ +hidden: true diff --git a/apps/SiBELia/form.yml.erb b/apps/SiBELia/form.yml.erb new file mode 100644 index 00000000..f12fe723 --- /dev/null +++ b/apps/SiBELia/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sibelia_module'] = { + 'widget' => 'module_load', + 'module' => "SiBELia", + 'label' => "SiBELia Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sibelia_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SiBELia/icon.png b/apps/SiBELia/icon.png new file mode 100644 index 00000000..1565f580 Binary files /dev/null and b/apps/SiBELia/icon.png differ diff --git a/apps/SiBELia/manifest.yml b/apps/SiBELia/manifest.yml new file mode 100644 index 00000000..f6a225f1 --- /dev/null +++ b/apps/SiBELia/manifest.yml @@ -0,0 +1,6 @@ +name: SiBELia +category: Biology +description: A comparative genomics tool for analysing genomic variations that correlate with pathogens, or microorganisms adapt in different environments. +homepage: http://bioinf.spbau.ru/en/sibelia +icon: icon.png +hidden: true diff --git a/apps/Siesta/form.yml.erb b/apps/Siesta/form.yml.erb new file mode 100644 index 00000000..f8823adc --- /dev/null +++ b/apps/Siesta/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['siesta_module'] = { + 'widget' => 'module_load', + 'module' => "Siesta", + 'label' => "Siesta Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{siesta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Siesta/icon.png b/apps/Siesta/icon.png new file mode 100644 index 00000000..829e9f45 Binary files /dev/null and b/apps/Siesta/icon.png differ diff --git a/apps/Siesta/manifest.yml b/apps/Siesta/manifest.yml new file mode 100644 index 00000000..d0a65224 --- /dev/null +++ b/apps/Siesta/manifest.yml @@ -0,0 +1,6 @@ +name: Siesta +category: Physics +description: SIESTA is both a method and its computer program implementation, to perform efficient electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids. +homepage: http://departments.icmab.es/leem/siesta +icon: icon.png +hidden: true diff --git a/apps/SignalP/form.yml.erb b/apps/SignalP/form.yml.erb new file mode 100644 index 00000000..2721fc69 --- /dev/null +++ b/apps/SignalP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['signalp_module'] = { + 'widget' => 'module_load', + 'module' => "SignalP", + 'label' => "SignalP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{signalp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SignalP/manifest.yml b/apps/SignalP/manifest.yml new file mode 100644 index 00000000..e43428f8 --- /dev/null +++ b/apps/SignalP/manifest.yml @@ -0,0 +1,5 @@ +name: SignalP +category: Biology +description: SignalP predicts the presence and location of signal peptide cleavage sites in amino acid sequences from different organisms. +homepage: https://services.healthtech.dtu.dk/software.php +hidden: true diff --git a/apps/SlurmBasic/Slurm_logo.svg b/apps/SlurmBasic/Slurm_logo.svg new file mode 100644 index 00000000..3d1e7d28 --- /dev/null +++ b/apps/SlurmBasic/Slurm_logo.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/apps/SlurmBasic/form.yml b/apps/SlurmBasic/form.yml new file mode 100644 index 00000000..292d072e --- /dev/null +++ b/apps/SlurmBasic/form.yml @@ -0,0 +1,141 @@ +--- +form: + partition: + widget: select + label: Partition + options: + - [ any, "", set-max-cores_simple: 166, set-max-memory_total_gb: 1450] + - [ genoa, genoa, set-max-cores_simple: 166, set-max-memory_total_gb: 1450] + - [ milan, milan, set-max-cores_simple: 126, set-max-memory_total_gb: 1000] + + cores_simple: + widget: number + label: Number of Cores + value: 1 + min: 1 + step: 1 + + cores_advanced: + widget: number + label: [Number of Tasks, CPUS per Task] + size: 2 + value: [ 1, 1] + min: [ 1, 1] + step: [ 1, 1] + + show_advanced_cpu_option: + widget: checkbox + label: + options: + - ["Show advanced CPU options", "", show-cores_advanced, hide-cores_simple, enable-cores_advanced, disable-cores_simple] + + number_of_nodes: + widget: number + label: Number of Nodes + min: 1 + step: 1 + help: Leave empty if you don't want to specify the number of nodes you want to use. + + memory_total_gb: + widget: number + label: Total Memory (GB) + value: 2 + min: 1 + step: 1 + + memory_per_cpu_gb: + widget: number + label: Memory per CPU (GB) + value: 2 + min: 1 + max: 8 + step: 1 + + show_memory_per_cpu_option: + widget: checkbox + label: + options: + - ["Show Memory per CPU", "", show-memory_per_cpu_gb, hide-memory_total_gb, enable-memory_per_cpu_gb, disable-memory_total_gb] + + time_days_hours_minutes: + widget: number + label: [Time (Days), (Hours), (Minutes), (Seconds)] + size: 4 + value: [0, 0, 15, 0] + min: [0, 0, 0, 0] + max: [21, 23, 59, 59] + step: [1, 1, 1, 1] + + show_advanced_option: + widget: checkbox + label: + options: + - ["Show advanced option", "", show-testing, show-profiling, show-array, show-mail_option, enable-testing, enable-profiling, enable-array, enable-mail_option] + + testing: + widget: checkbox + label: Testing + direction: horizontal + separator: "," + indent: 1 + options: + - [ "Perform a high priority test (15 mins)", 'debug', set-time_days_hours_minutes_1: 0, set-time_days_hours_minutes_2: 0, set-time_days_hours_minutes_3: 15, set-time_days_hours_minutes_4: 0] + + profiling: + widget: checkbox + label: Profiling + direction: horizontal + separator: "," + indent: 1 + options: + - [ "Profile my Job", "task", show-profiling_time, enable-profiling_time] + + profiling_time: + widget: number + label: Record information about the job every X seconds + indent: 1 + value: 30 + min: 1 + max: 60 + step: 1 + + array: + widget: number + label: [ Array Job (start index), Array Job (last index), Array Job (jump) ] + size: 3 + indent: 1 + value: [null, null, 1] + min: [0, 0, 1] + help: Each job executed from an array job is assigned a task ID, which can be referenced in the shell script via the environment variable SLURM_ARRAY_TASK_ID. + + mail_option: + label: Mail option + widget: checkbox + direction: horizontal + separator: "," + indent: 1 + options: + - [ "Beginning of job execution", 'BEGIN', ] + - [ "End of job execution", 'END', ] + - [ "Fail of job", 'FAIL', ] + - [ "When the job is requeued", 'REQUEUE', ] + - [ "All", 'ALL', ] + +script: | + #!/bin/bash -e + #SBATCH --job-name=#{OC_JOB_NAME} + #SBATCH --partition=#{partition} + #SBATCH --ntasks=#{cores_simple} + #SBATCH --ntasks=#{cores_advanced_1} + #SBATCH --cpus-per-task=#{cores_advanced_2} + #SBATCH --nodes=#{number_of_nodes} + #SBATCH --mem=#{memory_total_gb}G + #SBATCH --mem-per-cpu=#{memory_per_cpu_gb}G + #SBATCH --time=#{time_days_hours_minutes_1}-#{zeropadding(time_days_hours_minutes_2,2)}:#{zeropadding(time_days_hours_minutes_3,2)}:#{zeropadding(time_days_hours_minutes_4,2)} + #SBATCH --array=#{array_1}-#{array_2}:#{array_3} + #SBATCH --qos=#{testing} + #SBATCH --profile=#{profiling} + #SBATCH --acctg-freq=#{profiling_time} + #SBATCH --mail-type=#{mail_option} + + diff --git a/apps/SlurmBasic/manifest.yml b/apps/SlurmBasic/manifest.yml new file mode 100644 index 00000000..2b46b782 --- /dev/null +++ b/apps/SlurmBasic/manifest.yml @@ -0,0 +1,4 @@ +name: Job Script (Slurm) +category: Application +description: This application generates an arbitrary job script in Slurm. +icon: Slurm_logo.svg \ No newline at end of file diff --git a/apps/SlurmGPU/README_icon.md b/apps/SlurmGPU/README_icon.md new file mode 100644 index 00000000..885b7506 --- /dev/null +++ b/apps/SlurmGPU/README_icon.md @@ -0,0 +1 @@ +The icon is obtained from https://upload.wikimedia.org/wikipedia/commons/3/3a/Slurm_logo.svg \ No newline at end of file diff --git a/apps/SlurmGPU/Slurm_logo.svg b/apps/SlurmGPU/Slurm_logo.svg new file mode 100644 index 00000000..3d1e7d28 --- /dev/null +++ b/apps/SlurmGPU/Slurm_logo.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/apps/SlurmGPU/form.yml b/apps/SlurmGPU/form.yml new file mode 100644 index 00000000..5ed8ea89 --- /dev/null +++ b/apps/SlurmGPU/form.yml @@ -0,0 +1,200 @@ +--- +form: + partition: + widget: select + label: Partition + options: + - [ any, "", set-max-cores_simple: 166, set-max-memory_total_gb: 1450, show-gpu_any, disable-gpu_genoa, disable-number_of_gpus_genoa, disable-gpu_milan, disable-number_of_gpus_milan, set-value-gpu_any: None] + - [ genoa, genoa, set-max-cores_simple: 166, set-max-memory_total_gb: 1450, show-gpu_genoa, disable-gpu_any, disable-number_of_gpus_any, disable-gpu_milan, disable-number_of_gpus_milan] + - [ milan, milan, set-max-cores_simple: 126, set-max-memory_total_gb: 1000, show-gpu_milan, disable-gpu_any, disable-number_of_gpus_any, disable-gpu_genoa, disable-number_of_gpus_genoa] + + cores_simple: + widget: number + label: Number of Cores + value: 1 + min: 1 + step: 1 + + cores_advanced: + widget: number + label: [Number of Tasks, CPUS per Task] + size: 2 + value: [ 1, 1] + min: [ 1, 1] + step: [ 1, 1] + + show_advanced_cpu_option: + widget: checkbox + label: + options: + - ["Show advanced CPU options", "", show-cores_advanced, hide-cores_simple, enable-cores_advanced, disable-cores_simple] + + number_of_nodes: + widget: number + label: Number of Nodes + min: 1 + step: 1 + help: Leave empty if you don't want to specify the number of nodes you want to use. + + memory_total_gb: + widget: number + label: Total Memory (GB) + value: 2 + min: 1 + step: 1 + + memory_per_cpu_gb: + widget: number + label: Memory per CPU (GB) + value: 2 + min: 1 + max: 8 + step: 1 + + show_memory_per_cpu_option: + widget: checkbox + label: + options: + - ["Show Memory per CPU", "", show-memory_per_cpu_gb, hide-memory_total_gb, enable-memory_per_cpu_gb, disable-memory_total_gb] + + gpu_any: + widget: select + label: Type of GPU + size: 1 + options: + - [ "None", "", ] + - [ "H100", "h100", show-number_of_gpus_any, set-value-partition: genoa, set-value-gpu_genoa: H100] + - [ "A100 (40GB)", "a100", show-number_of_gpus_any, set-value-partition: genoa, set-value-gpu_genoa: A100 (40GB)] + - [ "A100 (80GB)", "a100", show-number_of_gpus_any, set-value-partition: milan, set-value-gpu_milan: A100 (80GB)] + - [ "L4", "l4", show-number_of_gpus_any, set-value-partition: genoa, set-value-gpu_genoa: L4] + help: Selecting a GPU here will change the partition + + number_of_gpus_any: + widget: number + label: Number of GPUs + value: 1 + min: 1 + max: 4 + step: 1 + + gpu_genoa: + widget: select + label: Type of GPU + size: 1 + options: + - [ "None", "", ] + - [ "H100", "h100", show-number_of_gpus_genoa] + - [ "A100 (40GB)", "a100", show-number_of_gpus_genoa] + - [ "L4", "l4", show-number_of_gpus_genoa] + help: If you want to use the A100 (40GB) graphic card, switch Partition to milan. + + number_of_gpus_genoa: + widget: number + label: Number of GPUs + value: 1 + min: 1 + max: 4 + step: 1 + + gpu_milan: + widget: select + label: Type of GPU + size: 1 + options: + - [ "None", "", ] + - [ "A100 (80GB)", "a100", show-number_of_gpus_milan] + help: If you want to use the H100, A100 (40GB), or L4 graphic card, switch Partition to genoa. + + number_of_gpus_milan: + widget: number + label: Number of GPUs + value: 1 + min: 1 + max: 4 + step: 1 + + time_days_hours_minutes: + widget: number + label: [Time (Days), (Hours), (Minutes), (Seconds)] + size: 4 + value: [0, 0, 15, 0] + min: [0, 0, 0, 0] + max: [21, 23, 59, 59] + step: [1, 1, 1, 1] + + show_advanced_option: + widget: checkbox + label: + options: + - ["Show advanced option", "", show-testing, show-profiling, show-array, show-mail_option, enable-testing, enable-profiling, enable-array, enable-mail_option] + + testing: + widget: checkbox + label: Testing + direction: horizontal + separator: "," + indent: 1 + options: + - [ "Perform a high priority test (15 mins)", 'debug', set-time_days_hours_minutes_1: 0, set-time_days_hours_minutes_2: 0, set-time_days_hours_minutes_3: 15, set-time_days_hours_minutes_4: 0] + + profiling: + widget: checkbox + label: Profiling + direction: horizontal + separator: "," + indent: 1 + options: + - [ "Profile my Job", "task", show-profiling_time, enable-profiling_time] + + profiling_time: + widget: number + label: Record information about the job every X seconds + indent: 1 + value: 30 + min: 1 + max: 60 + step: 1 + + array: + widget: number + label: [ Array Job (start index), Array Job (last index), Array Job (jump) ] + size: 3 + indent: 1 + value: [null, null, 1] + min: [0, 0, 1] + help: Each job executed from an array job is assigned a task ID, which can be referenced in the shell script via the environment variable SLURM_ARRAY_TASK_ID. + + mail_option: + label: Mail option + widget: checkbox + direction: horizontal + separator: "," + indent: 1 + options: + - [ "Beginning of job execution", 'BEGIN', ] + - [ "End of job execution", 'END', ] + - [ "Fail of job", 'FAIL', ] + - [ "When the job is requeued", 'REQUEUE', ] + - [ "All", 'ALL', ] + +script: | + #!/bin/bash -e + #SBATCH --job-name=#{OC_JOB_NAME} + #SBATCH --partition=#{partition} + #SBATCH --ntasks=#{cores_simple} + #SBATCH --ntasks=#{cores_advanced_1} + #SBATCH --cpus-per-task=#{cores_advanced_2} + #SBATCH --nodes=#{number_of_nodes} + #SBATCH --mem=#{memory_total_gb}G + #SBATCH --mem-per-cpu=#{memory_per_cpu_gb}G + #SBATCH --gpus-per-node=#{gpu_any}:#{number_of_gpus_any} + #SBATCH --gpus-per-node=#{gpu_genoa}:#{number_of_gpus_genoa} + #SBATCH --gpus-per-node=#{gpu_milan}:#{number_of_gpus_milan} + #SBATCH --time=#{time_days_hours_minutes_1}-#{zeropadding(time_days_hours_minutes_2,2)}:#{zeropadding(time_days_hours_minutes_3,2)}:#{zeropadding(time_days_hours_minutes_4,2)} + #SBATCH --array=#{array_1}-#{array_2}:#{array_3} + #SBATCH --qos=#{testing} + #SBATCH --profile=#{profiling} + #SBATCH --acctg-freq=#{profiling_time} + #SBATCH --mail-type=#{mail_option} + + \ No newline at end of file diff --git a/apps/SlurmGPU/manifest.yml b/apps/SlurmGPU/manifest.yml new file mode 100644 index 00000000..0ce9de83 --- /dev/null +++ b/apps/SlurmGPU/manifest.yml @@ -0,0 +1,4 @@ +name: GPU Job Script (Slurm) +category: Application +description: This application generates an arbitrary job script in Slurm. +icon: Slurm_logo.svg \ No newline at end of file diff --git a/apps/Sniffles/form.yml.erb b/apps/Sniffles/form.yml.erb new file mode 100644 index 00000000..041dd960 --- /dev/null +++ b/apps/Sniffles/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sniffles_module'] = { + 'widget' => 'module_load', + 'module' => "Sniffles", + 'label' => "Sniffles Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sniffles_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Sniffles/manifest.yml b/apps/Sniffles/manifest.yml new file mode 100644 index 00000000..284f2f9f --- /dev/null +++ b/apps/Sniffles/manifest.yml @@ -0,0 +1,5 @@ +name: Sniffles +category: Biology +description: A fast structural variant caller for long-read sequencing. +homepage: https://github.com/fritzsedlazeck/Sniffles +hidden: true diff --git a/apps/SortMeRNA/form.yml.erb b/apps/SortMeRNA/form.yml.erb new file mode 100644 index 00000000..4143b1cd --- /dev/null +++ b/apps/SortMeRNA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sortmerna_module'] = { + 'widget' => 'module_load', + 'module' => "SortMeRNA", + 'label' => "SortMeRNA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sortmerna_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SortMeRNA/manifest.yml b/apps/SortMeRNA/manifest.yml new file mode 100644 index 00000000..bb8e037f --- /dev/null +++ b/apps/SortMeRNA/manifest.yml @@ -0,0 +1,5 @@ +name: SortMeRNA +category: Biology +description: SortMeRNA is a biological sequence analysis tool for filtering, mapping and OTU-picking NGS reads. +homepage: http://bioinfo.lifl.fr/RNA/sortmerna/ +hidden: true diff --git a/apps/SourceTracker/form.yml.erb b/apps/SourceTracker/form.yml.erb new file mode 100644 index 00000000..1a595b71 --- /dev/null +++ b/apps/SourceTracker/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sourcetracker_module'] = { + 'widget' => 'module_load', + 'module' => "SourceTracker", + 'label' => "SourceTracker Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sourcetracker_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SourceTracker/manifest.yml b/apps/SourceTracker/manifest.yml new file mode 100644 index 00000000..951ac6dd --- /dev/null +++ b/apps/SourceTracker/manifest.yml @@ -0,0 +1,5 @@ +name: SourceTracker +category: Biology +description: SourceTracker is a Bayesian approach to estimating the proportion of a novel community that comes from a set of source environments. +homepage: http://sourceforge.net/projects/sourcetracker +hidden: true diff --git a/apps/SqueezeMeta/form.yml.erb b/apps/SqueezeMeta/form.yml.erb new file mode 100644 index 00000000..faa8e1e4 --- /dev/null +++ b/apps/SqueezeMeta/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['squeezemeta_module'] = { + 'widget' => 'module_load', + 'module' => "SqueezeMeta", + 'label' => "SqueezeMeta Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{squeezemeta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SqueezeMeta/icon.svg b/apps/SqueezeMeta/icon.svg new file mode 100644 index 00000000..ccc57bfd --- /dev/null +++ b/apps/SqueezeMeta/icon.svg @@ -0,0 +1,272 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + Openclipart + + + lemon tree + 2012-10-16T16:52:29 + + https://openclipart.org/detail/172787/lemon-tree--by-stilg4r-172787 + + + stilg4r + + + + + lemon + tree + fruit + green + nature + farm + produce + + + + + + + + + + + \ No newline at end of file diff --git a/apps/SqueezeMeta/manifest.yml b/apps/SqueezeMeta/manifest.yml new file mode 100644 index 00000000..d9711743 --- /dev/null +++ b/apps/SqueezeMeta/manifest.yml @@ -0,0 +1,6 @@ +name: SqueezeMeta +category: Biology +description: Fully automated metagenomics pipeline, from reads to bins. +homepage: https://github.com/jtamames/SqueezeMeta +icon: icon.svg +hidden: true diff --git a/apps/Stacks/form.yml.erb b/apps/Stacks/form.yml.erb new file mode 100644 index 00000000..cfb8ae21 --- /dev/null +++ b/apps/Stacks/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['stacks_module'] = { + 'widget' => 'module_load', + 'module' => "Stacks", + 'label' => "Stacks Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{stacks_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Stacks/manifest.yml b/apps/Stacks/manifest.yml new file mode 100644 index 00000000..5900239f --- /dev/null +++ b/apps/Stacks/manifest.yml @@ -0,0 +1,5 @@ +name: Stacks +category: Biology +description: Stacks is a software pipeline for building loci from short-read sequences, such as those generated on the Illumina platform. +homepage: http://creskolab.uoregon.edu/stacks/ +hidden: true diff --git a/apps/StringTie/form.yml.erb b/apps/StringTie/form.yml.erb new file mode 100644 index 00000000..5ebb8554 --- /dev/null +++ b/apps/StringTie/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['stringtie_module'] = { + 'widget' => 'module_load', + 'module' => "StringTie", + 'label' => "StringTie Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{stringtie_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/StringTie/icon.png b/apps/StringTie/icon.png new file mode 100644 index 00000000..a5c813dd Binary files /dev/null and b/apps/StringTie/icon.png differ diff --git a/apps/StringTie/manifest.yml b/apps/StringTie/manifest.yml new file mode 100644 index 00000000..078ed937 --- /dev/null +++ b/apps/StringTie/manifest.yml @@ -0,0 +1,6 @@ +name: StringTie +category: Biology +description: StringTie is a fast and highly efficient assembler of RNA-Seq alignments into potential transcripts. +homepage: https://ccb.jhu.edu/software/stringtie/ +icon: icon.png +hidden: true diff --git a/apps/Structure/form.yml.erb b/apps/Structure/form.yml.erb new file mode 100644 index 00000000..59dc5fc6 --- /dev/null +++ b/apps/Structure/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['structure_module'] = { + 'widget' => 'module_load', + 'module' => "Structure", + 'label' => "Structure Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{structure_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Structure/manifest.yml b/apps/Structure/manifest.yml new file mode 100644 index 00000000..177f50fc --- /dev/null +++ b/apps/Structure/manifest.yml @@ -0,0 +1,5 @@ +name: Structure +category: Biology +description: The program structure is a free software package for using multi-locus genotype data to investigate population structure. +homepage: https://web.stanford.edu/group/pritchardlab/structure.html +hidden: true diff --git a/apps/Subread/form.yml.erb b/apps/Subread/form.yml.erb new file mode 100644 index 00000000..3c2ffe08 --- /dev/null +++ b/apps/Subread/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['subread_module'] = { + 'widget' => 'module_load', + 'module' => "Subread", + 'label' => "Subread Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{subread_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Subread/icon.png b/apps/Subread/icon.png new file mode 100644 index 00000000..b29f9e7a Binary files /dev/null and b/apps/Subread/icon.png differ diff --git a/apps/Subread/manifest.yml b/apps/Subread/manifest.yml new file mode 100644 index 00000000..78da0c57 --- /dev/null +++ b/apps/Subread/manifest.yml @@ -0,0 +1,6 @@ +name: Subread +category: Biology +description: High performance read alignment, quantification and mutation discovery. +homepage: http://subread.sourceforge.net/ +icon: icon.png +hidden: true diff --git a/apps/SuperLU/form.yml.erb b/apps/SuperLU/form.yml.erb new file mode 100644 index 00000000..1216964b --- /dev/null +++ b/apps/SuperLU/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['superlu_module'] = { + 'widget' => 'module_load', + 'module' => "SuperLU", + 'label' => "SuperLU Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{superlu_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/SuperLU/icon.png b/apps/SuperLU/icon.png new file mode 100644 index 00000000..e38f3c29 Binary files /dev/null and b/apps/SuperLU/icon.png differ diff --git a/apps/SuperLU/manifest.yml b/apps/SuperLU/manifest.yml new file mode 100644 index 00000000..2a86efba --- /dev/null +++ b/apps/SuperLU/manifest.yml @@ -0,0 +1,6 @@ +name: SuperLU +category: Others +description: Solution of large, sparse, nonsymmetric systems of linear equations. +homepage: http://crd-legacy.lbl.gov/~xiaoye/SuperLU/ +icon: icon.png +hidden: true diff --git a/apps/Supernova/form.yml.erb b/apps/Supernova/form.yml.erb new file mode 100644 index 00000000..65dfb991 --- /dev/null +++ b/apps/Supernova/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['supernova_module'] = { + 'widget' => 'module_load', + 'module' => "Supernova", + 'label' => "Supernova Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{supernova_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Supernova/manifest.yml b/apps/Supernova/manifest.yml new file mode 100644 index 00000000..c2c027b4 --- /dev/null +++ b/apps/Supernova/manifest.yml @@ -0,0 +1,5 @@ +name: Supernova +category: Biology +description: Supernova is a software package for de novo assembly from Chromium Linked-Reads that are made from a single whole-genome library from an individual DNA source. +homepage: https://support.10xgenomics.com/de-novo-assembly/software/overview/latest/welcome +hidden: true diff --git a/apps/TEtranscripts/form.yml.erb b/apps/TEtranscripts/form.yml.erb new file mode 100644 index 00000000..57d0251e --- /dev/null +++ b/apps/TEtranscripts/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tetranscripts_module'] = { + 'widget' => 'module_load', + 'module' => "TEtranscripts", + 'label' => "TEtranscripts Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tetranscripts_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TEtranscripts/manifest.yml b/apps/TEtranscripts/manifest.yml new file mode 100644 index 00000000..97735874 --- /dev/null +++ b/apps/TEtranscripts/manifest.yml @@ -0,0 +1,5 @@ +name: TEtranscripts +category: Biology +description: Takes RNA-seq (and similar data) and annotates reads to both genes & transposable elements. +homepage: https://github.com/mhammell-laboratory/TEtranscripts +hidden: true diff --git a/apps/TMHMM/form.yml.erb b/apps/TMHMM/form.yml.erb new file mode 100644 index 00000000..18043b9c --- /dev/null +++ b/apps/TMHMM/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tmhmm_module'] = { + 'widget' => 'module_load', + 'module' => "TMHMM", + 'label' => "TMHMM Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tmhmm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TMHMM/manifest.yml b/apps/TMHMM/manifest.yml new file mode 100644 index 00000000..1d84a727 --- /dev/null +++ b/apps/TMHMM/manifest.yml @@ -0,0 +1,5 @@ +name: TMHMM +category: Biology +description: Prediction of transmembrane helices in proteins. +homepage: https://services.healthtech.dtu.dk/software.php +hidden: true diff --git a/apps/TOGA/form.yml.erb b/apps/TOGA/form.yml.erb new file mode 100644 index 00000000..768dbdb8 --- /dev/null +++ b/apps/TOGA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['toga_module'] = { + 'widget' => 'module_load', + 'module' => "TOGA", + 'label' => "TOGA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{toga_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TOGA/icon.png b/apps/TOGA/icon.png new file mode 100644 index 00000000..30cb076d Binary files /dev/null and b/apps/TOGA/icon.png differ diff --git a/apps/TOGA/manifest.yml b/apps/TOGA/manifest.yml new file mode 100644 index 00000000..791d5169 --- /dev/null +++ b/apps/TOGA/manifest.yml @@ -0,0 +1,6 @@ +name: TOGA +category: Biology +description: Implements a novel machine learning based paradigm to infer orthologous genes between related species and to accurately distinguish orthologs from paralogs or processed pseudogenes. +homepage: https://github.com/hillerlab/TOGA +icon: icon.png +hidden: true diff --git a/apps/TSEBRA/form.yml.erb b/apps/TSEBRA/form.yml.erb new file mode 100644 index 00000000..beca2791 --- /dev/null +++ b/apps/TSEBRA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tsebra_module'] = { + 'widget' => 'module_load', + 'module' => "TSEBRA", + 'label' => "TSEBRA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tsebra_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TSEBRA/icon.png b/apps/TSEBRA/icon.png new file mode 100644 index 00000000..9ea4f37f Binary files /dev/null and b/apps/TSEBRA/icon.png differ diff --git a/apps/TSEBRA/manifest.yml b/apps/TSEBRA/manifest.yml new file mode 100644 index 00000000..9431d94f --- /dev/null +++ b/apps/TSEBRA/manifest.yml @@ -0,0 +1,6 @@ +name: TSEBRA +category: Biology +description: Transcript Selector for BRAKER. +homepage: https://github.com/Gaius-Augustus/TSEBRA +icon: icon.png +hidden: true diff --git a/apps/TURBOMOLE/form.yml.erb b/apps/TURBOMOLE/form.yml.erb new file mode 100644 index 00000000..1e3d76b0 --- /dev/null +++ b/apps/TURBOMOLE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['turbomole_module'] = { + 'widget' => 'module_load', + 'module' => "TURBOMOLE", + 'label' => "TURBOMOLE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{turbomole_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TURBOMOLE/icon.png b/apps/TURBOMOLE/icon.png new file mode 100644 index 00000000..d9c7faf6 Binary files /dev/null and b/apps/TURBOMOLE/icon.png differ diff --git a/apps/TURBOMOLE/manifest.yml b/apps/TURBOMOLE/manifest.yml new file mode 100644 index 00000000..f0ac17d9 --- /dev/null +++ b/apps/TURBOMOLE/manifest.yml @@ -0,0 +1,6 @@ +name: TURBOMOLE +category: Chemistry +description: Program Package For Electronic Structure Calculations. +homepage: https://www.turbomole.org/ +icon: icon.png +hidden: true diff --git a/apps/TWL-NINJA/form.yml.erb b/apps/TWL-NINJA/form.yml.erb new file mode 100644 index 00000000..7cc89f7d --- /dev/null +++ b/apps/TWL-NINJA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['twl_ninja_module'] = { + 'widget' => 'module_load', + 'module' => "TWL-NINJA", + 'label' => "TWL-NINJA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{twl_ninja_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TWL-NINJA/manifest.yml b/apps/TWL-NINJA/manifest.yml new file mode 100644 index 00000000..1ee47ebb --- /dev/null +++ b/apps/TWL-NINJA/manifest.yml @@ -0,0 +1,5 @@ +name: TWL-NINJA +category: Biology +description: Nearly Infinite Neighbor Joining Application. +homepage: https://github.com/TravisWheelerLab/NINJA +hidden: true diff --git a/apps/Tcl/form.yml.erb b/apps/Tcl/form.yml.erb new file mode 100644 index 00000000..10c960ac --- /dev/null +++ b/apps/Tcl/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tcl_module'] = { + 'widget' => 'module_load', + 'module' => "Tcl", + 'label' => "Tcl Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tcl_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Tcl/icon.png b/apps/Tcl/icon.png new file mode 100644 index 00000000..d51a8b97 Binary files /dev/null and b/apps/Tcl/icon.png differ diff --git a/apps/Tcl/manifest.yml b/apps/Tcl/manifest.yml new file mode 100644 index 00000000..3aab0dd6 --- /dev/null +++ b/apps/Tcl/manifest.yml @@ -0,0 +1,6 @@ +name: Tcl +category: Language +description: Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language, suitable for a very wide range of uses, including web and desktop applications, networking, administration, testing and many more. +homepage: http://www.tcl.tk/ +icon: icon.png +hidden: true diff --git a/apps/TensorFlow/form.yml.erb b/apps/TensorFlow/form.yml.erb new file mode 100644 index 00000000..e88624f5 --- /dev/null +++ b/apps/TensorFlow/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tensorflow_module'] = { + 'widget' => 'module_load', + 'module' => "TensorFlow", + 'label' => "TensorFlow Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tensorflow_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TensorFlow/icon.png b/apps/TensorFlow/icon.png new file mode 100644 index 00000000..a0ebce11 Binary files /dev/null and b/apps/TensorFlow/icon.png differ diff --git a/apps/TensorFlow/manifest.yml b/apps/TensorFlow/manifest.yml new file mode 100644 index 00000000..c8f38e97 --- /dev/null +++ b/apps/TensorFlow/manifest.yml @@ -0,0 +1,6 @@ +name: TensorFlow +category: Machine Learning +description: An open-source software library for Machine Intelligence. +homepage: https://www.tensorflow.org/ +icon: icon.png +hidden: true diff --git a/apps/TransDecoder/form.yml.erb b/apps/TransDecoder/form.yml.erb new file mode 100644 index 00000000..e54eb32b --- /dev/null +++ b/apps/TransDecoder/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['transdecoder_module'] = { + 'widget' => 'module_load', + 'module' => "TransDecoder", + 'label' => "TransDecoder Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{transdecoder_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TransDecoder/manifest.yml b/apps/TransDecoder/manifest.yml new file mode 100644 index 00000000..86e11163 --- /dev/null +++ b/apps/TransDecoder/manifest.yml @@ -0,0 +1,5 @@ +name: TransDecoder +category: Biology +description: TransDecoder identifies candidate coding regions within transcript sequences. +homepage: https://github.com/TransDecoder/TransDecoder/wiki +hidden: true diff --git a/apps/TreeMix/form.yml.erb b/apps/TreeMix/form.yml.erb new file mode 100644 index 00000000..e3a3d50e --- /dev/null +++ b/apps/TreeMix/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['treemix_module'] = { + 'widget' => 'module_load', + 'module' => "TreeMix", + 'label' => "TreeMix Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{treemix_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TreeMix/manifest.yml b/apps/TreeMix/manifest.yml new file mode 100644 index 00000000..f7ce55d1 --- /dev/null +++ b/apps/TreeMix/manifest.yml @@ -0,0 +1,5 @@ +name: TreeMix +category: Biology +description: TreeMix is a method for inferring the patterns of population splits and mixtures in the history of a set of populations. +homepage: http://bitbucket.org/nygcresearch/treemix +hidden: true diff --git a/apps/TrimGalore/form.yml.erb b/apps/TrimGalore/form.yml.erb new file mode 100644 index 00000000..ce11cde5 --- /dev/null +++ b/apps/TrimGalore/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trimgalore_module'] = { + 'widget' => 'module_load', + 'module' => "TrimGalore", + 'label' => "TrimGalore Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trimgalore_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/TrimGalore/manifest.yml b/apps/TrimGalore/manifest.yml new file mode 100644 index 00000000..a479f9a9 --- /dev/null +++ b/apps/TrimGalore/manifest.yml @@ -0,0 +1,5 @@ +name: TrimGalore +category: Biology +description: A wrapper of FastQC and cutadapt to automate quality and adapter trimming as well as quality control, with some added functionality to remove biased methylation positions for RRBS sequence files. +homepage: http://www.bioinformatics.babraham.ac.uk/projects/trim_galore/ +hidden: true diff --git a/apps/Trimmomatic/form.yml.erb b/apps/Trimmomatic/form.yml.erb new file mode 100644 index 00000000..a67b44a1 --- /dev/null +++ b/apps/Trimmomatic/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trimmomatic_module'] = { + 'widget' => 'module_load', + 'module' => "Trimmomatic", + 'label' => "Trimmomatic Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trimmomatic_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Trimmomatic/icon.jpg b/apps/Trimmomatic/icon.jpg new file mode 100644 index 00000000..c251bb49 Binary files /dev/null and b/apps/Trimmomatic/icon.jpg differ diff --git a/apps/Trimmomatic/manifest.yml b/apps/Trimmomatic/manifest.yml new file mode 100644 index 00000000..25ae784d --- /dev/null +++ b/apps/Trimmomatic/manifest.yml @@ -0,0 +1,6 @@ +name: Trimmomatic +category: Biology +description: Trimmomatic performs a variety of useful trimming tasks for illumina paired-end and single ended data.The selection of trimming steps and their associated parameters are supplied on the command line. +homepage: http://www.usadellab.org/cms/?page=trimmomatic +icon: icon.jpg +hidden: true diff --git a/apps/Trinity/form.yml.erb b/apps/Trinity/form.yml.erb new file mode 100644 index 00000000..31b22ca7 --- /dev/null +++ b/apps/Trinity/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trinity_module'] = { + 'widget' => 'module_load', + 'module' => "Trinity", + 'label' => "Trinity Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trinity_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Trinity/manifest.yml b/apps/Trinity/manifest.yml new file mode 100644 index 00000000..86ef7726 --- /dev/null +++ b/apps/Trinity/manifest.yml @@ -0,0 +1,5 @@ +name: Trinity +category: Biology +description: Trinity represents a novel method for the efficient and robust de novo reconstruction of transcriptomes from RNA-Seq data. +homepage: http://trinityrnaseq.github.io +hidden: true diff --git a/apps/Trinotate/form.yml.erb b/apps/Trinotate/form.yml.erb new file mode 100644 index 00000000..30dc8b2c --- /dev/null +++ b/apps/Trinotate/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trinotate_module'] = { + 'widget' => 'module_load', + 'module' => "Trinotate", + 'label' => "Trinotate Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trinotate_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Trinotate/manifest.yml b/apps/Trinotate/manifest.yml new file mode 100644 index 00000000..3d06040e --- /dev/null +++ b/apps/Trinotate/manifest.yml @@ -0,0 +1,5 @@ +name: Trinotate +category: Biology +description: C++ library of efficient algorithms and data structures for the analysis of sequences with the focus on biological data. +homepage: https://github.com/Trinotate/Trinotate +hidden: true diff --git a/apps/Trycycler/form.yml.erb b/apps/Trycycler/form.yml.erb new file mode 100644 index 00000000..df193fae --- /dev/null +++ b/apps/Trycycler/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trycycler_module'] = { + 'widget' => 'module_load', + 'module' => "Trycycler", + 'label' => "Trycycler Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trycycler_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Trycycler/icon.png b/apps/Trycycler/icon.png new file mode 100644 index 00000000..90d6a100 Binary files /dev/null and b/apps/Trycycler/icon.png differ diff --git a/apps/Trycycler/manifest.yml b/apps/Trycycler/manifest.yml new file mode 100644 index 00000000..f2485dae --- /dev/null +++ b/apps/Trycycler/manifest.yml @@ -0,0 +1,6 @@ +name: Trycycler +category: Biology +description: Tool for generating consensus long-read assemblies for bacterial genomes. +homepage: https://github.com/rrwick/Trycycler +icon: icon.png +hidden: true diff --git a/apps/UDUNITS/form.yml.erb b/apps/UDUNITS/form.yml.erb new file mode 100644 index 00000000..e231eb35 --- /dev/null +++ b/apps/UDUNITS/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['udunits_module'] = { + 'widget' => 'module_load', + 'module' => "UDUNITS", + 'label' => "UDUNITS Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{udunits_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/UDUNITS/icon.avif b/apps/UDUNITS/icon.avif new file mode 100644 index 00000000..597e7256 Binary files /dev/null and b/apps/UDUNITS/icon.avif differ diff --git a/apps/UDUNITS/manifest.yml b/apps/UDUNITS/manifest.yml new file mode 100644 index 00000000..75388a5e --- /dev/null +++ b/apps/UDUNITS/manifest.yml @@ -0,0 +1,6 @@ +name: UDUNITS +category: Physics +description: UDUNITS supports conversion of unit specifications between formatted and binary forms, arithmetic manipulation of units, and conversion of values between compatible scales of measurement. +homepage: https://www.unidata.ucar.edu/software/udunits/ +icon: icon.avif +hidden: true diff --git a/apps/USEARCH/form.yml.erb b/apps/USEARCH/form.yml.erb new file mode 100644 index 00000000..c965602d --- /dev/null +++ b/apps/USEARCH/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['usearch_module'] = { + 'widget' => 'module_load', + 'module' => "USEARCH", + 'label' => "USEARCH Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{usearch_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/USEARCH/manifest.yml b/apps/USEARCH/manifest.yml new file mode 100644 index 00000000..c2afcf8e --- /dev/null +++ b/apps/USEARCH/manifest.yml @@ -0,0 +1,4 @@ +name: USEARCH +category: Biology +description: USEARCH application. +hidden: true diff --git a/apps/Unicycler/form.yml.erb b/apps/Unicycler/form.yml.erb new file mode 100644 index 00000000..db48c6a4 --- /dev/null +++ b/apps/Unicycler/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['unicycler_module'] = { + 'widget' => 'module_load', + 'module' => "Unicycler", + 'label' => "Unicycler Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{unicycler_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Unicycler/icon.png b/apps/Unicycler/icon.png new file mode 100644 index 00000000..0d81d67f Binary files /dev/null and b/apps/Unicycler/icon.png differ diff --git a/apps/Unicycler/manifest.yml b/apps/Unicycler/manifest.yml new file mode 100644 index 00000000..ab448deb --- /dev/null +++ b/apps/Unicycler/manifest.yml @@ -0,0 +1,6 @@ +name: Unicycler +category: Biology +description: Assembly pipeline for bacterial genomes. +homepage: https://github.com/rrwick/Unicycler +icon: icon.png +hidden: true diff --git a/apps/VASP/form.yml.erb b/apps/VASP/form.yml.erb new file mode 100644 index 00000000..cfa8ba8b --- /dev/null +++ b/apps/VASP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vasp_module'] = { + 'widget' => 'module_load', + 'module' => "VASP", + 'label' => "VASP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vasp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VASP/icon.png b/apps/VASP/icon.png new file mode 100644 index 00000000..14c21051 Binary files /dev/null and b/apps/VASP/icon.png differ diff --git a/apps/VASP/manifest.yml b/apps/VASP/manifest.yml new file mode 100644 index 00000000..dc304d39 --- /dev/null +++ b/apps/VASP/manifest.yml @@ -0,0 +1,6 @@ +name: VASP +category: Chemistry +description: The Vienna Ab initio Simulation Package (VASP) is a computer program for atomic scale materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, from first principles. +homepage: http://www.vasp.at +icon: icon.png +hidden: true diff --git a/apps/VBZ-Compression/form.yml.erb b/apps/VBZ-Compression/form.yml.erb new file mode 100644 index 00000000..5d0b1f4a --- /dev/null +++ b/apps/VBZ-Compression/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vbz_compression_module'] = { + 'widget' => 'module_load', + 'module' => "VBZ-Compression", + 'label' => "VBZ-Compression Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vbz_compression_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VBZ-Compression/icon.png b/apps/VBZ-Compression/icon.png new file mode 100644 index 00000000..58c5d012 Binary files /dev/null and b/apps/VBZ-Compression/icon.png differ diff --git a/apps/VBZ-Compression/manifest.yml b/apps/VBZ-Compression/manifest.yml new file mode 100644 index 00000000..a4cff62f --- /dev/null +++ b/apps/VBZ-Compression/manifest.yml @@ -0,0 +1,6 @@ +name: VBZ-Compression +category: Biology +description: VBZ compression HDF5 plugin for nanopolish. +homepage: https://github.com/nanoporetech/vbz_compression +icon: icon.png +hidden: true diff --git a/apps/VCF-kit/form.yml.erb b/apps/VCF-kit/form.yml.erb new file mode 100644 index 00000000..59088a3f --- /dev/null +++ b/apps/VCF-kit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vcf_kit_module'] = { + 'widget' => 'module_load', + 'module' => "VCF-kit", + 'label' => "VCF-kit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vcf_kit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VCF-kit/manifest.yml b/apps/VCF-kit/manifest.yml new file mode 100644 index 00000000..86d810f3 --- /dev/null +++ b/apps/VCF-kit/manifest.yml @@ -0,0 +1,5 @@ +name: VCF-kit +category: Biology +description: VCF-kit is a command-line based collection of utilities for performing analysis on Variant Call Format (VCF) files. +homepage: https://github.com/AndersenLab/VCF-kit +hidden: true diff --git a/apps/VCFtools/form.yml.erb b/apps/VCFtools/form.yml.erb new file mode 100644 index 00000000..29ebbb07 --- /dev/null +++ b/apps/VCFtools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vcftools_module'] = { + 'widget' => 'module_load', + 'module' => "VCFtools", + 'label' => "VCFtools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vcftools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VCFtools/manifest.yml b/apps/VCFtools/manifest.yml new file mode 100644 index 00000000..f8b41a42 --- /dev/null +++ b/apps/VCFtools/manifest.yml @@ -0,0 +1,5 @@ +name: VCFtools +category: Biology +description: 'The aim of VCFtools is to provide methods for working with VCF files: validating, merging, comparing and calculate some basic population genetic statistics.' +homepage: http://vcftools.sourceforge.net/ +hidden: true diff --git a/apps/VEP/form.yml.erb b/apps/VEP/form.yml.erb new file mode 100644 index 00000000..305e30a3 --- /dev/null +++ b/apps/VEP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vep_module'] = { + 'widget' => 'module_load', + 'module' => "VEP", + 'label' => "VEP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vep_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VEP/manifest.yml b/apps/VEP/manifest.yml new file mode 100644 index 00000000..67058985 --- /dev/null +++ b/apps/VEP/manifest.yml @@ -0,0 +1,5 @@ +name: VEP +category: Biology +description: Variant Effect Predictor (VEP) determines the effect of your variants (SNPs, insertions, deletions, CNVs or structural variants) on genes, transcripts, and protein sequence, as well as regulatory regions. +homepage: https://www.ensembl.org/info/docs/tools/vep +hidden: true diff --git a/apps/VIBRANT/form.yml.erb b/apps/VIBRANT/form.yml.erb new file mode 100644 index 00000000..22763480 --- /dev/null +++ b/apps/VIBRANT/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vibrant_module'] = { + 'widget' => 'module_load', + 'module' => "VIBRANT", + 'label' => "VIBRANT Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vibrant_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VIBRANT/icon.png b/apps/VIBRANT/icon.png new file mode 100644 index 00000000..375f75f3 Binary files /dev/null and b/apps/VIBRANT/icon.png differ diff --git a/apps/VIBRANT/manifest.yml b/apps/VIBRANT/manifest.yml new file mode 100644 index 00000000..06d44f70 --- /dev/null +++ b/apps/VIBRANT/manifest.yml @@ -0,0 +1,6 @@ +name: VIBRANT +category: Biology +description: Virus Identification By iteRative ANnoTation. +homepage: https://github.com/AnantharamanLab/VIBRANT +icon: icon.png +hidden: true diff --git a/apps/VSEARCH/form.yml.erb b/apps/VSEARCH/form.yml.erb new file mode 100644 index 00000000..90b087d9 --- /dev/null +++ b/apps/VSEARCH/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vsearch_module'] = { + 'widget' => 'module_load', + 'module' => "VSEARCH", + 'label' => "VSEARCH Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vsearch_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VSEARCH/manifest.yml b/apps/VSEARCH/manifest.yml new file mode 100644 index 00000000..fa08e826 --- /dev/null +++ b/apps/VSEARCH/manifest.yml @@ -0,0 +1,5 @@ +name: VSEARCH +category: Biology +description: An open source alternative to the metagenomics tool USEARCH. +homepage: https://github.com/torognes/vsearch +hidden: true diff --git a/apps/VarScan/form.yml.erb b/apps/VarScan/form.yml.erb new file mode 100644 index 00000000..9159244f --- /dev/null +++ b/apps/VarScan/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['varscan_module'] = { + 'widget' => 'module_load', + 'module' => "VarScan", + 'label' => "VarScan Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{varscan_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VarScan/manifest.yml b/apps/VarScan/manifest.yml new file mode 100644 index 00000000..ab97fcc9 --- /dev/null +++ b/apps/VarScan/manifest.yml @@ -0,0 +1,5 @@ +name: VarScan +category: Biology +description: Variant calling and somatic mutation/CNV detection for next-generation sequencing data. +homepage: https://github.com/dkoboldt/varscan +hidden: true diff --git a/apps/Velvet/form.yml.erb b/apps/Velvet/form.yml.erb new file mode 100644 index 00000000..9a246ae8 --- /dev/null +++ b/apps/Velvet/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['velvet_module'] = { + 'widget' => 'module_load', + 'module' => "Velvet", + 'label' => "Velvet Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{velvet_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Velvet/manifest.yml b/apps/Velvet/manifest.yml new file mode 100644 index 00000000..97833b40 --- /dev/null +++ b/apps/Velvet/manifest.yml @@ -0,0 +1,5 @@ +name: Velvet +category: Biology +description: Sequence assembler for very short reads. +homepage: http://www.ebi.ac.uk/~zerbino/velvet/ +hidden: true diff --git a/apps/VelvetOptimiser/form.yml.erb b/apps/VelvetOptimiser/form.yml.erb new file mode 100644 index 00000000..dd38d805 --- /dev/null +++ b/apps/VelvetOptimiser/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['velvetoptimiser_module'] = { + 'widget' => 'module_load', + 'module' => "VelvetOptimiser", + 'label' => "VelvetOptimiser Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{velvetoptimiser_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VelvetOptimiser/manifest.yml b/apps/VelvetOptimiser/manifest.yml new file mode 100644 index 00000000..d788cfe4 --- /dev/null +++ b/apps/VelvetOptimiser/manifest.yml @@ -0,0 +1,5 @@ +name: VelvetOptimiser +category: Biology +description: Perl script for optimising the three primary parameter options of the Velvet de novo sequence assembler. +homepage: http://bioinformatics.net.au/software.velvetoptimiser.shtml +hidden: true diff --git a/apps/ViennaRNA/form.yml.erb b/apps/ViennaRNA/form.yml.erb new file mode 100644 index 00000000..bd18e41c --- /dev/null +++ b/apps/ViennaRNA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['viennarna_module'] = { + 'widget' => 'module_load', + 'module' => "ViennaRNA", + 'label' => "ViennaRNA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{viennarna_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ViennaRNA/manifest.yml b/apps/ViennaRNA/manifest.yml new file mode 100644 index 00000000..3e2ba740 --- /dev/null +++ b/apps/ViennaRNA/manifest.yml @@ -0,0 +1,5 @@ +name: ViennaRNA +category: Biology +description: The Vienna RNA Package consists of a C code library and several stand-alone programs for the prediction and comparison of RNA secondary structures. +homepage: http://www.tbi.univie.ac.at/RNA/ +hidden: true diff --git a/apps/VirHostMatcher/form.yml.erb b/apps/VirHostMatcher/form.yml.erb new file mode 100644 index 00000000..60407a2d --- /dev/null +++ b/apps/VirHostMatcher/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['virhostmatcher_module'] = { + 'widget' => 'module_load', + 'module' => "VirHostMatcher", + 'label' => "VirHostMatcher Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{virhostmatcher_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VirHostMatcher/manifest.yml b/apps/VirHostMatcher/manifest.yml new file mode 100644 index 00000000..ed33ced3 --- /dev/null +++ b/apps/VirHostMatcher/manifest.yml @@ -0,0 +1,5 @@ +name: VirHostMatcher +category: Biology +description: Tools for computing various oligonucleotide frequency (ONF) based distance/dissimialrity measures. +homepage: https://github.com/simroux/VirSorter +hidden: true diff --git a/apps/VirSorter/form.yml.erb b/apps/VirSorter/form.yml.erb new file mode 100644 index 00000000..8e944bfb --- /dev/null +++ b/apps/VirSorter/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['virsorter_module'] = { + 'widget' => 'module_load', + 'module' => "VirSorter", + 'label' => "VirSorter Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{virsorter_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/VirSorter/manifest.yml b/apps/VirSorter/manifest.yml new file mode 100644 index 00000000..7bb5582a --- /dev/null +++ b/apps/VirSorter/manifest.yml @@ -0,0 +1,5 @@ +name: VirSorter +category: Biology +description: 'VirSorter: mining viral signal from microbial genomic data.' +homepage: https://github.com/jiarong/VirSorter2 +hidden: true diff --git a/apps/Voro++/form.yml.erb b/apps/Voro++/form.yml.erb new file mode 100644 index 00000000..f1293017 --- /dev/null +++ b/apps/Voro++/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['voro_module'] = { + 'widget' => 'module_load', + 'module' => "Voro++", + 'label' => "Voro++ Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{voro_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Voro++/manifest.yml b/apps/Voro++/manifest.yml new file mode 100644 index 00000000..c8e57095 --- /dev/null +++ b/apps/Voro++/manifest.yml @@ -0,0 +1,5 @@ +name: Voro++ +category: Others +description: Voro++ is a software library for carrying out three-dimensional computations of the Voronoi tessellation. +homepage: http://math.lbl.gov/voro++/ +hidden: true diff --git a/apps/WAAFLE/form.yml.erb b/apps/WAAFLE/form.yml.erb new file mode 100644 index 00000000..83e07db9 --- /dev/null +++ b/apps/WAAFLE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['waafle_module'] = { + 'widget' => 'module_load', + 'module' => "WAAFLE", + 'label' => "WAAFLE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{waafle_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/WAAFLE/manifest.yml b/apps/WAAFLE/manifest.yml new file mode 100644 index 00000000..87d56fdc --- /dev/null +++ b/apps/WAAFLE/manifest.yml @@ -0,0 +1,5 @@ +name: WAAFLE +category: Biology +description: Workflow to Annotate Assemblies and Find LGT Events. +homepage: http://huttenhower.sph.harvard.edu/waafle +hidden: true diff --git a/apps/WFA2/form.yml.erb b/apps/WFA2/form.yml.erb new file mode 100644 index 00000000..dcb8f653 --- /dev/null +++ b/apps/WFA2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['wfa2_module'] = { + 'widget' => 'module_load', + 'module' => "WFA2", + 'label' => "WFA2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{wfa2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/WFA2/manifest.yml b/apps/WFA2/manifest.yml new file mode 100644 index 00000000..7f14c724 --- /dev/null +++ b/apps/WFA2/manifest.yml @@ -0,0 +1,5 @@ +name: WFA2 +category: Others +description: The wavefront alignment (WFA) algorithm is an exact gap-affine algorithm that takes advantage of homologous regions between the sequences to accelerate the alignment process. +homepage: https://github.com/smarco/WFA2-lib +hidden: true diff --git a/apps/WhatsHap/form.yml.erb b/apps/WhatsHap/form.yml.erb new file mode 100644 index 00000000..ef548198 --- /dev/null +++ b/apps/WhatsHap/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['whatshap_module'] = { + 'widget' => 'module_load', + 'module' => "WhatsHap", + 'label' => "WhatsHap Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{whatshap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/WhatsHap/icon.png b/apps/WhatsHap/icon.png new file mode 100644 index 00000000..b3b07d5a Binary files /dev/null and b/apps/WhatsHap/icon.png differ diff --git a/apps/WhatsHap/manifest.yml b/apps/WhatsHap/manifest.yml new file mode 100644 index 00000000..072c78db --- /dev/null +++ b/apps/WhatsHap/manifest.yml @@ -0,0 +1,6 @@ +name: WhatsHap +category: Biology +description: Tool for phasing genomic variants using DNA sequencing reads, also called read-based phasing or haplotype assembly. +homepage: https://whatshap.readthedocs.io/en/latest/index.html +icon: icon.png +hidden: true diff --git a/apps/Winnowmap/form.yml.erb b/apps/Winnowmap/form.yml.erb new file mode 100644 index 00000000..f6675018 --- /dev/null +++ b/apps/Winnowmap/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['winnowmap_module'] = { + 'widget' => 'module_load', + 'module' => "Winnowmap", + 'label' => "Winnowmap Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{winnowmap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Winnowmap/manifest.yml b/apps/Winnowmap/manifest.yml new file mode 100644 index 00000000..1040a57f --- /dev/null +++ b/apps/Winnowmap/manifest.yml @@ -0,0 +1,5 @@ +name: Winnowmap +category: Biology +description: Winnowmap is a long-read mapping algorithm, and a result of our exploration into superior minimizer sampling techniques. +homepage: https://github.com/marbl/Winnowmap +hidden: true diff --git a/apps/Wise2/form.yml.erb b/apps/Wise2/form.yml.erb new file mode 100644 index 00000000..c93e2ec1 --- /dev/null +++ b/apps/Wise2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['wise2_module'] = { + 'widget' => 'module_load', + 'module' => "Wise2", + 'label' => "Wise2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{wise2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/Wise2/manifest.yml b/apps/Wise2/manifest.yml new file mode 100644 index 00000000..2fc67fa8 --- /dev/null +++ b/apps/Wise2/manifest.yml @@ -0,0 +1,5 @@ +name: Wise2 +category: Biology +description: Aligning proteins or protein HMMs to DNA. +homepage: http://www.ebi.ac.uk/~birney/wise2/ +hidden: true diff --git a/apps/abritamr/form.yml.erb b/apps/abritamr/form.yml.erb new file mode 100644 index 00000000..160b80bf --- /dev/null +++ b/apps/abritamr/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['abritamr_module'] = { + 'widget' => 'module_load', + 'module' => "abritamr", + 'label' => "abritamr Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{abritamr_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/abritamr/icon.jpg b/apps/abritamr/icon.jpg new file mode 100644 index 00000000..237f1b73 Binary files /dev/null and b/apps/abritamr/icon.jpg differ diff --git a/apps/abritamr/manifest.yml b/apps/abritamr/manifest.yml new file mode 100644 index 00000000..79988f83 --- /dev/null +++ b/apps/abritamr/manifest.yml @@ -0,0 +1,6 @@ +name: abritamr +category: Biology +description: AMR gene detection pipeline that runs AMRFinderPlus on a single (or list ) of given isolates. +homepage: https://github.com/MDU-PHL/abritamr +icon: icon.jpg +hidden: true diff --git a/apps/angsd/form.yml.erb b/apps/angsd/form.yml.erb new file mode 100644 index 00000000..20d6dbfc --- /dev/null +++ b/apps/angsd/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['angsd_module'] = { + 'widget' => 'module_load', + 'module' => "angsd", + 'label' => "angsd Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{angsd_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/angsd/manifest.yml b/apps/angsd/manifest.yml new file mode 100644 index 00000000..7ca74591 --- /dev/null +++ b/apps/angsd/manifest.yml @@ -0,0 +1,5 @@ +name: angsd +category: Biology +description: Program for analysing NGS data. +homepage: http://www.popgen.dk/angsd +hidden: true diff --git a/apps/antiSMASH/form.yml.erb b/apps/antiSMASH/form.yml.erb new file mode 100644 index 00000000..30323543 --- /dev/null +++ b/apps/antiSMASH/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['antismash_module'] = { + 'widget' => 'module_load', + 'module' => "antiSMASH", + 'label' => "antiSMASH Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{antismash_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/antiSMASH/icon.png b/apps/antiSMASH/icon.png new file mode 100644 index 00000000..5d4ddc97 Binary files /dev/null and b/apps/antiSMASH/icon.png differ diff --git a/apps/antiSMASH/manifest.yml b/apps/antiSMASH/manifest.yml new file mode 100644 index 00000000..7906058e --- /dev/null +++ b/apps/antiSMASH/manifest.yml @@ -0,0 +1,6 @@ +name: antiSMASH +category: Biology +description: AntiSMASH allows the rapid genome-wide identification, annotation and analysis of secondary metabolite biosynthesis gene clusters in bacterial and fungal genomes. +homepage: https://github.com/antismash/antismash +icon: icon.png +hidden: true diff --git a/apps/any2fasta/form.yml.erb b/apps/any2fasta/form.yml.erb new file mode 100644 index 00000000..653765d5 --- /dev/null +++ b/apps/any2fasta/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['any2fasta_module'] = { + 'widget' => 'module_load', + 'module' => "any2fasta", + 'label' => "any2fasta Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{any2fasta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/any2fasta/manifest.yml b/apps/any2fasta/manifest.yml new file mode 100644 index 00000000..3d867b5a --- /dev/null +++ b/apps/any2fasta/manifest.yml @@ -0,0 +1,5 @@ +name: any2fasta +category: Biology +description: Convert various sequence formats to FASTA. +homepage: https://github.com/tseemann/any2fasta +hidden: true diff --git a/apps/bakta/form.yml.erb b/apps/bakta/form.yml.erb new file mode 100644 index 00000000..e0dd43b3 --- /dev/null +++ b/apps/bakta/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bakta_module'] = { + 'widget' => 'module_load', + 'module' => "bakta", + 'label' => "bakta Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bakta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/bakta/manifest.yml b/apps/bakta/manifest.yml new file mode 100644 index 00000000..cc36548f --- /dev/null +++ b/apps/bakta/manifest.yml @@ -0,0 +1,5 @@ +name: bakta +category: Others +description: Bakta is a tool for the rapid & standardized annotation of bacterial genomes and plasmids from both isolates and MAGs. +homepage: https://github.com/oschwengers/bakta +hidden: true diff --git a/apps/bamUtil/form.yml.erb b/apps/bamUtil/form.yml.erb new file mode 100644 index 00000000..72fab3d1 --- /dev/null +++ b/apps/bamUtil/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bamutil_module'] = { + 'widget' => 'module_load', + 'module' => "bamUtil", + 'label' => "bamUtil Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bamutil_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/bamUtil/manifest.yml b/apps/bamUtil/manifest.yml new file mode 100644 index 00000000..1a17eb42 --- /dev/null +++ b/apps/bamUtil/manifest.yml @@ -0,0 +1,5 @@ +name: bamUtil +category: Biology +description: Repository that contains several programs that perform operations on SAM/BAM files. +homepage: http://genome.sph.umich.edu/wiki/BamUtil +hidden: true diff --git a/apps/barrnap/form.yml.erb b/apps/barrnap/form.yml.erb new file mode 100644 index 00000000..b90b4727 --- /dev/null +++ b/apps/barrnap/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['barrnap_module'] = { + 'widget' => 'module_load', + 'module' => "barrnap", + 'label' => "barrnap Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{barrnap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/barrnap/manifest.yml b/apps/barrnap/manifest.yml new file mode 100644 index 00000000..074e90e3 --- /dev/null +++ b/apps/barrnap/manifest.yml @@ -0,0 +1,5 @@ +name: barrnap +category: Biology +description: Barrnap predicts the location of ribosomal RNA genes in genomes. +homepage: https://github.com/tseemann/barrnap +hidden: true diff --git a/apps/bcl2fastq2/form.yml.erb b/apps/bcl2fastq2/form.yml.erb new file mode 100644 index 00000000..5052c42f --- /dev/null +++ b/apps/bcl2fastq2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bcl2fastq2_module'] = { + 'widget' => 'module_load', + 'module' => "bcl2fastq2", + 'label' => "bcl2fastq2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bcl2fastq2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/bcl2fastq2/manifest.yml b/apps/bcl2fastq2/manifest.yml new file mode 100644 index 00000000..8e62dc54 --- /dev/null +++ b/apps/bcl2fastq2/manifest.yml @@ -0,0 +1,5 @@ +name: bcl2fastq2 +category: Biology +description: Bcl2fastq Conversion Software both demultiplexes data and converts BCL files generated by Illumina sequencing systems to standard FASTQ file formats for downstream analysis. +homepage: https://support.illumina.com/sequencing/sequencing_software/bcl2fastq-conversion-software.html +hidden: true diff --git a/apps/best/form.yml.erb b/apps/best/form.yml.erb new file mode 100644 index 00000000..89cc8b1c --- /dev/null +++ b/apps/best/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['best_module'] = { + 'widget' => 'module_load', + 'module' => "best", + 'label' => "best Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{best_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/best/manifest.yml b/apps/best/manifest.yml new file mode 100644 index 00000000..02b03612 --- /dev/null +++ b/apps/best/manifest.yml @@ -0,0 +1,5 @@ +name: best +category: Biology +description: 'Bam Error Stats Tool (best): analysis of error types in aligned reads.' +homepage: https://github.com/google/best +hidden: true diff --git a/apps/bioawk/form.yml.erb b/apps/bioawk/form.yml.erb new file mode 100644 index 00000000..74e5a7a9 --- /dev/null +++ b/apps/bioawk/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bioawk_module'] = { + 'widget' => 'module_load', + 'module' => "bioawk", + 'label' => "bioawk Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bioawk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/bioawk/manifest.yml b/apps/bioawk/manifest.yml new file mode 100644 index 00000000..e59f9bf6 --- /dev/null +++ b/apps/bioawk/manifest.yml @@ -0,0 +1,5 @@ +name: bioawk +category: Biology +description: An extension to awk, adding the support of several common biological data formats. +homepage: https://github.com/lh3/bioawk +hidden: true diff --git a/apps/breseq/form.yml.erb b/apps/breseq/form.yml.erb new file mode 100644 index 00000000..baef3eac --- /dev/null +++ b/apps/breseq/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['breseq_module'] = { + 'widget' => 'module_load', + 'module' => "breseq", + 'label' => "breseq Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{breseq_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/breseq/manifest.yml b/apps/breseq/manifest.yml new file mode 100644 index 00000000..4335f51f --- /dev/null +++ b/apps/breseq/manifest.yml @@ -0,0 +1,5 @@ +name: breseq +category: Biology +description: Breseq is a computational pipeline for the analysis of short-read re-sequencing data. +homepage: https://barricklab.org/breseq +hidden: true diff --git a/apps/bwa-mem2/form.yml.erb b/apps/bwa-mem2/form.yml.erb new file mode 100644 index 00000000..b6493414 --- /dev/null +++ b/apps/bwa-mem2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['bwa_mem2_module'] = { + 'widget' => 'module_load', + 'module' => "bwa-mem2", + 'label' => "bwa-mem2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{bwa_mem2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/bwa-mem2/manifest.yml b/apps/bwa-mem2/manifest.yml new file mode 100644 index 00000000..bc29c240 --- /dev/null +++ b/apps/bwa-mem2/manifest.yml @@ -0,0 +1,5 @@ +name: bwa-mem2 +category: Others +description: The tool bwa-mem2 is the next version of the bwa-mem algorithm in bwa. +homepage: https://github.com/bwa-mem2/bwa-mem2 +hidden: true diff --git a/apps/cURL/form.yml.erb b/apps/cURL/form.yml.erb new file mode 100644 index 00000000..66c1e627 --- /dev/null +++ b/apps/cURL/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['curl_module'] = { + 'widget' => 'module_load', + 'module' => "cURL", + 'label' => "cURL Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{curl_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/cURL/icon.png b/apps/cURL/icon.png new file mode 100644 index 00000000..3526b34d Binary files /dev/null and b/apps/cURL/icon.png differ diff --git a/apps/cURL/manifest.yml b/apps/cURL/manifest.yml new file mode 100644 index 00000000..3cbe2b57 --- /dev/null +++ b/apps/cURL/manifest.yml @@ -0,0 +1,6 @@ +name: cURL +category: Others +description: Libcurl is a free and easy-to-use client-side URL transfer library, supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling and more. +homepage: https://curl.haxx.se +icon: icon.png +hidden: true diff --git a/apps/cdbfasta/form.yml.erb b/apps/cdbfasta/form.yml.erb new file mode 100644 index 00000000..9de00b4d --- /dev/null +++ b/apps/cdbfasta/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cdbfasta_module'] = { + 'widget' => 'module_load', + 'module' => "cdbfasta", + 'label' => "cdbfasta Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cdbfasta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/cdbfasta/manifest.yml b/apps/cdbfasta/manifest.yml new file mode 100644 index 00000000..e596087a --- /dev/null +++ b/apps/cdbfasta/manifest.yml @@ -0,0 +1,5 @@ +name: cdbfasta +category: Biology +description: Fasta file indexing and retrival tool. +homepage: https://sourceforge.net/projects/cdbfasta +hidden: true diff --git a/apps/chewBBACA/form.yml.erb b/apps/chewBBACA/form.yml.erb new file mode 100644 index 00000000..98eed42d --- /dev/null +++ b/apps/chewBBACA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['chewbbaca_module'] = { + 'widget' => 'module_load', + 'module' => "chewBBACA", + 'label' => "chewBBACA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{chewbbaca_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/chewBBACA/manifest.yml b/apps/chewBBACA/manifest.yml new file mode 100644 index 00000000..4708137c --- /dev/null +++ b/apps/chewBBACA/manifest.yml @@ -0,0 +1,5 @@ +name: chewBBACA +category: Biology +description: A complete suite for gene-by-gene schema creation and strain identification. +homepage: https://github.com/B-UMMI/chewBBACA +hidden: true diff --git a/apps/chopper/form.yml.erb b/apps/chopper/form.yml.erb new file mode 100644 index 00000000..3e10ce67 --- /dev/null +++ b/apps/chopper/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['chopper_module'] = { + 'widget' => 'module_load', + 'module' => "chopper", + 'label' => "chopper Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{chopper_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/chopper/manifest.yml b/apps/chopper/manifest.yml new file mode 100644 index 00000000..5bf18b3c --- /dev/null +++ b/apps/chopper/manifest.yml @@ -0,0 +1,5 @@ +name: chopper +category: Biology +description: Rust implementation of NanoFilt+NanoLyse. +homepage: https://github.com/wdecoster/chopper +hidden: true diff --git a/apps/compleasm/form.yml.erb b/apps/compleasm/form.yml.erb new file mode 100644 index 00000000..748938e5 --- /dev/null +++ b/apps/compleasm/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['compleasm_module'] = { + 'widget' => 'module_load', + 'module' => "compleasm", + 'label' => "compleasm Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{compleasm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/compleasm/manifest.yml b/apps/compleasm/manifest.yml new file mode 100644 index 00000000..671e2be8 --- /dev/null +++ b/apps/compleasm/manifest.yml @@ -0,0 +1,5 @@ +name: compleasm +category: Biology +description: Faster and more accurate reimplementation of BUSCO. +homepage: https://github.com/huangnengCSU/compleasm +hidden: true diff --git a/apps/cromwell/form.yml.erb b/apps/cromwell/form.yml.erb new file mode 100644 index 00000000..897aa2f0 --- /dev/null +++ b/apps/cromwell/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cromwell_module'] = { + 'widget' => 'module_load', + 'module' => "cromwell", + 'label' => "cromwell Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cromwell_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/cromwell/icon.webp b/apps/cromwell/icon.webp new file mode 100644 index 00000000..0bc5d2f8 Binary files /dev/null and b/apps/cromwell/icon.webp differ diff --git a/apps/cromwell/manifest.yml b/apps/cromwell/manifest.yml new file mode 100644 index 00000000..c33f898b --- /dev/null +++ b/apps/cromwell/manifest.yml @@ -0,0 +1,6 @@ +name: cromwell +category: Workflow Management +description: Workflow Management System geared towards scientific workflows. +homepage: https://cromwell.readthedocs.io/en/stable/ +icon: icon.webp +hidden: true diff --git a/apps/csvtk/form.yml.erb b/apps/csvtk/form.yml.erb new file mode 100644 index 00000000..7d421ec5 --- /dev/null +++ b/apps/csvtk/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['csvtk_module'] = { + 'widget' => 'module_load', + 'module' => "csvtk", + 'label' => "csvtk Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{csvtk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/csvtk/manifest.yml b/apps/csvtk/manifest.yml new file mode 100644 index 00000000..95f743bd --- /dev/null +++ b/apps/csvtk/manifest.yml @@ -0,0 +1,5 @@ +name: csvtk +category: Others +description: A cross-platform, efficient and practical CSV/TSV toolkit. +homepage: http://bioinf.shenwei.me/csvtk/ +hidden: true diff --git a/apps/ctffind/form.yml.erb b/apps/ctffind/form.yml.erb new file mode 100644 index 00000000..a8a9bab0 --- /dev/null +++ b/apps/ctffind/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ctffind_module'] = { + 'widget' => 'module_load', + 'module' => "ctffind", + 'label' => "ctffind Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ctffind_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ctffind/manifest.yml b/apps/ctffind/manifest.yml new file mode 100644 index 00000000..730f28e0 --- /dev/null +++ b/apps/ctffind/manifest.yml @@ -0,0 +1,5 @@ +name: ctffind +category: Biology +description: Ctffind is a program for finding CTFs of electron micrographs. +homepage: http://grigoriefflab.janelia.org/ctf +hidden: true diff --git a/apps/cuDNN/form.yml.erb b/apps/cuDNN/form.yml.erb new file mode 100644 index 00000000..4e1df731 --- /dev/null +++ b/apps/cuDNN/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cudnn_module'] = { + 'widget' => 'module_load', + 'module' => "cuDNN", + 'label' => "cuDNN Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cudnn_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/cuDNN/icon.png b/apps/cuDNN/icon.png new file mode 100644 index 00000000..18c2505f Binary files /dev/null and b/apps/cuDNN/icon.png differ diff --git a/apps/cuDNN/manifest.yml b/apps/cuDNN/manifest.yml new file mode 100644 index 00000000..72f68498 --- /dev/null +++ b/apps/cuDNN/manifest.yml @@ -0,0 +1,6 @@ +name: cuDNN +category: Others +description: The NVIDIA CUDA Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. +homepage: https://developer.nvidia.com/cudnn +icon: icon.png +hidden: true diff --git a/apps/cutadapt/form.yml.erb b/apps/cutadapt/form.yml.erb new file mode 100644 index 00000000..ea2ed1ec --- /dev/null +++ b/apps/cutadapt/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cutadapt_module'] = { + 'widget' => 'module_load', + 'module' => "cutadapt", + 'label' => "cutadapt Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cutadapt_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/cutadapt/manifest.yml b/apps/cutadapt/manifest.yml new file mode 100644 index 00000000..6d14232f --- /dev/null +++ b/apps/cutadapt/manifest.yml @@ -0,0 +1,5 @@ +name: cutadapt +category: Biology +description: Cutadapt removes adapter sequences from high-throughput sequencing data. +homepage: https://opensource.scilifelab.se/projects/cutadapt/ +hidden: true diff --git a/apps/cuteSV/form.yml.erb b/apps/cuteSV/form.yml.erb new file mode 100644 index 00000000..2fd194c8 --- /dev/null +++ b/apps/cuteSV/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cutesv_module'] = { + 'widget' => 'module_load', + 'module' => "cuteSV", + 'label' => "cuteSV Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cutesv_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/cuteSV/manifest.yml b/apps/cuteSV/manifest.yml new file mode 100644 index 00000000..033194f7 --- /dev/null +++ b/apps/cuteSV/manifest.yml @@ -0,0 +1,5 @@ +name: cuteSV +category: Biology +description: Fast and scalable long-read-based SV detection. +homepage: https://github.com/tjiangHIT/cuteSV +hidden: true diff --git a/apps/cyvcf2/form.yml.erb b/apps/cyvcf2/form.yml.erb new file mode 100644 index 00000000..f7ec6c10 --- /dev/null +++ b/apps/cyvcf2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['cyvcf2_module'] = { + 'widget' => 'module_load', + 'module' => "cyvcf2", + 'label' => "cyvcf2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{cyvcf2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/cyvcf2/manifest.yml b/apps/cyvcf2/manifest.yml new file mode 100644 index 00000000..4c9f6c9d --- /dev/null +++ b/apps/cyvcf2/manifest.yml @@ -0,0 +1,5 @@ +name: cyvcf2 +category: Biology +description: Cython + htslib == fast VCF and BCF processing. +homepage: https://github.com/brentp/cyvcf2 +hidden: true diff --git a/apps/dadi/form.yml.erb b/apps/dadi/form.yml.erb new file mode 100644 index 00000000..0972c4c4 --- /dev/null +++ b/apps/dadi/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['dadi_module'] = { + 'widget' => 'module_load', + 'module' => "dadi", + 'label' => "dadi Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{dadi_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/dadi/manifest.yml b/apps/dadi/manifest.yml new file mode 100644 index 00000000..b9259b97 --- /dev/null +++ b/apps/dadi/manifest.yml @@ -0,0 +1,5 @@ +name: dadi +category: Biology +description: Diffusion Approximation for Demographic Inference. +homepage: https://github.com/MDU-PHL/abritamr +hidden: true diff --git a/apps/deepTools/form.yml.erb b/apps/deepTools/form.yml.erb new file mode 100644 index 00000000..a7b167af --- /dev/null +++ b/apps/deepTools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['deeptools_module'] = { + 'widget' => 'module_load', + 'module' => "deepTools", + 'label' => "deepTools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{deeptools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/deepTools/manifest.yml b/apps/deepTools/manifest.yml new file mode 100644 index 00000000..1123401d --- /dev/null +++ b/apps/deepTools/manifest.yml @@ -0,0 +1,5 @@ +name: deepTools +category: Biology +description: DeepTools is a suite of python tools particularly developed for the efficient analysis of high-throughput sequencing data, such as ChIP-seq, RNA-seq or MNase-seq. +homepage: http://deeptools.readthedocs.org/ +hidden: true diff --git a/apps/drep/form.yml.erb b/apps/drep/form.yml.erb new file mode 100644 index 00000000..dae60426 --- /dev/null +++ b/apps/drep/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['drep_module'] = { + 'widget' => 'module_load', + 'module' => "drep", + 'label' => "drep Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{drep_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/drep/manifest.yml b/apps/drep/manifest.yml new file mode 100644 index 00000000..2424623c --- /dev/null +++ b/apps/drep/manifest.yml @@ -0,0 +1,5 @@ +name: drep +category: Biology +description: Rapid and accurate comparison and de-replication of microbial genomes. +homepage: https://drep.readthedocs.io/en/latest/ +hidden: true diff --git a/apps/duphold/form.yml.erb b/apps/duphold/form.yml.erb new file mode 100644 index 00000000..149dbd3c --- /dev/null +++ b/apps/duphold/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['duphold_module'] = { + 'widget' => 'module_load', + 'module' => "duphold", + 'label' => "duphold Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{duphold_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/duphold/manifest.yml b/apps/duphold/manifest.yml new file mode 100644 index 00000000..b9850036 --- /dev/null +++ b/apps/duphold/manifest.yml @@ -0,0 +1,5 @@ +name: duphold +category: Biology +description: Uphold your DUP and DEL calls. +homepage: https://github.com/brentp/duphold +hidden: true diff --git a/apps/duplex-tools/form.yml.erb b/apps/duplex-tools/form.yml.erb new file mode 100644 index 00000000..75bce920 --- /dev/null +++ b/apps/duplex-tools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['duplex_tools_module'] = { + 'widget' => 'module_load', + 'module' => "duplex-tools", + 'label' => "duplex-tools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{duplex_tools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/duplex-tools/icon.png b/apps/duplex-tools/icon.png new file mode 100644 index 00000000..58c5d012 Binary files /dev/null and b/apps/duplex-tools/icon.png differ diff --git a/apps/duplex-tools/manifest.yml b/apps/duplex-tools/manifest.yml new file mode 100644 index 00000000..eb9e19fc --- /dev/null +++ b/apps/duplex-tools/manifest.yml @@ -0,0 +1,6 @@ +name: duplex-tools +category: Biology +description: Range of tools to support operations on Duplex Sequencing read pairs. +homepage: https://github.com/nanoporetech/duplex-tools +icon: icon.png +hidden: true diff --git a/apps/eDNA/form.yml.erb b/apps/eDNA/form.yml.erb new file mode 100644 index 00000000..d05dffe7 --- /dev/null +++ b/apps/eDNA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['edna_module'] = { + 'widget' => 'module_load', + 'module' => "eDNA", + 'label' => "eDNA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{edna_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/eDNA/manifest.yml b/apps/eDNA/manifest.yml new file mode 100644 index 00000000..deafcd7d --- /dev/null +++ b/apps/eDNA/manifest.yml @@ -0,0 +1,5 @@ +name: eDNA +category: Biology +description: A suite of tools to conduct metabarcoding analyses targeting any group of organisms. +homepage: https://murraycadzow.github.io/2021-obss-day4/index.html +hidden: true diff --git a/apps/edlib/form.yml.erb b/apps/edlib/form.yml.erb new file mode 100644 index 00000000..c1aec1b8 --- /dev/null +++ b/apps/edlib/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['edlib_module'] = { + 'widget' => 'module_load', + 'module' => "edlib", + 'label' => "edlib Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{edlib_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/edlib/manifest.yml b/apps/edlib/manifest.yml new file mode 100644 index 00000000..ebedd233 --- /dev/null +++ b/apps/edlib/manifest.yml @@ -0,0 +1,5 @@ +name: edlib +category: Biology +description: Lightweight, super fast library for sequence alignment using edit (Levenshtein) distance. +homepage: https://martinsos.github.io/edlib +hidden: true diff --git a/apps/eggnog-mapper/form.yml.erb b/apps/eggnog-mapper/form.yml.erb new file mode 100644 index 00000000..51ba570f --- /dev/null +++ b/apps/eggnog-mapper/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['eggnog_mapper_module'] = { + 'widget' => 'module_load', + 'module' => "eggnog-mapper", + 'label' => "eggnog-mapper Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{eggnog_mapper_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/eggnog-mapper/icon.jpg b/apps/eggnog-mapper/icon.jpg new file mode 100644 index 00000000..944def2a Binary files /dev/null and b/apps/eggnog-mapper/icon.jpg differ diff --git a/apps/eggnog-mapper/manifest.yml b/apps/eggnog-mapper/manifest.yml new file mode 100644 index 00000000..a9c3ee43 --- /dev/null +++ b/apps/eggnog-mapper/manifest.yml @@ -0,0 +1,6 @@ +name: eggnog-mapper +category: Biology +description: Tool for fast functional annotation of novel sequences (genes or proteins) using precomputed eggNOG-based orthology assignments. +homepage: http://eggnog-mapper.embl.de +icon: icon.jpg +hidden: true diff --git a/apps/emmtyper/form.yml.erb b/apps/emmtyper/form.yml.erb new file mode 100644 index 00000000..1a12d07e --- /dev/null +++ b/apps/emmtyper/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['emmtyper_module'] = { + 'widget' => 'module_load', + 'module' => "emmtyper", + 'label' => "emmtyper Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{emmtyper_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/emmtyper/manifest.yml b/apps/emmtyper/manifest.yml new file mode 100644 index 00000000..e2e5d3ea --- /dev/null +++ b/apps/emmtyper/manifest.yml @@ -0,0 +1,5 @@ +name: emmtyper +category: Biology +description: Tool for emm-typing of Streptococcus pyogenes using a de novo or complete assembly. +homepage: https://github.com/MDU-PHL/abritamr +hidden: true diff --git a/apps/ensmallen/form.yml.erb b/apps/ensmallen/form.yml.erb new file mode 100644 index 00000000..dfc06d5e --- /dev/null +++ b/apps/ensmallen/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ensmallen_module'] = { + 'widget' => 'module_load', + 'module' => "ensmallen", + 'label' => "ensmallen Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ensmallen_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ensmallen/icon.svg b/apps/ensmallen/icon.svg new file mode 100644 index 00000000..ae0a04b6 --- /dev/null +++ b/apps/ensmallen/icon.svg @@ -0,0 +1,402 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/ensmallen/manifest.yml b/apps/ensmallen/manifest.yml new file mode 100644 index 00000000..fb6cd574 --- /dev/null +++ b/apps/ensmallen/manifest.yml @@ -0,0 +1,6 @@ +name: ensmallen +category: Mathematics +description: C++ header-only library for numerical optimization. +homepage: https://github.com/mlpack/ensmallen +icon: icon.svg +hidden: true diff --git a/apps/entrez-direct/form.yml.erb b/apps/entrez-direct/form.yml.erb new file mode 100644 index 00000000..91526ac9 --- /dev/null +++ b/apps/entrez-direct/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['entrez_direct_module'] = { + 'widget' => 'module_load', + 'module' => "entrez-direct", + 'label' => "entrez-direct Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{entrez_direct_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/entrez-direct/manifest.yml b/apps/entrez-direct/manifest.yml new file mode 100644 index 00000000..e0e8698e --- /dev/null +++ b/apps/entrez-direct/manifest.yml @@ -0,0 +1,5 @@ +name: entrez-direct +category: Biology +description: An advanced method for accessing the NCBI's set of interconnected databases such as publication, sequence, structure, gene, variation, expression, etc. +homepage: https://dataguide.nlm.nih.gov/edirect/documentation.html +hidden: true diff --git a/apps/fastStructure/form.yml.erb b/apps/fastStructure/form.yml.erb new file mode 100644 index 00000000..9b20e1e1 --- /dev/null +++ b/apps/fastStructure/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['faststructure_module'] = { + 'widget' => 'module_load', + 'module' => "fastStructure", + 'label' => "fastStructure Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{faststructure_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/fastStructure/manifest.yml b/apps/fastStructure/manifest.yml new file mode 100644 index 00000000..f76ac1d1 --- /dev/null +++ b/apps/fastStructure/manifest.yml @@ -0,0 +1,5 @@ +name: fastStructure +category: Biology +description: FastStructure is an algorithm for inferring population structure from large SNP genotype data. +homepage: https://rajanil.github.io/fastStructure/ +hidden: true diff --git a/apps/fastp/form.yml.erb b/apps/fastp/form.yml.erb new file mode 100644 index 00000000..404b2ecf --- /dev/null +++ b/apps/fastp/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fastp_module'] = { + 'widget' => 'module_load', + 'module' => "fastp", + 'label' => "fastp Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fastp_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/fastp/manifest.yml b/apps/fastp/manifest.yml new file mode 100644 index 00000000..7848cd97 --- /dev/null +++ b/apps/fastp/manifest.yml @@ -0,0 +1,5 @@ +name: fastp +category: Biology +description: A tool designed to provide fast all-in-one preprocessing for FastQ files. +homepage: https://github.com/OpenGene/fastp +hidden: true diff --git a/apps/fgbio/form.yml.erb b/apps/fgbio/form.yml.erb new file mode 100644 index 00000000..0200dda6 --- /dev/null +++ b/apps/fgbio/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fgbio_module'] = { + 'widget' => 'module_load', + 'module' => "fgbio", + 'label' => "fgbio Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fgbio_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/fgbio/manifest.yml b/apps/fgbio/manifest.yml new file mode 100644 index 00000000..f472f6c6 --- /dev/null +++ b/apps/fgbio/manifest.yml @@ -0,0 +1,5 @@ +name: fgbio +category: Biology +description: A set of tools to analyze genomic data with a focus on Next Generation Sequencing. +homepage: https://fulcrumgenomics.github.io/fgbio +hidden: true diff --git a/apps/fineRADstructure/form.yml.erb b/apps/fineRADstructure/form.yml.erb new file mode 100644 index 00000000..56ceffbc --- /dev/null +++ b/apps/fineRADstructure/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['fineradstructure_module'] = { + 'widget' => 'module_load', + 'module' => "fineRADstructure", + 'label' => "fineRADstructure Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{fineradstructure_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/fineRADstructure/manifest.yml b/apps/fineRADstructure/manifest.yml new file mode 100644 index 00000000..99451f48 --- /dev/null +++ b/apps/fineRADstructure/manifest.yml @@ -0,0 +1,5 @@ +name: fineRADstructure +category: Biology +description: A package for population structure inference from RAD-seq data. +homepage: http://cichlid.gurdon.cam.ac.uk/fineRADstructure.html +hidden: true diff --git a/apps/fineSTRUCTURE/form.yml.erb b/apps/fineSTRUCTURE/form.yml.erb new file mode 100644 index 00000000..e700ff46 --- /dev/null +++ b/apps/fineSTRUCTURE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['finestructure_module'] = { + 'widget' => 'module_load', + 'module' => "fineSTRUCTURE", + 'label' => "fineSTRUCTURE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{finestructure_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/fineSTRUCTURE/icon.gif b/apps/fineSTRUCTURE/icon.gif new file mode 100644 index 00000000..1ff6283b Binary files /dev/null and b/apps/fineSTRUCTURE/icon.gif differ diff --git a/apps/fineSTRUCTURE/manifest.yml b/apps/fineSTRUCTURE/manifest.yml new file mode 100644 index 00000000..70296993 --- /dev/null +++ b/apps/fineSTRUCTURE/manifest.yml @@ -0,0 +1,6 @@ +name: fineSTRUCTURE +category: Biology +description: Population assignment using large numbers of densely sampled genomes, including both SNP chips and sequence dat. +homepage: https://people.maths.bris.ac.uk/~madjl/finestructure/finestructure.html +icon: icon.gif +hidden: true diff --git a/apps/flatbuffers/form.yml.erb b/apps/flatbuffers/form.yml.erb new file mode 100644 index 00000000..f743e44c --- /dev/null +++ b/apps/flatbuffers/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['flatbuffers_module'] = { + 'widget' => 'module_load', + 'module' => "flatbuffers", + 'label' => "flatbuffers Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{flatbuffers_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/flatbuffers/icon.svg b/apps/flatbuffers/icon.svg new file mode 100644 index 00000000..e302c07d --- /dev/null +++ b/apps/flatbuffers/icon.svg @@ -0,0 +1,318 @@ + + + + diff --git a/apps/flatbuffers/manifest.yml b/apps/flatbuffers/manifest.yml new file mode 100644 index 00000000..8d2b66a5 --- /dev/null +++ b/apps/flatbuffers/manifest.yml @@ -0,0 +1,6 @@ +name: flatbuffers +category: Others +description: 'FlatBuffers: Memory Efficient Serialization Library.' +homepage: https://github.com/google/flatbuffers/ +icon: icon.svg +hidden: true diff --git a/apps/gemmforge/form.yml.erb b/apps/gemmforge/form.yml.erb new file mode 100644 index 00000000..ec3f7e53 --- /dev/null +++ b/apps/gemmforge/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gemmforge_module'] = { + 'widget' => 'module_load', + 'module' => "gemmforge", + 'label' => "gemmforge Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gemmforge_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/gemmforge/manifest.yml b/apps/gemmforge/manifest.yml new file mode 100644 index 00000000..8c82d022 --- /dev/null +++ b/apps/gemmforge/manifest.yml @@ -0,0 +1,5 @@ +name: gemmforge +category: Others +description: GPU-GEMM generator for the Discontinuous Galerkin method. +homepage: https://github.com/SeisSol/gemmforge +hidden: true diff --git a/apps/genometools/form.yml.erb b/apps/genometools/form.yml.erb new file mode 100644 index 00000000..93e659db --- /dev/null +++ b/apps/genometools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['genometools_module'] = { + 'widget' => 'module_load', + 'module' => "genometools", + 'label' => "genometools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{genometools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/genometools/manifest.yml b/apps/genometools/manifest.yml new file mode 100644 index 00000000..06ab3411 --- /dev/null +++ b/apps/genometools/manifest.yml @@ -0,0 +1,5 @@ +name: genometools +category: Biology +description: 'GenomeTools: A Comprehensive Software Library for Efficient Processing of Structured Genome Annotations.' +homepage: http://genometools.org +hidden: true diff --git a/apps/gfastats/form.yml.erb b/apps/gfastats/form.yml.erb new file mode 100644 index 00000000..96c712b1 --- /dev/null +++ b/apps/gfastats/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gfastats_module'] = { + 'widget' => 'module_load', + 'module' => "gfastats", + 'label' => "gfastats Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gfastats_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/gfastats/manifest.yml b/apps/gfastats/manifest.yml new file mode 100644 index 00000000..71147090 --- /dev/null +++ b/apps/gfastats/manifest.yml @@ -0,0 +1,5 @@ +name: gfastats +category: Biology +description: Single fast and exhaustive tool for summary statistics and simultaneous *fa* (fasta, fastq, gfa [.gz]) genome assembly file manipulation. +homepage: https://github.com/vgl-hub/gfastats +hidden: true diff --git a/apps/gfatools/form.yml.erb b/apps/gfatools/form.yml.erb new file mode 100644 index 00000000..7b445284 --- /dev/null +++ b/apps/gfatools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gfatools_module'] = { + 'widget' => 'module_load', + 'module' => "gfatools", + 'label' => "gfatools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gfatools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/gfatools/manifest.yml b/apps/gfatools/manifest.yml new file mode 100644 index 00000000..efd4173e --- /dev/null +++ b/apps/gfatools/manifest.yml @@ -0,0 +1,5 @@ +name: gfatools +category: Biology +description: Tools for manipulating sequence graphs in the GFA and rGFA formats. +homepage: https://github.com/lh3/gfatools +hidden: true diff --git a/apps/gffread/form.yml.erb b/apps/gffread/form.yml.erb new file mode 100644 index 00000000..1fbe35b7 --- /dev/null +++ b/apps/gffread/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gffread_module'] = { + 'widget' => 'module_load', + 'module' => "gffread", + 'label' => "gffread Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gffread_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/gffread/manifest.yml b/apps/gffread/manifest.yml new file mode 100644 index 00000000..04c0f490 --- /dev/null +++ b/apps/gffread/manifest.yml @@ -0,0 +1,5 @@ +name: gffread +category: Biology +description: GFF/GTF parsing utility providing format conversions, region filtering, FASTA sequence extraction and more. +homepage: https://ccb.jhu.edu/software/stringtie/gff.shtml#gffread +hidden: true diff --git a/apps/gmsh/form.yml.erb b/apps/gmsh/form.yml.erb new file mode 100644 index 00000000..4c56b9b8 --- /dev/null +++ b/apps/gmsh/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['gmsh_module'] = { + 'widget' => 'module_load', + 'module' => "gmsh", + 'label' => "gmsh Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{gmsh_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/gmsh/icon.png b/apps/gmsh/icon.png new file mode 100644 index 00000000..ed9f3f08 Binary files /dev/null and b/apps/gmsh/icon.png differ diff --git a/apps/gmsh/manifest.yml b/apps/gmsh/manifest.yml new file mode 100644 index 00000000..c698ac73 --- /dev/null +++ b/apps/gmsh/manifest.yml @@ -0,0 +1,6 @@ +name: gmsh +category: Engineering +description: Gmsh is a 3D finite element grid generator with a build-in CAD engine and post-processor. +homepage: http://gmsh.info/ +icon: icon.png +hidden: true diff --git a/apps/haplocheck/form.yml.erb b/apps/haplocheck/form.yml.erb new file mode 100644 index 00000000..8bed143a --- /dev/null +++ b/apps/haplocheck/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['haplocheck_module'] = { + 'widget' => 'module_load', + 'module' => "haplocheck", + 'label' => "haplocheck Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{haplocheck_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/haplocheck/manifest.yml b/apps/haplocheck/manifest.yml new file mode 100644 index 00000000..53824e40 --- /dev/null +++ b/apps/haplocheck/manifest.yml @@ -0,0 +1,5 @@ +name: haplocheck +category: Biology +description: Detects in-sample contamination in mtDNA or WGS sequencing studies by analyzing the mitchondrial content. +homepage: https://github.com/genepi/haplocheck +hidden: true diff --git a/apps/hifiasm/form.yml.erb b/apps/hifiasm/form.yml.erb new file mode 100644 index 00000000..42780639 --- /dev/null +++ b/apps/hifiasm/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['hifiasm_module'] = { + 'widget' => 'module_load', + 'module' => "hifiasm", + 'label' => "hifiasm Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{hifiasm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/hifiasm/manifest.yml b/apps/hifiasm/manifest.yml new file mode 100644 index 00000000..885c7df7 --- /dev/null +++ b/apps/hifiasm/manifest.yml @@ -0,0 +1,5 @@ +name: hifiasm +category: Biology +description: 'Hifiasm: a haplotype-resolved assembler for accurate Hifi reads.' +homepage: https://github.com/chhylp123/hifiasm +hidden: true diff --git a/apps/jbigkit/form.yml.erb b/apps/jbigkit/form.yml.erb new file mode 100644 index 00000000..078df4d6 --- /dev/null +++ b/apps/jbigkit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['jbigkit_module'] = { + 'widget' => 'module_load', + 'module' => "jbigkit", + 'label' => "jbigkit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{jbigkit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/jbigkit/manifest.yml b/apps/jbigkit/manifest.yml new file mode 100644 index 00000000..8cb65e29 --- /dev/null +++ b/apps/jbigkit/manifest.yml @@ -0,0 +1,5 @@ +name: jbigkit +category: Others +description: JBIG-KIT is a software implementation of the JBIG1 data compression standard. +homepage: https://www.cl.cam.ac.uk/~mgk25/jbigkit/ +hidden: true diff --git a/apps/jcvi/form.yml.erb b/apps/jcvi/form.yml.erb new file mode 100644 index 00000000..fe7eb523 --- /dev/null +++ b/apps/jcvi/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['jcvi_module'] = { + 'widget' => 'module_load', + 'module' => "jcvi", + 'label' => "jcvi Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{jcvi_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/jcvi/manifest.yml b/apps/jcvi/manifest.yml new file mode 100644 index 00000000..613d5449 --- /dev/null +++ b/apps/jcvi/manifest.yml @@ -0,0 +1,5 @@ +name: jcvi +category: Biology +description: Collection of Python libraries to parse bioinformatics files, or perform computation related to assembly, annotation, and comparative genomics. +homepage: https://github.com/tanghaibao/jcvi +hidden: true diff --git a/apps/jvarkit/form.yml.erb b/apps/jvarkit/form.yml.erb new file mode 100644 index 00000000..ede21f13 --- /dev/null +++ b/apps/jvarkit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['jvarkit_module'] = { + 'widget' => 'module_load', + 'module' => "jvarkit", + 'label' => "jvarkit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{jvarkit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/jvarkit/manifest.yml b/apps/jvarkit/manifest.yml new file mode 100644 index 00000000..91b0da35 --- /dev/null +++ b/apps/jvarkit/manifest.yml @@ -0,0 +1,5 @@ +name: jvarkit +category: Biology +description: Java utilities for Bioinformatics. +homepage: http://lindenb.github.io/jvarkit/JvarkitCentral.html +hidden: true diff --git a/apps/kalign2/form.yml.erb b/apps/kalign2/form.yml.erb new file mode 100644 index 00000000..711a9370 --- /dev/null +++ b/apps/kalign2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kalign2_module'] = { + 'widget' => 'module_load', + 'module' => "kalign2", + 'label' => "kalign2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kalign2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/kalign2/manifest.yml b/apps/kalign2/manifest.yml new file mode 100644 index 00000000..0349daaa --- /dev/null +++ b/apps/kalign2/manifest.yml @@ -0,0 +1,5 @@ +name: kalign2 +category: Biology +description: Kalign is a fast multiple sequence alignment program for biological sequences. +homepage: https://github.com/TimoLassmann/kalign +hidden: true diff --git a/apps/kallisto/form.yml.erb b/apps/kallisto/form.yml.erb new file mode 100644 index 00000000..04ab85ab --- /dev/null +++ b/apps/kallisto/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kallisto_module'] = { + 'widget' => 'module_load', + 'module' => "kallisto", + 'label' => "kallisto Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kallisto_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/kallisto/manifest.yml b/apps/kallisto/manifest.yml new file mode 100644 index 00000000..412eb18b --- /dev/null +++ b/apps/kallisto/manifest.yml @@ -0,0 +1,5 @@ +name: kallisto +category: Biology +description: Kallisto is a program for quantifying abundances of transcripts from RNA-Seq data, or more generally of target sequences using high-throughput sequencing reads. +homepage: http://pachterlab.github.io/kallisto/ +hidden: true diff --git a/apps/kineto/form.yml.erb b/apps/kineto/form.yml.erb new file mode 100644 index 00000000..f9fa2a88 --- /dev/null +++ b/apps/kineto/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kineto_module'] = { + 'widget' => 'module_load', + 'module' => "kineto", + 'label' => "kineto Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kineto_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/kineto/icon.jpg b/apps/kineto/icon.jpg new file mode 100644 index 00000000..914375dd Binary files /dev/null and b/apps/kineto/icon.jpg differ diff --git a/apps/kineto/manifest.yml b/apps/kineto/manifest.yml new file mode 100644 index 00000000..e25feb13 --- /dev/null +++ b/apps/kineto/manifest.yml @@ -0,0 +1,6 @@ +name: kineto +category: Others +description: A CPU+GPU Profiling library that provides access to timeline traces and hardware performance counters. +homepage: https://github.com/pytorch/kineto +icon: icon.jpg +hidden: true diff --git a/apps/kma/form.yml.erb b/apps/kma/form.yml.erb new file mode 100644 index 00000000..ec0976fc --- /dev/null +++ b/apps/kma/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['kma_module'] = { + 'widget' => 'module_load', + 'module' => "kma", + 'label' => "kma Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{kma_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/kma/manifest.yml b/apps/kma/manifest.yml new file mode 100644 index 00000000..8802873d --- /dev/null +++ b/apps/kma/manifest.yml @@ -0,0 +1,5 @@ +name: kma +category: Biology +description: KMA is a mapping method designed to map raw reads directly against redundant databases, in an ultra-fast manner using seed and extend. +homepage: https://bitbucket.org/genomicepidemiology/kma +hidden: true diff --git a/apps/lp_solve/form.yml.erb b/apps/lp_solve/form.yml.erb new file mode 100644 index 00000000..a0ba60e3 --- /dev/null +++ b/apps/lp_solve/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['lp_solve_module'] = { + 'widget' => 'module_load', + 'module' => "lp_solve", + 'label' => "lp_solve Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{lp_solve_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/lp_solve/manifest.yml b/apps/lp_solve/manifest.yml new file mode 100644 index 00000000..4cf72307 --- /dev/null +++ b/apps/lp_solve/manifest.yml @@ -0,0 +1,5 @@ +name: lp_solve +category: Mathematics +description: Mixed Integer Linear Programming (MILP) solver. +homepage: http://lpsolve.sourceforge.net/5.5/ +hidden: true diff --git a/apps/maf_stream/form.yml.erb b/apps/maf_stream/form.yml.erb new file mode 100644 index 00000000..6badf143 --- /dev/null +++ b/apps/maf_stream/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['maf_stream_module'] = { + 'widget' => 'module_load', + 'module' => "maf_stream", + 'label' => "maf_stream Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{maf_stream_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/maf_stream/manifest.yml b/apps/maf_stream/manifest.yml new file mode 100644 index 00000000..d68c82f2 --- /dev/null +++ b/apps/maf_stream/manifest.yml @@ -0,0 +1,5 @@ +name: maf_stream +category: Biology +description: Collection of utilities to manipulate multiple alignments in the Multiple Alignment Format. +homepage: https://github.com/joelarmstrong/maf_stream +hidden: true diff --git a/apps/magma/form.yml.erb b/apps/magma/form.yml.erb new file mode 100644 index 00000000..b79c4317 --- /dev/null +++ b/apps/magma/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['magma_module'] = { + 'widget' => 'module_load', + 'module' => "magma", + 'label' => "magma Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{magma_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/magma/manifest.yml b/apps/magma/manifest.yml new file mode 100644 index 00000000..703b5589 --- /dev/null +++ b/apps/magma/manifest.yml @@ -0,0 +1,5 @@ +name: magma +category: Mathematics +description: The MAGMA project aims to develop a dense linear algebra library similar to LAPACK but for heterogeneous/hybrid architectures, starting with current Multicore+GPU systems. +homepage: https://icl.cs.utk.edu/magma/ +hidden: true diff --git a/apps/manta/form.yml.erb b/apps/manta/form.yml.erb new file mode 100644 index 00000000..c891a280 --- /dev/null +++ b/apps/manta/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['manta_module'] = { + 'widget' => 'module_load', + 'module' => "manta", + 'label' => "manta Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{manta_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/manta/manifest.yml b/apps/manta/manifest.yml new file mode 100644 index 00000000..c13e9bc6 --- /dev/null +++ b/apps/manta/manifest.yml @@ -0,0 +1,5 @@ +name: manta +category: Biology +description: Manta calls structural variants (SVs) and indels from mapped paired-end sequencing reads. +homepage: https://github.com/Illumina/manta +hidden: true diff --git a/apps/mapDamage/form.yml.erb b/apps/mapDamage/form.yml.erb new file mode 100644 index 00000000..e3ae2a44 --- /dev/null +++ b/apps/mapDamage/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mapdamage_module'] = { + 'widget' => 'module_load', + 'module' => "mapDamage", + 'label' => "mapDamage Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mapdamage_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/mapDamage/manifest.yml b/apps/mapDamage/manifest.yml new file mode 100644 index 00000000..f807da1a --- /dev/null +++ b/apps/mapDamage/manifest.yml @@ -0,0 +1,5 @@ +name: mapDamage +category: Biology +description: Tracks and quantifies DNA damage patterns among ancient DNA sequencing reads generated by Next-Generation Sequencing platforms. +homepage: https://ginolhac.github.io/mapDamage/ +hidden: true diff --git a/apps/medaka/form.yml.erb b/apps/medaka/form.yml.erb new file mode 100644 index 00000000..796c5b2e --- /dev/null +++ b/apps/medaka/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['medaka_module'] = { + 'widget' => 'module_load', + 'module' => "medaka", + 'label' => "medaka Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{medaka_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/medaka/icon.png b/apps/medaka/icon.png new file mode 100644 index 00000000..58c5d012 Binary files /dev/null and b/apps/medaka/icon.png differ diff --git a/apps/medaka/manifest.yml b/apps/medaka/manifest.yml new file mode 100644 index 00000000..30a58fe6 --- /dev/null +++ b/apps/medaka/manifest.yml @@ -0,0 +1,6 @@ +name: medaka +category: Biology +description: Medaka is a tool to create a consensus sequence from nanopore sequencing data. +homepage: https://github.com/nanoporetech/medaka +icon: icon.png +hidden: true diff --git a/apps/megalodon/form.yml.erb b/apps/megalodon/form.yml.erb new file mode 100644 index 00000000..dd3362eb --- /dev/null +++ b/apps/megalodon/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['megalodon_module'] = { + 'widget' => 'module_load', + 'module' => "megalodon", + 'label' => "megalodon Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{megalodon_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/megalodon/icon.png b/apps/megalodon/icon.png new file mode 100644 index 00000000..58c5d012 Binary files /dev/null and b/apps/megalodon/icon.png differ diff --git a/apps/megalodon/manifest.yml b/apps/megalodon/manifest.yml new file mode 100644 index 00000000..c7867545 --- /dev/null +++ b/apps/megalodon/manifest.yml @@ -0,0 +1,6 @@ +name: megalodon +category: Biology +description: Tool to extract high accuracy modified base and sequence variant calls from raw nanopore reads by anchoring the information rich basecalling neural network output to a reference genome/transcriptome. +homepage: https://github.com/nanoporetech/megalodon +icon: icon.png +hidden: true diff --git a/apps/metaWRAP/form.yml.erb b/apps/metaWRAP/form.yml.erb new file mode 100644 index 00000000..1145117d --- /dev/null +++ b/apps/metaWRAP/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['metawrap_module'] = { + 'widget' => 'module_load', + 'module' => "metaWRAP", + 'label' => "metaWRAP Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{metawrap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/metaWRAP/manifest.yml b/apps/metaWRAP/manifest.yml new file mode 100644 index 00000000..a28e1274 --- /dev/null +++ b/apps/metaWRAP/manifest.yml @@ -0,0 +1,5 @@ +name: metaWRAP +category: Biology +description: Flexible pipeline for genome-resolved metagenomic data analysis. +homepage: http://qiime2.org/ +hidden: true diff --git a/apps/miRDeep2/form.yml.erb b/apps/miRDeep2/form.yml.erb new file mode 100644 index 00000000..a38f3aa9 --- /dev/null +++ b/apps/miRDeep2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mirdeep2_module'] = { + 'widget' => 'module_load', + 'module' => "miRDeep2", + 'label' => "miRDeep2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mirdeep2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/miRDeep2/manifest.yml b/apps/miRDeep2/manifest.yml new file mode 100644 index 00000000..838c1bb4 --- /dev/null +++ b/apps/miRDeep2/manifest.yml @@ -0,0 +1,5 @@ +name: miRDeep2 +category: Biology +description: Completely overhauled tool which discovers microRNA genes by analyzing sequenced RNAs. +homepage: https://github.com/rajewsky-lab/mirdeep2 +hidden: true diff --git a/apps/miniBUSCO/form.yml.erb b/apps/miniBUSCO/form.yml.erb new file mode 100644 index 00000000..ff24e091 --- /dev/null +++ b/apps/miniBUSCO/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['minibusco_module'] = { + 'widget' => 'module_load', + 'module' => "miniBUSCO", + 'label' => "miniBUSCO Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{minibusco_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/miniBUSCO/manifest.yml b/apps/miniBUSCO/manifest.yml new file mode 100644 index 00000000..b038356c --- /dev/null +++ b/apps/miniBUSCO/manifest.yml @@ -0,0 +1,5 @@ +name: miniBUSCO +category: Biology +description: Faster and more accurate reimplementation of BUSCO. +homepage: https://github.com/huangnengCSU/minibusco +hidden: true diff --git a/apps/miniasm/form.yml.erb b/apps/miniasm/form.yml.erb new file mode 100644 index 00000000..c8879850 --- /dev/null +++ b/apps/miniasm/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['miniasm_module'] = { + 'widget' => 'module_load', + 'module' => "miniasm", + 'label' => "miniasm Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{miniasm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/miniasm/manifest.yml b/apps/miniasm/manifest.yml new file mode 100644 index 00000000..7c65389b --- /dev/null +++ b/apps/miniasm/manifest.yml @@ -0,0 +1,5 @@ +name: miniasm +category: Biology +description: Fast OLC-based de novo assembler for noisy long reads. +homepage: https://github.com/lh3/minimap2 +hidden: true diff --git a/apps/minigraph/form.yml.erb b/apps/minigraph/form.yml.erb new file mode 100644 index 00000000..9996fa04 --- /dev/null +++ b/apps/minigraph/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['minigraph_module'] = { + 'widget' => 'module_load', + 'module' => "minigraph", + 'label' => "minigraph Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{minigraph_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/minigraph/manifest.yml b/apps/minigraph/manifest.yml new file mode 100644 index 00000000..453153ce --- /dev/null +++ b/apps/minigraph/manifest.yml @@ -0,0 +1,5 @@ +name: minigraph +category: Biology +description: Sequence-to-graph mapper and graph generator. +homepage: https://github.com/lh3/minigraph +hidden: true diff --git a/apps/minimap2/form.yml.erb b/apps/minimap2/form.yml.erb new file mode 100644 index 00000000..12237f77 --- /dev/null +++ b/apps/minimap2/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['minimap2_module'] = { + 'widget' => 'module_load', + 'module' => "minimap2", + 'label' => "minimap2 Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{minimap2_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/minimap2/manifest.yml b/apps/minimap2/manifest.yml new file mode 100644 index 00000000..52f6a462 --- /dev/null +++ b/apps/minimap2/manifest.yml @@ -0,0 +1,5 @@ +name: minimap2 +category: Biology +description: Minimap2 is a fast sequence mapping and alignment program that can find overlaps between long noisy reads, or map long reads or their assemblies to a reference genome optionally with detailed alignment (i.e. +homepage: https://github.com/lh3/minimap2 +hidden: true diff --git a/apps/miniprot/form.yml.erb b/apps/miniprot/form.yml.erb new file mode 100644 index 00000000..431d970f --- /dev/null +++ b/apps/miniprot/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['miniprot_module'] = { + 'widget' => 'module_load', + 'module' => "miniprot", + 'label' => "miniprot Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{miniprot_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/miniprot/manifest.yml b/apps/miniprot/manifest.yml new file mode 100644 index 00000000..6ee7c209 --- /dev/null +++ b/apps/miniprot/manifest.yml @@ -0,0 +1,5 @@ +name: miniprot +category: Biology +description: Aligns a protein sequence against a genome with affine gap penalty, splicing and frameshift. +homepage: https://github.com/lh3/miniprot +hidden: true diff --git a/apps/modbam2bed/form.yml.erb b/apps/modbam2bed/form.yml.erb new file mode 100644 index 00000000..49410b5d --- /dev/null +++ b/apps/modbam2bed/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['modbam2bed_module'] = { + 'widget' => 'module_load', + 'module' => "modbam2bed", + 'label' => "modbam2bed Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{modbam2bed_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/modbam2bed/manifest.yml b/apps/modbam2bed/manifest.yml new file mode 100644 index 00000000..f1eb4f15 --- /dev/null +++ b/apps/modbam2bed/manifest.yml @@ -0,0 +1,5 @@ +name: modbam2bed +category: Biology +description: A program to aggregate modified base counts stored in a modified-base BAM file to a bedMethyl file. +homepage: https://github.com/epi2me-labs/modbam2bed +hidden: true diff --git a/apps/modkit/form.yml.erb b/apps/modkit/form.yml.erb new file mode 100644 index 00000000..96e76329 --- /dev/null +++ b/apps/modkit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['modkit_module'] = { + 'widget' => 'module_load', + 'module' => "modkit", + 'label' => "modkit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{modkit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/modkit/icon.png b/apps/modkit/icon.png new file mode 100644 index 00000000..58c5d012 Binary files /dev/null and b/apps/modkit/icon.png differ diff --git a/apps/modkit/manifest.yml b/apps/modkit/manifest.yml new file mode 100644 index 00000000..cf92a45e --- /dev/null +++ b/apps/modkit/manifest.yml @@ -0,0 +1,6 @@ +name: modkit +category: Biology +description: Tool for working with modified bases from Oxford Nanopore. +homepage: https://github.com/nanoporetech/modkit +icon: icon.png +hidden: true diff --git a/apps/mosdepth/form.yml.erb b/apps/mosdepth/form.yml.erb new file mode 100644 index 00000000..e097ee0d --- /dev/null +++ b/apps/mosdepth/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['mosdepth_module'] = { + 'widget' => 'module_load', + 'module' => "mosdepth", + 'label' => "mosdepth Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{mosdepth_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/mosdepth/icon.png b/apps/mosdepth/icon.png new file mode 100644 index 00000000..6f8b937a Binary files /dev/null and b/apps/mosdepth/icon.png differ diff --git a/apps/mosdepth/manifest.yml b/apps/mosdepth/manifest.yml new file mode 100644 index 00000000..fc7b57c3 --- /dev/null +++ b/apps/mosdepth/manifest.yml @@ -0,0 +1,6 @@ +name: mosdepth +category: Biology +description: Fast BAM/CRAM depth calculation for WGS, exome, or targeted sequencing. +homepage: https://github.com/brentp/mosdepth +icon: icon.png +hidden: true diff --git a/apps/muParser/form.yml.erb b/apps/muParser/form.yml.erb new file mode 100644 index 00000000..bc9eda2f --- /dev/null +++ b/apps/muParser/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['muparser_module'] = { + 'widget' => 'module_load', + 'module' => "muParser", + 'label' => "muParser Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{muparser_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/muParser/manifest.yml b/apps/muParser/manifest.yml new file mode 100644 index 00000000..19b34255 --- /dev/null +++ b/apps/muParser/manifest.yml @@ -0,0 +1,5 @@ +name: muParser +category: Mathematics +description: MuParser is an extensible high performance math expression parser library written in C++. +homepage: http://beltoforion.de/article.php?a=muparser +hidden: true diff --git a/apps/nanoQC/form.yml.erb b/apps/nanoQC/form.yml.erb new file mode 100644 index 00000000..3852557c --- /dev/null +++ b/apps/nanoQC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nanoqc_module'] = { + 'widget' => 'module_load', + 'module' => "nanoQC", + 'label' => "nanoQC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nanoqc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/nanoQC/manifest.yml b/apps/nanoQC/manifest.yml new file mode 100644 index 00000000..37e54425 --- /dev/null +++ b/apps/nanoQC/manifest.yml @@ -0,0 +1,5 @@ +name: nanoQC +category: Biology +description: Create fastQC-like plots for Oxford Nanopore sequencing data. +homepage: https://pypi.org/project/nanoQC/ +hidden: true diff --git a/apps/nanofilt/form.yml.erb b/apps/nanofilt/form.yml.erb new file mode 100644 index 00000000..a4e79498 --- /dev/null +++ b/apps/nanofilt/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nanofilt_module'] = { + 'widget' => 'module_load', + 'module' => "nanofilt", + 'label' => "nanofilt Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nanofilt_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/nanofilt/manifest.yml b/apps/nanofilt/manifest.yml new file mode 100644 index 00000000..64aa8a5f --- /dev/null +++ b/apps/nanofilt/manifest.yml @@ -0,0 +1,5 @@ +name: nanofilt +category: Biology +description: Filtering and trimming of long read sequencing data. +homepage: https://github.com/wdecoster/nanofilt +hidden: true diff --git a/apps/nanoget/form.yml.erb b/apps/nanoget/form.yml.erb new file mode 100644 index 00000000..09979d4f --- /dev/null +++ b/apps/nanoget/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nanoget_module'] = { + 'widget' => 'module_load', + 'module' => "nanoget", + 'label' => "nanoget Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nanoget_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/nanoget/manifest.yml b/apps/nanoget/manifest.yml new file mode 100644 index 00000000..ec83023b --- /dev/null +++ b/apps/nanoget/manifest.yml @@ -0,0 +1,5 @@ +name: nanoget +category: Biology +description: Functions to extract information from Oxford Nanopore sequencing data and alignments. +homepage: https://github.com/wdecoster/nanoget +hidden: true diff --git a/apps/nanopolish/form.yml.erb b/apps/nanopolish/form.yml.erb new file mode 100644 index 00000000..a0acff26 --- /dev/null +++ b/apps/nanopolish/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nanopolish_module'] = { + 'widget' => 'module_load', + 'module' => "nanopolish", + 'label' => "nanopolish Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nanopolish_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/nanopolish/manifest.yml b/apps/nanopolish/manifest.yml new file mode 100644 index 00000000..926af6da --- /dev/null +++ b/apps/nanopolish/manifest.yml @@ -0,0 +1,5 @@ +name: nanopolish +category: Biology +description: Software package for signal-level analysis of Oxford Nanopore sequencing data. +homepage: https://github.com/jts/nanopolish +hidden: true diff --git a/apps/ncbi-vdb/form.yml.erb b/apps/ncbi-vdb/form.yml.erb new file mode 100644 index 00000000..b1e88acf --- /dev/null +++ b/apps/ncbi-vdb/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ncbi_vdb_module'] = { + 'widget' => 'module_load', + 'module' => "ncbi-vdb", + 'label' => "ncbi-vdb Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ncbi_vdb_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ncbi-vdb/manifest.yml b/apps/ncbi-vdb/manifest.yml new file mode 100644 index 00000000..5dc250e0 --- /dev/null +++ b/apps/ncbi-vdb/manifest.yml @@ -0,0 +1,5 @@ +name: ncbi-vdb +category: Biology +description: The SRA Toolkit and SDK from NCBI is a collection of tools and libraries for using data in the INSDC Sequence Read Archives. +homepage: https://github.com/ncbi/ncbi-vdb +hidden: true diff --git a/apps/nseg/form.yml.erb b/apps/nseg/form.yml.erb new file mode 100644 index 00000000..94f15e61 --- /dev/null +++ b/apps/nseg/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nseg_module'] = { + 'widget' => 'module_load', + 'module' => "nseg", + 'label' => "nseg Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nseg_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/nseg/manifest.yml b/apps/nseg/manifest.yml new file mode 100644 index 00000000..bac388ff --- /dev/null +++ b/apps/nseg/manifest.yml @@ -0,0 +1,5 @@ +name: nseg +category: Biology +description: Used to mask nucleic acid sequences. +homepage: http://www.google.com/?gws_rd=ssl#q=Wooton%2C+J.+C.+%26+Federhen%2C+S.+Comp.+Chem.+17%2C+149−163+(1993) +hidden: true diff --git a/apps/nullarbor/form.yml.erb b/apps/nullarbor/form.yml.erb new file mode 100644 index 00000000..b665a038 --- /dev/null +++ b/apps/nullarbor/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['nullarbor_module'] = { + 'widget' => 'module_load', + 'module' => "nullarbor", + 'label' => "nullarbor Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{nullarbor_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/nullarbor/manifest.yml b/apps/nullarbor/manifest.yml new file mode 100644 index 00000000..c7cb8a43 --- /dev/null +++ b/apps/nullarbor/manifest.yml @@ -0,0 +1,5 @@ +name: nullarbor +category: Biology +description: Reads to report pipeline for bacterial isolate NGS data. +homepage: https://github.com/tseemann/nullarbor +hidden: true diff --git a/apps/ollama/form.yml.erb b/apps/ollama/form.yml.erb new file mode 100644 index 00000000..087ef302 --- /dev/null +++ b/apps/ollama/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ollama_module'] = { + 'widget' => 'module_load', + 'module' => "ollama", + 'label' => "ollama Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ollama_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ollama/icon.png b/apps/ollama/icon.png new file mode 100644 index 00000000..8cd2cf1e Binary files /dev/null and b/apps/ollama/icon.png differ diff --git a/apps/ollama/manifest.yml b/apps/ollama/manifest.yml new file mode 100644 index 00000000..dbb41bf6 --- /dev/null +++ b/apps/ollama/manifest.yml @@ -0,0 +1,6 @@ +name: ollama +category: Others +description: Get up and running with large language models. +homepage: https://ollama.com/ +icon: icon.png +hidden: true diff --git a/apps/ont-guppy-gpu/form.yml.erb b/apps/ont-guppy-gpu/form.yml.erb new file mode 100644 index 00000000..0de45e9c --- /dev/null +++ b/apps/ont-guppy-gpu/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['ont_guppy_gpu_module'] = { + 'widget' => 'module_load', + 'module' => "ont-guppy-gpu", + 'label' => "ont-guppy-gpu Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{ont_guppy_gpu_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/ont-guppy-gpu/icon.png b/apps/ont-guppy-gpu/icon.png new file mode 100644 index 00000000..339cb62d Binary files /dev/null and b/apps/ont-guppy-gpu/icon.png differ diff --git a/apps/ont-guppy-gpu/manifest.yml b/apps/ont-guppy-gpu/manifest.yml new file mode 100644 index 00000000..2bc01865 --- /dev/null +++ b/apps/ont-guppy-gpu/manifest.yml @@ -0,0 +1,6 @@ +name: ont-guppy-gpu +category: Biology +description: Data processing toolkit that contains the Oxford Nanopore Technologies' basecalling algorithms, and several bioinformatic post-processing features. +homepage: https://nanoporetech.com/products/minit +icon: icon.png +hidden: true diff --git a/apps/padloc/form.yml.erb b/apps/padloc/form.yml.erb new file mode 100644 index 00000000..b3082095 --- /dev/null +++ b/apps/padloc/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['padloc_module'] = { + 'widget' => 'module_load', + 'module' => "padloc", + 'label' => "padloc Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{padloc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/padloc/icon.png b/apps/padloc/icon.png new file mode 100644 index 00000000..23749592 Binary files /dev/null and b/apps/padloc/icon.png differ diff --git a/apps/padloc/manifest.yml b/apps/padloc/manifest.yml new file mode 100644 index 00000000..76605574 --- /dev/null +++ b/apps/padloc/manifest.yml @@ -0,0 +1,6 @@ +name: padloc +category: Biology +description: Prokaryotic Antiviral Defence LOCator. +homepage: https://github.com/padlocbio/padloc +icon: icon.png +hidden: true diff --git a/apps/pairtools/form.yml.erb b/apps/pairtools/form.yml.erb new file mode 100644 index 00000000..df917b86 --- /dev/null +++ b/apps/pairtools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pairtools_module'] = { + 'widget' => 'module_load', + 'module' => "pairtools", + 'label' => "pairtools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pairtools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pairtools/icon.png b/apps/pairtools/icon.png new file mode 100644 index 00000000..0bc66f29 Binary files /dev/null and b/apps/pairtools/icon.png differ diff --git a/apps/pairtools/manifest.yml b/apps/pairtools/manifest.yml new file mode 100644 index 00000000..1a8187b0 --- /dev/null +++ b/apps/pairtools/manifest.yml @@ -0,0 +1,6 @@ +name: pairtools +category: Biology +description: CLI tools to process mapped Hi-C data. +homepage: https://github.com/open2c/pairtools +icon: icon.png +hidden: true diff --git a/apps/panaroo/form.yml.erb b/apps/panaroo/form.yml.erb new file mode 100644 index 00000000..02e95df9 --- /dev/null +++ b/apps/panaroo/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['panaroo_module'] = { + 'widget' => 'module_load', + 'module' => "panaroo", + 'label' => "panaroo Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{panaroo_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/panaroo/icon.png b/apps/panaroo/icon.png new file mode 100644 index 00000000..5dd81ffd Binary files /dev/null and b/apps/panaroo/icon.png differ diff --git a/apps/panaroo/manifest.yml b/apps/panaroo/manifest.yml new file mode 100644 index 00000000..03729d2e --- /dev/null +++ b/apps/panaroo/manifest.yml @@ -0,0 +1,6 @@ +name: panaroo +category: Biology +description: A pangenome analysis pipeline. +homepage: https://gtonkinhill.github.io/panaroo/ +icon: icon.png +hidden: true diff --git a/apps/pauvre/form.yml.erb b/apps/pauvre/form.yml.erb new file mode 100644 index 00000000..887a9aab --- /dev/null +++ b/apps/pauvre/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pauvre_module'] = { + 'widget' => 'module_load', + 'module' => "pauvre", + 'label' => "pauvre Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pauvre_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pauvre/manifest.yml b/apps/pauvre/manifest.yml new file mode 100644 index 00000000..1c5944c3 --- /dev/null +++ b/apps/pauvre/manifest.yml @@ -0,0 +1,5 @@ +name: pauvre +category: Biology +description: Tools for plotting Oxford Nanopore and other long-read data. +homepage: https://huttenhower.sph.harvard.edu/metaphlan/ +hidden: true diff --git a/apps/pggb/form.yml.erb b/apps/pggb/form.yml.erb new file mode 100644 index 00000000..f0cee1bf --- /dev/null +++ b/apps/pggb/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pggb_module'] = { + 'widget' => 'module_load', + 'module' => "pggb", + 'label' => "pggb Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pggb_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pggb/manifest.yml b/apps/pggb/manifest.yml new file mode 100644 index 00000000..516f3fcf --- /dev/null +++ b/apps/pggb/manifest.yml @@ -0,0 +1,5 @@ +name: pggb +category: Biology +description: PanGenome Graph Builder(pggb). +homepage: https://www.repeatmasker.org/ +hidden: true diff --git a/apps/pgge/form.yml.erb b/apps/pgge/form.yml.erb new file mode 100644 index 00000000..2246b313 --- /dev/null +++ b/apps/pgge/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pgge_module'] = { + 'widget' => 'module_load', + 'module' => "pgge", + 'label' => "pgge Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pgge_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pgge/manifest.yml b/apps/pgge/manifest.yml new file mode 100644 index 00000000..b56d4512 --- /dev/null +++ b/apps/pgge/manifest.yml @@ -0,0 +1,5 @@ +name: pgge +category: Biology +description: Pangenome graph evaluator. +homepage: https://github.com/pangenome/pgge +hidden: true diff --git a/apps/phonopy/form.yml.erb b/apps/phonopy/form.yml.erb new file mode 100644 index 00000000..45154301 --- /dev/null +++ b/apps/phonopy/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['phonopy_module'] = { + 'widget' => 'module_load', + 'module' => "phonopy", + 'label' => "phonopy Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{phonopy_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/phonopy/manifest.yml b/apps/phonopy/manifest.yml new file mode 100644 index 00000000..535d134e --- /dev/null +++ b/apps/phonopy/manifest.yml @@ -0,0 +1,5 @@ +name: phonopy +category: Chemistry +description: Phonopy is an open source package of phonon calculations based on the supercell approach. +homepage: https://phonopy.github.io/phonopy/ +hidden: true diff --git a/apps/phyx/form.yml.erb b/apps/phyx/form.yml.erb new file mode 100644 index 00000000..4317adf2 --- /dev/null +++ b/apps/phyx/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['phyx_module'] = { + 'widget' => 'module_load', + 'module' => "phyx", + 'label' => "phyx Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{phyx_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/phyx/icon.png b/apps/phyx/icon.png new file mode 100644 index 00000000..a447b008 Binary files /dev/null and b/apps/phyx/icon.png differ diff --git a/apps/phyx/manifest.yml b/apps/phyx/manifest.yml new file mode 100644 index 00000000..0c8c9afa --- /dev/null +++ b/apps/phyx/manifest.yml @@ -0,0 +1,6 @@ +name: phyx +category: Biology +description: Phyx performs phylogenetics analyses on trees and sequences. +homepage: https://github.com/FePhyFoFum/phyx +icon: icon.png +hidden: true diff --git a/apps/picard/form.yml.erb b/apps/picard/form.yml.erb new file mode 100644 index 00000000..bf830351 --- /dev/null +++ b/apps/picard/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['picard_module'] = { + 'widget' => 'module_load', + 'module' => "picard", + 'label' => "picard Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{picard_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/picard/manifest.yml b/apps/picard/manifest.yml new file mode 100644 index 00000000..8f73f467 --- /dev/null +++ b/apps/picard/manifest.yml @@ -0,0 +1,5 @@ +name: picard +category: Biology +description: A set of tools (in Java) for working with next generation sequencing data in the BAM format. +homepage: https://sourceforge.net/projects/picard +hidden: true diff --git a/apps/pixi/form.yml.erb b/apps/pixi/form.yml.erb new file mode 100644 index 00000000..8e8f93c4 --- /dev/null +++ b/apps/pixi/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pixi_module'] = { + 'widget' => 'module_load', + 'module' => "pixi", + 'label' => "pixi Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pixi_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pixi/icon.png b/apps/pixi/icon.png new file mode 100644 index 00000000..09d8f331 Binary files /dev/null and b/apps/pixi/icon.png differ diff --git a/apps/pixi/manifest.yml b/apps/pixi/manifest.yml new file mode 100644 index 00000000..b262983c --- /dev/null +++ b/apps/pixi/manifest.yml @@ -0,0 +1,6 @@ +name: pixi +category: Others +description: Pixi is a cross-platform, multi-language package manager and workflow tool built on the foundation of the conda ecosystem. +homepage: https://github.com/prefix-dev/pixi +icon: icon.png +hidden: true diff --git a/apps/pplacer/form.yml.erb b/apps/pplacer/form.yml.erb new file mode 100644 index 00000000..e17ab4f2 --- /dev/null +++ b/apps/pplacer/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pplacer_module'] = { + 'widget' => 'module_load', + 'module' => "pplacer", + 'label' => "pplacer Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pplacer_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pplacer/manifest.yml b/apps/pplacer/manifest.yml new file mode 100644 index 00000000..bf3b9855 --- /dev/null +++ b/apps/pplacer/manifest.yml @@ -0,0 +1,5 @@ +name: pplacer +category: Biology +description: Places query sequences on a fixed reference phylogenetic tree to maximize phylogenetic likelihood or posterior probability according to a reference alignment. +homepage: http://matsen.fhcrc.org/pplacer/ +hidden: true diff --git a/apps/preseq/form.yml.erb b/apps/preseq/form.yml.erb new file mode 100644 index 00000000..7371f398 --- /dev/null +++ b/apps/preseq/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['preseq_module'] = { + 'widget' => 'module_load', + 'module' => "preseq", + 'label' => "preseq Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{preseq_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/preseq/manifest.yml b/apps/preseq/manifest.yml new file mode 100644 index 00000000..d1bb7de1 --- /dev/null +++ b/apps/preseq/manifest.yml @@ -0,0 +1,5 @@ +name: preseq +category: Biology +description: Software for predicting library complexity and genome coverage in high-throughput sequencing. +homepage: https://smithlabresearch.org/software/preseq +hidden: true diff --git a/apps/prodigal-gv/form.yml.erb b/apps/prodigal-gv/form.yml.erb new file mode 100644 index 00000000..ebabc104 --- /dev/null +++ b/apps/prodigal-gv/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['prodigal_gv_module'] = { + 'widget' => 'module_load', + 'module' => "prodigal-gv", + 'label' => "prodigal-gv Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{prodigal_gv_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/prodigal-gv/manifest.yml b/apps/prodigal-gv/manifest.yml new file mode 100644 index 00000000..7f4b7180 --- /dev/null +++ b/apps/prodigal-gv/manifest.yml @@ -0,0 +1,5 @@ +name: prodigal-gv +category: Biology +description: A fork of Prodigal meant to improve gene calling for giant viruses and viruses that use alternative genetic codes. +homepage: https://github.com/apcamargo/prodigal-gv +hidden: true diff --git a/apps/prodigal/form.yml.erb b/apps/prodigal/form.yml.erb new file mode 100644 index 00000000..8ae141e4 --- /dev/null +++ b/apps/prodigal/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['prodigal_module'] = { + 'widget' => 'module_load', + 'module' => "prodigal", + 'label' => "prodigal Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{prodigal_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/prodigal/manifest.yml b/apps/prodigal/manifest.yml new file mode 100644 index 00000000..19642607 --- /dev/null +++ b/apps/prodigal/manifest.yml @@ -0,0 +1,5 @@ +name: prodigal +category: Biology +description: Prodigal (Prokaryotic Dynamic Programming Genefinding Algorithm) is a microbial (bacterial and archaeal) gene finding program developed at Oak Ridge National Laboratory and the University of Tennessee. +homepage: http://prodigal.ornl.gov/ +hidden: true diff --git a/apps/prokka/form.yml.erb b/apps/prokka/form.yml.erb new file mode 100644 index 00000000..e01cc7aa --- /dev/null +++ b/apps/prokka/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['prokka_module'] = { + 'widget' => 'module_load', + 'module' => "prokka", + 'label' => "prokka Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{prokka_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/prokka/manifest.yml b/apps/prokka/manifest.yml new file mode 100644 index 00000000..3b169c82 --- /dev/null +++ b/apps/prokka/manifest.yml @@ -0,0 +1,5 @@ +name: prokka +category: Biology +description: Prokka is a software tool for the rapid annotation of prokaryotic genomes. +homepage: http://www.vicbioinformatics.com/software.prokka.shtml +hidden: true diff --git a/apps/psmc/form.yml.erb b/apps/psmc/form.yml.erb new file mode 100644 index 00000000..fe949ac0 --- /dev/null +++ b/apps/psmc/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['psmc_module'] = { + 'widget' => 'module_load', + 'module' => "psmc", + 'label' => "psmc Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{psmc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/psmc/manifest.yml b/apps/psmc/manifest.yml new file mode 100644 index 00000000..392835e2 --- /dev/null +++ b/apps/psmc/manifest.yml @@ -0,0 +1,5 @@ +name: psmc +category: Biology +description: Infers population size history from a diploid sequence using the PSMC model. +homepage: https://github.com/lh3/psmc +hidden: true diff --git a/apps/pullseq/form.yml.erb b/apps/pullseq/form.yml.erb new file mode 100644 index 00000000..737ed3b9 --- /dev/null +++ b/apps/pullseq/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pullseq_module'] = { + 'widget' => 'module_load', + 'module' => "pullseq", + 'label' => "pullseq Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pullseq_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pullseq/manifest.yml b/apps/pullseq/manifest.yml new file mode 100644 index 00000000..5cd48fb7 --- /dev/null +++ b/apps/pullseq/manifest.yml @@ -0,0 +1,5 @@ +name: pullseq +category: Biology +description: Utility program for extracting sequences from a fasta/fastq file. +homepage: https://github.com/bcthomas/pullseq +hidden: true diff --git a/apps/purge_dups/form.yml.erb b/apps/purge_dups/form.yml.erb new file mode 100644 index 00000000..406720c5 --- /dev/null +++ b/apps/purge_dups/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['purge_dups_module'] = { + 'widget' => 'module_load', + 'module' => "purge_dups", + 'label' => "purge_dups Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{purge_dups_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/purge_dups/manifest.yml b/apps/purge_dups/manifest.yml new file mode 100644 index 00000000..1829a5c0 --- /dev/null +++ b/apps/purge_dups/manifest.yml @@ -0,0 +1,5 @@ +name: purge_dups +category: Biology +description: Purge haplotigs and overlaps in an assembly based on read depth. +homepage: https://github.com/dfguan/purge_dups +hidden: true diff --git a/apps/purge_haplotigs/form.yml.erb b/apps/purge_haplotigs/form.yml.erb new file mode 100644 index 00000000..8005ba4e --- /dev/null +++ b/apps/purge_haplotigs/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['purge_haplotigs_module'] = { + 'widget' => 'module_load', + 'module' => "purge_haplotigs", + 'label' => "purge_haplotigs Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{purge_haplotigs_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/purge_haplotigs/manifest.yml b/apps/purge_haplotigs/manifest.yml new file mode 100644 index 00000000..5d600de5 --- /dev/null +++ b/apps/purge_haplotigs/manifest.yml @@ -0,0 +1,5 @@ +name: purge_haplotigs +category: Biology +description: Pipeline to help with curating heterozygous diploid genome assemblies. +homepage: https://bitbucket.org/mroachawri/purge_haplotigs/src/master/ +hidden: true diff --git a/apps/pyani/form.yml.erb b/apps/pyani/form.yml.erb new file mode 100644 index 00000000..9c1bb723 --- /dev/null +++ b/apps/pyani/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pyani_module'] = { + 'widget' => 'module_load', + 'module' => "pyani", + 'label' => "pyani Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pyani_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pyani/manifest.yml b/apps/pyani/manifest.yml new file mode 100644 index 00000000..a9ab7c6f --- /dev/null +++ b/apps/pyani/manifest.yml @@ -0,0 +1,5 @@ +name: pyani +category: Biology +description: Whole-genome classification using Average Nucleotide Identity. +homepage: https://github.com/widdowquinn/pyani +hidden: true diff --git a/apps/pycoQC/form.yml.erb b/apps/pycoQC/form.yml.erb new file mode 100644 index 00000000..8063c478 --- /dev/null +++ b/apps/pycoQC/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['pycoqc_module'] = { + 'widget' => 'module_load', + 'module' => "pycoQC", + 'label' => "pycoQC Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{pycoqc_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/pycoQC/icon.svg b/apps/pycoQC/icon.svg new file mode 100644 index 00000000..20e7fb5b --- /dev/null +++ b/apps/pycoQC/icon.svg @@ -0,0 +1,171 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + pyco + + + + + + + + + + + + + + + + + C + + + + diff --git a/apps/pycoQC/manifest.yml b/apps/pycoQC/manifest.yml new file mode 100644 index 00000000..8cbafd5a --- /dev/null +++ b/apps/pycoQC/manifest.yml @@ -0,0 +1,6 @@ +name: pycoQC +category: Biology +description: Computes metrics and generates interactive QC plots for Oxford Nanopore technologies sequencing data. +homepage: https://tleonardi.github.io/pycoQC/ +icon: icon.svg +hidden: true diff --git a/apps/qcat/form.yml.erb b/apps/qcat/form.yml.erb new file mode 100644 index 00000000..9d375ae3 --- /dev/null +++ b/apps/qcat/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['qcat_module'] = { + 'widget' => 'module_load', + 'module' => "qcat", + 'label' => "qcat Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{qcat_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/qcat/icon.png b/apps/qcat/icon.png new file mode 100644 index 00000000..58c5d012 Binary files /dev/null and b/apps/qcat/icon.png differ diff --git a/apps/qcat/manifest.yml b/apps/qcat/manifest.yml new file mode 100644 index 00000000..5d5ea62b --- /dev/null +++ b/apps/qcat/manifest.yml @@ -0,0 +1,6 @@ +name: qcat +category: Biology +description: Command-line tool for demultiplexing Oxford Nanopore reads from FASTQ files. +homepage: https://github.com/nanoporetech/qcat/releases +icon: icon.png +hidden: true diff --git a/apps/randfold/form.yml.erb b/apps/randfold/form.yml.erb new file mode 100644 index 00000000..a1bdab94 --- /dev/null +++ b/apps/randfold/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['randfold_module'] = { + 'widget' => 'module_load', + 'module' => "randfold", + 'label' => "randfold Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{randfold_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/randfold/manifest.yml b/apps/randfold/manifest.yml new file mode 100644 index 00000000..ba7bad52 --- /dev/null +++ b/apps/randfold/manifest.yml @@ -0,0 +1,5 @@ +name: randfold +category: Biology +description: Minimum free energy of folding randomization test software. +homepage: http://bioinformatics.psb.ugent.be/software/details/Randfold +hidden: true diff --git a/apps/rasusa/form.yml.erb b/apps/rasusa/form.yml.erb new file mode 100644 index 00000000..5150c618 --- /dev/null +++ b/apps/rasusa/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rasusa_module'] = { + 'widget' => 'module_load', + 'module' => "rasusa", + 'label' => "rasusa Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rasusa_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/rasusa/icon.png b/apps/rasusa/icon.png new file mode 100644 index 00000000..8d60e07f Binary files /dev/null and b/apps/rasusa/icon.png differ diff --git a/apps/rasusa/manifest.yml b/apps/rasusa/manifest.yml new file mode 100644 index 00000000..b5383d19 --- /dev/null +++ b/apps/rasusa/manifest.yml @@ -0,0 +1,6 @@ +name: rasusa +category: Biology +description: Randomly subsample sequencing reads to a specified coverage. +homepage: https://github.com/mbhall88/rasusa +icon: icon.png +hidden: true diff --git a/apps/rclone/form.yml.erb b/apps/rclone/form.yml.erb new file mode 100644 index 00000000..e048d351 --- /dev/null +++ b/apps/rclone/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rclone_module'] = { + 'widget' => 'module_load', + 'module' => "rclone", + 'label' => "rclone Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rclone_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/rclone/icon.svg b/apps/rclone/icon.svg new file mode 100644 index 00000000..35360ef4 --- /dev/null +++ b/apps/rclone/icon.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/rclone/manifest.yml b/apps/rclone/manifest.yml new file mode 100644 index 00000000..3f494820 --- /dev/null +++ b/apps/rclone/manifest.yml @@ -0,0 +1,6 @@ +name: rclone +category: Others +description: Rclone is a command line program to sync files and directories to and from a variety of online storage services. +homepage: https://rclone.org/ +icon: icon.svg +hidden: true diff --git a/apps/rnaQUAST/form.yml.erb b/apps/rnaQUAST/form.yml.erb new file mode 100644 index 00000000..754a0037 --- /dev/null +++ b/apps/rnaQUAST/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['rnaquast_module'] = { + 'widget' => 'module_load', + 'module' => "rnaQUAST", + 'label' => "rnaQUAST Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{rnaquast_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/rnaQUAST/manifest.yml b/apps/rnaQUAST/manifest.yml new file mode 100644 index 00000000..ef0069c3 --- /dev/null +++ b/apps/rnaQUAST/manifest.yml @@ -0,0 +1,5 @@ +name: rnaQUAST +category: Biology +description: Tool for evaluating RNA-Seq assemblies using reference genome and gene database. +homepage: https://cab.spbu.ru/software/rnaquast/ +hidden: true diff --git a/apps/samblaster/form.yml.erb b/apps/samblaster/form.yml.erb new file mode 100644 index 00000000..8336cb8d --- /dev/null +++ b/apps/samblaster/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['samblaster_module'] = { + 'widget' => 'module_load', + 'module' => "samblaster", + 'label' => "samblaster Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{samblaster_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/samblaster/manifest.yml b/apps/samblaster/manifest.yml new file mode 100644 index 00000000..9a4561bf --- /dev/null +++ b/apps/samblaster/manifest.yml @@ -0,0 +1,5 @@ +name: samblaster +category: Biology +description: Samblaster is a fast and flexible program for marking duplicates in read-id grouped paired-end SAM files. +homepage: http://github.com/GregoryFaust/samblaster +hidden: true diff --git a/apps/samclip/form.yml.erb b/apps/samclip/form.yml.erb new file mode 100644 index 00000000..87ac52b0 --- /dev/null +++ b/apps/samclip/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['samclip_module'] = { + 'widget' => 'module_load', + 'module' => "samclip", + 'label' => "samclip Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{samclip_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/samclip/manifest.yml b/apps/samclip/manifest.yml new file mode 100644 index 00000000..daaf2fe9 --- /dev/null +++ b/apps/samclip/manifest.yml @@ -0,0 +1,5 @@ +name: samclip +category: Others +description: Filter SAM file for soft and hard clipped alignments. +homepage: https://github.com/tseemann/samclip +hidden: true diff --git a/apps/sc-RNA/form.yml.erb b/apps/sc-RNA/form.yml.erb new file mode 100644 index 00000000..3d1a4f21 --- /dev/null +++ b/apps/sc-RNA/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sc_rna_module'] = { + 'widget' => 'module_load', + 'module' => "sc-RNA", + 'label' => "sc-RNA Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sc_rna_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/sc-RNA/icon.png b/apps/sc-RNA/icon.png new file mode 100644 index 00000000..2f9dbf67 Binary files /dev/null and b/apps/sc-RNA/icon.png differ diff --git a/apps/sc-RNA/manifest.yml b/apps/sc-RNA/manifest.yml new file mode 100644 index 00000000..dd11676c --- /dev/null +++ b/apps/sc-RNA/manifest.yml @@ -0,0 +1,6 @@ +name: sc-RNA +category: Biology +description: Bioconductor bundle for single-cell RNA-Seq Data analysis. +homepage: https://genomicsaotearoa.github.io/scRNA-seq-data-analysis/ +icon: icon.png +hidden: true diff --git a/apps/screen_assembly/form.yml.erb b/apps/screen_assembly/form.yml.erb new file mode 100644 index 00000000..98a46131 --- /dev/null +++ b/apps/screen_assembly/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['screen_assembly_module'] = { + 'widget' => 'module_load', + 'module' => "screen_assembly", + 'label' => "screen_assembly Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{screen_assembly_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/screen_assembly/manifest.yml b/apps/screen_assembly/manifest.yml new file mode 100644 index 00000000..20b13df7 --- /dev/null +++ b/apps/screen_assembly/manifest.yml @@ -0,0 +1,5 @@ +name: screen_assembly +category: Biology +description: Pipeline that screens for presence of genes of interest (GOI) in bacterial assemblies. +homepage: https://github.com/shimbalama/screen_assembly +hidden: true diff --git a/apps/seqmagick/form.yml.erb b/apps/seqmagick/form.yml.erb new file mode 100644 index 00000000..3e2080b2 --- /dev/null +++ b/apps/seqmagick/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['seqmagick_module'] = { + 'widget' => 'module_load', + 'module' => "seqmagick", + 'label' => "seqmagick Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{seqmagick_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/seqmagick/manifest.yml b/apps/seqmagick/manifest.yml new file mode 100644 index 00000000..adeb0566 --- /dev/null +++ b/apps/seqmagick/manifest.yml @@ -0,0 +1,5 @@ +name: seqmagick +category: Biology +description: Seqmagick is a utility built in the spirit of imagemagick to expose the file format conversion in Biopython in a convenient way. +homepage: https://fhcrc.github.io/seqmagick/ +hidden: true diff --git a/apps/seqtk/form.yml.erb b/apps/seqtk/form.yml.erb new file mode 100644 index 00000000..0c6af8f1 --- /dev/null +++ b/apps/seqtk/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['seqtk_module'] = { + 'widget' => 'module_load', + 'module' => "seqtk", + 'label' => "seqtk Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{seqtk_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/seqtk/manifest.yml b/apps/seqtk/manifest.yml new file mode 100644 index 00000000..9a50b606 --- /dev/null +++ b/apps/seqtk/manifest.yml @@ -0,0 +1,5 @@ +name: seqtk +category: Biology +description: Seqtk is a fast and lightweight tool for processing sequences in the FASTA or FASTQ format. +homepage: https://github.com/lh3/seqtk/ +hidden: true diff --git a/apps/simuG/form.yml.erb b/apps/simuG/form.yml.erb new file mode 100644 index 00000000..c53d9e54 --- /dev/null +++ b/apps/simuG/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['simug_module'] = { + 'widget' => 'module_load', + 'module' => "simuG", + 'label' => "simuG Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{simug_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/simuG/icon.png b/apps/simuG/icon.png new file mode 100644 index 00000000..1d0e332a Binary files /dev/null and b/apps/simuG/icon.png differ diff --git a/apps/simuG/manifest.yml b/apps/simuG/manifest.yml new file mode 100644 index 00000000..37ec67b7 --- /dev/null +++ b/apps/simuG/manifest.yml @@ -0,0 +1,6 @@ +name: simuG +category: Biology +description: A general-purpose genome simulator. +homepage: https://github.com/yjx1217/simuG +icon: icon.png +hidden: true diff --git a/apps/sismonr/form.yml.erb b/apps/sismonr/form.yml.erb new file mode 100644 index 00000000..571056a3 --- /dev/null +++ b/apps/sismonr/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sismonr_module'] = { + 'widget' => 'module_load', + 'module' => "sismonr", + 'label' => "sismonr Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sismonr_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/sismonr/manifest.yml b/apps/sismonr/manifest.yml new file mode 100644 index 00000000..39756076 --- /dev/null +++ b/apps/sismonr/manifest.yml @@ -0,0 +1,5 @@ +name: sismonr +category: Biology +description: Simulation of In Silico Multi-Omic Networks R package. +homepage: https://oliviaab.github.io/sismonr/ +hidden: true diff --git a/apps/skani/form.yml.erb b/apps/skani/form.yml.erb new file mode 100644 index 00000000..8209bafb --- /dev/null +++ b/apps/skani/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['skani_module'] = { + 'widget' => 'module_load', + 'module' => "skani", + 'label' => "skani Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{skani_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/skani/manifest.yml b/apps/skani/manifest.yml new file mode 100644 index 00000000..b582ad1d --- /dev/null +++ b/apps/skani/manifest.yml @@ -0,0 +1,5 @@ +name: skani +category: Biology +description: Accurate, fast nucleotide identity calculation for MAGs, genomes, and databases. +homepage: https://github.com/bluenote-1577/skani +hidden: true diff --git a/apps/slow5-dorado/form.yml.erb b/apps/slow5-dorado/form.yml.erb new file mode 100644 index 00000000..b2c8348c --- /dev/null +++ b/apps/slow5-dorado/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmGPU/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['slow5_dorado_module'] = { + 'widget' => 'module_load', + 'module' => "slow5-dorado", + 'label' => "slow5-dorado Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{slow5_dorado_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/slow5-dorado/manifest.yml b/apps/slow5-dorado/manifest.yml new file mode 100644 index 00000000..66a3587a --- /dev/null +++ b/apps/slow5-dorado/manifest.yml @@ -0,0 +1,5 @@ +name: slow5-dorado +category: Biology +description: Fork of nanopore's Dorado which supports S/BLOW5. +homepage: https://github.com/hiruna72/slow5-dorado +hidden: true diff --git a/apps/slow5tools/form.yml.erb b/apps/slow5tools/form.yml.erb new file mode 100644 index 00000000..5c13f6b8 --- /dev/null +++ b/apps/slow5tools/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['slow5tools_module'] = { + 'widget' => 'module_load', + 'module' => "slow5tools", + 'label' => "slow5tools Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{slow5tools_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/slow5tools/manifest.yml b/apps/slow5tools/manifest.yml new file mode 100644 index 00000000..379261f5 --- /dev/null +++ b/apps/slow5tools/manifest.yml @@ -0,0 +1,5 @@ +name: slow5tools +category: Others +description: Toolkit for converting (FAST5 <-> SLOW5), compressing, viewing, indexing and manipulating data in SLOW5 format. +homepage: https://hasindu2008.github.io/slow5tools +hidden: true diff --git a/apps/smoove/form.yml.erb b/apps/smoove/form.yml.erb new file mode 100644 index 00000000..56a1e758 --- /dev/null +++ b/apps/smoove/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['smoove_module'] = { + 'widget' => 'module_load', + 'module' => "smoove", + 'label' => "smoove Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{smoove_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/smoove/manifest.yml b/apps/smoove/manifest.yml new file mode 100644 index 00000000..8683b121 --- /dev/null +++ b/apps/smoove/manifest.yml @@ -0,0 +1,5 @@ +name: smoove +category: Biology +description: Simplifies and speeds calling and genotyping SVs for short reads. +homepage: https://github.com/bcgsc/LongStitch +hidden: true diff --git a/apps/snakemake/form.yml.erb b/apps/snakemake/form.yml.erb new file mode 100644 index 00000000..7a9fcf87 --- /dev/null +++ b/apps/snakemake/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['snakemake_module'] = { + 'widget' => 'module_load', + 'module' => "snakemake", + 'label' => "snakemake Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{snakemake_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/snakemake/icon.png b/apps/snakemake/icon.png new file mode 100644 index 00000000..810cd3ec Binary files /dev/null and b/apps/snakemake/icon.png differ diff --git a/apps/snakemake/manifest.yml b/apps/snakemake/manifest.yml new file mode 100644 index 00000000..0c69224b --- /dev/null +++ b/apps/snakemake/manifest.yml @@ -0,0 +1,6 @@ +name: snakemake +category: Workflow Management +description: The Snakemake workflow management system is a tool to create reproducible and scalable data analyses. +homepage: https://snakemake.readthedocs.io +icon: icon.png +hidden: true diff --git a/apps/snippy/form.yml.erb b/apps/snippy/form.yml.erb new file mode 100644 index 00000000..6ac8cef9 --- /dev/null +++ b/apps/snippy/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['snippy_module'] = { + 'widget' => 'module_load', + 'module' => "snippy", + 'label' => "snippy Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{snippy_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/snippy/manifest.yml b/apps/snippy/manifest.yml new file mode 100644 index 00000000..d35385dc --- /dev/null +++ b/apps/snippy/manifest.yml @@ -0,0 +1,5 @@ +name: snippy +category: Others +description: Rapid haploid variant calling and core genome alignment. +homepage: https://github.com/tseemann/snippy +hidden: true diff --git a/apps/snp-sites/form.yml.erb b/apps/snp-sites/form.yml.erb new file mode 100644 index 00000000..cc12ea6b --- /dev/null +++ b/apps/snp-sites/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['snp_sites_module'] = { + 'widget' => 'module_load', + 'module' => "snp-sites", + 'label' => "snp-sites Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{snp_sites_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/snp-sites/manifest.yml b/apps/snp-sites/manifest.yml new file mode 100644 index 00000000..aff795ae --- /dev/null +++ b/apps/snp-sites/manifest.yml @@ -0,0 +1,5 @@ +name: snp-sites +category: Biology +description: Finds SNP sites from a multi-FASTA alignment file. +homepage: https://sanger-pathogens.github.io/snp-sites/ +hidden: true diff --git a/apps/snpEff/form.yml.erb b/apps/snpEff/form.yml.erb new file mode 100644 index 00000000..7e4d249d --- /dev/null +++ b/apps/snpEff/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['snpeff_module'] = { + 'widget' => 'module_load', + 'module' => "snpEff", + 'label' => "snpEff Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{snpeff_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/snpEff/manifest.yml b/apps/snpEff/manifest.yml new file mode 100644 index 00000000..69c2ce29 --- /dev/null +++ b/apps/snpEff/manifest.yml @@ -0,0 +1,5 @@ +name: snpEff +category: Biology +description: SnpEff is a variant annotation and effect prediction tool. +homepage: https://pcingola.github.io/SnpEff/ +hidden: true diff --git a/apps/somalier/form.yml.erb b/apps/somalier/form.yml.erb new file mode 100644 index 00000000..e43386ca --- /dev/null +++ b/apps/somalier/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['somalier_module'] = { + 'widget' => 'module_load', + 'module' => "somalier", + 'label' => "somalier Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{somalier_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/somalier/manifest.yml b/apps/somalier/manifest.yml new file mode 100644 index 00000000..f0f01564 --- /dev/null +++ b/apps/somalier/manifest.yml @@ -0,0 +1,5 @@ +name: somalier +category: Biology +description: Extract informative sites, evaluate relatedness, and perform quality-control on BAM/CRAM/BCF/VCF/GVCF. +homepage: https://github.com/brentp/somalier +hidden: true diff --git a/apps/spaln/form.yml.erb b/apps/spaln/form.yml.erb new file mode 100644 index 00000000..7672e037 --- /dev/null +++ b/apps/spaln/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['spaln_module'] = { + 'widget' => 'module_load', + 'module' => "spaln", + 'label' => "spaln Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{spaln_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/spaln/manifest.yml b/apps/spaln/manifest.yml new file mode 100644 index 00000000..159b5ff0 --- /dev/null +++ b/apps/spaln/manifest.yml @@ -0,0 +1,5 @@ +name: spaln +category: Biology +description: Spaln (space-efficient spliced alignment) is a stand-alone program that maps and aligns a set of cDNA or protein sequences onto a whole genomic sequence in a single job. +homepage: https://github.com/ogotoh/spaln +hidden: true diff --git a/apps/spoa/form.yml.erb b/apps/spoa/form.yml.erb new file mode 100644 index 00000000..5becc73c --- /dev/null +++ b/apps/spoa/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['spoa_module'] = { + 'widget' => 'module_load', + 'module' => "spoa", + 'label' => "spoa Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{spoa_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/spoa/manifest.yml b/apps/spoa/manifest.yml new file mode 100644 index 00000000..6b20c90b --- /dev/null +++ b/apps/spoa/manifest.yml @@ -0,0 +1,5 @@ +name: spoa +category: Biology +description: C++ implementation of the partial order alignment (POA) algorithm which is used to generate consensus sequences. +homepage: https://github.com/rvaser/spoa +hidden: true diff --git a/apps/sratoolkit/form.yml.erb b/apps/sratoolkit/form.yml.erb new file mode 100644 index 00000000..f3e2e5cc --- /dev/null +++ b/apps/sratoolkit/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['sratoolkit_module'] = { + 'widget' => 'module_load', + 'module' => "sratoolkit", + 'label' => "sratoolkit Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{sratoolkit_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/sratoolkit/manifest.yml b/apps/sratoolkit/manifest.yml new file mode 100644 index 00000000..7ac02ec2 --- /dev/null +++ b/apps/sratoolkit/manifest.yml @@ -0,0 +1,5 @@ +name: sratoolkit +category: Biology +description: The SRA Toolkit, and the source-code SRA System Development Kit (SDK), will allow you to programmatically access data housed within SRA and convert it from the SRA format. +homepage: https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=software +hidden: true diff --git a/apps/swarm/form.yml.erb b/apps/swarm/form.yml.erb new file mode 100644 index 00000000..9342195b --- /dev/null +++ b/apps/swarm/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['swarm_module'] = { + 'widget' => 'module_load', + 'module' => "swarm", + 'label' => "swarm Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{swarm_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/swarm/manifest.yml b/apps/swarm/manifest.yml new file mode 100644 index 00000000..f0d87483 --- /dev/null +++ b/apps/swarm/manifest.yml @@ -0,0 +1,5 @@ +name: swarm +category: Biology +description: A robust and fast clustering method for amplicon-based studies. +homepage: https://github.com/torognes/swarm +hidden: true diff --git a/apps/tRNAscan-SE/form.yml.erb b/apps/tRNAscan-SE/form.yml.erb new file mode 100644 index 00000000..f196db65 --- /dev/null +++ b/apps/tRNAscan-SE/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trnascan_se_module'] = { + 'widget' => 'module_load', + 'module' => "tRNAscan-SE", + 'label' => "tRNAscan-SE Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trnascan_se_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/tRNAscan-SE/manifest.yml b/apps/tRNAscan-SE/manifest.yml new file mode 100644 index 00000000..f832dadb --- /dev/null +++ b/apps/tRNAscan-SE/manifest.yml @@ -0,0 +1,5 @@ +name: tRNAscan-SE +category: Biology +description: Transfer RNA detection. +homepage: https://github.com/UCSC-LoweLab/tRNAscan-SE +hidden: true diff --git a/apps/tabix/form.yml.erb b/apps/tabix/form.yml.erb new file mode 100644 index 00000000..bad472e6 --- /dev/null +++ b/apps/tabix/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tabix_module'] = { + 'widget' => 'module_load', + 'module' => "tabix", + 'label' => "tabix Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tabix_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/tabix/manifest.yml b/apps/tabix/manifest.yml new file mode 100644 index 00000000..4241ee94 --- /dev/null +++ b/apps/tabix/manifest.yml @@ -0,0 +1,5 @@ +name: tabix +category: Biology +description: Generic indexer for TAB-delimited genome position files. +homepage: http://samtools.sourceforge.net +hidden: true diff --git a/apps/tbl2asn/form.yml.erb b/apps/tbl2asn/form.yml.erb new file mode 100644 index 00000000..feec35fa --- /dev/null +++ b/apps/tbl2asn/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tbl2asn_module'] = { + 'widget' => 'module_load', + 'module' => "tbl2asn", + 'label' => "tbl2asn Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tbl2asn_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/tbl2asn/manifest.yml b/apps/tbl2asn/manifest.yml new file mode 100644 index 00000000..b935c24f --- /dev/null +++ b/apps/tbl2asn/manifest.yml @@ -0,0 +1,5 @@ +name: tbl2asn +category: Biology +description: Command-line program that automates the creation of sequence records for submission to GenBank. +homepage: https://www.ncbi.nlm.nih.gov/genbank/tbl2asn2/ +hidden: true diff --git a/apps/tomo/form.yml.erb b/apps/tomo/form.yml.erb new file mode 100644 index 00000000..78f8cd6f --- /dev/null +++ b/apps/tomo/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['tomo_module'] = { + 'widget' => 'module_load', + 'module' => "tomo", + 'label' => "tomo Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{tomo_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/tomo/icon.png b/apps/tomo/icon.png new file mode 100644 index 00000000..8938e8f3 Binary files /dev/null and b/apps/tomo/icon.png differ diff --git a/apps/tomo/manifest.yml b/apps/tomo/manifest.yml new file mode 100644 index 00000000..94a2520e --- /dev/null +++ b/apps/tomo/manifest.yml @@ -0,0 +1,6 @@ +name: tomo +category: Earth Science +description: This code computes 2D Travel Time Tomography using the Reversible Jump algorithm with a Voronoi cell parameterisation. +homepage: https://iearth.edu.au/codes/rj-TOMO/ +icon: icon.png +hidden: true diff --git a/apps/trf/form.yml.erb b/apps/trf/form.yml.erb new file mode 100644 index 00000000..246963ec --- /dev/null +++ b/apps/trf/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trf_module'] = { + 'widget' => 'module_load', + 'module' => "trf", + 'label' => "trf Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trf_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/trf/icon.png b/apps/trf/icon.png new file mode 100644 index 00000000..5b65f980 Binary files /dev/null and b/apps/trf/icon.png differ diff --git a/apps/trf/manifest.yml b/apps/trf/manifest.yml new file mode 100644 index 00000000..19c2add2 --- /dev/null +++ b/apps/trf/manifest.yml @@ -0,0 +1,6 @@ +name: trf +category: Biology +description: Locates tandem repeats in DNA sequences. +homepage: http://tandem.bu.edu/trf/trf.html +icon: icon.png +hidden: true diff --git a/apps/trimAl/form.yml.erb b/apps/trimAl/form.yml.erb new file mode 100644 index 00000000..8201af50 --- /dev/null +++ b/apps/trimAl/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['trimal_module'] = { + 'widget' => 'module_load', + 'module' => "trimAl", + 'label' => "trimAl Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{trimal_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/trimAl/manifest.yml b/apps/trimAl/manifest.yml new file mode 100644 index 00000000..5e3e95e8 --- /dev/null +++ b/apps/trimAl/manifest.yml @@ -0,0 +1,5 @@ +name: trimAl +category: Biology +description: Tool for automated alignment trimming in large-scale phylogenetic analyses. +homepage: https://github.com/scapella/trimal +hidden: true diff --git a/apps/unimap/form.yml.erb b/apps/unimap/form.yml.erb new file mode 100644 index 00000000..1e607e4c --- /dev/null +++ b/apps/unimap/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['unimap_module'] = { + 'widget' => 'module_load', + 'module' => "unimap", + 'label' => "unimap Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{unimap_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/unimap/manifest.yml b/apps/unimap/manifest.yml new file mode 100644 index 00000000..31adf126 --- /dev/null +++ b/apps/unimap/manifest.yml @@ -0,0 +1,5 @@ +name: unimap +category: Biology +description: Fork of minimap2 optimized for assembly-to-reference alignment. +homepage: https://github.com/lh3/unimap +hidden: true diff --git a/apps/vcflib/form.yml.erb b/apps/vcflib/form.yml.erb new file mode 100644 index 00000000..29cad78f --- /dev/null +++ b/apps/vcflib/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vcflib_module'] = { + 'widget' => 'module_load', + 'module' => "vcflib", + 'label' => "vcflib Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vcflib_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/vcflib/manifest.yml b/apps/vcflib/manifest.yml new file mode 100644 index 00000000..4ee83932 --- /dev/null +++ b/apps/vcflib/manifest.yml @@ -0,0 +1,5 @@ +name: vcflib +category: Biology +description: Vcflib provides methods to manipulate and interpret sequence variation as it can be described by VCF. +homepage: https://github.com/vcflib/vcflib +hidden: true diff --git a/apps/verkko/form.yml.erb b/apps/verkko/form.yml.erb new file mode 100644 index 00000000..10419ed1 --- /dev/null +++ b/apps/verkko/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['verkko_module'] = { + 'widget' => 'module_load', + 'module' => "verkko", + 'label' => "verkko Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{verkko_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/verkko/manifest.yml b/apps/verkko/manifest.yml new file mode 100644 index 00000000..aef579f0 --- /dev/null +++ b/apps/verkko/manifest.yml @@ -0,0 +1,5 @@ +name: verkko +category: Biology +description: Hybrid genome assembly pipeline developed for telomere-to-telomere assembly of PacBio HiFi and Oxford Nanopore reads. +homepage: https://github.com/marbl/verkko +hidden: true diff --git a/apps/vg/form.yml.erb b/apps/vg/form.yml.erb new file mode 100644 index 00000000..cd4024bb --- /dev/null +++ b/apps/vg/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vg_module'] = { + 'widget' => 'module_load', + 'module' => "vg", + 'label' => "vg Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vg_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/vg/icon.png b/apps/vg/icon.png new file mode 100644 index 00000000..cbafafd7 Binary files /dev/null and b/apps/vg/icon.png differ diff --git a/apps/vg/manifest.yml b/apps/vg/manifest.yml new file mode 100644 index 00000000..1748d69f --- /dev/null +++ b/apps/vg/manifest.yml @@ -0,0 +1,6 @@ +name: vg +category: Biology +description: Variation graph data structures, interchange formats, alignment, genotyping, and variant calling methods. +homepage: https://github.com/vgteam/vg +icon: icon.png +hidden: true diff --git a/apps/vt/form.yml.erb b/apps/vt/form.yml.erb new file mode 100644 index 00000000..0dcbebcb --- /dev/null +++ b/apps/vt/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['vt_module'] = { + 'widget' => 'module_load', + 'module' => "vt", + 'label' => "vt Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{vt_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/vt/manifest.yml b/apps/vt/manifest.yml new file mode 100644 index 00000000..06438a2d --- /dev/null +++ b/apps/vt/manifest.yml @@ -0,0 +1,5 @@ +name: vt +category: Others +description: A tool set for short variant discovery in genetic sequence data. +homepage: https://genome.sph.umich.edu/wiki/Vt +hidden: true diff --git a/apps/wgsim/form.yml.erb b/apps/wgsim/form.yml.erb new file mode 100644 index 00000000..97abd424 --- /dev/null +++ b/apps/wgsim/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['wgsim_module'] = { + 'widget' => 'module_load', + 'module' => "wgsim", + 'label' => "wgsim Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{wgsim_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/wgsim/manifest.yml b/apps/wgsim/manifest.yml new file mode 100644 index 00000000..7ff3ee18 --- /dev/null +++ b/apps/wgsim/manifest.yml @@ -0,0 +1,5 @@ +name: wgsim +category: Biology +description: Wgsim is a small tool for simulating sequence reads from a reference genome. +homepage: https://github.com/lh3/wgsim/ +hidden: true diff --git a/apps/wtdbg/form.yml.erb b/apps/wtdbg/form.yml.erb new file mode 100644 index 00000000..de028e14 --- /dev/null +++ b/apps/wtdbg/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['wtdbg_module'] = { + 'widget' => 'module_load', + 'module' => "wtdbg", + 'label' => "wtdbg Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{wtdbg_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/wtdbg/manifest.yml b/apps/wtdbg/manifest.yml new file mode 100644 index 00000000..68bba199 --- /dev/null +++ b/apps/wtdbg/manifest.yml @@ -0,0 +1,5 @@ +name: wtdbg +category: Biology +description: De novo sequence assembler for long noisy reads produced by PacBio or Oxford Nanopore Technologies. +homepage: https://github.com/ruanjue/wtdbg2 +hidden: true diff --git a/apps/xPore/form.yml.erb b/apps/xPore/form.yml.erb new file mode 100644 index 00000000..a8e0a3d8 --- /dev/null +++ b/apps/xPore/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['xpore_module'] = { + 'widget' => 'module_load', + 'module' => "xPore", + 'label' => "xPore Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{xpore_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/xPore/icon.png b/apps/xPore/icon.png new file mode 100644 index 00000000..18279701 Binary files /dev/null and b/apps/xPore/icon.png differ diff --git a/apps/xPore/manifest.yml b/apps/xPore/manifest.yml new file mode 100644 index 00000000..9a6a71a8 --- /dev/null +++ b/apps/xPore/manifest.yml @@ -0,0 +1,6 @@ +name: xPore +category: Biology +description: A Python package for identification and quantification of differential RNA modifications from direct RNA sequencing. +homepage: https://github.com/GoekeLab/xpore +icon: icon.png +hidden: true diff --git a/apps/xtb/form.yml.erb b/apps/xtb/form.yml.erb new file mode 100644 index 00000000..acf16825 --- /dev/null +++ b/apps/xtb/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['xtb_module'] = { + 'widget' => 'module_load', + 'module' => "xtb", + 'label' => "xtb Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{xtb_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/xtb/icon.svg b/apps/xtb/icon.svg new file mode 100644 index 00000000..2c5aba5f --- /dev/null +++ b/apps/xtb/icon.svg @@ -0,0 +1,466 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/xtb/manifest.yml b/apps/xtb/manifest.yml new file mode 100644 index 00000000..eaba5b5e --- /dev/null +++ b/apps/xtb/manifest.yml @@ -0,0 +1,6 @@ +name: xtb +category: Chemistry +description: Xtb - An extended tight-binding semi-empirical program package. +homepage: https://xtb-docs.readthedocs.io +icon: icon.svg +hidden: true diff --git a/apps/yacrd/form.yml.erb b/apps/yacrd/form.yml.erb new file mode 100644 index 00000000..b291ccd9 --- /dev/null +++ b/apps/yacrd/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['yacrd_module'] = { + 'widget' => 'module_load', + 'module' => "yacrd", + 'label' => "yacrd Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{yacrd_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/yacrd/manifest.yml b/apps/yacrd/manifest.yml new file mode 100644 index 00000000..9211f6f4 --- /dev/null +++ b/apps/yacrd/manifest.yml @@ -0,0 +1,5 @@ +name: yacrd +category: Biology +description: Chimeric Read Detector for long reads. +homepage: https://github.com/natir/yacrd +hidden: true diff --git a/apps/yak/form.yml.erb b/apps/yak/form.yml.erb new file mode 100644 index 00000000..73dee064 --- /dev/null +++ b/apps/yak/form.yml.erb @@ -0,0 +1,23 @@ +<% +base_path = File.join(File.dirname(yml_path), '../SlurmBasic/form.yml') +base = YAML.load_file(base_path) + +new_form = {} +base['form'].each do |k, v| + if k == 'time_days_hours_minutes' + new_form['yak_module'] = { + 'widget' => 'module_load', + 'module' => "yak", + 'label' => "yak Module" + } + end + new_form[k] = v +end + +base['form'] = new_form +base['script'] = base['script'].rstrip + "\n\n" + <<~'APP_SCRIPT' + module -q purge + module load #{yak_module} +APP_SCRIPT +%> +<%= base.to_yaml -%> diff --git a/apps/yak/manifest.yml b/apps/yak/manifest.yml new file mode 100644 index 00000000..8939f32e --- /dev/null +++ b/apps/yak/manifest.yml @@ -0,0 +1,5 @@ +name: yak +category: Biology +description: Yet another k-mer analyzer. +homepage: https://github.com/lh3/minimap2 +hidden: true diff --git a/conf.yml.erb b/conf.yml.erb new file mode 100644 index 00000000..a1c5ce39 --- /dev/null +++ b/conf.yml.erb @@ -0,0 +1,75 @@ +--- +# Required settings +apps_dir: "./apps" + +# Scheduler type — controls job submission, history, cancellation, and +# which generic script template appears under "New Template". +# Valid values: slurm, pbspro, miyabi, sge, fujitsu_tcs +# +# Single-cluster (no "clusters:" block): +# scheduler: "slurm" +# +# Multi-cluster: set per cluster under "clusters:" (see below). +clusters: + mahuika: + scheduler: "slurm" + +# Optional settings +# General +data_dir: <%= ENV['HOME'] %>/composer +login_node: "login.hpc.nesi.org.nz" +ssh_wrapper: "ssh login.hpc.nesi.org.nz" +bin: "/usr/bin" +bin_overrides: + sbatch: "/usr/bin/sbatch" + scontrol: "/usr/bin/scontrol" + scancel: "/usr/bin/scancel" + sacct: "/usr/bin/sacct" +#sge_root: "/apps/t4/rhel9/uge/latest" + +# Directory containing hidden generic apps (not shown in the main app listing). +generic_apps_dir: "./generic_apps" + +# When loading an external/generic job (one not submitted through Open Composer) +# from the History page, open this subfolder inside generic_apps_dir. +external_reload_app: "Slurm" + +## History +# Set to false to never store the batch script in the DB. +# When false, "Load parameters" always fetches the script live via sacct -B. +history_store_script: false +history: + OC_HISTORY_JOB_NAME: + OC_HISTORY_START_TIME: + label: "Start Time" + OC_HISTORY_END_TIME: + label: "End Time" + +## Layout +footer: "" +home_format: "big" +thumbnail_width: "100" +highlight_theme: "vs" +directive_color: "#000000" +navbar_color: "#FFFFFF" +navbar_text_color: "#000000" +dropdown_color: "#5522BB" +footer_color: "#000000" +footer_text_color: "#FFFFFF" +category_color: "#FFFFFF" +category_text_color: "#000000" +description_color: "#FFFFFF" +description_text_color: "#000000" +form_color: "#BFCFE7" +non_script_color: "#FFFFFF" +non_script_button_color: "#FFBF00" +submit_color: "#FFCCCC" +submit_button_color: "#FFAAAA" +history_action_color: "#DC3545" + +## Navbar links (set to false to hide) +show_home_directory: true +show_shell_access: true +show_open_ondemand: true +open_ondemand_label: "Return to Mahuika Ondemand" +navbar_logo: "REANNZ_logo.svg" diff --git a/conf.yml.erb.sample b/conf.yml.erb.sample deleted file mode 100644 index d26f196c..00000000 --- a/conf.yml.erb.sample +++ /dev/null @@ -1,53 +0,0 @@ ---- -# Required settings -apps_dir: "./sample_apps" -scheduler: "slurm" -#clusters: -# fugaku: -# scheduler: "fujitsu_tcs" -# prepost: -# scheduler: "slurm" -# bin_overrides: -# sbatch: "/usr/local/bin/sbatch" - -# Optional settings -## General -#data_dir: <%= ENV['HOME'] %>/composer -#login_node: "example.com" -#ssh_wrapper: "ssh hoge@example.com" -#bin: "/usr/local/bin" -#bin_overrides: -# sbatch: "/usr/local/bin/sbatch" -# scontrol: "/usr/local/bin/scontrol" -# scancel: "/usr/local/bin/scancel" -# sacct: "/usr/local/bin/sacct" -# pjsub: "/usr/local/bin/pjsub" -# pjstat: "/usr/local/bin/pjstat" -# pjdel: "/usr/local/bin/pjdel" -# qsub: "/opt/pbs/bin/qsub" -# qstat: "/usr/local/bin/qstat" -# qdel: "/usr/local/bin/qdel" -# qacct: "/usr/local/bin/qacct" -#sge_root: "/apps/t4/rhel9/uge/latest" - -## History -#history: -# OC_HISTORY_JOB_NAME: -# OC_HISTORY_PARTITION: -# OC_HISTORY_SUBMISSION_TIME: - -## Layout -#footer: "RIKEN Center for Computational Science" -#thumbnail_width: "100" -#highlight_theme: "vs" -#directive_color: "#D73A49" -#navbar_color: "#3D3B40" -#dropdown_color: "#3D3B40" -#footer_color: "#3D3B40" -#category_color: "#5522BB" -#description_color: "#5522BB" -#form_color: "#BFCFE7" -#non_script_color: "#FFE28A" -#non_script_button_color: "#FFBF00" -#submit_color: "#FFCCCC" -#submit_button_color: "#FFAAAA" diff --git a/docs/install.html b/docs/install.html index c8686566..e74d32c7 100644 --- a/docs/install.html +++ b/docs/install.html @@ -48,19 +48,27 @@

2. Setting

schedulerJob scheduler (slurm, pbspro, sge, fujitsu_tcs)(None) clustersCluster properties(None) data_dirDirectory where submitted job information is stored${HOME}/composer + generic_apps_dirDirectory containing hidden generic apps (e.g. a generic Slurm form) that are not shown in the main app listing but can be linked to directly./generic_apps + external_reload_appSubfolder inside generic_apps_dir to open when loading an external (non-OpenComposer) job from the History pageSlurm login_nodeLogin node when you launch the Open OnDemand web terminal(None) ssh_wrapperCommand for using the job scheduler of another node using SSH(None) binPATH of commands of job scheduler(None) bin_overridesPATH of each command of job scheduler(None) sge_rootDirectory for the Grid Engine root (SGE_ROOT)(None) historyAdditional display fields on the history pageOC_HISTORY_JOB_NAME, OC_HISTORY_PARTITION, OC_HISTORY_SUBMISSION_TIME - footerText in the footer(None) + footerHTML content for the footer bar(None) thumbnail_widthWidth of thumbnails for each application on the home page100 highlight_themeThe theme name for highlight.js used in the script/submit sectionsvs directive_colorThe text color of scheduler directives in the script/submit sections#D73A49 - navbar_colorColor of navigation bar#3D3B40 - dropdown_colorColor of dropdown menu - footer_colorColor of footer + navbar_colorBackground color of navigation bar#3D3B40 + navbar_text_colorText color of navigation bar + navbar_logoFilename of a custom logo image to display in the navigation bar (must be placed in public/)(None) + show_home_directoryShow the "Home Directory" link in the navigation bar (true or false)true + show_shell_accessShow the "Shell Access" link in the navigation bar (true or false)true + show_open_ondemandShow the "Open OnDemand" link in the navigation bar (true or false)true + dropdown_colorColor of dropdown menu#3D3B40 + footer_colorBackground color of footer + footer_text_colorText color of footer#3D3B40 category_colorBackground color of the home page category#5522BB description_colorBackground color of the application description in the application page form_colorBackground color of the text area in the application page#BFCFE7 @@ -68,6 +76,7 @@

2. Setting

non_script_button_colorBackground color of buttons that do not affect the script section#FFBF00 submit_colorBackground color of the form that affects only the submit section#FFCCCC submit_button_colorBackground color of buttons that affect only the submit section#FFAAAA + history_action_colorBackground color of the "Cancel Job" and "Delete Info" action buttons on the history page#DC3545

The apps_dir and scheduler are required. However, the scheduler may be defined inside clusters. diff --git a/docs/manual.html b/docs/manual.html index 2a9af308..9f0a3b3b 100644 --- a/docs/manual.html +++ b/docs/manual.html @@ -15,8 +15,11 @@

Contents
@@ -25,7 +28,7 @@

Open Composer User Manual

1. Introduction

Open Composer is a web application to submit batch jobs to an HPC cluster system from a web browser. - Open Composer consists of "Home page", "Application page", and "History page". + Open Composer consists of "Home page", "Application page", "History page", and "Nodes page".

2. Home Page

@@ -37,6 +40,22 @@

2. Home Page

Home page +

2.1. My Templates

+

+ The "My Templates" section appears below the application categories. + It shows your saved templates as thumbnails, using the same icon as the application the template was created from. +

+ +

+ Templates are stored per-user under data_dir/templates/. + If no templates have been saved yet, the section displays a short hint explaining how to create one. +

+

3. Application Page

Generates a job script. @@ -65,6 +84,18 @@

3. Application Page

+

3.1. Save as Template

+

+ The "Save as Template" button appears in the left panel of every application page. + Clicking it opens a dialog where you can give the template a name and an optional description. + The current form values, together with the application's icon and path, are saved as a reusable template. +

+ +

4. History Page

You can browse the job history. You can also check the status of jobs and cancel running jobs. @@ -108,12 +139,17 @@

4. History Page

  • Actions -
  • Display @@ -125,6 +161,24 @@

    4. History Page

  • +

    5. Nodes Page

    +

    + The Nodes page shows the current status of every compute node on the cluster. + It is accessible via the "Nodes" link in the navigation bar. +

    + diff --git a/generic_apps/Fujitsu_TCS/form.yml b/generic_apps/Fujitsu_TCS/form.yml new file mode 100644 index 00000000..e87cfcbb --- /dev/null +++ b/generic_apps/Fujitsu_TCS/form.yml @@ -0,0 +1,12 @@ +--- +# Job Script (Fujitsu TCS - Generic) +# +# A deliberately minimal, generic Fujitsu TCS application. It exposes only the +# standard header fields - Script location, Script name and Job name - plus the +# editable Script Content area. No other form widgets are defined, so an +# arbitrary Fujitsu TCS script (for example an external job loaded from the +# History page) can be reviewed, edited and submitted as-is. +# +# The empty "form:" below is intentional: run.rb normalizes an empty form body +# to "no widgets", so the header and Script Content area are all that render. +form: diff --git a/generic_apps/Fujitsu_TCS/logo.png b/generic_apps/Fujitsu_TCS/logo.png new file mode 100644 index 00000000..e7825ccc Binary files /dev/null and b/generic_apps/Fujitsu_TCS/logo.png differ diff --git a/generic_apps/Fujitsu_TCS/manifest.yml b/generic_apps/Fujitsu_TCS/manifest.yml new file mode 100644 index 00000000..0ba180d6 --- /dev/null +++ b/generic_apps/Fujitsu_TCS/manifest.yml @@ -0,0 +1,6 @@ +--- +name: Job Script (Fujitsu TCS - Generic) +category: Application +icon: logo.png +description: | + This application generates an arbitrary job script for Fujitsu TCS. diff --git a/generic_apps/Grid_Engine/form.yml b/generic_apps/Grid_Engine/form.yml new file mode 100644 index 00000000..06049522 --- /dev/null +++ b/generic_apps/Grid_Engine/form.yml @@ -0,0 +1,12 @@ +--- +# Job Script (Grid Engine - Generic) +# +# A deliberately minimal, generic Grid Engine application. It exposes only the +# standard header fields - Script location, Script name and Job name - plus the +# editable Script Content area. No other form widgets are defined, so an +# arbitrary Grid Engine script (for example an external job loaded from the +# History page) can be reviewed, edited and submitted as-is. +# +# The empty "form:" below is intentional: run.rb normalizes an empty form body +# to "no widgets", so the header and Script Content area are all that render. +form: diff --git a/generic_apps/Grid_Engine/logo.png b/generic_apps/Grid_Engine/logo.png new file mode 100644 index 00000000..cb13a955 Binary files /dev/null and b/generic_apps/Grid_Engine/logo.png differ diff --git a/generic_apps/Grid_Engine/manifest.yml b/generic_apps/Grid_Engine/manifest.yml new file mode 100644 index 00000000..2222323c --- /dev/null +++ b/generic_apps/Grid_Engine/manifest.yml @@ -0,0 +1,6 @@ +--- +name: Job Script (Grid Engine - Generic) +category: Application +icon: logo.png +description: | + This application generates an arbitrary job script in Grid Engine. diff --git a/generic_apps/PBS/form.yml b/generic_apps/PBS/form.yml new file mode 100644 index 00000000..b0a37d4e --- /dev/null +++ b/generic_apps/PBS/form.yml @@ -0,0 +1,12 @@ +--- +# Job Script (PBS - Generic) +# +# A deliberately minimal, generic PBS application. It exposes only the +# standard header fields - Script location, Script name and Job name - plus the +# editable Script Content area. No other form widgets are defined, so an +# arbitrary PBS script (for example an external job loaded from the History +# page) can be reviewed, edited and submitted as-is. +# +# The empty "form:" below is intentional: run.rb normalizes an empty form body +# to "no widgets", so the header and Script Content area are all that render. +form: diff --git a/generic_apps/PBS/icon.png b/generic_apps/PBS/icon.png new file mode 100644 index 00000000..2bc1a92f Binary files /dev/null and b/generic_apps/PBS/icon.png differ diff --git a/generic_apps/PBS/manifest.yml b/generic_apps/PBS/manifest.yml new file mode 100644 index 00000000..1037c930 --- /dev/null +++ b/generic_apps/PBS/manifest.yml @@ -0,0 +1,6 @@ +--- +name: Job Script (PBS - Generic) +category: Application +icon: icon.png +description: | + This application generates an arbitrary job script in PBS. diff --git a/generic_apps/slurm/README_icon.md b/generic_apps/slurm/README_icon.md new file mode 100644 index 00000000..885b7506 --- /dev/null +++ b/generic_apps/slurm/README_icon.md @@ -0,0 +1 @@ +The icon is obtained from https://upload.wikimedia.org/wikipedia/commons/3/3a/Slurm_logo.svg \ No newline at end of file diff --git a/generic_apps/slurm/Slurm_logo.svg b/generic_apps/slurm/Slurm_logo.svg new file mode 100644 index 00000000..3d1e7d28 --- /dev/null +++ b/generic_apps/slurm/Slurm_logo.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/generic_apps/slurm/form.yml b/generic_apps/slurm/form.yml new file mode 100644 index 00000000..d740337b --- /dev/null +++ b/generic_apps/slurm/form.yml @@ -0,0 +1,12 @@ +--- +# Job Script (Slurm - Generic) +# +# A deliberately minimal, generic Slurm application. It exposes only the +# standard header fields - Script location, Script name and Job name - plus the +# editable Script Content area. No other form widgets are defined, so an +# arbitrary Slurm script (for example an external job loaded from the History +# page) can be reviewed, edited and submitted as-is. +# +# The empty "form:" below is intentional: run.rb normalizes an empty form body +# to "no widgets", so the header and Script Content area are all that render. +form: diff --git a/generic_apps/slurm/manifest.yml b/generic_apps/slurm/manifest.yml new file mode 100644 index 00000000..f8c5554b --- /dev/null +++ b/generic_apps/slurm/manifest.yml @@ -0,0 +1,6 @@ +--- +name: Job Script (Slurm - Generic) +category: Application +icon: Slurm_logo.svg +description: | + This application generates an arbitrary job script in Slurm. diff --git a/lib/form.rb b/lib/form.rb index 8808026a..21c5c65e 100644 --- a/lib/form.rb +++ b/lib/form.rb @@ -231,10 +231,18 @@ def escape_js_string(str) def output_script_js(form, line, app_name, dir_name) line = normalize_interpolation(line) line = substitute_oc_constants(line, app_name, dir_name) + raw_line = line.dup line = escape_js_string(line) matches = line.scan(/\#\{.+?\}/) - return " selectedValues.push(\'#{line}\');\n" if matches.empty? + if matches.empty? + pattern_js = "" + unless raw_line.empty? + prefix_js = escape_js_string(raw_line) + pattern_js = " ocForm.scriptLinePatterns.push({prefix:'#{prefix_js}', regex:null, keys:[], widgets:[], separators:[], canHide:[]});\n" + end + return [" selectedValues.push(\'#{line}\');\n", pattern_js] + end keys = matches.flat_map do |str| inner = str[2..-2] # "#{time_1}" -> "time_1" @@ -312,14 +320,42 @@ def output_script_js(form, line, app_name, dir_name) if exist_keys.length > 0 # Convert to JavaScript array - keys_array = "['" + exist_keys.join("', '") + "']" - widgets_array = "['" + widgets.join("', '") + "']" - can_hide_array = "[" + can_hide.map { |r| r }.join(", ") + "]" - separators_array = "[" + separators.map { |s| s.nil? ? 'null' : "'#{s}'" }.join(", ") + "]" + keys_array = "['" + exist_keys.join("', '") + "']" + widgets_array = "['" + widgets.join("', '") + "']" + can_hide_array = "[" + can_hide.join(", ") + "]" + separators_array = "[" + separators.map { |s| s.nil? ? 'null' : "'#{s}'" }.join(", ") + "]" + + show_js = " ocForm.showLine(selectedValues, '#{line}', #{keys_array}, #{widgets_array}, #{can_hide_array}, #{separators_array});\n" + + has_complex = raw_line.match?(/\#\{(calc|zeropadding|dirname|basename)\(/) + raw_parts = raw_line.split(/\#\{[^}]+\}/, -1) + prefix = raw_parts[0] + pattern_js = "" + if has_complex + unless prefix.empty? + prefix_js = escape_js_string(prefix) + if raw_line.lstrip.start_with?("#SBATCH --time=") + pattern_js = " ocForm.scriptLinePatterns.push({prefix:'#{prefix_js}', regex:null, keys:#{keys_array}, widgets:#{widgets_array}, separators:#{separators_array}, canHide:#{can_hide_array}, parseType:'slurm_time'});\n" + else + pattern_js = " ocForm.scriptLinePatterns.push({prefix:'#{prefix_js}', regex:null, keys:[], widgets:[], separators:[], canHide:[]});\n" + end + end + else + unless prefix.empty? + regex_parts = [] + raw_parts.each_with_index do |part, i| + regex_parts << Regexp.escape(part) + regex_parts << (i < raw_parts.length - 2 ? "(.*?)" : "(.*)") if i < raw_parts.length - 1 + end + regex_str = ("^" + regex_parts.join("") + "$").gsub("/", "\\/") + prefix_js = escape_js_string(prefix) + pattern_js = " ocForm.scriptLinePatterns.push({prefix:'#{prefix_js}', regex:/#{regex_str}/, keys:#{keys_array}, widgets:#{widgets_array}, separators:#{separators_array}, canHide:#{can_hide_array}});\n" + end + end - return " ocForm.showLine(selectedValues, '#{line}', #{keys_array}, #{widgets_array}, #{can_hide_array}, #{separators_array});\n" + return [show_js, pattern_js] else - return " selectedValues.push('#{line}');\n" + return [" selectedValues.push('#{line}');\n", ""] end end @@ -363,6 +399,70 @@ def output_select_html(key, value, script_content, submit_content, app_name, dir html + "\n" + output_help(key, value) end + # Output a module_load widget: a \n" + html += "\n" + html += "\n" + @table_index += 1 + html + output_help(key, value) + end + + # JavaScript to asynchronously populate a module_load select via /_module_avail. + def output_module_load_js(key, value) + mod = value['module'].to_s + defv = value['value'].to_s + sn = @script_name.to_s + <<~JS + (function() { + var sel = document.getElementById(#{key.to_json}); + if (!sel) return; + var urlParams = new URLSearchParams(window.location.search); + var cluster = urlParams.get('_cluster_name') || ''; + fetch(#{sn.to_json} + '/_module_avail?module=' + encodeURIComponent(#{mod.to_json}) + '&cluster=' + encodeURIComponent(cluster)) + .then(function(r) { return r.json(); }) + .then(function(modules) { + sel.innerHTML = ''; + if (!modules.length) { + var opt = document.createElement('option'); + opt.value = ''; opt.dataset.value = ''; opt.textContent = 'No modules found'; + sel.appendChild(opt); return; + } + var defaultVal = #{defv.to_json}; + modules.forEach(function(m) { + var opt = document.createElement('option'); + opt.value = m; opt.dataset.value = m; opt.textContent = m; + if (defaultVal && m === defaultVal) opt.selected = true; + sel.appendChild(opt); + }); + if (sel.selectedIndex === -1) sel.selectedIndex = 0; + sel.dispatchEvent(new Event('change')); + }) + .catch(function() { + sel.innerHTML = ''; + }); + })(); + JS + end + # Output a multi-select widget. def output_multi_select_html(key, value, script_content, submit_content, app_name, dir_name) return "" if value['options'].nil? @@ -524,6 +624,102 @@ def output_checkbox_js(key, value) return !value['required'].is_a?(Array) && value['required'].to_s == "true" ? " ocForm.validateCheckboxForSubmit('#{key}');" : "" end + # Output a two_module_widget: a single Loading\xe2\x80\xa6\n" + html += "\n" + @table_index += 1 + html + output_help(key, value) + end + + # JavaScript to initialise a two_module_widget: watches a driver widget and re-fetches + # the module version list whenever the driver's selected value changes prefix group. + def output_two_module_widget_js(key, value) + driver = value['driver'].to_s + modules = value['modules'] || [] + sn = @script_name.to_s + + mod_map_js = modules.map { |m| + "{prefix: #{m['prefix'].to_s.to_json}, module: #{m['module'].to_s.to_json}}" + }.join(", ") + + <<~JS + (function() { + var sel = document.getElementById(#{key.to_json}); + var driver = document.getElementById(#{driver.to_json}); + if (!sel) return; + var modMap = [#{mod_map_js}]; + var sn = #{sn.to_json}; + var lastModule = null; + + function moduleForValue(val) { + for (var i = 0; i < modMap.length; i++) { + if (String(val).startsWith(modMap[i].prefix)) return modMap[i].module; + } + return modMap.length > 0 ? modMap[modMap.length - 1].module : ''; + } + + function loadModules(moduleName) { + if (!moduleName || moduleName === lastModule) return; + lastModule = moduleName; + var urlParams = new URLSearchParams(window.location.search); + var cluster = urlParams.get('_cluster_name') || ''; + fetch(sn + '/_module_avail?module=' + encodeURIComponent(moduleName) + '&cluster=' + encodeURIComponent(cluster)) + .then(function(r) { return r.json(); }) + .then(function(mods) { + sel.innerHTML = ''; + if (!mods.length) { + var opt = document.createElement('option'); + opt.value = ''; opt.dataset.value = ''; opt.textContent = 'No modules found'; + sel.appendChild(opt); return; + } + mods.forEach(function(m) { + var opt = document.createElement('option'); + opt.value = m; opt.dataset.value = m; opt.textContent = m; + sel.appendChild(opt); + }); + if (sel.selectedIndex === -1) sel.selectedIndex = 0; + sel.dispatchEvent(new Event('change')); + }) + .catch(function() { + sel.innerHTML = ''; + }); + } + + function updateFromDriver() { + if (!driver) return; + var idx = driver.selectedIndex; + var driverVal = (idx >= 0 && driver.options[idx] && driver.options[idx].dataset.value) + ? driver.options[idx].dataset.value + : (driver.value || ''); + loadModules(moduleForValue(driverVal)); + } + + updateFromDriver(); + if (driver) driver.addEventListener('change', updateFromDriver); + })(); + JS + end + # Output a path widget. def output_path_html(key, value, script_content, submit_content, app_name, dir_name) favorites = value['favorites'] ? value['favorites'].select { |path| File.exist?(path) } : [] @@ -673,6 +869,7 @@ def get_oc_set_attrs(options, form) end form.each do |k, v| + next unless v.is_a?(Hash) if key =~ /^set-#{attr}-#{k}$/ elements.push({"attr" => attr, "key" => k, "value" => value}) elsif ["number", "text", "email"].include?(v["widget"]) && key =~ /^set-#{attr}-#{k}_\d+$/ @@ -701,6 +898,7 @@ def get_oc_disable_attrs(options, form) next if option.is_a?(Hash) # Skip if the option is a Hash form.each do |k, v| + next unless v.is_a?(Hash) if option =~ /^disable-#{k}$/ disable_elements.push({"key" => k}) elsif option =~ /^enable-#{k}$/ @@ -738,6 +936,7 @@ def get_oc_disable_attrs(options, form) # For radio or checkbox widgets, the size is determined by the number of options. # For other widgets, it checks for a 'size' attribute. def get_target_size(target_key, form) + return "null" unless form[target_key].is_a?(Hash) widget = form[target_key]["widget"] if ["radio", "checkbox"].include?(widget) @@ -981,14 +1180,14 @@ def output_exec_dw_js(key, options, form) def output_body(body, header, app_name, dir_name) return "" unless body&.key?("form") - @js ||= { "init_dw" => "", "exec_dw" => "", "script" => "", "once" => "", "submit" => "" } - form = body["form"].merge({OC_SCRIPT_CONTENT => {"widget" => "textarea"}}) + @js ||= { "init_dw" => "", "exec_dw" => "", "script" => "", "once" => "", "submit" => "", "script_patterns" => "" } + form = (body["form"] || {}).merge({OC_SCRIPT_CONTENT => {"widget" => "textarea"}}) obj = form.merge(header) script_content = body["script"].is_a?(Hash) ? body.dig("script", "content") : body["script"] submit_content = body["submit"].is_a?(Hash) ? body.dig("submit", "content") : body["submit"] html = "" - form.each_with_index do |(key, value), index| + form.each do |key, value| next if key == OC_SCRIPT_CONTENT indent = add_indent_style(value) html += "
    \n" @@ -1014,6 +1213,12 @@ def output_body(body, header, app_name, dir_name) html += output_checkbox_html(key, value, script_content, submit_content, app_name, dir_name) when 'path' html += output_path_html(key, value, script_content, submit_content, app_name, dir_name) + when 'module_load' + @js["once"] += output_module_load_js(key, value) + html += output_module_load_html(key, value, script_content, submit_content, app_name, dir_name) + when 'two_module_widget' + @js["once"] += output_two_module_widget_js(key, value) + html += output_two_module_widget_html(key, value, script_content, submit_content, app_name, dir_name) end html += "
    \n" @@ -1022,13 +1227,16 @@ def output_body(body, header, app_name, dir_name) script_content = body["script"].is_a?(Hash) ? body.dig("script", "content") : body["script"] if !script_content.nil? script_content.split("\n").each do |line| - @js["script"] += output_script_js(obj, line, app_name, dir_name) + show_js, pat_js = output_script_js(obj, line, app_name, dir_name) + @js["script"] += show_js + @js["script_patterns"] += pat_js end end if !submit_content.nil? submit_content.split("\n").each do |line| - @js["submit"] += output_script_js(obj, line, app_name, dir_name) + show_js, _pat_js = output_script_js(obj, line, app_name, dir_name) + @js["submit"] += show_js end end @@ -1039,14 +1247,14 @@ def output_body(body, header, app_name, dir_name) def output_header(body, header, app_name="A", dir_name="B") return "" if header.nil? || header.empty? - @js = {"init_dw" => "", "exec_dw" => "", "script" => "", "once" => "", "submit" => ""} + @js = {"init_dw" => "", "exec_dw" => "", "script" => "", "once" => "", "submit" => "", "script_patterns" => ""} script_content = body["script"].is_a?(Hash) ? body.dig("script", "content") : body["script"] submit_content = body["submit"].is_a?(Hash) ? body.dig("submit", "content") : body["submit"] html = "" header = header.merge({OC_SCRIPT_CONTENT => {"widget" => "textarea"}}) - obj = header.merge(body["form"]) - header.each_with_index do |(key, value), index| + obj = header.merge(body["form"] || {}) + header.each do |key, value| next if key == OC_SCRIPT_CONTENT indent = add_indent_style(value) html += "
    \n" diff --git a/lib/history.rb b/lib/history.rb index 3bf40209..d94a02fd 100644 --- a/lib/history.rb +++ b/lib/history.rb @@ -14,7 +14,6 @@ def output_related_apps_icon(job_app_path, apps) else is_bi_or_fa_icon, icon_path = get_icon_path(job_app_path, icon) - # Generate icon HTML based on whether it's a Bootstrap/Font Awesome icon or an image icon_html = if is_bi_or_fa_icon "" else @@ -22,7 +21,6 @@ def output_related_apps_icon(job_app_path, apps) end end - # Return the full HTML string for the link "\n #{icon_html}\n\n" end end @@ -32,6 +30,11 @@ def output_action_modal(action) id = "_history#{action}" form_action = history_path_with_query + abort_buttons = action == "CancelJob" ? \ + "\n " \ + "\n " \ + : "" + <<~HTML