diff --git a/src/modules/fastkmers.nf b/src/modules/fastkmers.nf
index 5a77b0a548d53361ad20005a07cf3d04fed6dfa0..4384f0b4ef6b25f9a0f805a39162863e383e6eb8 100644
--- a/src/modules/fastkmers.nf
+++ b/src/modules/fastkmers.nf
@@ -4,6 +4,7 @@
 process FASTKMERS {
     tag "$meta.id"
     label 'process_single'
+    publishDir "results/${meta.specie}/${meta.sex}/${meta.read}/", mode: 'copy'
 
     container "lbmc/fastkmers:025efdf"
 
diff --git a/src/nextflow.config b/src/nextflow.config
index 915cac7d46325746f26aa0d062020b9492b14515..54b4f32ef72ca89aea7e874c8dbab8e87b7146a5 100644
--- a/src/nextflow.config
+++ b/src/nextflow.config
@@ -1,39 +1,49 @@
-psmn {
-  charliecloud.enabled = true
-  charliecloud.cacheDir = "/Xnfs/abc/charliecloud"
-  charliecloud.readOnlyInputs = true
-  charliecloud.runOptions = "--bind /scratch:/scratch --bind /Xnfs:/Xnfs --bind /home:/home"
+nextflowVersion = '>=20'
 
-  process{
-    errorStrategy = { sleep(Math.pow(2, task.attempt) * 200 as long); return 'retry' }
-    maxRetries = 3
-    executor = "slurm"
-    queue = "Lake"
-    withLabel: process_single {
-      cpus = 1
-      memory = "128GB"
-      time = "24h"
-    }
-    withLabel: big_mem_multi_cpus {
-      cpus = 32
-      memory = "192GB"
-      time = "24h"
-    }
-    withLabel: small_mem_mono_cpus {
-      cpus = 1
-      memory = "16GB"
-      time = "24h"
-    }
-    withLabel: small_mem_multi_cpus {
-      cpus = 32
-      memory = "16GB"
-      time = "24h"
-    }
-  }
+manifest {
+    homePage = 'https://gitbio.ens-lyon.fr/LBMC/Delattre/kmer-diff'
+    description = 'pipeline to quantify kmers'
+    mainScript = 'main.nf'
+    version = '0.0.1'
+}
+
+report {
+  enabled = true
+  file = "$baseDir/../results/report.html"
+}
 
-  params {
-    max_memory = 512.GB
-    max_cpus = 32
-    max_time = 24.h
+profiles {
+  psmn {
+    charliecloud.enabled = true
+    charliecloud.cacheDir = "/Xnfs/abc/charliecloud"
+    charliecloud.readOnlyInputs = true
+    charliecloud.runOptions = "--bind /scratch:/scratch --bind /Xnfs:/Xnfs --bind /home:/home"
+
+    process{
+      errorStrategy = { sleep(Math.pow(2, task.attempt) * 200 as long); return 'retry' }
+      maxRetries = 3
+      executor = "slurm"
+      queue = "Lake"
+      withLabel: process_single {
+        cpus = 1
+        memory = "128GB"
+        time = "24h"
+      }
+      withLabel: big_mem_multi_cpus {
+        cpus = 32
+        memory = "192GB"
+        time = "24h"
+      }
+      withLabel: small_mem_mono_cpus {
+        cpus = 1
+        memory = "16GB"
+        time = "24h"
+      }
+      withLabel: small_mem_multi_cpus {
+        cpus = 32
+        memory = "16GB"
+        time = "24h"
+      }
+    }
   }
 }