Changeset 203 in ProjectBuilder for devel/pb/contrib/pbsetupqemu


Ignore:
Timestamp:
Oct 14, 2007, 7:41:38 PM (17 years ago)
Author:
Bruno Cornec
Message:

use make and not the macro not portable
document Ubuntu 6.06 distribution detection hack
fix some VMs handling pb

File:
1 edited

Legend:

Unmodified
Added
Removed
  • devel/pb/contrib/pbsetupqemu

    r200 r203  
    3737}
    3838
     39# For root
     40mkdir ".ssh",0700;
     41system 'cp /tmp/pbkey .ssh/authorized_keys';
     42chmod 0600,".ssh/authorized_keys";
     43
     44# For pb
    3945chdir "/home/pb";
    4046mkdir ".ssh",0700;
     
    5763chmod 0640,$file;
    5864
    59 # Adapt sudoers
    60 $file="/etc/sudoers";
    61 $found = 0;
    62 open(PBFILE,$file) || die "Unable to open $file";
    63 open(PBOUT,"> $file.new") || die "Unable to open $file.new";
    64 while (<PBFILE>) {
    65     $found = 1 if (/^pb   /);
    66     s/Defaults[ \t]+requiretty//;
    67     print PBOUT $_;
    68 }
    69 close(PBFILE);
    70 print PBOUT "pb   ALL=(ALL) NOPASSWD:ALL\n" if ( $found == 0 );
    71 close(PBOUT);
    72 rename("$file.new",$file);
    73 chmod 0440,$file;
    74 
    7565unlink "/tmp/pbkey";
    7666
    7767my ($ddir, $dver, $dfam, $dtype, $pbsuf) = pb_distro_init();
    78 # Suse wants sudoers as 640
    79 if (($ddir eq "sles") || ($ddir eq "suse")) {
    80     chmod 0640,$file;
    81 }
    8268print "distro tuple: ".join(',',($ddir, $dver, $dfam, $dtype, $pbsuf))."\n";
    8369
     
    10995} elsif ($ddir eq "suse") {
    11096    # New OpenSuSE
    111     system "export TERM=linux ; liste=\"\" ; for i in neon newt-devel slang-devel autoconf automake libtool gcc wget gcc-c++ docbook-utils ImageMagick man patch mkisofs sudo perl-DateManip perl-AppConfig perl-File-HomeDir xntp; do rpm -q \$i 1> /dev/null 2> /dev/null ; if [ \$\? != 0 ]; then liste=\"\$liste \$i\"; fi; done; echo \"Liste: \$liste\" ; if [ \"\$liste\" != \"\" ]; then yast2 -i \$liste ; fi";
     97    system "export TERM=linux ; liste=\"\" ; for i in neon newt-devel slang-devel autoconf automake libtool make gcc wget gcc-c++ docbook-utils ImageMagick man patch mkisofs sudo perl-DateManip perl-AppConfig perl-File-HomeDir xntp; do rpm -q \$i 1> /dev/null 2> /dev/null ; if [ \$\? != 0 ]; then liste=\"\$liste \$i\"; fi; done; echo \"Liste: \$liste\" ; if [ \"\$liste\" != \"\" ]; then yast2 -i \$liste ; fi";
    11298} elsif ( $dfam eq "md" ) {
    11399    if (( $dver eq "2006.0" ) || ( $dver eq "10.2" )) {
     
    118104    }
    119105} elsif ( $dfam eq "du" ) {
    120     system "apt-get update; apt-get -y install autoconf automake libtool g++ wget patch mondo groff imagemagick docbook-utils docbook2x docbook-to-man openssh-server dpkg-dev sudo debian-builder dh-make fakeroot libnewt-dev ntpdate libncurses5-dev libdate-manip-perl libappconfig-perl";
     106    if (( $dver eq "3.1" ) && ($ddir eq "debian")) {
     107        system "apt-get update; apt-get -y install autoconf automake libtool g++ wget patch mondo groff imagemagick docbook-utils docbook2x docbook-to-man ssh dpkg-dev sudo debian-builder dh-make fakeroot libnewt-dev ntpdate libncurses5-dev libdate-manip-perl libappconfig-perl";
     108    } else {
     109        system "apt-get update; apt-get -y install autoconf automake libtool g++ wget patch mondo groff imagemagick docbook-utils docbook2x docbook-to-man openssh-server dpkg-dev sudo debian-builder dh-make fakeroot libnewt-dev ntpdate libncurses5-dev libdate-manip-perl libappconfig-perl";
     110    }
    121111} elsif ( $dfam eq "gen" ) {
    122112    system "emerge neon newt slang autoconf automake subversion libtool gcc wget vim man groff lynx grub afio buffer mindi mondo-rescue cdrecord mkisofs ntp-client";
    123113} else {
    124114    print "No pkg to install\n";
     115}
     116
     117# Adapt sudoers
     118$file="/etc/sudoers";
     119$found = 0;
     120open(PBFILE,$file) || die "Unable to open $file";
     121open(PBOUT,"> $file.new") || die "Unable to open $file.new";
     122while (<PBFILE>) {
     123    $found = 1 if (/^pb   /);
     124    s/Defaults[ \t]+requiretty//;
     125    print PBOUT $_;
     126}
     127close(PBFILE);
     128print PBOUT "pb   ALL=(ALL) NOPASSWD:ALL\n" if ( $found == 0 );
     129close(PBOUT);
     130rename("$file.new",$file);
     131chmod 0440,$file;
     132
     133# Suse wants sudoers as 640
     134if (($ddir eq "sles") || ($ddir eq "suse")) {
     135    chmod 0640,$file;
    125136}
    126137
Note: See TracChangeset for help on using the changeset viewer.