Packages currently available in this overlay:
- dev-cpp/upp
- Ultimate++ application framework and TheIDE development environment
- https://www.ultimatepp.org/
- games-fps/ecwolf
- Modern Wolfenstein 3D source port with SDL2 backend
- https://maniacsvault.net/ecwolf/
- games-fps/tesseract-sauerbraten
- Sauerbraten with the Tesseract graphics update
- https://github.com/OuluLinux/Tesseract-Sauerbraten
- Add the repository using eselect:
eselect repository add oululinux git https://github.com/oululinux/gentoo-overlay.git- Sync the new overlay:
emaint sync -r oululinux- Install a package, for example:
emerge --ask dev-cpp/uppIf you prefer to manually configure the repository, follow these steps:
- Create the overlay definition
/etc/portage/repos.conf/oululinux.conf(or any file underrepos.conf). - Add the following repository configuration:
[oululinux]
location = /var/db/repos/oululinux
sync-type = git
sync-uri = https://github.com/oululinux/gentoo-overlay.git
- Sync the new overlay:
emaint sync -r oululinuxIf you already have /home/sblo/gentoo-overlay checked out locally and prefer to use it directly rather than syncing, point Portage at that path and tell it not to sync. For example, in /etc/portage/repos.conf/oululinux.conf use:
[oululinux]
location = /home/sblo/gentoo-overlay
sync-type = none
Portage 3.0 and later no longer accept sync-type = none. To keep using the local checkout without syncing, either add the overlay path to PORTDIR_OVERLAY or configure the repo with a supported sync type such as git (and a matching sync-uri, e.g. https://github.com/oululinux/gentoo-overlay.git).
When the overlay is used directly from the /yhteinen share (an ntfs3 mount of the shared Windows partition, e.g. registered via PORTDIR_OVERLAY=/yhteinen/active/sblo/Dev/gentoo-overlay), emerge may abort during the fetch phase with:
PermissionError: [Errno 13] Permission denied: '/yhteinen/active/sblo/Dev/gentoo-overlay/profiles/thirdpartymirrors'
portage.exception.PermissionDenied: ...
Cause: Portage's default userfetch/userpriv features run the fetch subprocess as the portage user. If any directory on the path to the repo has mode 0770 — which the mount's default dmask=0007 produces for directories created by root or under a restrictive umask (/yhteinen/active in this case) — the portage user cannot traverse into the overlay and every read fails with EACCES. chmod 777 on the file itself does not help, and root can always read it (DAC_OVERRIDE), so the failure only shows up inside emerge's fetch subprocess. It is unrelated to SELinux (permissive on this system) and to the overlay contents.
Fix: add the world-traverse bit to the blocking directory. The mode is stored on the NTFS filesystem, so it survives remounts:
sudo chmod o+x /yhteinen/activeKeeping the overlay usable from the share:
- Every directory on the path (
/yhteinendown to the repo) must haveo+x(traverse) for other users. - Repo files (ebuilds,
Manifest,profiles/*) must be world-readable;644/755is fine — that is what files created normally on this share get.dmask=0007only affects directories created by root or a foreign umask, so new files do not reintroduce the problem. profiles/thirdpartymirrorsmay be empty, but it must exist and be readable; Portage reads it from every repository in the repo stack during fetch.
Verify access as the portage user before re-running emerge:
sudo -u portage cat /yhteinen/active/sblo/Dev/gentoo-overlay/profiles/thirdpartymirrors
sudo emerge --fetchonly <package> # exercises the previously failing phase