[pacman-dev] Arch neutrral packages

Jason Chu jason at archlinux.org
Mon Apr 9 20:59:39 EDT 2007


On Mon, Apr 09, 2007 at 08:23:56PM -0400, Dan McGee wrote:
> On 4/9/07, Jason Chu <jason at archlinux.org> wrote:
> > On Mon, Apr 09, 2007 at 11:44:20PM +0100, Andrew Fyfe wrote:
> > > Is it worth adding something like arch=(NOARCH) for packages that are
> > > arch neutral (ie they only contain text files, scripts...) so we don't
> > > have 2 identical packages for i686 and x86_64.
> > >
> > > Andrew
> >
> > There's been talk of this.  I think it's a good idea.  Apparently codemac
> > thinks it's a bad idea.
> >
> > When I talked to phrakture about it a while back, his issue IIRC was that
> > it's an arbitrary name and one day there might be a NOARCH architecture
> > that we have to support... or something like that.
> >
> > Jason
> 
> This is one of those ideas that the devil is in the details. I was
> thinking something like this a while back:
> arch=('all')
> 
> Which would allow it to always be built, irregardless of the host type
                                           ^^^^^^^^^^^^
You probably mean regardless...

http://dictionary.reference.com/browse/irregardless

> of the machine. This would only require reserving one keyword, "all".
> 
> However, what does this allow us to do? Build a package called
> foo-1.0-1-all.pkg.tar.gz? I believe sync DB's can store the filename
> of the package, so this would work. However, unless we get rid of
> seperate directories for each architecture, this doesn't do much for
> us, besides save build time (which pacbuild will negate much of).

It saves us having to build the same package for N architectures when they
all come out nearly identical.  This saves time on the build machines
(pacbuild and/or developer) and disk space on the mirrors.

The more architectures we support, the more times we'll have to build the
same package over and over.

> In addition, I think hardcoding somewhere that 'all' means 'i686' and
> 'x86_64' is a terrible idea, as this ruins the idea of making adding
> architectures easy. We can't ever have a list of 'all' architectures.

Where would 'all' have to be "resolved"?  What I mean to say is, in what
places would you have to say "I have an 'all' package, which means that
it's also valid for my architecture"?  Or even better, when do we say,
"what architectures can I install this package on?"

Usually you go from architecture and look for stuff (pacman -S) or go from
architecture to build (makepkg).

Regarding having a list of 'all' architectures, we don't really need that.
What architectures is 'all' not supported on?  There's no list because
'all' is every supported architecture.

> I guess I don't know exactly what it gains us by having an 'all', but
> if you can come up with a few scenarios, let me (and the list) know.

Jason
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://archlinux.org/pipermail/pacman-dev/attachments/20070409/4b17ac8f/attachment.pgp>


More information about the pacman-dev mailing list