How do I build my own package server?
CyberLeo Kitsana
cyberleo at cyberleo.net
Tue Jun 24 15:41:38 UTC 2014
On 06/24/2014 08:55 AM, Bertram Scharpf wrote:
> Hi,
>
> this is sort of what I did until now:
>
> Inside a jail:
>
> - SVN-Update "/usr/ports".
> - Merge my own patch files for several packages.
> - Find the outdated ports using a self-written tool.
> - Do "make clean" and "make package" for them.
> - Build a package list.
>
> On all other machines and jails:
>
> - Load the package list.
> - Find the outdated packages.
> - Do "pkg_delete" and "pkg_add" for them.
>
> Now, the pkg_* tools are no longer supported! Rewriting my update tools
> would take at least two days and I have better things to do. On the
> other side, I doubt whether it would go any faster learning some
> portmaster or portupgrade tool until I find the features I need.
> (Actually, I tried portmaster and soon was tired of seeing it
> redundantly cleaning and recompiling ports.)
>
> Therefore my question: Is there any documentation how to build a package
> server that can be understood in finite time?
I have used poudirere[1] to great effect for this purpose. It produces a
ready-to-use repository that I just rsync over to an HTTP server for use
amongst my many jails.
Once properly configured, my update cycle now consists of running, on
the build server:
poudriere bulk -j cdnjail -p cdn -f
/usr/local/etc/poudriere/cdnjail-ports.list
...then rsync'ing the results to a webserver, followed by, on each jail:
pkg upgrade
...and that's it. This has replaced hundreds of lines of bourne shell
script that I used to use to maintain jails, and it is awesome*.
* for me, your mileage may vary.
[1] https://fossil.etoilebsd.net/poudriere/doc/trunk/doc/index.wiki
> On the other side: I do not feel very well having loads of SQLite
> databases in the base system.
Can you articulate this feeling further?
--
Fuzzy love,
-CyberLeo
Technical Administrator
CyberLeo.Net Webhosting
http://www.CyberLeo.Net
<CyberLeo at CyberLeo.Net>
Furry Peace! - http://www.fur.com/peace/
More information about the freebsd-questions
mailing list