diff --git a/CLIP/iCLIP.snakefile b/CLIP/iCLIP.snakefile
index 3850f3ea54a032e0bea13dff4428e40484ff4a72..dc5e72ef8b5e5921c8937c8ce9271f509cb2e04c 100644
--- a/CLIP/iCLIP.snakefile
+++ b/CLIP/iCLIP.snakefile
@@ -198,6 +198,7 @@ rule demultiplex:
     benchmark:
         OPJ(log_dir, "demultiplex_benchmark.txt")
     shell:
+        # qaf_demux should be available here: https://gitlab.pasteur.fr/bli/qaf_demux
         """
         qaf_demux \\
             -i {input.fq_in} -g -o {params.demux_dir} \\
@@ -703,6 +704,7 @@ rule make_normalized_bigwig:
     bam2bigwig.sh: bedGraphToBigWig failed
     """
             try:
+                # bam2bigwig.sh should be installed with libhts
                 shell("""
                     bam2bigwig.sh {input.bam} {params.genome_binned} \\
                         {wildcards.lib}_{wildcards.rep} {wildcards.orientation} %s \\
diff --git a/CLIP/requirements.txt b/CLIP/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f128eabd3d63dd742abcaba55ce3220e46bdaa3e
--- /dev/null
+++ b/CLIP/requirements.txt
@@ -0,0 +1,5 @@
+matplotlib
+pandas
+libhts @ git+https://bioinfo_utils:DP-sqNot8AdsMek_KJiC@gitlab.pasteur.fr/bli/libhts.git
+libworkflows @ git+https://bioinfo_utils:tfuTQsSZWMtC5xXJNFJh@gitlab.pasteur.fr/bli/libworkflows.git
+snakemake_wrappers @ git+https://bioinfo_utils:Ues9rP1tyfzs1zs5BzpY@gitlab.pasteur.fr/bli/snakemake_wrappers.git
diff --git a/Degradome-seq/requirements.txt b/Degradome-seq/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..336115a66c58dff38f5f28a912ec9fc7755db558
--- /dev/null
+++ b/Degradome-seq/requirements.txt
@@ -0,0 +1,4 @@
+numpy
+pandas
+snakemake_wrappers @ git+https://bioinfo_utils:Ues9rP1tyfzs1zs5BzpY@gitlab.pasteur.fr/bli/snakemake_wrappers.git
+libworkflows @ git+https://bioinfo_utils:tfuTQsSZWMtC5xXJNFJh@gitlab.pasteur.fr/bli/libworkflows.git
diff --git a/PRO-seq/requirements.txt b/PRO-seq/requirements.txt
index f90c93862c27814459f7b342f561a8cfd3accc3f..958e2dfd4a6a436af4460fa4ce51d28489cb4688 100644
--- a/PRO-seq/requirements.txt
+++ b/PRO-seq/requirements.txt
@@ -9,3 +9,6 @@ rpy2
 libdeseq @ git+https://bioinfo_utils:uqiFbzWyBtzxYn7br82P@gitlab.pasteur.fr/bli/libdeseq.git
 libhts @ git+https://bioinfo_utils:DP-sqNot8AdsMek_KJiC@gitlab.pasteur.fr/bli/libhts.git
 libworkflows @ git+https://bioinfo_utils:tfuTQsSZWMtC5xXJNFJh@gitlab.pasteur.fr/bli/libworkflows.git
+snakemake_wrappers @ git+https://bioinfo_utils:Ues9rP1tyfzs1zs5BzpY@gitlab.pasteur.fr/bli/snakemake_wrappers.git
+# extra dependencies for some rules
+deeptools
diff --git a/RNA_Seq_Cecere/requirements.txt b/RNA_Seq_Cecere/requirements.txt
index 2296ba11461c45af33bb0624f5f447f0962ef2de..c63dab2220e233d14c414be4b26b56a53949a872 100644
--- a/RNA_Seq_Cecere/requirements.txt
+++ b/RNA_Seq_Cecere/requirements.txt
@@ -10,3 +10,4 @@ rpy2
 libdeseq @ git+https://bioinfo_utils:uqiFbzWyBtzxYn7br82P@gitlab.pasteur.fr/bli/libdeseq.git
 libhts @ git+https://bioinfo_utils:DP-sqNot8AdsMek_KJiC@gitlab.pasteur.fr/bli/libhts.git
 libworkflows @ git+https://bioinfo_utils:tfuTQsSZWMtC5xXJNFJh@gitlab.pasteur.fr/bli/libworkflows.git
+snakemake_wrappers @ git+https://bioinfo_utils:Ues9rP1tyfzs1zs5BzpY@gitlab.pasteur.fr/bli/snakemake_wrappers.git
diff --git a/Ribo-seq/Ribo-seq.snakefile b/Ribo-seq/Ribo-seq.snakefile
index 479db0451c1d993732aadb9bed9956c2b68ca019..4b0b89c6f4f00a481d9b5851a262646446ddb2d6 100644
--- a/Ribo-seq/Ribo-seq.snakefile
+++ b/Ribo-seq/Ribo-seq.snakefile
@@ -63,6 +63,9 @@ from pickle import load
 from fileinput import input as finput
 from sys import stderr
 from subprocess import Popen, PIPE, CalledProcessError
+# Useful data structures
+from collections import OrderedDict as od
+from collections import defaultdict, Counter
 
 # Useful for functional style
 from itertools import chain, combinations, product, repeat, starmap
@@ -70,13 +73,10 @@ from functools import reduce
 from operator import or_ as union
 from cytoolz import concat, merge_with, take_nth
 
+
 def concat_lists(lists):
     return list(concat(lists))
 
-# Useful data structures
-from collections import OrderedDict as od
-from collections import defaultdict, Counter
-
 
 import warnings
 
diff --git a/Ribo-seq/requirements.txt b/Ribo-seq/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..9ad752bd861d3cabc5ce8119709bfb95138a408f
--- /dev/null
+++ b/Ribo-seq/requirements.txt
@@ -0,0 +1,17 @@
+cytoolz
+mappy
+pysam
+pyBigWig
+scipy
+scikit-learn
+matplotlib
+pandas
+seaborn
+libsmallrna @ git+https://bioinfo_utils:FjgTxcUGPsGVQ-yZZVyS@gitlab.pasteur.fr/bli/libsmallrna.git
+libdeseq @ git+https://bioinfo_utils:uqiFbzWyBtzxYn7br82P@gitlab.pasteur.fr/bli/libdeseq.git
+libhts @ git+https://bioinfo_utils:DP-sqNot8AdsMek_KJiC@gitlab.pasteur.fr/bli/libhts.git
+libworkflows @ git+https://bioinfo_utils:tfuTQsSZWMtC5xXJNFJh@gitlab.pasteur.fr/bli/libworkflows.git
+snakemake_wrappers @ git+https://bioinfo_utils:Ues9rP1tyfzs1zs5BzpY@gitlab.pasteur.fr/bli/snakemake_wrappers.git
+rpy2
+# extra dependencies for some rules
+deeptools
diff --git a/sRNA-seq b/sRNA-seq
new file mode 120000
index 0000000000000000000000000000000000000000..51a3c670d8f842791884ca9882944d455a0e9f23
--- /dev/null
+++ b/sRNA-seq
@@ -0,0 +1 @@
+small_RNA-seq
\ No newline at end of file
diff --git a/small_RNA-seq/requirements.txt b/small_RNA-seq/requirements.txt
index 4550d9821090bea7c640498c4e169bdb67be7a5e..7d1c2447c473a99eebb0559a62674f2c87d6e39c 100644
--- a/small_RNA-seq/requirements.txt
+++ b/small_RNA-seq/requirements.txt
@@ -1,17 +1,23 @@
-Cython
-pysam
-pybedtools @ git+https://github.com/blaiseli/pybedtools.git@fix_missing_headers --global-option="cythonize"
-pandas
+# dependencies of the snakefile itself
 cytoolz
-libsmallrna @ git+https://bioinfo_utils:FjgTxcUGPsGVQ-yZZVyS@gitlab.pasteur.fr/bli/libsmallrna.git
-paraccumulators @ git+https://bioinfo_utils:EfTj-nvWDN84ZF_UzWPx@gitlab.pasteur.fr/bli/paraccumulators.git
+snakemake
 mappy
 pyBigWig
 scipy
 scikit-learn
 matplotlib
+pandas
 seaborn
-deeptools
+libsmallrna @ git+https://bioinfo_utils:FjgTxcUGPsGVQ-yZZVyS@gitlab.pasteur.fr/bli/libsmallrna.git
 libdeseq @ git+https://bioinfo_utils:uqiFbzWyBtzxYn7br82P@gitlab.pasteur.fr/bli/libdeseq.git
 libhts @ git+https://bioinfo_utils:DP-sqNot8AdsMek_KJiC@gitlab.pasteur.fr/bli/libhts.git
 libworkflows @ git+https://bioinfo_utils:tfuTQsSZWMtC5xXJNFJh@gitlab.pasteur.fr/bli/libworkflows.git
+snakemake_wrappers @ git+https://bioinfo_utils:Ues9rP1tyfzs1zs5BzpY@gitlab.pasteur.fr/bli/snakemake_wrappers.git
+rpy2
+
+# extra dependencies for the sRNA-seq annotation script small_RNA_seq_annotate.py
+pybedtools @ git+https://github.com/blaiseli/pybedtools.git@fix_missing_headers --global-option="cythonize"
+pysam
+paraccumulators @ git+https://bioinfo_utils:EfTj-nvWDN84ZF_UzWPx@gitlab.pasteur.fr/bli/paraccumulators.git
+# extra dependencies for some rules
+deeptools
diff --git a/small_RNA-seq/small_RNA-seq.snakefile b/small_RNA-seq/small_RNA-seq.snakefile
index 547017dbc99df73717ecd2395b7627fef0d36f61..2546f71d4a11a5568fe266236e303119fc90b9cc 100644
--- a/small_RNA-seq/small_RNA-seq.snakefile
+++ b/small_RNA-seq/small_RNA-seq.snakefile
@@ -2723,6 +2723,7 @@ your deepTools settings and check your input files.
 bam2bigwig.sh: bedGraphToBigWig failed
 """
             try:
+                # bam2bigwig.sh is installed with libhts
                 shell("""
                     niceload --noswap bam2bigwig.sh {input.bam} {params.genome_binned} \\
                         {wildcards.lib}_{wildcards.rep} {wildcards.orientation} F \\