Repo init.
This commit is contained in:
commit
557a83a1d2
24
Dockerfile
Normal file
24
Dockerfile
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
# name the portage image
|
||||||
|
FROM gentoo/portage:latest as portage
|
||||||
|
|
||||||
|
# image is based on stage3-amd64
|
||||||
|
FROM gentoo/stage3-amd64:latest as stage3
|
||||||
|
|
||||||
|
# copy the entire portage volume in
|
||||||
|
COPY --from=portage /usr/portage /usr/portage
|
||||||
|
|
||||||
|
ARG MAKEOPTS
|
||||||
|
ARG EMERGE_OPTS=-qv
|
||||||
|
|
||||||
|
# Install needed packages
|
||||||
|
RUN MAKEOPTS=$MAKEOPTS emerge $EMERGE_OPTS dev-util/catalyst
|
||||||
|
|
||||||
|
COPY stage3-preclean-chroot.sh /usr/share/catalyst/targets/stage3/stage3-preclean-chroot.sh
|
||||||
|
COPY stage4-chroot.sh /usr/share/catalyst/targets/stage4/stage4-chroot.sh
|
||||||
|
|
||||||
|
VOLUME /var/lib/catalyst
|
||||||
|
VOLUME /var/cache/portage/distfiles
|
||||||
|
VOLUME /var/cache/portage/packages
|
||||||
|
|
||||||
|
COPY entrypoint.sh entrypoint.sh
|
||||||
|
CMD /entrypoint.sh
|
25
entrypoint.sh
Executable file
25
entrypoint.sh
Executable file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
die() {
|
||||||
|
echo $* >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
export SHELL=/bin/bash
|
||||||
|
export PYTHON=python
|
||||||
|
|
||||||
|
# Download latest portage snapshot
|
||||||
|
wget -O /var/lib/catalyst/store/snapshots/portage-latest.tar.bz2 \
|
||||||
|
https://gentoo.osuosl.org/releases/snapshots/current/portage-latest.tar.bz2
|
||||||
|
|
||||||
|
# Update stage3 snapshot
|
||||||
|
catalyst -c /var/lib/catalyst/catalyst.conf \
|
||||||
|
-f /var/lib/catalyst/stage3.spec -a
|
||||||
|
|
||||||
|
# Update custom packages
|
||||||
|
catalyst -c /var/lib/catalyst/catalyst.conf \
|
||||||
|
-f /var/lib/catalyst/build.spec
|
||||||
|
|
||||||
|
# Copy distfiles to web directory
|
||||||
|
rsync -avug /var/lib/catalyst/store/packages/default/stage3-amd64/ \
|
||||||
|
/var/cache/portage/packages/
|
25
stage3-preclean-chroot.sh
Normal file
25
stage3-preclean-chroot.sh
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
export RUN_DEFAULT_FUNCS="no"
|
||||||
|
|
||||||
|
source /tmp/chroot-functions.sh
|
||||||
|
|
||||||
|
perl-cleaner --reallyall
|
||||||
|
|
||||||
|
update_env_settings
|
||||||
|
show_debug
|
||||||
|
|
||||||
|
cleanup_stages
|
||||||
|
|
||||||
|
if [ -n "${clst_DISTCC}" ]
|
||||||
|
then
|
||||||
|
portageq has_version / sys-devel/distcc
|
||||||
|
if [ $? == 0 ]; then
|
||||||
|
run_merge -C sys-devel/distcc || exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "${clst_ICECREAM}" ]
|
||||||
|
then
|
||||||
|
run_merge -C sys-devel/icecream || exit 1
|
||||||
|
fi
|
17
stage4-chroot.sh
Normal file
17
stage4-chroot.sh
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
source /tmp/chroot-functions.sh
|
||||||
|
|
||||||
|
export SHELL=/bin/bash
|
||||||
|
export PYTHON=python
|
||||||
|
|
||||||
|
## START BUILD
|
||||||
|
setup_pkgmgr
|
||||||
|
|
||||||
|
echo "Bringing system up to date using profile specific use flags"
|
||||||
|
run_merge -u @system
|
||||||
|
|
||||||
|
echo "Emerging packages using stage4 use flags"
|
||||||
|
|
||||||
|
run_merge "${clst_packages}"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user