diff options
-rw-r--r-- | BCD/CheckMedia.pm | 132 | ||||
-rwxr-xr-x | create_dual.sh | 73 | ||||
-rw-r--r-- | dual.xml | 10 | ||||
-rw-r--r-- | dual64.xml | 8 | ||||
-rw-r--r-- | dvd_free32.xml | 8 | ||||
-rw-r--r-- | dvd_free64.xml | 8 | ||||
-rw-r--r-- | lists/basesystem_mini | 15 | ||||
-rw-r--r-- | lists/exclude | 5 | ||||
-rw-r--r-- | lists/exclude_free | 23 | ||||
-rw-r--r-- | lists/exclude_mini | 5 | ||||
-rw-r--r-- | lists/input_cat | 66 |
11 files changed, 293 insertions, 60 deletions
diff --git a/BCD/CheckMedia.pm b/BCD/CheckMedia.pm new file mode 100644 index 0000000..f116c61 --- /dev/null +++ b/BCD/CheckMedia.pm @@ -0,0 +1,132 @@ +package BCD::CheckMedia; + +use strict; +use MDK::Common; + +use BCD::Common qw(:DEFAULT $isoconf $version $arch $repo $builddir $distrib_path $error_color $DISTRIB $THEME $rpmcheck_list_pkg $file_rpmcheck_log $file_smartcheck_log $smartcheck_list_pkg $smartcheck_dir $chroot_path); +use BCD::Media; + +our @ISA = qw(Exporter); +our @EXPORT = qw(check_repo_hdlist rpmcheck_launch smartcheck_launch rpmcheck_list smartcheck_list check_launch); + +my $LOG="CHECKMEDIA -"; +my $color = "blue"; + +my $chroot_path = "/tmp/$isoconf->{nameid}-$version-$isoconf->{arch}"; + +sub rpmcheck_list { + my @toget = cat_($rpmcheck_list_pkg); + my $todo = @toget; + if ($todo ne "0") { + print_color("$LOG calculate deps from the auto-generated rpmcheck list file", $error_color); + my $list_filename = "$isoconf->{tocopy_file}_todo_rpmcheck"; + my $list = "$chroot_path/urpmq/$list_filename"; + my $urpmq_options = "--requires-recursive -c --sources $isoconf->{mediainfo}{urpmi_option}"; + my $pkgs; + foreach (@toget) { $_ or next; chomp($_); $pkgs = "$_ " . $pkgs } + my $cmd_do_it = "LC_ALL=C sudo -P chroot $chroot_path urpmq --prefer $DISTRIB,$THEME $urpmq_options --no-suggests"; + do_fork($pkgs, $list_filename, $list, $cmd_do_it); + } else { + print_color("$LOG No rpmcheck error", $error_color); + } +} + +sub smartcheck_list { + my @toget = cat_($smartcheck_list_pkg); + my $todo = @toget; + if ($todo ne "0") { + print_color("$LOG calculate deps from the auto-generated smart list file", $error_color); + my $list_filename = "$isoconf->{tocopy_file}_todo_smartcheck"; + my $list = "$chroot_path/urpmq/$list_filename"; + my $urpmq_options = "--requires-recursive -c --sources $isoconf->{mediainfo}{urpmi_option}"; + my $pkgs; + foreach (@toget) { $_ or next; chomp($_); $pkgs = "$_ " . $pkgs } + my $cmd_do_it = "LC_ALL=C sudo -P chroot $chroot_path urpmq --prefer $DISTRIB,$THEME $urpmq_options --no-suggests"; + do_fork($pkgs, $list_filename, $list, $cmd_do_it); + } else { + print_color("$LOG No smart check error", $error_color); + } +} + +sub rpmcheck_launch { + my $options = "-explain -failures"; + my $destmedia = "0"; + print_color("$LOG launch rpmcheck to check hdlists", $color); + foreach my $media (@{$isoconf->{media}{list}}) { + $media->{name} or next; + $media->{drop} =~ /yes/ and BCD::Media::drop_media("$media->{name}-release"); + if ($destmedia eq $media->{destmedia}) { next } + $destmedia = $media->{destmedia}; + system("cp $builddir/media/$destmedia/media_info/hdlist.cz $builddir/media/media_info/hdlist_$media->{name}.cz"); + } + my $cmd = "zcat $builddir/media/media_info/hdlist*.cz | rpmcheck $options"; + print_color("$LOG $cmd", $color); + system("$cmd 2> /dev/null > $file_rpmcheck_log") == 0 or die "$LOG system $cmd failed: $?\n"; + open my $LIST_FAILURE, ">$rpmcheck_list_pkg.tmp"; + my @list_failure = cat_($file_rpmcheck_log); + foreach my $package (@list_failure) { + print $package; + my ($package2) = $package =~ /^\s+(\S*)\s/; + $package2 and print $LIST_FAILURE "$package2\n"; + } + close $LIST_FAILURE; + system("cat $rpmcheck_list_pkg.tmp | sort | uniq > $rpmcheck_list_pkg"); + print_color("$LOG check this file $file_rpmcheck_log", $color); + print_color("$LOG check this file $rpmcheck_list_pkg", $color); +} + +sub smartcheck_launch { + my $options = "-o sync-urpmi-medialist=no --data-dir $smartcheck_dir"; + system("rm -rf $smartcheck_dir $smartcheck_list_pkg"); + my $destmedia = "0"; + my $MEDIAS; my $MEDIASWITHCOMMA; + print_color("$LOG launch smart to check synthesys", $color); + foreach my $media (@{$isoconf->{media}{list}}) { + $media->{name} or next; + $media->{drop} =~ /yes/ and BCD::Media::drop_media("$media->{name}-release"); + if ($destmedia eq $media->{destmedia}) { next } + $destmedia = $media->{destmedia}; + $MEDIAS = $MEDIAS . " " . $media->{name}; + $MEDIASWITHCOMMA = $media->{name} . "," . $MEDIASWITHCOMMA; + my $cmd = "smart channel --yes $options --add $media->{name} type=urpmi baseurl=$builddir/media/$media->{destmedia}/ hdlurl=media_info/synthesis.hdlist.cz"; + system($cmd); + } + system("smart update $options $MEDIAS"); + chop($MEDIASWITHCOMMA); + my $cmd = "smart check $options --channels=$MEDIASWITHCOMMA 2>&1 | egrep -v '(Loading cache|Updating cache)' | awk -F 'requires' '{print \$2}' | sort | uniq >> $smartcheck_list_pkg"; + system("du $smartcheck_list_pkg"); + print_color("$LOG $cmd", $color); + system("$cmd > $file_smartcheck_log") == 0 or die "$LOG system $cmd failed: $?\n"; + open my $LIST_FAILURE, ">$smartcheck_list_pkg.tmp"; + my @list_failure = cat_($file_smartcheck_log); + foreach my $package (@list_failure) { + print $package; + my ($package2) = $package =~ /^\s+(\S*)\s/; + $package2 and print $LIST_FAILURE "$package2\n"; + } + close $LIST_FAILURE; + system("cat $smartcheck_list_pkg.tmp | sort | uniq > $smartcheck_list_pkg"); + print_color("$LOG check this file $file_smartcheck_log", $color); + print_color("$LOG check this file $smartcheck_list_pkg", $color); +} + +sub check_launch { + if (!defined($isoconf->{checktool})) { + print_color("$LOG BCD will use rpmcheck to verify hdlist. You can use choose between smart or rpmcheck, just add the option <checktool>smart/rpmcheck<checktool> in the XML configuration file", $color); + rpmcheck_launch; + } elsif ($isoconf->{checktool} =~ /rpmcheck/) { + print_color("$LOG BCD will use rpmcheck to verify hdlist.", $color); + rpmcheck_launch; + } else { + print_color("$LOG BCD will use smart check to verify hdlist.", $color); + smartcheck_launch; + } +} + +sub check_repo_hdlist { + my $options = "-explain -failures"; + print_color("$LOG check media repositery hdlists in $repo/$version/$arch", $color); + system("zcat $repo/$version/$arch/media/media_info/hdlist*ain.cz | rpmcheck $options"); +} + +1; diff --git a/create_dual.sh b/create_dual.sh index 69848c4..fa4b7d5 100755 --- a/create_dual.sh +++ b/create_dual.sh @@ -1,23 +1,70 @@ #!/bin/sh -DISTRIB=mageia-dual +DISTRIB=Mageia TAG=manon -VERSION=2-beta1 +VERSION=2-rc +SUPPORT=dual-CD VV=1 MEDIAMAIN=media/core PIECES="$HOME/build_bcd/pieces" -BUILDPATH="$HOME/build_bcd/build/$DISTRIB-$VERSION" -BUILDISOPATH="$HOME/build_bcd/iso/$DISTRIB-$VERSION" +OLDBUILDPATH="$HOME/build_bcd/build/mageia-dual-$VERSION" +BUILDPATH="$HOME/build_bcd/build/$DISTRIB-$VERSION-$SUPPORT" +BUILDISOPATH="$HOME/build_bcd/iso/$DISTRIB-$VERSION-$SUPPORT" # genisoimage options -AGENISO="$DISTRIB - 2 beta1" +AGENISO="$DISTRIB - 2 rc" PUBLISHER="Mageia.Org" SYSID="$PUBLISHER" TOOL="$SYSID BCD" VOLSET="$SYSID $DISTRIB - $VERSION" VOLUME="$DISTRIB-$VERSION" +echo $BUILDPATH/x86_64/$MEDIAMAIN +# build both arch +./bcd.pl dual.xml all copy noiso +./bcd.pl dual64.xml all copy noiso + +# clean +rm -rf $BUILDPATH +rm -rvf $BUILDISOPATH +mkdir -p $BUILDPATH +mkdir -p $BUILDISOPATH + +# remove stuff to make size fit +for i in i586 x86_64 +do + cp -af $OLDBUILDPATH-$i/$i $BUILDPATH + rm -vf $BUILDPATH/$i/install/images/boot.iso $BUILDPATH/$i/install/images/*nonfree* + rm -rvf $BUILDPATH/$i/install/images/alternatives + rm -rvf $BUILDPATH/$i/isolinux +done +sync +cp -r $PIECES/iso/dual/isolinux $BUILDPATH + +# use symbolic links on noarch +cd $BUILDPATH/x86_64/$MEDIAMAIN + +for i in *noarch.rpm +do + if [ -f "../../../i586/$MEDIAMAIN/$i" ];then + echo $i + echo "erase package $i" + rm -vf $i + echo "link with the i586 one" + ln -sf ../../../i586/$MEDIAMAIN/$i . + else + echo "no ../../../i586/$MEDIAMAIN/$i package" + fi +done + +# build idx file +for i in i586 x86_64 +do + cat $BUILDOLDPATH-$i/$i/pkg-$VERSION-$TAG.idx >> $BUILDPATH/$DISTRIB-$VERSION-$SUPPORT.idx +done + +# build iso genisoimage -f -r -J -hide-rr-moved -nobak -cache-inodes -no-emul-boot -boot-load-size 4 \ -A "$AGENISO" \ -publisher "$PUBLISHER" \ @@ -25,16 +72,16 @@ genisoimage -f -r -J -hide-rr-moved -nobak -cache-inodes -no-emul-boot -boot-loa -p "$TOOL" \ -volset "$VOLSET" \ -V "$VOLUME" \ - -o "$BUILDISOPATH/$DISTRIB-$VERSION.iso" \ + -o "$BUILDISOPATH/$DISTRIB-$VERSION-$SUPPORT.iso" \ -b isolinux/isolinux.bin \ -boot-info-table \ -quiet \ $BUILDPATH/ -du -sh $BUILDPATH/$DISTRIB-$VERSION.iso -echo "$BUILDPATH/$DISTRIB-$VERSION.idx" -cd $BUILDPATH/ -isohybrid -fatfirst $BUILDPATH/$DISTRIB-$VERSION.iso -cp $BUILDPATH/$DISTRIB-$VERSION.idx . -md5sum $DISTRIB-$VERSION-dual.iso > $DISTRIB-$VERSION.iso.md5 -sha1sum $DISTRIB-$VERSION.iso > $DISTRIB-$VERSION.iso.sha1 +du -sh $BUILDISOPATH/$DISTRIB-$VERSION-$SUPPORT.iso +echo "$BUILDISOPATH/$DISTRIB-$VERSION-$SUPPORT.idx" +cd $BUILDISOPATH/ +isohybrid -o 1 $BUILDISOPATH/$DISTRIB-$VERSION-$SUPPORT.iso +cp $BUILDISOPATH/$DISTRIB-$VERSION-$SUPPORT.idx . +md5sum $DISTRIB-$VERSION-$SUPPORT.iso > $DISTRIB-$VERSION-$SUPPORT.iso.md5 +sha1sum $DISTRIB-$VERSION-$SUPPORT.iso > $DISTRIB-$VERSION-$SUPPORT.iso.sha1 @@ -74,6 +74,8 @@ <exclude name="mini"> <file>lists/exclude_mini</file> </exclude> + <exclude> + </exclude> <!-- nosuggests options should be yes or no --> <nosuggests>yes</nosuggests> <!-- will be taken in {repo}{version}{arch}/media --> @@ -91,7 +93,7 @@ <mediainfo desc="All files relatives to media_info dir"> - <version>2-beta1</version> + <version>2-rc</version> <!-- set fullpath if youy want to use an files in a non MDV repositery --> <fullpath>/home/bcd/build_bcd/pieces/cauldron/i586/media/media_info</fullpath> <mediainfo_dir>media/media_info</mediainfo_dir> @@ -128,11 +130,11 @@ <synthesis>yes</synthesis> <header desc="Iso header info"> <systemid>Mageia</systemid> - <volumeid>Mageia - mageia dual 2 - beta1</volumeid> - <volumesetid>Mageia - 2 - dual - beta1</volumesetid> + <volumeid>Mageia - mageia dual 2 - rc</volumeid> + <volumesetid>Mageia - 2 - dual - rc</volumesetid> <publisherid>Mageia.Org</publisherid> <datapreparer>Mageia BCD</datapreparer> - <applicationid>mageia-dual - 2 - beta1</applicationid> + <applicationid>mageia-dual - 2 - rc</applicationid> <copyrightid>Mageia.Org</copyrightid> </header> <isohybrid> @@ -93,7 +93,7 @@ </media> <mediainfo desc="All files relatives to media_info dir"> - <version>2-beta1</version> + <version>2-rc</version> <!-- set fullpath if youy want to use an files in a non MDV repositery --> <fullpath>/home/bcd/build_bcd/pieces/cauldron/x86_64/media/media_info</fullpath> <mediainfo_dir>media/media_info</mediainfo_dir> @@ -130,11 +130,11 @@ <synthesis>yes</synthesis> <header desc="Iso header info"> <systemid>Mageia</systemid> - <volumeid>Mageia - mageia dual 2 - beta1</volumeid> - <volumesetid>Mageia - 2 - beta1</volumesetid> + <volumeid>Mageia - mageia dual 2 - rc</volumeid> + <volumesetid>Mageia - 2 - rc</volumesetid> <publisherid>Mageia.Org</publisherid> <datapreparer>Mageia BCD</datapreparer> - <applicationid>mageia-dual - 2 - beta1</applicationid> + <applicationid>mageia-dual - 2 - rc</applicationid> <copyrightid>Mageia.Org</copyrightid> </header> <isohybrid> diff --git a/dvd_free32.xml b/dvd_free32.xml index 7a1f015..7c4f797 100644 --- a/dvd_free32.xml +++ b/dvd_free32.xml @@ -104,7 +104,7 @@ </media> <mediainfo desc="All files relatives to media_info dir"> - <version>2-beta1</version> + <version>2-rc</version> <!-- set fullpath if you want to use an files in a non MDV repositery --> <fullpath>/home/bcd/build_bcd/pieces/cauldron/i586/media/media_info</fullpath> <mediainfo_dir>media/media_info</mediainfo_dir> @@ -140,11 +140,11 @@ <synthesis>yes</synthesis> <header desc="Iso header info"> <systemid>Mageia</systemid> - <volumeid>Mageia-2-i586-beta1</volumeid> - <volumesetid>Mageia 2 - Beta 1 - i586 DVD</volumesetid> + <volumeid>Mageia-2-i586-rc</volumeid> + <volumesetid>Mageia 2 - RC - i586 DVD</volumesetid> <publisherid>Mageia</publisherid> <datapreparer>Mageia BCD</datapreparer> - <applicationid>Mageia 2 - Beta 1</applicationid> + <applicationid>Mageia 2 - RC</applicationid> <copyrightid>Mageia</copyrightid> </header> <isohybrid> diff --git a/dvd_free64.xml b/dvd_free64.xml index 26144d7..53d8693 100644 --- a/dvd_free64.xml +++ b/dvd_free64.xml @@ -107,7 +107,7 @@ </media> <mediainfo desc="All files relatives to media_info dir"> - <version>2-beta1</version> + <version>2-rc</version> <!-- set fullpath if you want to use an files in a non MDV repositery --> <fullpath>/home/bcd/build_bcd/pieces/cauldron/x86_64/media/media_info</fullpath> <mediainfo_dir>media/media_info</mediainfo_dir> @@ -143,11 +143,11 @@ <synthesis>yes</synthesis> <header desc="Iso header info"> <systemid>Mageia</systemid> - <volumeid>Mageia-2-x86_64-beta1</volumeid> - <volumesetid>Mageia 2 - Beta 1 - x86_64 DVD</volumesetid> + <volumeid>Mageia-2-x86_64-rc</volumeid> + <volumesetid>Mageia 2 - RC - x86_64 DVD</volumesetid> <publisherid>Mageia</publisherid> <datapreparer>Mageia BCD</datapreparer> - <applicationid>Mageia 2 - Beta 1</applicationid> + <applicationid>Mageia 2 - RC</applicationid> <copyrightid>Mageia</copyrightid> </header> <isohybrid> diff --git a/lists/basesystem_mini b/lists/basesystem_mini index 5e7ee7a..208a4e2 100644 --- a/lists/basesystem_mini +++ b/lists/basesystem_mini @@ -119,3 +119,18 @@ sudo lvm2 mdadm task-lxde + +oxygen-gtk +oxygen-gtk3 + +bridge-utils +mc +martmontools +bash-completion +lshw +screen +iftop +tcpdump +freeipmi +samba-client +midori diff --git a/lists/exclude b/lists/exclude index b498ce0..a5127b0 100644 --- a/lists/exclude +++ b/lists/exclude @@ -111,17 +111,13 @@ maniadrive-data lmms mediawiki opencity -enlightenment -ethemes bootsplash-themes ardour mysql-workbench-oss entrance festvox-suopuhe-lj festvox-suopuhe-mv -hugin cacao -kaffe syslog-ng wine-doors task-xfce-devel @@ -132,7 +128,6 @@ uClibc-zlib1-devel # bugged ! drakfon -xguest perl-LaTeX-Driver texlive lilypond diff --git a/lists/exclude_free b/lists/exclude_free index bb856b2..dfb60f2 100644 --- a/lists/exclude_free +++ b/lists/exclude_free @@ -1,24 +1 @@ -# theme -#mandriva-theme-Free -mandriva-theme-Powerpack -mandriva-theme-One -mandriva-theme-Flash -mandriva-theme-Mini -#mandriva-release-Free -mandriva-release-Powerpack -mandriva-release-One -mandriva-release-Flash -mandriva-release-Mini -powerpack-kde4-config -one-kde4-config -flash-kde4-config -discovery-kde4-config -mandriva-lxde-config-Powerpack -mandriva-lxde-config-One -mandriva-lxde-config-Flash -mandriva-lxde-config-Mini -mandriva-xfce-config-Powerpack -mandriva-xfce-config-One -mandriva-xfce-config-Flash -mandriva-xfce-config-Mini mercurial diff --git a/lists/exclude_mini b/lists/exclude_mini index fb15e66..79c1456 100644 --- a/lists/exclude_mini +++ b/lists/exclude_mini @@ -9,9 +9,10 @@ kernel-rt kernel-tmb kernel-vserver kernel-server +kernel-desktop586 rsbac-admin apache-mod_rsbac apache-mpm-rsbac -samba- hpli - +kernel-source +kernel-desktop-devel diff --git a/lists/input_cat b/lists/input_cat index 92248c5..29c1afa 100644 --- a/lists/input_cat +++ b/lists/input_cat @@ -145,4 +145,68 @@ icedtea-web gnumeric abiword -genhdlist2 +usbutils +akregator +kontact +xguest +oxygen-gtk +oxygen-gtk3 +smplayer +mplayer-gui +kdegames4 +gcompris- +enigma +sushi +baobab +gnome-boxes +gnome-screenshot +gnome-contacts +gnome-documents +gnome-disk-utility +icewm +xli +simple-scan +python-at-spi + +kipi-common +kipi-plugins +kipi-plugins-acquireimages +kipi-plugins-advancedslideshow +kipi-plugins-batchprocess +kipi-plugins-calendar +kipi-plugins-debianscreenshot +kipi-plugins-dngconverter +kipi-plugins-expoblending +kipi-plugins-facebook +kipi-plugins-flashexport +kipi-plugins-flickr +kipi-plugins-galleryexport +kipi-plugins-gpssync +kipi-plugins-htmlexport +kipi-plugins-imageshackexport +kipi-plugins-imageviewer +kipi-plugins-ipodexport +kipi-plugins-jpeglossless +kipi-plugins-kioexportimport +kipi-plugins-kmlexport +kipi-plugins-kopete +kipi-plugins-metadataedit +kipi-plugins-panorama +kipi-plugins-photolayouts-editor +kipi-plugins-picasa +kipi-plugins-piwigoexport +kipi-plugins-printimages +kipi-plugins-rajceexport +kipi-plugins-rawconverter +kipi-plugins-removeredeyes +kipi-plugins-sendimages +kipi-plugins-shwup +kipi-plugins-smug +kipi-plugins-timeadjust +kipi-plugins-vkontakte +kipi-plugins-wikimedia +kipi-plugins-yandexfotki +kipi-plugins-youtube +hugin +vnstat +python-at-spi |