Changeset 1542 in ProjectBuilder for devel/pb/bin/pb


Ignore:
Timestamp:
May 14, 2012, 2:53:24 AM (12 years ago)
Author:
Bruno Cornec
Message:
  • pb: Add documentation for newve and setupve; fix bug in build2pkg documentation (Eric Anderson)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • devel/pb/bin/pb

    r1541 r1542  
    492492=head2 build2pkg
    493493
    494 The build2pkg command takes the tar files created in the cms2build step and attempts to build the binary packages for your current operating system. In order for this step to work, you may need to edit the files in one of the $pbdefdir/$project/pbconf/$version/$project/{deb,rpm,pkg} directories. Those files will be used to try to build your package. Note that if you change those files, you need to re-run the cms2build step.
    495 
     494The build2pkg command takes the tar files created in the cms2build step and attempts to build the binary packages for your current operating system. In order for this step to work, you may need to edit the files in one of the $pbdefdir/$project/pbconf/$version/$project/{deb,rpm,pkg} directories. Those files will be used to try to build your package. Note that if you change those files, you need to re-run the cms2build step. Then you can run a command like:
     495
     496 % pb -p $project -r $version build2pkg
     497
     498To create the files in $project/build that comprise your binary package(s).
     499
     500=head2 newve
     501 
     502The newve command creates a new virtual environment, i.e. a chrooted OS for building packages. Using a virtual environment is an efficient way to build packages on a related set of operating systems. The OS's have to be related because the kernel will be shared.  Steps:
     503
     504=over 4
     505
     506=item Update ~/.pbrc
     507
     508Update your ~/.pbrc file to specify the vepath, velist, velogin, and vetype variables, e.g.:
     509
     510 vepath default = $ENV{HOME}/cache-project-builder/chroot
     511 velist default = debian-6.0-i386
     512 velogin default = pb
     513 vetype default = chroot
     514
     515You may also choose to specify a mirror for the OS packages, and optionally http/ftp proxies.  You can specify the proxies either through environment variables ($http_proxy/$ftp_proxy) or in the configuration file. The configuration file will be used if no corresponding environment variable has been set. For example, for debian and with a local squid proxy:
     516
     517 rbsmirrorsrv debian = http://mirrors1.kernel.org/debian/
     518 http_proxy default = http://localhost:3128/
     519 ftp_proxy default = http://localhost:3128/
     520
     521=item Run the cms2build command
     522
     523If you have deleted your $package/delivery directory, re-run the cms2build command as in the earlier step. This step is necessary to generate the I<package>/delivery/pbrc file.
     524
     525=item Create the new virtual environment
     526
     527Initialize the new operating system. This step will install the core OS packages for the virtual environment, e.g.:
     528
     529 % pb -v -p $project -m debian-6.0-i386 newve
     530
     531=back
     532
     533=head2 setupve
     534
     535The setupve command prepares a virtual environment for use by project builder. In particular it installs project-builder from the packages into the virtual environment. For example:
     536
     537 % pb -v -p $project -m debian-6.0-i386 setupve
     538
     539If you prefer to install the current SVN version of project builder, you can substitute the setupve option by the sbx2setupv one.
    496540
    497541=head1 AUTHORS
     
    30983142    my $http_proxy = pb_distro_get_param($pbos, $http_proxy_map);
    30993143
    3100     $ENV{'ftp_proxy'} = $ftp_proxy if ((defined $ftp_proxy) && ($ftp_proxy ne ''));
    3101     $ENV{'http_proxy'} = $http_proxy if ((defined $http_proxy) && ($http_proxy ne ''));
     3144    $ENV{'ftp_proxy'} = $ftp_proxy if ((defined $ftp_proxy) && ($ftp_proxy ne '') && (not defined $ENV{'ftp_proxy'}));
     3145    $ENV{'http_proxy'} = $http_proxy if ((defined $http_proxy) && ($http_proxy ne '') && (not defined $ENV{'http_proxy'}));
    31023146
    31033147    if (defined $ENV{'http_proxy'}) {
Note: See TracChangeset for help on using the changeset viewer.