add howto.md

Write the page
This commit is contained in:
joborun linux 2022-03-01 02:35:40 +00:00
parent bb0d1b3948
commit da997494db
1 changed files with 63 additions and 0 deletions

63
howto.md Normal file
View File

@ -0,0 +1,63 @@
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