pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

ANN: Availability of pkg(8)-capable pkgsrc



I am assuming anyone reading knows that pkg(8) is the binary package
management tool for the FreeBSD ports collection and it replaces all the native pkg_* tool functionality. [1][2][3]

Pierry Pronchery (Khorben) gave a presentation about the feasibility of
using "pkg-ng" with pkgsrc at pkgsrcCon 2015 [4]. He followed that up with bringing pkg(8) to pkgsrc [5]. Without the framework support, that import was useless. I don't know how the presentation was received (apparently not with much enthusiasm) as Pierre ceased his initial work. His branch at EdgeBSD was less than 5% complete by my estimation.

I have mostly completed his work [6]. The referenced link is pkgsrc with an overlay and it's automatically updated every 6 hours. Anyone that desires to use the pkg(8) manager, especially those looking to create repositories for distribution, needs to switch to this version of pkgsrc, at least until pkg(8) is completely supported in pkgsrc itself.

The following systems (OPSYS) should work now:
  * FreeBSD
  * DragonFly
  * NetBSD

These systems (OPSYS) are untested but may work:
  * OpenBSD
  * MirBSD
  * Bitrig
  * Linux

This system (OPSYS) might work, probably doesn't, support planned:
  * SunOS

Any other OPSYS will not work and pkg(8) is limited to ELF-based systems.

Getting a functional pkg(8) based system is straight-forward on non-NetBSD platforms by using the standard bootstrap script. It's slightly more involved for NetBSD systems. The instructions for both cases are located at the top README file:

https://raw.githubusercontent.com/jrmarino/pkgsrc-synth/master/README

I would love to see people try to use this variant of pkgsrc and report back any non-functionality.

VULNERABILITY AUDITS:
Yes, these are supported. This was a major task for me to convert the limited (and mistake prone) NetBSD vulnerability database to FreeBSD's VuXML format that pkg(8) uses. I've hosted the xml on a DragonFly server also transformed the xml to web pages [7][8]. These are also updated every 6 hours as needed.

AUDIT NOTE: I just noticed that fetching the security file on NetBSD results in a segfault/core dump. That probably means fetching on NetBSD is broken everywhere (e.g. remote repositories). Any help to diagnose that issue on NetBSD would be appreciated as the cause isn't obvious to me after first glance at gdb and fetching code.

NEW DEFAULTS:
* The WRKOBJDIR default is now ${PKGSRCDIR}-aux/construction
  example: /usr/pkgsrc-synth-master-aux/construction
  This is to prevent build objects from gathering in a
  version-controlled repository.

* The DISTDIR default is now ${PKGSRCDIR}-aux/distfiles

Both of these can be adjusted by /etc/mk.conf of course.

Basically this is a call for interested parties to flush out remaining issues with either pkg(8) itself or the framework support. If the message is "nobody cares" I'll probably stop working on it like Pierre did before me.

Regards,
John

[1] https://www.freebsd.org/doc/handbook/pkgng-intro.html
[2] https://www.digitalocean.com/community/tutorials/how-to-manage-packages-on-freebsd-10-1-with-pkg
[3] https://www.bsdnow.tv/tutorials/pkgng
[4] https://www.pkgsrc.org/pkgsrcCon/2015/slides/khorben-pkgsrc-meets-pkg-ng.pdf
[5] http://pkgsrc.se/pkgtools/pkg
[6] https://github.com/jrmarino/pkgsrc-synth
[7] http://muscles.dragonflybsd.org/pkgsrc-vuxml/
[8] The transform template is older and missing handling; I'm waiting
    for the latest template and will regenerate.

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus



Home | Main Index | Thread Index | Old Index