<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//TaxonX//DTD Taxonomic Treatment Publishing DTD v0 20100105//EN" "../../nlm/tax-treatment-NS0.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tp="http://www.plazi.org/taxpub" article-type="research-article">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">17</journal-id>
      <journal-id journal-id-type="index">urn:lsid:arphahub.com:pub:8E638694-B4E0-570A-856A-746FF325BF6B</journal-id>
      <journal-title-group>
        <journal-title xml:lang="en">Research Ideas and Outcomes</journal-title>
        <abbrev-journal-title xml:lang="en">RIO</abbrev-journal-title>
      </journal-title-group>
      <issn pub-type="epub">2367-7163</issn>
      <publisher>
        <publisher-name>Pensoft Publishers</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3897/rio.3.e12095</article-id>
      <article-id pub-id-type="publisher-id">12095</article-id>
      <article-id pub-id-type="manuscript">6797</article-id>
      <article-categories>
        <subj-group subj-group-type="heading">
          <subject>Software Management Plan</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Gentoo Linux for Neuroscience - a replicable, flexible, scalable, rolling-release environment that provides direct access to development software</article-title>
      </title-group>
      <contrib-group content-type="authors">
        <contrib contrib-type="author" corresp="yes">
          <name name-style="western">
            <surname>Ioanas</surname>
            <given-names>Horea-Ioan</given-names>
          </name>
          <email xlink:type="simple">ioanas@biomed.ee.ethz.ch</email>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Saab</surname>
            <given-names>Bechara John</given-names>
          </name>
          <xref ref-type="aff" rid="A2">2</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Rudin</surname>
            <given-names>Markus</given-names>
          </name>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
      </contrib-group>
      <aff id="A1">
        <label>1</label>
        <addr-line content-type="verbatim">Institute for Biomedical Engineering, ETH and University of Zürich, Zurich, Switzerland</addr-line>
        <institution>Institute for Biomedical Engineering, ETH and University of Zürich</institution>
        <addr-line content-type="city">Zurich</addr-line>
        <country>Switzerland</country>
      </aff>
      <aff id="A2">
        <label>2</label>
        <addr-line content-type="verbatim">Preclinical Laboratory for Translational Research into Affective Disorders, DPPP, Psychiatric Hospital, University of Zurich, Zurich, Switzerland</addr-line>
        <institution>Preclinical Laboratory for Translational Research into Affective Disorders, DPPP, Psychiatric Hospital, University of Zurich</institution>
        <addr-line content-type="city">Zurich</addr-line>
        <country>Switzerland</country>
      </aff>
      <author-notes>
        <fn fn-type="edited-by">
          <p>Academic editor: </p>
        </fn>
      </author-notes>
      <pub-date pub-type="collection">
        <year>2017</year>
      </pub-date>
      <pub-date pub-type="epub">
        <day>07</day>
        <month>02</month>
        <year>2017</year>
      </pub-date>
      <volume>3</volume>
      <elocation-id>e12095</elocation-id>
      <uri content-type="arpha" xlink:href="http://openbiodiv.net/B34A0788-C635-50F3-B7BB-7C9781235B48">B34A0788-C635-50F3-B7BB-7C9781235B48</uri>
      <uri content-type="zenodo_dep_id" xlink:href="https://zenodo.org/record/269626">269626</uri>
      <history>
        <date date-type="received">
          <day>03</day>
          <month>02</month>
          <year>2017</year>
        </date>
      </history>
      <permissions>
        <copyright-statement/>
        <license license-type="creative-commons-attribution" xlink:href="http://creativecommons.org/licenses/by/4.0" xlink:type="simple">
          <license-p>This is an open access article distributed under the terms of the Creative Commons Attribution License 4.0 (CC-BY), which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.</license-p>
        </license>
      </permissions>
      <abstract>
        <label>Abstract</label>
        <sec sec-type="background">
          <title>Background</title>
          <p>Gentoo is a GNU/Linux metadistribution designed to maximize and simplify user control of the software environment. All determinants of a Gentoo environment are recorded in a small number of plain-text configuration files, from which the software make-up of the system can be reconstructed entirely. As such, Gentoo constitutes a replicable and transparent software infrastructure - as mandated by research valuing reproducibility. Of equal scientific interest is the flexibility of Gentoo's package management. All software is distributed in a rolling-release fashion, giving the user full control over which versions (including live versions and branches/tags from version control) of which programs to install, and with which compilation options. All of the above is accompanied by automatic, version-aware dependency resolution, which also tracks static library linking and prompts for rebuilds as necessary.</p>
          <p>We believe Gentoo is excellently suited to address many of the challenges in neuroscience software management; including: system replicability, system documentation, data analysis reproducibility, fine-grained dependency management, easy control over compilation options, and seamless access to cutting-edge software releases.</p>
        </sec>
        <sec sec-type="new information">
          <title>New information</title>
          <p>We have made a substantial set of neuroimaging and data analysis packages - including their entire dependency stacks - available for any system using Gentoo's Package Management Standard. Neuroscientific software now usable under Gentoo includes but is not limited to:</p>
          <list list-type="bullet">
            <list-item>
              <p>Dipy (<xref ref-type="bibr" rid="B3545732">Garyfallidis et al. 2014</xref>)</p>
            </list-item>
            <list-item>
              <p>FSL (<xref ref-type="bibr" rid="B3545746">Jenkinson et al. 2012</xref>)</p>
            </list-item>
            <list-item>
              <p>Nipype (<xref ref-type="bibr" rid="B3564042">Gorgolewski et al. 2016</xref>)</p>
            </list-item>
            <list-item>
              <p>Nilearn (<xref ref-type="bibr" rid="B3545793">Abraham et al. 2014</xref>)</p>
            </list-item>
            <list-item>
              <p>PsychoPy (<xref ref-type="bibr" rid="B3545808">Peirce 2008</xref>)</p>
            </list-item>
          </list>
          <p>Herein we describe the implementation and current capabilities of this environment, as well as its ability to accelerate and improve research.</p>
        </sec>
      </abstract>
      <kwd-group>
        <label>Keywords</label>
        <kwd>gentoo</kwd>
        <kwd>portage</kwd>
        <kwd>linux</kwd>
        <kwd>software management</kwd>
        <kwd>repository</kwd>
        <kwd>dependency management</kwd>
        <kwd>dependency resolution</kwd>
        <kwd>neuroscience</kwd>
        <kwd>flexible</kwd>
        <kwd>scalable</kwd>
        <kwd>rolling-release</kwd>
        <kwd>live software</kwd>
        <kwd>versioning</kwd>
        <kwd>source-based</kwd>
        <kwd>gnu</kwd>
        <kwd>gnu/linux</kwd>
      </kwd-group>
      <counts>
        <fig-count count="1"/>
        <table-count count="1"/>
        <ref-count count="16"/>
      </counts>
    </article-meta>
  </front>
  <body>
    <sec sec-type="Introduction">
      <title>Introduction</title>
      <sec sec-type="Neuroscientific Software Management">
        <title>Neuroscientific Software Management</title>
        <p>Neuroscientific data analysis commonly relies on a multitude of software packages, which many scientists still resort to managing manually. Across the scientific community, manual software management is a major cause of effort duplication, resource waste (<xref ref-type="bibr" rid="B3545818">Hanke and Halchenko 2011</xref>), and lack of portability and reproducibility of data analysis. NeuroDebian (<xref ref-type="bibr" rid="B3545828">Halchenko and Hanke 2012</xref>) was until recently the only notable framework for automatic software managemnet under Linux. It has met with considerable success, thus providing an incentive to make even more feature-rich scientific software management systems available to even more users.</p>
      </sec>
      <sec sec-type="Gentoo">
        <title>Gentoo</title>
        <p>The Gentoo Linux metadistribution*<xref ref-type="fn" rid="FN3545840">1</xref> is chiefly characterized by its FreeBSD-ports-style package manager, Portage, which conforms to the feature-rich Package Management Specification (<xref ref-type="bibr" rid="B3545841">Bennett et al. 2015</xref>). As such, Portage packages can be used by at least two other package managers: <ext-link ext-link-type="uri" xlink:href="https://www.openhub.net/p/paludis">Paludis </ext-link>(Paludis Contributors 2016) and <ext-link ext-link-type="uri" xlink:href="https://github.com/pkgcore/pkgcore">pkgcore </ext-link>(pkgcore Contributors 2016). These "packages" - called ebuilds - are short bash-like syntax text files, and contain metadata such as source code location, a brief description, dependencies, and - in case the package structure cannot be automatically understood - additional instructions for installation. This package management style makes Portage repositories extremely lightweight, and removes reposited binaries as an obligatory intermediary between users and developers. Bugs or enhancements can thus be resolved directly between the user and the source, with users able to patch local sources if they so wish, and “live” packages enabling seamless installation of the very newest upstream bug fixes or enhancements. Portage thus eases the workflow of user-developers (which increasingly many researchers are), and encourages a more active involvement of users in the testing and development process. As a consequence, using Gentoo for neuroscience eases and improves not only the management and distribution of software, but also its development.</p>
        <p>In addition to a package-version-aware dependency graph, Portage provides USE flags - parameters which can be used to specify how packages should be built. This fine-grained control is useful for reducing disk space footprint and memory usage, but can also - among many other things - allow administrators to select whether a package is built with static libraries or not. As package version differences and library linking are a leading factor impeding data analysis reproducibility (<xref ref-type="bibr" rid="B3545914">Glatard et al. 2015</xref>), Portage is excellently suited to support not only software environment replicability, but also data analysis reproducibility efforts. Conversely, when optimization has a higher priority than exact result reproducibility (e.g. when developing new embedded systems) the ability to fine-tune compile-time options can be used to create very heterogeneous and specialized systems on a multitude of architectures.</p>
        <p>Furthermore, the Gentoo Prefix project allows users of any GNU/Linux distribution - and even of some non-Linux operating systems - to set up a Portage software environment in userspace. This is especially relevant for researchers who use high-performance computing environments where they are not awarded administration rights (<xref ref-type="bibr" rid="B3546100">Amadio and Xu 2016</xref>). In many cases Gentoo Prefix may also be used as a more lightweight alternative to containers.</p>
      </sec>
    </sec>
    <sec sec-type="Approach">
      <title>Approach</title>
      <p>We tackle the advanced software management needs faced by neuroscience by leveraging the manifold capabilities of the Gentoo metadistribution and the Portage package manager. This task materializes chiefly in writing ebuilds for the most popular neuroscientifc packages and their dependencies, integrating these into the Gentoo ebuild repositing model, and testing the resulting environment in present research scenarios.</p>
      <p>Ebuilds are reposited in directory trees called <italic>repositories</italic>, which can be enabled by the addition of a simple text file defining a small number of parameters (such as name, location, and priority) to the package manager configuration directory. In addition to the main Gentoo repository, containing just under 20.000 packages, a number of other repositories enjoy official status, and their users can rely on support from the entire Gentoo community. Of these we distribute neuroscience ebuilds via the Gentoo Science overlay (<xref ref-type="bibr" rid="B3546110">Lecher et al. 2015</xref>), which now provides just under 1000 highly specialized scientific packages. Thus we ensure our ebuilds receive support from the broader Gentoo community, and attain a higher flexibility and responsiveness compared to the main Gentoo ebuild repository.</p>
    </sec>
    <sec sec-type="Results">
      <title>Results</title>
      <p>We have contributed and are maintaining ebuilds for about 40 neuroscientifically relevant software packages to the Gentoo Science overlay. This set encompasses highly specialized software, as well as a few more general scientific packages, and a number of dependencies not previously available for Gentoo. The ebuilds for dependencies not directly related to scientific applications are scheduled for migration to the main Gentoo repository.</p>
      <p>Our <italic>contributed ebuild set</italic> (Table <xref ref-type="table" rid="T3545851">1</xref>) incorporates the top-level packages of a full-fledged neuroscientific software environment, and is decisevly broader than what a neuroscientist would commonly require for one particular research project. We use this set to seed dependency graphs in Fig. <xref ref-type="fig" rid="F3545953">1</xref>. These graphs depic <italic>all</italic> of the software packages a Gentoo system would contain after the package manager is prompted to install the full <italic>contributed ebuild set</italic>. Compared to other GNU/Linux distributions, these graphs are notably small, showcasing Gentoo's capacity to create powerful, fully featured, but lightweight systems.</p>
      <p>Neuroscientific research and teaching was performed on Gentoo platforms using our ebuilds on at least 4 physical machines and over 100 virtual machines by at least 40 students and researchers at least at 4 academic institutions. The testing process demonstrated the usability of our software management solution, and illustrated areas which could most benefit from improvement, notably the ease of distribution for base Gentoo systems.</p>
    </sec>
    <sec sec-type="Conclusion">
      <title>Conclusion</title>
      <p>We have made a comprehensive set of neuroscientific software packages available for the wide family of Gentoo distributions and derivatives. Via Gentoo-prefix, these neuroscientific software packages are, in fact, also accessible to users of many other operating systems.</p>
      <p>Having demonstrated the feasibility of Gentoo for neuroscientific research we seek to further improve the system, by augmenting packaging with outstanding issues, and compiling a detailed overview of the easiest ways to obtain a base Gentoo distribution - tailored to popular research usage scenarios.</p>
    </sec>
  </body>
  <back>
    <ack>
      <title>Acknowledgements</title>
      <p>We thank the Gentoo community and developers, in particular Ted Rodgers, Andrew Savchenko, and Benda Xu. We thank the Gentoo Science Project members, in particular Justin Lercher and François Bissey. We thank the brainhack organizers and attendees, and the NeuroDebian and DataLad developer, Yaroslav Halchenko.</p>
    </ack>
    <ref-list>
      <title>References</title>
      <ref id="B3545793">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Abraham</surname>
              <given-names>Alexandre</given-names>
            </name>
            <name name-style="western">
              <surname>Pedregosa</surname>
              <given-names>Fabian</given-names>
            </name>
            <name name-style="western">
              <surname>Eickenberg</surname>
              <given-names>Michael</given-names>
            </name>
            <name name-style="western">
              <surname>Gervais</surname>
              <given-names>Philippe</given-names>
            </name>
            <name name-style="western">
              <surname>Mueller</surname>
              <given-names>Andreas</given-names>
            </name>
            <name name-style="western">
              <surname>Kossaifi</surname>
              <given-names>Jean</given-names>
            </name>
            <name name-style="western">
              <surname>Gramfort</surname>
              <given-names>Alexandre</given-names>
            </name>
            <name name-style="western">
              <surname>Thirion</surname>
              <given-names>Bertrand</given-names>
            </name>
            <name name-style="western">
              <surname>Varoquaux</surname>
              <given-names>Gaël</given-names>
            </name>
          </person-group>
          <year>2014</year>
          <article-title>Machine learning for neuroimaging with scikit-learn</article-title>
          <source>Frontiers in Neuroinformatics</source>
          <volume>8</volume>
          <uri>http://dx.doi.org/10.3389/fninf.2014.00014</uri>
          <pub-id pub-id-type="doi">10.3389/fninf.2014.00014</pub-id>
        </element-citation>
      </ref>
      <ref id="B3546100">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Amadio</surname>
              <given-names>G</given-names>
            </name>
            <name name-style="western">
              <surname>Xu</surname>
              <given-names>B</given-names>
            </name>
          </person-group>
          <year>2016</year>
          <article-title>Portage: Bringing Hackers' Wisdom to Science</article-title>
          <source>arXiv</source>
          <uri>https://arxiv.org/abs/1610.02742</uri>
        </element-citation>
      </ref>
      <ref id="B3545841">
        <element-citation publication-type="website">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Bennett</surname>
              <given-names>Stephen P.</given-names>
            </name>
            <name name-style="western">
              <surname>Faulhammer</surname>
              <given-names>Christian</given-names>
            </name>
            <name name-style="western">
              <surname>McCreesh</surname>
              <given-names>Ciaran</given-names>
            </name>
            <name name-style="western">
              <surname>Müller</surname>
              <given-names>Ulrich</given-names>
            </name>
          </person-group>
          <article-title>Package Manager Specification</article-title>
          <uri>https://web.archive.org/web/20151006123755/http://dev.gentoo.org/~ulm/pms/head/pms.html</uri>
          <date-in-citation content-type="access-date">2017-01-25T00:00:00+02:00</date-in-citation>
        </element-citation>
      </ref>
      <ref id="B3546006">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Christian</surname>
              <given-names>Horea</given-names>
            </name>
          </person-group>
          <year>2017</year>
          <article-title>DeGraVi -First Alpha Release</article-title>
          <source>Zenodo</source>
          <uri>https://zenodo.org/record/259741#.WIjI5uhicck</uri>
          <pub-id pub-id-type="doi">10.5281/zenodo.259741</pub-id>
        </element-citation>
      </ref>
      <ref id="B3545732">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Garyfallidis</surname>
              <given-names>Eleftherios</given-names>
            </name>
            <name name-style="western">
              <surname>Brett</surname>
              <given-names>Matthew</given-names>
            </name>
            <name name-style="western">
              <surname>Amirbekian</surname>
              <given-names>Bagrat</given-names>
            </name>
            <name name-style="western">
              <surname>Rokem</surname>
              <given-names>Ariel</given-names>
            </name>
            <name name-style="western">
              <surname>der Walt</surname>
              <given-names>Stefan van</given-names>
            </name>
            <name name-style="western">
              <surname>Descoteaux</surname>
              <given-names>Maxime</given-names>
            </name>
            <name name-style="western">
              <surname>Nimmo-Smith</surname>
              <given-names>Ian</given-names>
            </name>
            <name name-style="western">
              <surname>Contributors</surname>
              <given-names>Dipy</given-names>
            </name>
          </person-group>
          <year>2014</year>
          <article-title>Dipy, a library for the analysis of diffusion MRI data</article-title>
          <source>Frontiers in Neuroinformatics</source>
          <volume>8</volume>
          <uri>http://dx.doi.org/10.3389/fninf.2014.00008</uri>
          <pub-id pub-id-type="doi">10.3389/fninf.2014.00008</pub-id>
        </element-citation>
      </ref>
      <ref id="B3545914">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Glatard</surname>
              <given-names>Tristan</given-names>
            </name>
            <name name-style="western">
              <surname>Lewis</surname>
              <given-names>Lindsay B.</given-names>
            </name>
            <name name-style="western">
              <surname>da Silva</surname>
              <given-names>Rafael Ferreira</given-names>
            </name>
            <name name-style="western">
              <surname>Adalat</surname>
              <given-names>Reza</given-names>
            </name>
            <name name-style="western">
              <surname>Beck</surname>
              <given-names>Natacha</given-names>
            </name>
            <name name-style="western">
              <surname>Lepage</surname>
              <given-names>Claude</given-names>
            </name>
            <name name-style="western">
              <surname>Rioux</surname>
              <given-names>Pierre</given-names>
            </name>
            <name name-style="western">
              <surname>Rousseau</surname>
              <given-names>Marc-Etienne</given-names>
            </name>
            <name name-style="western">
              <surname>Sherif</surname>
              <given-names>Tarek</given-names>
            </name>
            <name name-style="western">
              <surname>Deelman</surname>
              <given-names>Ewa</given-names>
            </name>
            <name name-style="western">
              <surname>Khalili-Mahani</surname>
              <given-names>Najmeh</given-names>
            </name>
            <name name-style="western">
              <surname>Evans</surname>
              <given-names>Alan C.</given-names>
            </name>
          </person-group>
          <year>2015</year>
          <article-title>Reproducibility of neuroimaging analyses across operating systems</article-title>
          <source>Frontiers in Neuroinformatics</source>
          <volume>9</volume>
          <uri>http://dx.doi.org/10.3389/fninf.2015.00012</uri>
          <pub-id pub-id-type="doi">10.3389/fninf.2015.00012</pub-id>
        </element-citation>
      </ref>
      <ref id="B3564042">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Gorgolewski</surname>
              <given-names>Krzysztof J.</given-names>
            </name>
            <name name-style="western">
              <surname>Esteban</surname>
              <given-names>Oscar</given-names>
            </name>
            <name name-style="western">
              <surname>Burns</surname>
              <given-names>Christopher</given-names>
            </name>
            <name name-style="western">
              <surname>Ziegler</surname>
              <given-names>Erik</given-names>
            </name>
            <name name-style="western">
              <surname>Pinsard</surname>
              <given-names>Basile</given-names>
            </name>
            <name name-style="western">
              <surname>Madison</surname>
              <given-names>Cindee</given-names>
            </name>
            <name name-style="western">
              <surname>Waskom</surname>
              <given-names>Michael</given-names>
            </name>
            <name name-style="western">
              <surname>Ellis</surname>
              <given-names>David Gage</given-names>
            </name>
            <name name-style="western">
              <surname>Clark</surname>
              <given-names>Dav</given-names>
            </name>
            <name name-style="western">
              <surname>Dayan</surname>
              <given-names>Michael</given-names>
            </name>
            <name name-style="western">
              <surname>Manhães-Savio</surname>
              <given-names>Alexandre</given-names>
            </name>
            <name name-style="western">
              <surname>Notter</surname>
              <given-names>Michael Philipp</given-names>
            </name>
            <name name-style="western">
              <surname>Johnson</surname>
              <given-names>Hans</given-names>
            </name>
            <name name-style="western">
              <surname>Dewey</surname>
              <given-names>Blake E.</given-names>
            </name>
            <name name-style="western">
              <surname>Halchenko</surname>
              <given-names>Yaroslav O.</given-names>
            </name>
            <name name-style="western">
              <surname>Hamalainen</surname>
              <given-names>Carlo</given-names>
            </name>
            <name name-style="western">
              <surname>Keshavan</surname>
              <given-names>Anisha</given-names>
            </name>
            <name name-style="western">
              <surname>Clark</surname>
              <given-names>Daniel</given-names>
            </name>
            <name name-style="western">
              <surname>Huntenburg</surname>
              <given-names>Julia M.</given-names>
            </name>
            <name name-style="western">
              <surname>Hanke</surname>
              <given-names>Michael</given-names>
            </name>
            <name name-style="western">
              <surname>Nichols</surname>
              <given-names>B. Nolan</given-names>
            </name>
            <name name-style="western">
              <surname>Wassermann</surname>
              <given-names>Demian</given-names>
            </name>
            <name name-style="western">
              <surname>Eshaghi</surname>
              <given-names>Arman</given-names>
            </name>
            <name name-style="western">
              <surname>Markiewicz</surname>
              <given-names>Christopher</given-names>
            </name>
            <name name-style="western">
              <surname>Varoquaux</surname>
              <given-names>Gael</given-names>
            </name>
            <name name-style="western">
              <surname>Acland</surname>
              <given-names>Benjamin</given-names>
            </name>
            <name name-style="western">
              <surname>Forbes</surname>
              <given-names>Jessica</given-names>
            </name>
            <name name-style="western">
              <surname>Rokem</surname>
              <given-names>Ariel</given-names>
            </name>
            <name name-style="western">
              <surname>Kong</surname>
              <given-names>Xiang-Zhen</given-names>
            </name>
            <name name-style="western">
              <surname>Gramfort</surname>
              <given-names>Alexandre</given-names>
            </name>
            <name name-style="western">
              <surname>Kleesiek</surname>
              <given-names>Jens</given-names>
            </name>
            <name name-style="western">
              <surname>Schaefer</surname>
              <given-names>Alexander</given-names>
            </name>
            <name name-style="western">
              <surname>Sikka</surname>
              <given-names>Sharad</given-names>
            </name>
          </person-group>
          <year>2016</year>
          <article-title>Nipype: a flexible, lightweight and extensible neuroimaging data processing framework in Python version 0.12.0-rc1</article-title>
          <source>Zenodo</source>
          <pub-id pub-id-type="doi">10.5281/zenodo.50186</pub-id>
        </element-citation>
      </ref>
      <ref id="B3545828">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Halchenko</surname>
              <given-names>Yaroslav O.</given-names>
            </name>
            <name name-style="western">
              <surname>Hanke</surname>
              <given-names>Michael</given-names>
            </name>
          </person-group>
          <year>2012</year>
          <article-title>Open is Not Enough. Let's Take the Next Step: An Integrated, Community-Driven Computing Platform for Neuroscience</article-title>
          <source>Frontiers in Neuroinformatics</source>
          <volume>6</volume>
          <uri>http://dx.doi.org/10.3389/fninf.2012.00022</uri>
          <pub-id pub-id-type="doi">10.3389/fninf.2012.00022</pub-id>
        </element-citation>
      </ref>
      <ref id="B3546072">
        <element-citation publication-type="conference-paper">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Halchenko</surname>
              <given-names>Y. O.</given-names>
            </name>
            <name name-style="western">
              <surname>Poldrack</surname>
              <given-names>B.</given-names>
            </name>
            <name name-style="western">
              <surname>Hanke</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <year>2016</year>
          <person-group person-group-type="editor">
            <name name-style="western">
              <surname>Mapping</surname>
              <given-names>Organization of Human Brain</given-names>
            </name>
          </person-group>
          <article-title>DataLad – decentralized data distribution for consumption and sharing of scientific datasets</article-title>
          <source>Poster</source>
          <conf-name>Organization of Human Brain Mapping Annual Meeting</conf-name>
          <conf-loc>Geneva, Switzerland</conf-loc>
          <conf-date>2016</conf-date>
        </element-citation>
      </ref>
      <ref id="B3545818">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Hanke</surname>
              <given-names>Michael</given-names>
            </name>
            <name name-style="western">
              <surname>Halchenko</surname>
              <given-names>Yaroslav O.</given-names>
            </name>
          </person-group>
          <year>2011</year>
          <article-title>Neuroscience Runs on GNU/Linux</article-title>
          <source>Frontiers in Neuroinformatics</source>
          <volume>5</volume>
          <uri>http://dx.doi.org/10.3389/fninf.2011.00008</uri>
          <pub-id pub-id-type="doi">10.3389/fninf.2011.00008</pub-id>
        </element-citation>
      </ref>
      <ref id="B3545746">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Jenkinson</surname>
              <given-names>Mark</given-names>
            </name>
            <name name-style="western">
              <surname>Beckmann</surname>
              <given-names>Christian F.</given-names>
            </name>
            <name name-style="western">
              <surname>Behrens</surname>
              <given-names>Timothy E. J.</given-names>
            </name>
            <name name-style="western">
              <surname>Woolrich</surname>
              <given-names>Mark W.</given-names>
            </name>
            <name name-style="western">
              <surname>Smith</surname>
              <given-names>Stephen M.</given-names>
            </name>
          </person-group>
          <year>2012</year>
          <article-title>FSL</article-title>
          <source>NeuroImage</source>
          <volume>62</volume>
          <issue>2</issue>
          <fpage>782</fpage>
          <lpage>790</lpage>
          <uri>http://dx.doi.org/10.1016/j.neuroimage.2011.09.015</uri>
          <pub-id pub-id-type="doi">10.1016/j.neuroimage.2011.09.015</pub-id>
        </element-citation>
      </ref>
      <ref id="B3546110">
        <element-citation publication-type="website">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Lecher</surname>
              <given-names>Justin</given-names>
            </name>
            <name name-style="western">
              <surname>Bronder</surname>
              <given-names>Justin</given-names>
            </name>
            <name name-style="western">
              <surname>Amadio</surname>
              <given-names>Guilherme</given-names>
            </name>
            <name name-style="western">
              <surname>Evans</surname>
              <given-names>Brian</given-names>
            </name>
            <name name-style="western">
              <surname>Xu</surname>
              <given-names>Benda</given-names>
            </name>
            <name name-style="western">
              <surname>Fabbro</surname>
              <given-names>Sebastien</given-names>
            </name>
            <name name-style="western">
              <surname>Shvetsov</surname>
              <given-names>Alexey</given-names>
            </name>
            <name name-style="western">
              <surname>Savchenko</surname>
              <given-names>Andrew</given-names>
            </name>
            <name name-style="western">
              <surname>Junghans</surname>
              <given-names>Christoph</given-names>
            </name>
            <name name-style="western">
              <surname>Szuba</surname>
              <given-names>Marek</given-names>
            </name>
            <name name-style="western">
              <surname>Bock</surname>
              <given-names>Nicolas</given-names>
            </name>
            <name name-style="western">
              <surname>Seifert</surname>
              <given-names>David</given-names>
            </name>
            <name name-style="western">
              <surname>Maier</surname>
              <given-names>Matthias</given-names>
            </name>
            <name name-style="western">
              <surname>Kahle</surname>
              <given-names>Thomas</given-names>
            </name>
            <name name-style="western">
              <surname>Kowalik</surname>
              <given-names>Kacper</given-names>
            </name>
          </person-group>
          <article-title>Gentoo Science Overlay Project</article-title>
          <uri>https://web.archive.org/web/20150919074807/https://wiki.gentoo.org/wiki/Project:Science/Overlay</uri>
          <date-in-citation content-type="access-date">2017-01-24T00:00:00+02:00</date-in-citation>
        </element-citation>
      </ref>
      <ref id="B3546040">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Pedregosa</surname>
              <given-names>F</given-names>
            </name>
            <name name-style="western">
              <surname>Varoquaux</surname>
              <given-names>G</given-names>
            </name>
            <name name-style="western">
              <surname>Gramfort</surname>
              <given-names>A</given-names>
            </name>
            <name name-style="western">
              <surname>Michel</surname>
              <given-names>V</given-names>
            </name>
            <name name-style="western">
              <surname>Thirion</surname>
              <given-names>B</given-names>
            </name>
            <name name-style="western">
              <surname>Grisel</surname>
              <given-names>O</given-names>
            </name>
            <name name-style="western">
              <surname>Blondel</surname>
              <given-names>M</given-names>
            </name>
            <name name-style="western">
              <surname>Prettenhofer</surname>
              <given-names>P</given-names>
            </name>
            <name name-style="western">
              <surname>Weiss</surname>
              <given-names>R</given-names>
            </name>
            <name name-style="western">
              <surname>Dubourg</surname>
              <given-names>V</given-names>
            </name>
            <name name-style="western">
              <surname>Vanderplas</surname>
              <given-names>J</given-names>
            </name>
            <name name-style="western">
              <surname>Passos</surname>
              <given-names>A</given-names>
            </name>
            <name name-style="western">
              <surname>Cournapeau</surname>
              <given-names>D</given-names>
            </name>
            <name name-style="western">
              <surname>Brucher</surname>
              <given-names>M</given-names>
            </name>
            <name name-style="western">
              <surname>Perrot</surname>
              <given-names>M</given-names>
            </name>
            <name name-style="western">
              <surname>Duchesnay</surname>
              <given-names>E</given-names>
            </name>
          </person-group>
          <year>2011</year>
          <article-title>Scikit-learn: Machine Learning in Python</article-title>
          <source>Journal of Machine Learning Research</source>
          <volume>12</volume>
          <fpage>2825</fpage>
          <lpage>2830</lpage>
          <uri>http://jmlr.csail.mit.edu/papers/v12/pedregosa11a.html</uri>
        </element-citation>
      </ref>
      <ref id="B3545808">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Peirce</surname>
              <given-names>Jonathan W</given-names>
            </name>
          </person-group>
          <year>2008</year>
          <article-title>Generating stimuli for neuroscience using PsychoPy</article-title>
          <source>Frontiers in Neuroinformatics</source>
          <volume>2</volume>
          <uri>http://dx.doi.org/10.3389/neuro.11.010.2008</uri>
          <pub-id pub-id-type="doi">10.3389/neuro.11.010.2008</pub-id>
        </element-citation>
      </ref>
      <ref id="B3546016">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Peixoto</surname>
              <given-names>Tiago</given-names>
            </name>
          </person-group>
          <year>2014</year>
          <article-title>graph-tool</article-title>
          <source>Figshare</source>
          <uri>http://dx.doi.org/10.6084/M9.FIGSHARE.1164194</uri>
          <pub-id pub-id-type="doi">10.6084/M9.FIGSHARE.1164194</pub-id>
        </element-citation>
      </ref>
      <ref id="B3545978">
        <element-citation publication-type="article">
          <person-group person-group-type="author">
            <name name-style="western">
              <surname>Poore</surname>
              <given-names>Geoffrey M</given-names>
            </name>
          </person-group>
          <year>2015</year>
          <article-title>PythonTeX: reproducible documents with LaTeX, Python, and more</article-title>
          <source>Computational Science &amp; Discovery</source>
          <volume>8</volume>
          <issue>1</issue>
          <fpage>014010</fpage>
          <uri>http://dx.doi.org/10.1088/1749-4699/8/1/014010</uri>
          <pub-id pub-id-type="doi">10.1088/1749-4699/8/1/014010</pub-id>
        </element-citation>
      </ref>
    </ref-list>
    <fn-group>
      <fn id="FN3545840">
        <label>*1</label>
        <p>As a metadistribution, Gentoo consists of a collection of tools allowing users to create their own distributions - of which many have emerged and some have gained significant popularity in their own right: Sabayon, Calculate Linux, and Kogaion - just to name a few. These are distinct from Gentoo derivatives, for which Funtoo and ChromeOS would be better examples. (All of these platforms, however, can benefit from neuroscience software management solutions designed for Gentoo.)</p>
      </fn>
    </fn-group>
  </back>
  <floats-group>
    <fig-group id="F3545953" position="float" orientation="portrait">
      <caption>
        <p>Dependency graphs with hierarchical edge bundling, depicting packages as vertices and dependency relationships as edges. The graphs are seeded by the ~40 packages which we maintain and have contributed to the Portage environment primarily for neuroscience use. Graph <bold>(a)</bold> covers the set's entire non-optional dependency stack, and totals ~550 packages. Graph <bold>(b)</bold> covers the set's entire dependency stack, including all optional dependencies, and totals ~3500 packages. The seed packages and their dependency relationships are highlighted in green. Dependencies provided by the Gentoo Science repository and their dependency relationships are colored purple. Dependencies provided by the main Gentoo repository and their dependency relationships are colored purple-tinted gray. The graph shows a tight clustering of neuroscientific Python packages, indicating the infrastructure cohesiveness and application diversity of scientific Python. The graph shows that Portage neuroscience packages make use of ~20 lower-level packages from Gentoo Science - illustrating the benefit of integrating scientific software management across disciplines. It is also notable that this graph includes deep Haskell and TeX dependency stacks - which are pulled in by DataLad (<xref ref-type="bibr" rid="B3546072">Halchenko et al. 2016</xref>) and PythonTeX respectively. Both of these packages are very optional; PythonTeX in particular would only be required if the system were designed to support re-executable publications (<xref ref-type="bibr" rid="B3545978">Poore 2015</xref>). This is a theoretical system make-up, and in practice a Gentoo neuroscience data analysis system may be even more lightweight. The figures were generated with DeGraVi (<xref ref-type="bibr" rid="B3546006">Christian 2017</xref>), which makes considerable use of the graph-tool module (<xref ref-type="bibr" rid="B3546016">Peixoto 2014</xref>).</p>
      </caption>
      <fig id="F3545958" position="float" orientation="portrait">
        <label>Figure 1a.</label>
        <caption>
          <p>Minimal (excluding all optional features) dependency graph of the contributed neuroscience package set.</p>
        </caption>
        <graphic xlink:href="rio-03-e12095-g001_a.gif" xlink:type="simple" position="float" orientation="portrait" id="oo_119494.gif"/>
      </fig>
      <fig id="F3545959" position="float" orientation="portrait">
        <label>Figure 1b.</label>
        <caption>
          <p>Maximal (including all optional features) dependency graph of the contributed neuroscience package set.</p>
        </caption>
        <graphic xlink:href="rio-03-e12095-g001_b.gif" xlink:type="simple" position="float" orientation="portrait" id="oo_119495.gif"/>
      </fig>
    </fig-group>
    <table-wrap id="T3545851" position="float" orientation="portrait">
      <label>Table 1.</label>
      <caption>
        <p>The list of packages written in order to facilitate automated neuroscientific software management on Gentoo platforms. It should be noted that very many packages with only incidental use for neuroscience (e.g. scikit-learn (<xref ref-type="bibr" rid="B3546040">Pedregosa et al. 2011</xref>)) have long been available for Gentoo and are not showcased in our <italic>contributed ebuild set</italic>.</p>
      </caption>
      <table rules="all" border="1" style="width:200px">
        <tbody>
          <tr>
            <td rowspan="1" colspan="1">dev-python/imageio</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-python/tqdm</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-python/moviepy</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-python/matrix2latex</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-python/prov</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-python/pydotplus</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-python/pymvpa</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-vcs/datalad</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">dev-tex/pythontex</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">media-libs/avbin-bin</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/afni</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/ants</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/bru2nii</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/dipy</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/fsl</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/dcmstack</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/mne-python</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/nilearn</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/nistats</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/nitime</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/nireg</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/psychopy</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/pybrain</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/pysurfer</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-biology/spm</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/itk</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/nibabel</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/nipype</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/nipy</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/nipy-data</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/nipy-templates</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/pydicom</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/scikits_image</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-libs/vxl</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-mathematics/mdp</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-visualization/mricrogl</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-visualization/mricron</td>
          </tr>
          <tr>
            <td rowspan="1" colspan="1">sci-visualization/surf-ice</td>
          </tr>
        </tbody>
      </table>
    </table-wrap>
  </floats-group>
</article>
