Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Jan 2016 12:10:00 +0300
From:      Slawa Olhovchenkov <slw@zxy.spb.ru>
To:        Glen Barber <gjb@FreeBSD.org>
Cc:        freebsd-pkgbase@FreeBSD.org
Subject:   Re: TODO/wish list for packaging the FreeBSD base system
Message-ID:  <20160130091000.GL88527@zxy.spb.ru>
In-Reply-To: <20160130021539.GM1727@FreeBSD.org>
References:  <20160129173506.GG1727@FreeBSD.org> <20160130021539.GM1727@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jan 30, 2016 at 02:15:39AM +0000, Glen Barber wrote:

> [Note, I did see Garrett's email.  Garrett, I'll reply to your questions
> but following up on one specific point in this list.]
> 
> On Fri, Jan 29, 2016 at 05:35:06PM +0000, Glen Barber wrote:
> > TODO List / Wish List:
> > 
> > [...]
> > 
> > - Unless there is a specific reason to have an in-tree <package>.ucl
> >   file in src/release/packages/, I would like to see a template used
> >   instead.  Use cases where an in-tree <package>.ucl file is needed are
> >   runtime.ucl and kernel.ucl, where post-install scripts are defined.
> >   For the rest of the currently-existing package definitions, it is not
> >   necessary, and adds to the complexity of breaking down the base system
> >   into more granular package sets.  I tried a few tests yesterday using
> >   a file called '_template_.ucl', which if the release/packages/foo.ucl
> >   did not exist, the '_template_.ucl' file would be copied to the stage
> >   directory.  This did not work, however, because there can be several
> >   '<package>.ucl' files for any given 'package', notably runtime.plist,
> >   debug.plist (which should be runtime-debug.plist), runtime-lib32.plist
> >   and so on.
> 
> It occurred to me that there is a use case for in-tree <package>.ucl
> files, specifically when an update is necessary.  The package versions
> come from the PKG_VERSION make(1) environment, and if not set, will
> default to the epoch timestamp.  This was a design decision that was put
> in place to handle SAs/ENs, where we could trivially bump the package
> version.  Specifically, for an SA/EN, a commit to the tree that would
> trigger a rebuild of an affected package would look similar to this:

How this will interaction with customs builds/rebuild/packaging with
or w/o source updating?

> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>  Index: release/packages/rcmds.ucl
>  ===================================================================
>  --- release/packages/rcmds.ucl	(revision 295058)
>  +++ release/packages/rcmds.ucl	(working copy)
>  @@ -1,6 +1,6 @@
>   name = "FreeBSD-%PKGNAME%"
>   origin = "base"
>  -version = "%VERSION%"
>  +version = "%VERSION%,1"
>   comment = "Remote Command Tools"
>   categories = [ base ]
>   maintainer = "re@FreeBSD.org"
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> 
> So, while I do not necessarily like relying on in-tree <package>.ucl
> files, as right now it makes it difficult to package components not
> "normally" included in the base system, I now remember the necessity of
> this.
> 
> It might be a better idea to add a TAGS or PACKAGE_VERSION value to the
> relevant makefiles, which could be included in the mtree(8) tag when
> creating the METALOG files.
> 
> Glen
> 





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160130091000.GL88527>