web/howto.md

2.3 KiB

You will notice that joborun has an extra directory on its root / named /src

This is where source code goes and the repository should be 0777 so user make can write into it.

If it doesn't already exist as a user create pkg "% mkdir -p /src/pkg

cd /src/pkg git clone https://git.disroot.org/joborun-pkg/jobcore git clone https://git.disroot.org/joborun-pkg/jobextra

All of the source for joborun is in those repositories.

Shift into the name of the pkg you want to build. You will notice various files, as usually the original PKGBUILD that "inspired" our PKGBUILD, if it came from arch it should be noted as PKGBUILD-arch and then PKGBUILD is our own version.

deps: Is a file listing all the additional dependencies needed to build the package "on top" of the jobbot minimal chroot which must always be checked before a package is built. (pacman -Qsq >/tmp/Qsq diff -Nuar /src/Qsq /tmp/Qsq ) If there is a difference of additionally installed packages it should show in the + list.

To install additional dependencies do: % sudo pacman -S $(cat deps) or make a shortcut such as depS = sudo pacman -S $(cat deps)

key: if the source is signed, this is the GnuPgp key you need to import Simply: sh key

To make the package run /usr/local/bin/mkpkg (which is a modified way of running makepkg without risking of overexerting your machine)

The package should be produced: as pkgname-pkgver-x86_64.pkg.tar.xz If this is a jobcore pkg, move it to /var/cache/jobcore If this is a jobextra pkg, move it to /var/cache/jobextra

clean: Simply run sh clean and the directory will be left as it was when you entered it.

deps: Once again you should remove additional building dependencies when you are done by simply:

% sudo pacman -Rnsu $(cat deps) or make a shortcut such as depR = sudo pacman -Rnsu $(cat deps) Now repeat this for all the packages in the repo.

Summary

cd pkgname sh key depS mkpkg sudo mv pkgname*.pkg.tar.xz /var/cache/job..../ sh clean depR

If you want a list of all the pkg names inside each repository: % pacman -Sl jobcore >/stc/pkg/jobcore.list

You can take the above sequence of commands (not shortcuts the complete commands) use a for pkgname in /stc/pkg/jobcore.list do .... ... and go away for the weekend, if all goes well the entire repository will be full with your own built packages.

Enjoy and report problems to reddit.com/r/joborun