Initial import of genpkgng, a utility which will convert a pkgsrc
binary package to a FreeBSD binary pkg. pkgsrc binary packages keep more metadata, and do Dewey matching on package version numbers, so it's not possible to convert in the other direction. The DESCR says: This is a small utility to generate a FreeBSD pkg binary package from a pkgsrc binary package. It is invoked simply, using a command like: genpkgng ssam-1.9nb1.tgz and it will convert the pkgsrc binary package to a pkg one: % ./genpkgng.sh perl-5.18.1nb2.tgz Converting perl-5.18.1nb2.tgz -rw-r--r-- 1 agc users 16597860 Apr 24 19:01 perl-5.18.1nb2.txz %
This commit is contained in:
parent
bbc7425f10
commit
e629c60d76
8 changed files with 1223 additions and 0 deletions
12
pkgtools/genpkgng/DESCR
Normal file
12
pkgtools/genpkgng/DESCR
Normal file
|
@ -0,0 +1,12 @@
|
|||
This is a small utility to generate a FreeBSD pkg binary package
|
||||
from a pkgsrc binary package. It is invoked simply, using a command
|
||||
like:
|
||||
|
||||
genpkgng ssam-1.9nb1.tgz
|
||||
|
||||
and it will convert the pkgsrc binary package to a pkg one:
|
||||
|
||||
% ./genpkgng.sh perl-5.18.1nb2.tgz
|
||||
Converting perl-5.18.1nb2.tgz
|
||||
-rw-r--r-- 1 agc users 16597860 Apr 24 19:01 perl-5.18.1nb2.txz
|
||||
%
|
29
pkgtools/genpkgng/Makefile
Normal file
29
pkgtools/genpkgng/Makefile
Normal file
|
@ -0,0 +1,29 @@
|
|||
# $NetBSD: Makefile,v 1.1.1.1 2014/04/27 00:10:34 agc Exp $
|
||||
|
||||
DISTNAME= genpkgng-20140425
|
||||
CATEGORIES= pkgtools
|
||||
MASTER_SITES= # empty
|
||||
DISTFILES= # empty
|
||||
|
||||
MAINTAINER= agc@NetBSD.org
|
||||
HOMEPAGE= http://www.NetBSD.org/
|
||||
COMMENT= Convert a pkgsrc binary package to a FreeBSD pkg
|
||||
LICENSE= modified-bsd
|
||||
|
||||
AUTO_MKDIRS= yes
|
||||
|
||||
SUBST_CLASSES+= mtree
|
||||
SUBST_STAGE.mtree= pre-configure
|
||||
SUBST_MESSAGE.mtree= Fix location of MTREE_DIRS file
|
||||
SUBST_FILES.mtree= genpkgng.sh
|
||||
SUBST_SED.mtree= -e 's|@MTREE_DIR_DIR@|${PREFIX}/libdata/genpkgng|'
|
||||
|
||||
do-extract:
|
||||
${CP} -R ${FILESDIR} ${WRKSRC}
|
||||
|
||||
do-install:
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/genpkgng ${DESTDIR}${PREFIX}/bin
|
||||
${INSTALL_DATA} ${WRKSRC}/MTREE_DIRS ${DESTDIR}${PREFIX}/libdata/genpkgng/
|
||||
${INSTALL_MAN} ${WRKSRC}/genpkgng.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/
|
||||
|
||||
.include "../../mk/bsd.pkg.mk"
|
4
pkgtools/genpkgng/PLIST
Normal file
4
pkgtools/genpkgng/PLIST
Normal file
|
@ -0,0 +1,4 @@
|
|||
@comment $NetBSD: PLIST,v 1.1.1.1 2014/04/27 00:10:34 agc Exp $
|
||||
bin/genpkgng
|
||||
libdata/genpkgng/MTREE_DIRS
|
||||
man/man1/genpkgng.1
|
1
pkgtools/genpkgng/distinfo
Normal file
1
pkgtools/genpkgng/distinfo
Normal file
|
@ -0,0 +1 @@
|
|||
$NetBSD: distinfo,v 1.1.1.1 2014/04/27 00:10:34 agc Exp $
|
961
pkgtools/genpkgng/files/MTREE_DIRS
Normal file
961
pkgtools/genpkgng/files/MTREE_DIRS
Normal file
|
@ -0,0 +1,961 @@
|
|||
#mtree
|
||||
# $FreeBSD: /tmp/pcvs/ports/Templates/BSD.local.dist,v 1.3 2010-11-12 20:57:14 pav Exp $
|
||||
#
|
||||
# Please see the file src/etc/mtree/README before making changes to this file.
|
||||
#
|
||||
|
||||
/set type=dir uname=root gname=wheel mode=0755
|
||||
.
|
||||
bin
|
||||
..
|
||||
etc
|
||||
devd
|
||||
..
|
||||
man.d
|
||||
..
|
||||
pam.d
|
||||
..
|
||||
rc.d
|
||||
..
|
||||
..
|
||||
include
|
||||
X11
|
||||
..
|
||||
..
|
||||
info
|
||||
..
|
||||
lib
|
||||
X11
|
||||
app-defaults
|
||||
..
|
||||
fonts
|
||||
local
|
||||
..
|
||||
..
|
||||
..
|
||||
..
|
||||
libdata
|
||||
ldconfig
|
||||
..
|
||||
ldconfig32
|
||||
..
|
||||
pkgconfig
|
||||
..
|
||||
..
|
||||
libexec
|
||||
..
|
||||
man
|
||||
/set uname=man
|
||||
cat1
|
||||
..
|
||||
cat2
|
||||
..
|
||||
cat3
|
||||
..
|
||||
cat4
|
||||
..
|
||||
cat5
|
||||
..
|
||||
cat6
|
||||
..
|
||||
cat7
|
||||
..
|
||||
cat8
|
||||
..
|
||||
cat9
|
||||
..
|
||||
catl
|
||||
..
|
||||
catn
|
||||
..
|
||||
de.ISO8859-1 uname=root
|
||||
cat1
|
||||
..
|
||||
cat2
|
||||
..
|
||||
cat3
|
||||
..
|
||||
cat4
|
||||
..
|
||||
cat5
|
||||
..
|
||||
cat6
|
||||
..
|
||||
cat7
|
||||
..
|
||||
cat8
|
||||
..
|
||||
cat9
|
||||
..
|
||||
catl
|
||||
..
|
||||
catn
|
||||
..
|
||||
/set uname=root
|
||||
man1
|
||||
..
|
||||
man2
|
||||
..
|
||||
man3
|
||||
..
|
||||
man4
|
||||
..
|
||||
man5
|
||||
..
|
||||
man6
|
||||
..
|
||||
man7
|
||||
..
|
||||
man8
|
||||
..
|
||||
man9
|
||||
..
|
||||
manl
|
||||
..
|
||||
mann
|
||||
..
|
||||
..
|
||||
en.ISO8859-1
|
||||
/set uname=man
|
||||
cat1
|
||||
..
|
||||
cat1aout
|
||||
..
|
||||
cat2
|
||||
..
|
||||
cat3
|
||||
..
|
||||
cat4
|
||||
i386
|
||||
..
|
||||
..
|
||||
cat5
|
||||
..
|
||||
cat6
|
||||
..
|
||||
cat7
|
||||
..
|
||||
cat8
|
||||
i386
|
||||
..
|
||||
..
|
||||
cat9
|
||||
i386
|
||||
..
|
||||
..
|
||||
catn
|
||||
..
|
||||
..
|
||||
ja uname=root
|
||||
cat1
|
||||
..
|
||||
cat2
|
||||
..
|
||||
cat3
|
||||
..
|
||||
cat4
|
||||
..
|
||||
cat5
|
||||
..
|
||||
cat6
|
||||
..
|
||||
cat7
|
||||
..
|
||||
cat8
|
||||
..
|
||||
cat9
|
||||
..
|
||||
catl
|
||||
..
|
||||
catn
|
||||
..
|
||||
/set uname=root
|
||||
man1
|
||||
..
|
||||
man2
|
||||
..
|
||||
man3
|
||||
..
|
||||
man4
|
||||
..
|
||||
man5
|
||||
..
|
||||
man6
|
||||
..
|
||||
man7
|
||||
..
|
||||
man8
|
||||
..
|
||||
man9
|
||||
..
|
||||
manl
|
||||
..
|
||||
mann
|
||||
..
|
||||
..
|
||||
man1
|
||||
..
|
||||
man2
|
||||
..
|
||||
man3
|
||||
..
|
||||
man4
|
||||
..
|
||||
man5
|
||||
..
|
||||
man6
|
||||
..
|
||||
man7
|
||||
..
|
||||
man8
|
||||
..
|
||||
man9
|
||||
..
|
||||
manl
|
||||
..
|
||||
mann
|
||||
..
|
||||
ru.KOI8-R
|
||||
/set uname=man
|
||||
cat1
|
||||
..
|
||||
cat2
|
||||
..
|
||||
cat3
|
||||
..
|
||||
cat4
|
||||
..
|
||||
cat5
|
||||
..
|
||||
cat6
|
||||
..
|
||||
cat7
|
||||
..
|
||||
cat8
|
||||
..
|
||||
cat9
|
||||
..
|
||||
catl
|
||||
..
|
||||
catn
|
||||
..
|
||||
/set uname=root
|
||||
man1
|
||||
..
|
||||
man2
|
||||
..
|
||||
man3
|
||||
..
|
||||
man4
|
||||
..
|
||||
man5
|
||||
..
|
||||
man6
|
||||
..
|
||||
man7
|
||||
..
|
||||
man8
|
||||
..
|
||||
man9
|
||||
..
|
||||
manl
|
||||
..
|
||||
mann
|
||||
..
|
||||
..
|
||||
..
|
||||
sbin
|
||||
..
|
||||
share
|
||||
aclocal
|
||||
..
|
||||
applications
|
||||
..
|
||||
dict
|
||||
..
|
||||
doc
|
||||
ja
|
||||
..
|
||||
..
|
||||
emacs
|
||||
site-lisp
|
||||
..
|
||||
..
|
||||
examples
|
||||
..
|
||||
java
|
||||
classes
|
||||
..
|
||||
..
|
||||
locale
|
||||
af
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
am
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ar
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
az
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
be
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
bg
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
bn
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
br
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
bs
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ca
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
cs
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
cy
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
da
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
de
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
de_AT
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
dk
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ee
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
el
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
en
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
en_AU
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
en_CA
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
en_GB
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
eo
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
es
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
es_ES
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
es_MX
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
et
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
eu
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
fa
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
fa_IR
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
fi
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
fr
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
fr_FR
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ga
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
gl
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
gu
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
he
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
hi
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
hr
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
hu
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
id
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
is
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
it
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ja
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ka
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
kn
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ko
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
li
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
lt
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
lv
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
mk
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ml
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
mn
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ms
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
mt
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
nb
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ne
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
nl
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
nn
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
no
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
or
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
pa
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
pl
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
pt
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
pt_BR
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
pt_PT
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ro
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ru
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
sk
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
sl
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
sq
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
sr
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
sr@Latn
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
sv
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
ta
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
tg
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
th
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
tk
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
tr
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
uk
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
uz
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
vi
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
wa
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
zh
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
zh_CN
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
zh_CN.GB2312
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
zh_TW
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
zh_TW.Big5
|
||||
LC_MESSAGES
|
||||
..
|
||||
..
|
||||
..
|
||||
misc
|
||||
..
|
||||
nls
|
||||
C
|
||||
..
|
||||
af_ZA.ISO8859-1
|
||||
..
|
||||
af_ZA.ISO8859-15
|
||||
..
|
||||
af_ZA.UTF-8
|
||||
..
|
||||
am_ET.UTF-8
|
||||
..
|
||||
be_BY.CP1131
|
||||
..
|
||||
be_BY.CP1251
|
||||
..
|
||||
be_BY.ISO8859-5
|
||||
..
|
||||
be_BY.UTF-8
|
||||
..
|
||||
bg_BG.CP1251
|
||||
..
|
||||
bg_BG.UTF-8
|
||||
..
|
||||
ca_ES.ISO8859-1
|
||||
..
|
||||
ca_ES.ISO8859-15
|
||||
..
|
||||
ca_ES.UTF-8
|
||||
..
|
||||
cs_CZ.ISO8859-2
|
||||
..
|
||||
cs_CZ.UTF-8
|
||||
..
|
||||
da_DK.ISO8859-1
|
||||
..
|
||||
da_DK.ISO8859-15
|
||||
..
|
||||
da_DK.UTF-8
|
||||
..
|
||||
de_AT.ISO8859-1
|
||||
..
|
||||
de_AT.ISO8859-15
|
||||
..
|
||||
de_AT.UTF-8
|
||||
..
|
||||
de_CH.ISO8859-1
|
||||
..
|
||||
de_CH.ISO8859-15
|
||||
..
|
||||
de_CH.UTF-8
|
||||
..
|
||||
de_DE.ISO8859-1
|
||||
..
|
||||
de_DE.ISO8859-15
|
||||
..
|
||||
de_DE.UTF-8
|
||||
..
|
||||
el_GR.ISO8859-7
|
||||
..
|
||||
el_GR.UTF-8
|
||||
..
|
||||
en_AU.ISO8859-1
|
||||
..
|
||||
en_AU.ISO8859-15
|
||||
..
|
||||
en_AU.US-ASCII
|
||||
..
|
||||
en_AU.UTF-8
|
||||
..
|
||||
en_CA.ISO8859-1
|
||||
..
|
||||
en_CA.ISO8859-15
|
||||
..
|
||||
en_CA.US-ASCII
|
||||
..
|
||||
en_CA.UTF-8
|
||||
..
|
||||
en_GB.ISO8859-1
|
||||
..
|
||||
en_GB.ISO8859-15
|
||||
..
|
||||
en_GB.US-ASCII
|
||||
..
|
||||
en_GB.UTF-8
|
||||
..
|
||||
en_IE.UTF-8
|
||||
..
|
||||
en_NZ.ISO8859-1
|
||||
..
|
||||
en_NZ.ISO8859-15
|
||||
..
|
||||
en_NZ.US-ASCII
|
||||
..
|
||||
en_NZ.UTF-8
|
||||
..
|
||||
en_US.ISO8859-1
|
||||
..
|
||||
en_US.ISO8859-15
|
||||
..
|
||||
en_US.UTF-8
|
||||
..
|
||||
es_ES.ISO8859-1
|
||||
..
|
||||
es_ES.ISO8859-15
|
||||
..
|
||||
es_ES.UTF-8
|
||||
..
|
||||
et_EE.ISO8859-15
|
||||
..
|
||||
et_EE.UTF-8
|
||||
..
|
||||
fi_FI.ISO8859-1
|
||||
..
|
||||
fi_FI.ISO8859-15
|
||||
..
|
||||
fi_FI.UTF-8
|
||||
..
|
||||
fr_BE.ISO8859-1
|
||||
..
|
||||
fr_BE.ISO8859-15
|
||||
..
|
||||
fr_BE.UTF-8
|
||||
..
|
||||
fr_CA.ISO8859-1
|
||||
..
|
||||
fr_CA.ISO8859-15
|
||||
..
|
||||
fr_CA.UTF-8
|
||||
..
|
||||
fr_CH.ISO8859-1
|
||||
..
|
||||
fr_CH.ISO8859-15
|
||||
..
|
||||
fr_CH.UTF-8
|
||||
..
|
||||
fr_FR.ISO8859-1
|
||||
..
|
||||
fr_FR.ISO8859-15
|
||||
..
|
||||
fr_FR.UTF-8
|
||||
..
|
||||
he_IL.UTF-8
|
||||
..
|
||||
hi_IN.ISCII-DEV
|
||||
..
|
||||
hr_HR.ISO8859-2
|
||||
..
|
||||
hr_HR.UTF-8
|
||||
..
|
||||
hu_HU.ISO8859-2
|
||||
..
|
||||
hu_HU.UTF-8
|
||||
..
|
||||
hy_AM.ARMSCII-8
|
||||
..
|
||||
hy_AM.UTF-8
|
||||
..
|
||||
is_IS.ISO8859-1
|
||||
..
|
||||
is_IS.ISO8859-15
|
||||
..
|
||||
is_IS.UTF-8
|
||||
..
|
||||
it_CH.ISO8859-1
|
||||
..
|
||||
it_CH.ISO8859-15
|
||||
..
|
||||
it_CH.UTF-8
|
||||
..
|
||||
it_IT.ISO8859-1
|
||||
..
|
||||
it_IT.ISO8859-15
|
||||
..
|
||||
it_IT.UTF-8
|
||||
..
|
||||
ja_JP.SJIS
|
||||
..
|
||||
ja_JP.UTF-8
|
||||
..
|
||||
ja_JP.eucJP
|
||||
..
|
||||
kk_KZ.PT154
|
||||
..
|
||||
kk_KZ.UTF-8
|
||||
..
|
||||
ko_KR.CP949
|
||||
..
|
||||
ko_KR.UTF-8
|
||||
..
|
||||
ko_KR.eucKR
|
||||
..
|
||||
la_LN.ISO8859-1
|
||||
..
|
||||
la_LN.ISO8859-15
|
||||
..
|
||||
la_LN.ISO8859-2
|
||||
..
|
||||
la_LN.ISO8859-4
|
||||
..
|
||||
la_LN.US-ASCII
|
||||
..
|
||||
lt_LT.ISO8859-13
|
||||
..
|
||||
lt_LT.ISO8859-4
|
||||
..
|
||||
lt_LT.UTF-8
|
||||
..
|
||||
nl_BE.ISO8859-1
|
||||
..
|
||||
nl_BE.ISO8859-15
|
||||
..
|
||||
nl_BE.UTF-8
|
||||
..
|
||||
nl_NL.ISO8859-1
|
||||
..
|
||||
nl_NL.ISO8859-15
|
||||
..
|
||||
nl_NL.UTF-8
|
||||
..
|
||||
no_NO.ISO8859-1
|
||||
..
|
||||
no_NO.ISO8859-15
|
||||
..
|
||||
no_NO.UTF-8
|
||||
..
|
||||
pl_PL.ISO8859-2
|
||||
..
|
||||
pl_PL.UTF-8
|
||||
..
|
||||
pt_BR.ISO8859-1
|
||||
..
|
||||
pt_BR.UTF-8
|
||||
..
|
||||
pt_PT.ISO8859-1
|
||||
..
|
||||
pt_PT.ISO8859-15
|
||||
..
|
||||
pt_PT.UTF-8
|
||||
..
|
||||
ro_RO.ISO8859-2
|
||||
..
|
||||
ro_RO.UTF-8
|
||||
..
|
||||
ru_RU.CP1251
|
||||
..
|
||||
ru_RU.CP866
|
||||
..
|
||||
ru_RU.ISO8859-5
|
||||
..
|
||||
ru_RU.KOI8-R
|
||||
..
|
||||
ru_RU.UTF-8
|
||||
..
|
||||
sk_SK.ISO8859-2
|
||||
..
|
||||
sk_SK.UTF-8
|
||||
..
|
||||
sl_SI.ISO8859-2
|
||||
..
|
||||
sl_SI.UTF-8
|
||||
..
|
||||
sr_YU.ISO8859-2
|
||||
..
|
||||
sr_YU.ISO8859-5
|
||||
..
|
||||
sr_YU.UTF-8
|
||||
..
|
||||
sv_SE.ISO8859-1
|
||||
..
|
||||
sv_SE.ISO8859-15
|
||||
..
|
||||
sv_SE.UTF-8
|
||||
..
|
||||
tr_TR.ISO8859-9
|
||||
..
|
||||
tr_TR.UTF-8
|
||||
..
|
||||
uk_UA.ISO8859-5
|
||||
..
|
||||
uk_UA.KOI8-U
|
||||
..
|
||||
uk_UA.UTF-8
|
||||
..
|
||||
zh_CN.GB18030
|
||||
..
|
||||
zh_CN.GB2312
|
||||
..
|
||||
zh_CN.GBK
|
||||
..
|
||||
zh_CN.UTF-8
|
||||
..
|
||||
zh_CN.eucCN
|
||||
..
|
||||
zh_HK.Big5HKSCS
|
||||
..
|
||||
zh_HK.UTF-8
|
||||
..
|
||||
zh_TW.Big5
|
||||
..
|
||||
zh_TW.UTF-8
|
||||
..
|
||||
..
|
||||
pixmaps
|
||||
..
|
||||
sgml
|
||||
..
|
||||
skel
|
||||
..
|
||||
xml
|
||||
..
|
||||
..
|
||||
tests
|
||||
..
|
||||
www
|
||||
..
|
||||
..
|
9
pkgtools/genpkgng/files/Makefile
Normal file
9
pkgtools/genpkgng/files/Makefile
Normal file
|
@ -0,0 +1,9 @@
|
|||
# $NetBSD: Makefile,v 1.1.1.1 2014/04/27 00:10:34 agc Exp $
|
||||
|
||||
SCRIPTS=genpkgng
|
||||
|
||||
all: genpkgng
|
||||
|
||||
genpkgng: genpkgng.sh
|
||||
cp genpkgng.sh genpkgng
|
||||
chmod 755 genpkgng
|
77
pkgtools/genpkgng/files/genpkgng.1
Normal file
77
pkgtools/genpkgng/files/genpkgng.1
Normal file
|
@ -0,0 +1,77 @@
|
|||
.\" $NetBSD: genpkgng.1,v 1.1.1.1 2014/04/27 00:10:34 agc Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 2014 Alistair Crooks <agc@NetBSD.org>
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd April 25, 2014
|
||||
.Dt GENPKGNG 1
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm genraidconf
|
||||
.Nd utility to configure RAID sets
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Fl nv
|
||||
.Op Fl v
|
||||
.Ar binpkg ...
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
command converts from a binary package
|
||||
generated from the pkgsrc infratsructure to a binary
|
||||
package which can be installed using the
|
||||
.Fx
|
||||
pkg packaging tool.
|
||||
.Pp
|
||||
It generates
|
||||
.Dq +MANIFEST
|
||||
and
|
||||
.Dq +COMPACT_MANIFEST
|
||||
metadata files, and also preserves the
|
||||
.Dq build information
|
||||
and
|
||||
.Dq build versions
|
||||
pkgsrc metadata, placing entries in the file system.
|
||||
.Sh RETURN VALUES
|
||||
The
|
||||
.Nm
|
||||
utility will return 0 for success,
|
||||
and non-zero for failure.
|
||||
.Sh EXAMPLES
|
||||
.Bd -literal
|
||||
% cp /usr/pkgsrc/packages/All/nettle-2.7.1nb1.tgz .
|
||||
% genpkgng nettle-2.7.1nb1.tgz
|
||||
Converting nettle-2.7.1nb1.tgz
|
||||
-rw-r--r-- 1 agc agc 3962779 Apr 25 16:25 nettle-2.7.1nb1.txz
|
||||
%
|
||||
.Ed
|
||||
.Sh SEE ALSO
|
||||
.Xr pkg_info 1
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
command first appeared in
|
||||
.Nx 7.0 .
|
||||
.Sh AUTHORS
|
||||
.An -nosplit
|
||||
.An Alistair Crooks Aq Mt agc@NetBSD.org
|
130
pkgtools/genpkgng/files/genpkgng.sh
Normal file
130
pkgtools/genpkgng/files/genpkgng.sh
Normal file
|
@ -0,0 +1,130 @@
|
|||
#! /bin/sh
|
||||
|
||||
# $NetBSD: genpkgng.sh,v 1.1.1.1 2014/04/27 00:10:34 agc Exp $
|
||||
|
||||
# Copyright (c) 2014 Alistair Crooks <agc@NetBSD.org>
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
# 1. Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
|
||||
# script to convert from a pkgsrc package to a pkgng one
|
||||
# usage: genpkgng [-v] binpkg...
|
||||
|
||||
# small function to get information from build info
|
||||
getvar() {
|
||||
echo "$1" | awk '/^'$2'=/ { sub("'$2'=", ""); print }'
|
||||
}
|
||||
|
||||
# process command line args
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
-v) set -x ;;
|
||||
*) break ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
here=$(pwd)
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
binpkg=$1
|
||||
echo "Converting ${binpkg}"
|
||||
|
||||
# get the package metadata from the pkgsrc binary package
|
||||
pkgname=${binpkg%.tgz}
|
||||
buildinfo=$(pkg_info -B ${binpkg})
|
||||
name=${binpkg%-*}
|
||||
name=${name##*/}
|
||||
origin=$(getvar "${buildinfo}" PKGPATH)
|
||||
version=${binpkg##*-}
|
||||
version=${version%.tgz}
|
||||
comment=$(pkg_info -qc ${binpkg})
|
||||
os=$(getvar "${buildinfo}" OPSYS)
|
||||
os_version=$(getvar "${buildinfo}" OS_VERSION)
|
||||
os_version=${os_version%%.*}
|
||||
machine_arch=$(getvar "${buildinfo}" MACHINE_ARCH | awk '{ sub("_", ":"); print }')
|
||||
arch="${os}:${os_version}:${machine_arch}"
|
||||
maintainer=$(getvar "${buildinfo}" MAINTAINER)
|
||||
prefix=$(getvar "${buildinfo}" LOCALBASE)
|
||||
www=$(getvar "${buildinfo}" HOMEPAGE)
|
||||
licenselogic="single"
|
||||
flatsize="$(pkg_info -qs ${binpkg})"
|
||||
desc="$(pkg_info -qd ${binpkg} | awk '{ gsub("\"", "\\\""); printf("%s\\\\n", $0) }')"
|
||||
categories=$(getvar "${buildinfo}" CATEGORIES)
|
||||
categories=$(echo "${categories}" | awk 'NF == 1 { printf("\"%s\"", $0) } NF > 1 { gsub("[ ]+", "\",\""); printf("\"%s\"", $0) }' )
|
||||
|
||||
# make the temp dir
|
||||
newpkgdir=$(mktemp -d -t genpkgng)
|
||||
mkdir ${newpkgdir}/metadata ${newpkgdir}/archive
|
||||
|
||||
# create the basis for the compact and large manifests
|
||||
(cd ${newpkgdir} && tar -s'|^[a-z]|archive/usr/pkg/&|' -s'|^\+|metadata/&|' -xzf ${here}/${binpkg})
|
||||
awk -v name="${name}" -v origin="${origin}" -v version="${version}" -v arch="${arch}" \
|
||||
-v comment="${comment}" -v arch="${arch}" -v maintainer="${maintainer}" \
|
||||
-v prefix="${prefix}" -v www="${www}" -v licenselogic="${licenselogic}" \
|
||||
-v flatsize="${flatsize}" -v desc="${desc}" -v categories="${categories}" \
|
||||
'BEGIN {
|
||||
printf("{\"name\":\"%s\",\"origin\":\"%s\",\"version\":\"%s\",\"comment\":\"%s\",\"arch\":\"%s\",\"maintainer\":\"%s\",\"prefix\":\"%s\",\"www\":\"%s\",\"licenselogic\":\"%s\",\"flatsize\":%s,\"desc\":\"%s\",\"categories\":[%s]",
|
||||
name, origin, version, comment, arch, maintainer, prefix, www, licenselogic, flatsize, desc, categories)
|
||||
}' > ${newpkgdir}/archive/+COMPACT_MANIFEST
|
||||
cp ${newpkgdir}/archive/+COMPACT_MANIFEST ${newpkgdir}/archive/+MANIFEST
|
||||
echo -n '}' >> ${newpkgdir}/archive/+COMPACT_MANIFEST
|
||||
|
||||
# copy metadata information
|
||||
mkdir -p ${newpkgdir}/archive/${prefix}/etc/metadata/${pkgname}
|
||||
cp ${newpkgdir}/metadata/+BUILD_VERSION ${newpkgdir}/archive/${prefix}/etc/metadata/${pkgname}/build_version
|
||||
cp ${newpkgdir}/metadata/+BUILD_INFO ${newpkgdir}/archive/${prefix}/etc/metadata/${pkgname}/build_info
|
||||
|
||||
# add the files and digests to the manifest
|
||||
echo -n ',"files":{' >> ${newpkgdir}/archive/+MANIFEST
|
||||
sep=""
|
||||
for f in $(pkg_info -qL ${binpkg}) ${prefix}/etc/metadata/${pkgname}/build_version ${prefix}/etc/metadata/${pkgname}/build_info; do
|
||||
if [ -f ${newpkgdir}/archive/${f} ]; then
|
||||
# redirect digest input so that filenames are omitted
|
||||
echo -n "${sep}\"${f}\":\"$(digest sha256 < ${newpkgdir}/archive/${f})\"" >> ${newpkgdir}/archive/+MANIFEST
|
||||
fi
|
||||
sep=","
|
||||
done
|
||||
echo -n '},"directories":{' >> ${newpkgdir}/archive/+MANIFEST
|
||||
directories="$(awk '/^[^+@]/ { match($0, ".*/"); a[substr($0, 1, RLENGTH-1)] = 1 } END { for (i in a) print i }' ${newpkgdir}/metadata/+CONTENTS)"
|
||||
sep=""
|
||||
for d in ${directories} etc/metadata etc/metadata/${pkgname}; do
|
||||
if [ -d ${newpkgdir}/archive/${prefix}/${d} ]; then
|
||||
echo -n "${sep}\"${prefix}/${d}\":\"n\"" >> ${newpkgdir}/archive/+MANIFEST
|
||||
fi
|
||||
sep=","
|
||||
done
|
||||
echo -n '}' >> ${newpkgdir}/archive/+MANIFEST
|
||||
if [ -f ${newpkgdir}/metadata/+INSTALL ]; then
|
||||
echo -n ",\"scripts\":{\"pre-install\":\"cd ${prefix}\",\"post-install\":\"cd ${prefix}\",\"pre-install\":\"cd ${prefix}\",\"post-install\":\"cd ${prefix}\"}" >> ${newpkgdir}/archive/+MANIFEST
|
||||
fi
|
||||
echo -n '}' >> ${newpkgdir}/archive/+MANIFEST
|
||||
|
||||
# now make the pkgng binary package
|
||||
cp @MTREE_DIR_DIR@/MTREE_DIRS ${newpkgdir}/archive/+MTREE_DIRS
|
||||
(cd ${newpkgdir}/archive && tar -czf ${here}/${pkgname}.txz *)
|
||||
ls -l ${pkgname}.txz
|
||||
rm -rf ${newpkgdir}
|
||||
shift
|
||||
done
|
||||
|
||||
exit 0
|
Loading…
Reference in a new issue