You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Andrew Ammerlaan f87ef4d577
app-office/visidata: eutils --> optfeature
1 year ago
.github/workflows .github/workflows: always use the latest version of repoman 1 year ago
app-arch/libdeflate app-arch/libdeflate: version bump to 1.7 1 year ago
app-office/visidata app-office/visidata: eutils --> optfeature 1 year ago
app-text app-text/zotero-bin: remove double PV 1 year ago
app-vim/vim-gromacs app-vim/vim-gromacs: remove RedundantLongDescription 1 year ago
dev-cpp dev-cpp/blitz: drop replaced blitz-1.0.2_p20200524.ebuild 1 year ago
dev-java dev-java/skinlf: import from ::gentoo 1 year ago
dev-lang dev-lang/tcl: import from ::gentoo for media-gfx/brlcad 1 year ago
dev-libs dev-libs/half: add version 1.12.0 1 year ago
dev-ml/lacaml dev-ml/lacaml: fix RedundantLongDescription, make it longer 1 year ago
dev-perl dev-perl/Bio-EnsEMBL: use perl_domodule 1 year ago
dev-python dev-python/ufl: eutils --> optfeature 1 year ago
dev-tcltk/togl dev-tcltk/togl: EAPI bump 1 year ago
dev-util dev-util/rocm-clang-ocl: add 4.1.0 1 year ago
docs virtual/{{c,}blas,lapack{,e}}: replaced by counterparts in ::gentoo. 3 years ago
eclass eclass/numeric-int64-multibuild.eclass: fix @ECLASS variable 1 year ago
licenses licenses: clean up unused licenses 1 year ago
media-gfx/brlcad media-gfx/brlcad: add missing slash 1 year ago
media-libs media-libs/libgfx: EAPI bump 1 year ago
metadata metadata/layout.conf: ban EAPI 5 1 year ago
net-misc/cernbox-client net-misc/cernbox-client: Drop old version. 1 year ago
profiles profiles/package.mask: mask dev-java/netcdf for removal 1 year ago
sci-astronomy sci-astronomy/wcslib: landed on to ::gentoo. 2 years ago
sci-biology sci-biology/abyss: add 2.3.1 release but keep patches 1 year ago
sci-chemistry sci-chemistry/pymol-plugins-psico: inherit optfeature 1 year ago
sci-electronics/minipro sci-electronics/tnt: drop dead package 2 years ago
sci-libs sci-libs/scikits_video: drop eutils 1 year ago
sci-mathematics sci-mathematics/dsfmt: remove package - moved to ::gentoo 1 year ago
sci-misc sci-misc/praat: version bump 6.1.42 1 year ago
sci-physics sci-physics/genfit: fix MultipleKeywordsLines 1 year ago
sci-visualization sci-visualization/mricrogl: drop old 1 year ago
scripts .github/workflows: always use the latest version of repoman 1 year ago
sys-apps/ndctl sys-apps/ndctl: drop old version 1 year ago
sys-cluster/modules sys-cluster/lmod: lmod is now in ::gentoo 1 year ago
sys-kernel/dkms sys-kernel/dkms: dynamic kernel module support 1 year ago
virtual/scalapack virtual/blacs: remove obsolete virtual 1 year ago
x11-libs x110libs/tr: remove pack, upstream has dissapeared 1 year ago
x11-misc/envytools x11-misc/envytools: remove duplicate inherit of git-r3 1 year ago
.gitignore profiles: remove use.local.desc permanently 5 years ago update accepted EAPIs 1 year ago add note on eselect-repository 1 year ago

The Gentoo Science Project Repository

pkgcheck repoman contributions welcome chat on freenode

This is an official mirror of the Gentoo Science ebuild repository, containing numerous scientific software packages.

See Project:Science for more information on the project.


  1. Installation
  1. Usage
  2. Contributing


Eselect-repository install

The easiest way to enable the overlay is to:

emerge --noreplace eselect-repository && eselect repository enable science && emerge --sync

and emerge the package as usual.

Manual Install

As per the current Portage specifications, ebuild repositories (a.k.a. overlays) can be managed via file collections under /etc/portage/repos.conf/, via the new plug-in sync system.

To enable the overlay without the need for additional software, you first need to have git installed:

emerge --ask --verbose dev-vcs/git

Then you need to add the science repository configuration by downloading the science.conf file:

wget \
	-O /etc/portage/repos.conf/science

Manual Uninstall

To uninstall the overlay, simply run:

rm /etc/portage/repos.conf/science
rm /var/db/repos/science -rf

Layman Install

You can also install the overlay via the layman overlay manager.

emerge --ask --verbose app-portage/layman
layman --add science

Layman Uninstall

To delete the overlay, run:

layman --delete science

Using Packages from ::science

To start using the overlay you now only need to get the newest files, via:

emerge --sync science

To be able to install ::science packages you need to make sure that you are accepting the ~${ARCH} keyword for your respective architecture. This may already be the case globally on your system, and you can check whether this is the case by running:

grep "~$(portageq envvar ARCH)" /etc/portage/make.conf

If the above returns empty, you will need to instruct Portage to accept ~${ARCH} packages.

This can be done for ::science specifically:

mkdir -p /etc/portage/package.accept_keywords
printf '*/*::science ~%s' "$(portageq envvar ARCH)" >> /etc/portage/package.accept_keywords/science

If the above fails with mkdir: cannot create directory ‘/etc/portage/package.accept_keywords’: File exists this means you are using a file and not a directory, and you can instead run:

printf '*/*::science ~%s' "$(portageq envvar ARCH)" >> /etc/portage/package.accept_keywords

Alternatively, and only if you know what you are doing, you can accept ~${ARCH} packages globally:

printf 'ACCEPT_KEYWORDS="~%s"' "$(portageq envvar ARCH)" >> /etc/portage/make.conf

The downside of this approach is potentially higher instability, the advantage is that often ::science packages require ~${ARCH} packages from ::gentoo as well.


If you fork, we will merge!
We welcome new contributors and are happy to include new packages.

Areas to contribute

find . -type f -name "*.ebuild" ! \( -wholename "*.git*" -o -wholename "*profile*" -o -wholename "*metadata*" \) | while read ff; do grep -lRE "EAPI.*6" /dev/null $ff; done


For a brief introduction please see our contributing guide. Further helpful resources are:

Additionally, please make sure to add the Science Project as an additional maintainer to any new packages you submit. For an example, take a look at the metadata for the Numba package - dev-python/numba/metadata.xml


You can ask for help on Freenode IRC in #gentoo-science. Alternatively you can report bugs on the GitHub issues page.