<geaaru> __aure__:
https://github.com/Sabayon/community-repositories/#structure-of-a-repository
[12:43]
<geaaru> for building we now use mottainaici
(https://mottainaici.github.io/docs/) and our tasks are available
there: https://github.com/Sabayon/sbi-tasks [12:44]
<geaaru> but there isn't a clean documentation for final users
<__aure__> I see. I will have a look :) [12:45]
<geaaru> we could avoid use of mottainaici with simple run of the
sabayon/builder and execute sark-localbuild script
<geaaru> but mottainaici will do this for you :)
<__aure__> I was also wondering why a simple gentoo binary package wouldn't be
enough for sabayon [12:46]
<__aure__> and now I also wonder...Sabayon packages are built within sabayon
or within gentoo? :) [12:51]
<optiz0r> sabayon packages are built within a gentoo chroot and adorned with
additional metadata [12:57]
Use mottainaici https://mottainaici.github.io/docs/ with the sabayon tasks https://github.com/Sabayon/sbi-tasks
Use the Sabayon builder https://github.com/Sabayon/docker-builder-amd64
Execute sark-localbuild script https://github.com/Sabayon/sabayon-sark
The philosophy behind using the sark-
scripts is that of building
a set of packages (possibly a whole overlay) in one go. To do so,
a build.yaml
is generated (see build.yaml example). This file
contains multiple configurations sections dictating the whole
building process (emerge configurations, equo configurations,
overlays, etc.).
I think the sark-
scripts will try to package all the binaries
stored in the portage binary directory. Therefore if you are not
interested on having other packages (e.g., dependences) in the target repository, you
should try to avoid building the binary package of them.
Our approach to use the sark-
scripts is:
- Create and configure a light-weight stage3-gentoo container using
systemd-nspawn
. - Adding
sabayon
andsabayon-distro
gentoo overlays. - Install the sabayon packaging ecosystem:
equo
entropy
entropy-server
sabayon-sark
- Use
sark-localbuild
to build and - Use
sark-localcreaterepo
to get the repository structure to be served.
My gentoo stage3 of choice will be systemd, but I think it does not really matter much. Just make sure to configure the systemd (machine-id, timedatectl, hostnamectl, localectl…see gentoo systemd for more information).
Equo database will need to be initialized for the -sark
scripts
to work properly!! Just do: equo rescue generate
You might need to change the PKGDIR
in make.conf
to point to
/usr/portage/packages
, which is the destination the sark-
scripts expect.