Build the complete repositories¶
Repository metadata¶
The repository has a few metadata which must be filled:
# Name of the gpg key to use
GPG_KEY="kakwa"
# Output directory for the repos
OUTPUT="out/"
# Package provider
ORIGIN="kakwa"
Clean before build¶
Optionally, it’s possible to clean everything before build:
# optionnally, cleaning everything
$ make clean
Create the repositories¶
To build the repositories, just run:
Note
use -j <number of jobs> to run multiple packaging jobs in parallele
Note
use ERROR=skip to ignore package build failures when calling make <pkg>_repo and keep continuing building the repo.
Build deb repository¶
# create the deb repository
$ make deb_repo -j 4
# same ignoring individual package build errors
$ make deb_repo -j 4 ERROR=skip
Build the rpm repository¶
# create the rpm repository
$ make rpm_repo -j 4
Create both repo in one command¶
# create everything
$ make all -j 4
# same ignoring individual package build errors
$ make rpm_repo -j 4 ERROR=skip
Result repositories¶
The resulting repositories will look like that:
out
├── deb
│ └── sid
│ └── amd64
│ ├── conf
│ │ └── distributions
│ ├── db
│ │ ├── checksums.db
│ │ ├── contents.cache.db
│ │ ├── packages.db
│ │ ├── references.db
│ │ ├── release.caches.db
│ │ └── version
│ ├── dists
│ │ └── sid
│ │ └── contrib
│ │ └── binary-amd64
│ └── pool
│ └── contrib
│ ├── d
│ │ └── dwm-desktop
│ │ └── dwm-desktop_5.9.0-1_amd64.deb
│ ├── g
│ │ └── gogs
│ │ └── gogs_0.7.22-1_amd64.deb
│ ├── m
│ │ └── mksh-skel
│ │ └── mksh-skel_1.0.0-1_all.deb
│ └── p
│ ├── python-asciigraph
│ │ └── python-asciigraph_1.1.3-1_all.deb
│ ├── python-dnscherry
│ │ └── python-dnscherry_0.1.3-1_all.deb
│ ├── python-ldapcherry
│ │ └── python-ldapcherry_0.2.2-1_all.deb
│ ├── python-ldapcherry-ppolicy-cracklib
│ │ └── python-ldapcherry-ppolicy-cracklib_0.1.0-1_all.deb
│ └── python-pygraph-redis
│ └── python-pygraph-redis_0.2.1-1_all.deb
├── pub.gpg
└── rpm
└── debU
└── x86_64
├── repodata
│ ├── 454e22ec768a30aa8e0c169454729501bbcd60f4365ce920d8125f2f4692d987-primary.xml.gz
│ ├── 8f0383e61bd158979fd85db8a8e26a269b65f2327b183f99ba5139b559dd0336-other.xml.gz
│ ├── a91c0afbd9bfef2cfb0a00fb3fe5a7490520dbf6d55ea098826cc6f253354552-other.sqlite.bz2
│ ├── b49576332c4b8277aa173f57ee86b94db25edf2790e5712a39f22044c4c31669-filelists.xml.gz
│ ├── b7cc2998becaa1b7c4592c3fa81fe5eca4bb522726d8634362cf2054ef01fae2-filelists.sqlite.bz2
│ ├── e6e5b087813b07eef01de6cbfa9df8ec496affb79141cef026c28a812096dd4b-primary.sqlite.bz2
│ └── repomd.xml
└── RPMS
├── dwm-desktop-5.9.0-1.debU.x86_64.rpm
├── gogs-0.7.22-1.debU.x86_64.rpm
├── mksh-skel-1.0.0-1.debU.noarch.rpm
├── python-asciigraph-1.1.3-1.debU.noarch.rpm
├── python-dnscherry-0.1.3-1.debU.noarch.rpm
├── python-ldapcherry-0.2.2-1.debU.noarch.rpm
├── python-ldapcherry-ppolicy-cracklib-0.1.0-1.debU.noarch.rpm
└── python-pygraph-redis-0.2.1-1.debU.noarch.rpm