xbps/bin/xbps-fbulk/xbps-fbulk.1
Juan RP 1f4cfc377b
xbps-fbulk: misc changes (v3).
- Re-add original behaviour now I fixed the real issue for missing
  logs. Keep the build/run pipeline full as soon as possible.
- Added -s, --system. System build mode. To only build pkgs that
  are installed manually in your system.
- Added long options; sync usage.
- Restrict max jobs to ncores; there are issues with shared data,
  and until they are resolved this is the only way to make it work
  reliably.
2020-04-20 18:50:11 +02:00

125 lines
3.1 KiB
Groff

.Dd April 20, 2020
.Dt XBPS-FBULK 1
.Sh NAME
.Nm xbps-fbulk
.Nd XBPS utility to perform a fast bulk build of void-packages
.Sh SYNOPSIS
.Nm xbps-fbulk
.Op OPTIONS
.Ar /path/to/void-packages
.Op pkgN pkg+N ...
.Sh DESCRIPTION
The
.Nm
utility iterates all srcpkg directories in the
.Xr void-packages
repository or processes the
.Xr pkgN
arguments, and then runs
.Ar 'xbps-src show-build-deps'
to build a dependency tree on the fly.
.Pp
As the dependency tree is built, terminal dependencies are built
and packaged on the fly.
.Pp
As these builds complete, additional dependencies may be satisfied and be
added to the build order. Ultimately the entire tree is built.
.Pp
Only one attempt is made to build any given package, no matter how many
other packages depend on it.
.Pp
When using
.Ar system mode
only installed packages that are in manual mode (see
.Xr xbps-pkgdb 1)
will be processed.
This is useful to keep up a running system up-to-date.
.Sh OPTIONS
.Bl -tag -width -x
.It Fl j, Fl -jobs Ar X
Set number of parallel builds running at the same time. By default set to 1.
.It Fl l, Fl -logdir Ar logdir
Set the log directory. By default set to `fbulk-log.<pid>`.
.It Fl d, Fl -debug
Enables extra debugging shown to stderr.
.It Fl s, Fl -system
System build mode. If set, only packages that were installed manually
in your system will be processed.
.It Fl h, Fl -help
Show the help message.
.It Fl v, Fl -verbose
Enables verbose messages.
.It Fl V, Fl -version
Show the version information.
.El
.Sh FILES
.Bl -tag -width logdir/skipped
.It Ar logdir/run
Packages that are being built.
.It Ar logdir/good
Packages that were built successfully.
.It Ar logdir/bad
Packages that failed to build.
.It Ar logdir/skipped
Packages that were not built because they had to be skipped (unsupported architecture, broken or restricted).
.It Ar logdir/deps
Packages that were not built due to failed or missing dependencies.
.El
.Sh NOTES
The
.Ar masterdir
in the
.Ar void-packages
repository must be fully populated for chroot operations, and some options
need to be set in
.Ar etc/conf
to make
.Nm
work correctly:
.Bl -tag -width XBPS_CHROOT_CMD=uchroot
.It Ar XBPS_CHROOT_CMD=uchroot
The
.Xr xbps-uchroot 1
utility is required because
.Nm
builds packages in temporary masterdirs that are mounted with
.Ar overlayfs .
.El
.Pp
Make sure the user running
.Nm
has rights to execute
.Xr xbps-uchroot 1
and the kernel supports the overlay filesystem, introduced in 4.0.
.Pp
.Sh SEE ALSO
.Xr xbps-checkvers 1 ,
.Xr xbps-create 1 ,
.Xr xbps-dgraph 1 ,
.Xr xbps-digest 1 ,
.Xr xbps-fetch 1 ,
.Xr xbps-install 1 ,
.Xr xbps-pkgdb 1 ,
.Xr xbps-query 1 ,
.Xr xbps-reconfigure 1 ,
.Xr xbps-remove 1 ,
.Xr xbps-rindex 1 ,
.Xr xbps-uchroot 1 ,
.Xr xbps-uunshare 1 ,
.Xr xbps.d 5
.Sh AUTHORS
The
.Nm
utility was originally written by
.An Matthew Dillon <dillon@backplane.com>
for the
.Ar DragonFlyBSD project.
.Pp
.An Juan Romero Pardines <xtraeme@gmail.com>
adapted it for xbps and added some new features.
.Sh BUGS
Probably, but I try to make this not happen. Use it under your own
responsibility and enjoy your life.
.Pp
Report bugs at https://github.com/void-linux/xbps/issues