Compare commits

...

4 Commits

2 changed files with 19 additions and 5 deletions
+17 -5
View File
@@ -26,6 +26,8 @@ my $emerge_split_install = $ENV{EMERGE_SPLIT_INSTALL} // 0;
my $webrsync = $ENV{WEBRSYNC} // 0; my $webrsync = $ENV{WEBRSYNC} // 0;
my $enman_repositories = $ENV{ENMAN_REPOSITORIES}; my $enman_repositories = $ENV{ENMAN_REPOSITORIES};
my $prune_virtuals = $ENV{PRUNE_VIRTUALS} // 0; my $prune_virtuals = $ENV{PRUNE_VIRTUALS} // 0;
my $repository_name = $ENV{REPOSITORY_NAME};
my $enman_add_self = $ENV{ENMAN_ADD_SELF} // 1;
my $make_conf = $ENV{MAKE_CONF}; my $make_conf = $ENV{MAKE_CONF};
@@ -178,11 +180,11 @@ say "[*] Syncing configurations files, Layman and Portage";
# Syncronizing portage configuration and adding overlays # Syncronizing portage configuration and adding overlays
system("echo 'en_US.UTF-8 UTF-8' > /etc/locale.gen"); #be sure about that. system("echo 'en_US.UTF-8 UTF-8' > /etc/locale.gen"); #be sure about that.
system( "cd /etc/portage/;git checkout master; git stash; git pull" ); system("cd /etc/portage/;git checkout master; git stash; git pull");
if ( `uname -m` eq "x86_64\n" ) { if ( `uname -m` eq "x86_64\n" ) {
system( system(
"cd /etc/portage/;rm -rfv make.conf;ln -s make.conf.amd64 make.conf" ); "cd /etc/portage/;rm -rfv make.conf;ln -s make.conf.amd64 make.conf");
} }
system("echo 'y' | layman -f -a $_") for @overlays; system("echo 'y' | layman -f -a $_") for @overlays;
@@ -244,8 +246,11 @@ elsif ( $use_equo && $entropy_repository eq "testing" ) {
if ($use_equo) { if ($use_equo) {
if ( $enman_repositories and $enman_repositories ne "" ) { if ( $enman_repositories and $enman_repositories ne "" ) {
my @enman_toadd = split( / /, $enman_repositories ); my @enman_toadd = split( / /, $enman_repositories );
system("enman add $_") for @enman_toadd; safe_call("enman add $_") for @enman_toadd;
} }
system("enman add $repository_name")
if ( $enman_add_self and $repository_name and $repository_name ne "" );
system("equo repo mirrorsort sabayonlinux.org") if $equo_mirrorsort; system("equo repo mirrorsort sabayonlinux.org") if $equo_mirrorsort;
system("equo up && equo u"); system("equo up && equo u");
} }
@@ -286,14 +291,17 @@ if ($use_equo) {
say "", "[install] Those dependencies will be installed with equo :", say "", "[install] Those dependencies will be installed with equo :",
@packages_deps, ""; @packages_deps, "";
if ($equo_split_install) { if ($equo_split_install) {
safe_call("equo i --bdeps $_") for ( @packages_deps, @equo_install ); safe_call("equo i --bdeps $_")
for ( @packages_deps, @equo_install )
; ## bail out here, if installs fails. emerge will compile a LOT of stuff
if ( @equo_remove > 0 ) { if ( @equo_remove > 0 ) {
system("equo rm --nodeps $_") for (@equo_remove); system("equo rm --nodeps $_") for (@equo_remove);
} }
} }
else { else {
safe_call("equo i --bdeps @packages_deps @equo_install") safe_call("equo i --bdeps @packages_deps @equo_install")
if ( @packages_deps > 0 or @equo_install > 0 ); if ( @packages_deps > 0 or @equo_install > 0 )
; ## bail out here, if installs fails. emerge will compile a LOT of stuff
system("equo rm --nodeps @equo_remove") if ( @equo_remove > 0 ); system("equo rm --nodeps @equo_remove") if ( @equo_remove > 0 );
} }
} }
@@ -303,6 +311,9 @@ say "*** Ready to compile, finger crossed ***";
system("emerge --info") system("emerge --info")
; #always give detailed information about the building environment, helpful to debug ; #always give detailed information about the building environment, helpful to debug
say "Devkit version:";
system("equo s -vq app-misc/sabayon-devkit");
my $rt; my $rt;
if ($emerge_split_install) { if ($emerge_split_install) {
@@ -322,6 +333,7 @@ my $return = $rt >> 8;
if ($preserved_rebuild) { if ($preserved_rebuild) {
system("emerge -j $jobs --buildpkg \@preserved-rebuild"); system("emerge -j $jobs --buildpkg \@preserved-rebuild");
system("revdep-rebuild");
} }
+2
View File
@@ -44,6 +44,8 @@ docker_volumes=( -v "$OUTPUT_DIR:/usr/portage/packages" )
[ -z "$ENTROPY_DOWNLOADED_PACKAGES" ] || docker_volumes+=(-v "$ENTROPY_DOWNLOADED_PACKAGES:/var/lib/entropy/client/packages") [ -z "$ENTROPY_DOWNLOADED_PACKAGES" ] || docker_volumes+=(-v "$ENTROPY_DOWNLOADED_PACKAGES:/var/lib/entropy/client/packages")
[ -z "$DISTCC_HOSTS" ] || docker_env+=(-e "DISTCC_HOSTS=$DISTCC_HOSTS") [ -z "$DISTCC_HOSTS" ] || docker_env+=(-e "DISTCC_HOSTS=$DISTCC_HOSTS")
[ -z "${PRUNE_VIRTUALS}" ] || docker_env+=(-e "PRUNE_VIRTUALS=$PRUNE_VIRTUALS") [ -z "${PRUNE_VIRTUALS}" ] || docker_env+=(-e "PRUNE_VIRTUALS=$PRUNE_VIRTUALS")
[ -z "$REPOSITORY_NAME" ] || docker_env+=(-e "REPOSITORY_NAME=$REPOSITORY_NAME")
[ -z "$ENMAN_ADD_SELF" ] || docker_env+=(-e "ENMAN_ADD_SELF=$ENMAN_ADD_SELF")
if [ -n "$REMOTE_OVERLAY" ]; then if [ -n "$REMOTE_OVERLAY" ]; then
git clone "$REMOTE_OVERLAY" "$TEMPDIR" git clone "$REMOTE_OVERLAY" "$TEMPDIR"