Fullpkg is script for building packages from an abs-tree from scratch. This script:
- Checks whether the target package has been built.
- Finds dependencies for the target package and check that they are at the latest version.
- Write a list of packages to build and how deep are they in dependencies. (eg. A depends on B, B depends on C -> A is level 0, B is level 1, C is level 2)
- Copy PKGBUILD and files to a build directory.
- Builds the packages on inverse dependence level.
1 Set up
fullpkg uses some vars from /etc/libretools.conf, you need to setup these ones:
REPOS=(core extra ...) ABSROOT=$WORKDIR/abslibre FULLBUILDCMD="sudo libremakepkg -cumL -M --noconfirm -M --nocheck"
1.1 Architecture specific hooksThere are also files specific to the arch you have to install separatedly,
# pacman -Sy libretools-mips64elThose contains hooks specific for that architecture:
To use arch specific hooks you need to uncomment the right field in /etc/libretools.conf:
## These are architecture specific files. ## Uncomment them if you installed libretools-arch #source /etc/libretools.d/mips64el.conf #source /etc/libretools.d/x86_64.conf #source /etc/libretools.d/i686.conf
If you use fullpkg on i686 or x86_64, you can file a feature request at the issue tracker and attach a file containing your arch specific hooks. Those will be reviewed for inclusion on libretools.
2.1 Which are fullpkg optionsFullpkg will always have an updated list of options wich can be shown by using
$ fullpkg -h
2.2 Building packages using fullpkg
You need to cd to a dir wich contains a PKGBUILD for your target package and run fullpkg:
$ cd /dir/with/PKGBUILD $ fullpkg [options]
fullpkg will copy all PKGBUILDS and files for building the target package and their deps.
3 Problems with fullpkg
Report a bug on the libretools tracker.