text: user8629: I would like to use the --default-resources parameter for profiles which is available in later versions of snakemake.
  To install snakemake, I created a new conda environment:
  conda create -n snakemake -c conda-forge -c bioconda snakemake
  The currently installed version is listed as 5.14:
  $ conda activate snakemake
  (snakemake)$ conda list | grep snakemake
  # packages in environment at /home/uvi/be/hde/.conda/envs/snakemake:
  snakemake                 5.14.0                        0    bioconda
  snakemake-minimal         5.14.0                     py_1    bioconda
  
  However, command line tool says it is on version 5.1.4:
  (snakemake)$ snakemake --version
  5.1.4
  
  This version does not know the new parameter --default-resources yet. So it gives an error when using it
  
  snakemake: error: unrecognized arguments: --default-resources partition = "thin-shared"
  
  I already checked that I'm running the executable from inside the environment, rather than a different, external one:
  (snakemake)$ which snakemake
  ~/.conda/envs/snakemake/bin/snakemake
  (snakemake)$ $(which snakemake) --version
  5.1.4
  
  
  user77: Python (whether installed with conda or not) will prefer packages installed in your home directory unless you tell it not to. This is a little known secret about using a virtualenv, actually, since internally those tell python to ignore everything in your home directory. Within conda, there's long been a debate about whether python (and also R) should continue looking for packages in the normal places or only within a conda environment. Since it would likely break many people's workflows, it's been decided to allow the normal language features of looking for packages not just within conda envs but also in the normal system and user locations. For python in particular you can disable this as follows:
  PYTHONNOUSERSITE=True snakemake ...
  
  Then only the packages installed within your conda environment will be used.
  
original_text: 8629: <p>I would like to use the <code>--default-resources</code> parameter for profiles which is available in later versions of <a href="https://snakemake.readthedocs.io/en/stable/index.html" rel="nofollow noreferrer">snakemake</a>.</p>
  
  <p>To install snakemake, I created a new conda environment:</p>
  
  <p><code>conda create -n snakemake -c conda-forge -c bioconda snakemake</code></p>
  
  <p>The currently installed version is listed as 5.14:</p>
  
  <pre><code>$ conda activate snakemake
  (snakemake)$ conda list | grep snakemake
  # packages in environment at /home/uvi/be/hde/.conda/envs/snakemake:
  snakemake                 5.14.0                        0    bioconda
  snakemake-minimal         5.14.0                     py_1    bioconda
  </code></pre>
  
  <p>However, command line tool says it is on version 5.1.4:</p>
  
  <pre><code>(snakemake)$ snakemake --version
  5.1.4
  </code></pre>
  
  <p>This version does not know the new parameter <code>--default-resources</code> yet. So it gives an error when using it</p>
  
  <blockquote>
    <p>snakemake: error: unrecognized arguments: --default-resources partition = "thin-shared"</p>
  </blockquote>
  
  <p>I already checked that I'm running the executable from inside the environment, rather than a different, external one:</p>
  
  <pre><code>(snakemake)<span class="math-container">$ which snakemake
  ~/.conda/envs/snakemake/bin/snakemake
  (snakemake)$</span> $(which snakemake) --version
  5.1.4
  </code></pre>
   77: <p>Python (whether installed with conda or not) will prefer packages installed in your home directory unless you tell it not to. This is a little known secret about using a virtualenv, actually, since internally those tell python to ignore everything in your home directory. Within conda, there's long been a debate about whether python (and also R) should continue looking for packages in the normal places or only within a conda environment. Since it would likely break many people's workflows, it's been decided to allow the normal language features of looking for packages not just within conda envs but also in the normal system and user locations. For python in particular you can disable this as follows:</p>
  
  <pre><code>PYTHONNOUSERSITE=True snakemake ...
  </code></pre>
  
  <p>Then only the packages installed within your conda environment will be used.</p>
  