The Gentoo Science Project Repository
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. |
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 https://gitweb.gentoo.org/proj/sci.git/plain/metadata/science.conf \
-O /etc/portage/repos.conf/science
To uninstall the overlay, simply run:
rm /etc/portage/repos.conf/science
rm /var/db/repos/science -rf
You can also install the overlay via the layman overlay manager.
emerge --ask --verbose app-portage/layman
layman --add science
To delete the overlay, run:
layman --delete 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)" >> lala
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.
For a brief introduction please see our contributing guide. Further helpful resources are:
- Gentoo Developers Manual - https://devmanual.gentoo.org/ (taking precedence over any other information found here)
- Contributing to Gentoo - https://wiki.gentoo.org/wiki/Contributing_to_Gentoo
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.