Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Jul 2013 16:01:14 +0100
From:      Chris Rees <crees@bayofrum.net>
To:        Devin Teske <dteske@freebsd.org>
Cc:        "freebsd-current@freebsd.org" <freebsd-current@freebsd.org>, Garrett Wollman <wollman@hergotha.csail.mit.edu>
Subject:   Re: [HEADSUP] No more pkg_install on HEAD by default
Message-ID:  <7325EE70-8821-4350-9D8A-E5CAAC548FE9@bayofrum.net>
In-Reply-To: <13CA24D6AB415D428143D44749F57D7201FC51FE@ltcfiswmsgmb21>
References:  <20130712231637.GS85556@ithaqua.etoilebsd.net> <13CA24D6AB415D428143D44749F57D7201FC2DBD@ltcfiswmsgmb21> <20130713080732.GV85556@ithaqua.etoilebsd.net> <13CA24D6AB415D428143D44749F57D7201FC3AA2@ltcfiswmsgmb21> <13CA24D6AB415D428143D44749F57D7201FC3C92@ltcfiswmsgmb21> <CA%2B7WWSe7C2UXAsEX3OZH7nPJJbxotpQ_iYBxgake4R68sbUtLA@mail.gmail.com> <13CA24D6AB415D428143D44749F57D7201FC3FAA@ltcfiswmsgmb21> <CAGE5yCoH2auer_kKpUT_caFUZPpVM5TdAFH5tJcGgF4Ji12f0g@mail.gmail.com> <201307140613.r6E6Dsov002016@hergotha.csail.mit.edu> <201307140706.r6E76Kg0002959@hergotha.csail.mit.edu> <13CA24D6AB415D428143D44749F57D7201FC51FE@ltcfiswmsgmb21>

next in thread | previous in thread | raw e-mail | index | archive | help
On 14 Jul 2013, at 08:29, Teske, Devin wrote:
>=20
> To give you an idea as to just how helpful this is...
>=20
> Imagine the following hierarchy:
>=20
> src/pkgbase/depend/mystuff/script1
> src/pkgbase/depend/mystuff/textfile1
> src/pkgbase/depend/mystuff/sourcefile.c
> src/pkgbase/depend/mystuff/Makefile
>=20
> You are a developer. You want to ship a package that contains "script1", =
"textfile1", and "binary1" (which is compiled by saying "make" to turn "sou=
rcefile.c" into "binary1")
>=20
> You want to ship 8 types of packages:
>=20
> FreeBSD-4.11
> FreeBSD-8.1 (i386)
> FreeBSD-8.1 (amd64)
> RedHat EL 4
> RedHat EL 6 (i386)
> RedHat EL 6 (x86_64)
> Debian Wheezy
> Debian Wheezy 64-bit
>=20
> This is where my framework comes in-handy...
>=20
> cd ~/src/pkgbase/freebsd/RELENG_4/category/mystuff
> make
> # it pulled the necessary bits from "src/pkgbase/depend/mystuff" and buil=
t the .tgz
>=20
> cd ~/src/pkgbase/freebsd/RELENG_8/category/mystuff
> make
> # it pulled the necessary bits from the "depend" dir and built .tbz
>=20
> cd ~/src/pkgbase/redhat/rhel4/category/sub-category/mystuff
> make
> # pulled in "depend" and made .rpm
>=20
> cd ~/src/pkgbase/redhat/rhel6/category/sub-category/mystuff
> make
> # pulled in "depend" and made .rpm
>=20
> etc.
>=20
> Of course, *any* time the depend tree has binaries in it... you have to f=
irst do a make in there on the platform you want to ship the binary for, an=
d then do "make depend" in the platform-specific tree to pull in the binari=
es. Once you've done that, you don't have to muck with the depend tree agai=
n unless there are changes there.
>=20
> So, I assume that your prejudice remarks are because you haven't either s=
een (a) such a platform or (b) such a need for said platform.
>=20
> Yeah, I could rewrite the freebsd-specific logic to use "pkg create", but=
 let me tell you...
>=20
> When you have to touch a file that needs to get shipped out to multiple p=
latforms...
>=20
> It's damned nice to be able to build the FreeBSD packages under RedHat *B=
ECAUSE* the redhat RPMs can't be built under anything else (building an RPM=
 on FreeBSD and attempting to install it on RedHat results in an error mess=
age similar to "this is an rpm for FreeBSD; go away").
>=20
> Whereas FreeBSD will never balk about a package built on another platform.
>=20
> It's a huge time-saving measure... not having to jump over to each/every =
unique platform to package things up *IF/WHEN* you know that there are no b=
inaries in the package *or* you've already checked the pre-compiled binarie=
s into the arch-specific hierarchy.
>=20
>=20
>=20
>=20
>> Or you
>> can maintain the old cruft for your business -- just don't expect
>> anyone else to use it, or even want to.
>>=20
>=20
>=20
> I have no intention of making old-world packages... but I also have no in=
tention of using "pkg create".

You still haven't really explained at all why you can't use libpkg.  If it =
doesn't run on Debian (not tried), it's got to be easier to port it than re=
write a hacked version, hasn't it???  At least then you'll also be contribu=
ting back.

Chris


--=20
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7325EE70-8821-4350-9D8A-E5CAAC548FE9>