[pacman-dev] [PATCH] makepkg: Add '--nocompress' syntactic sugar

Eli Schwartz eschwartz at archlinux.org
Tue May 21 21:42:06 UTC 2019

On 5/21/19 4:30 AM, Jouke Witteveen wrote:
> On Sun, May 19, 2019 at 10:01 PM Eli Schwartz <eschwartz at archlinux.org> wrote:
>> On 5/19/19 3:52 PM, Jouke Witteveen wrote:
>>> However, I do now think that it would maybe have been good to make
>>> PKGEXT=.pkg.tar
>>> the default in makepkg.conf, since local installation of AUR packages
>>> is probably the most common usecase of makepkg.
>>> Changing it now makes no sense as it will probably be too disruptive.
>>> The comment ("Do not modify unless [etc.]") could be improved to
>>> something more helpful, though.
>> That is a very interesting point. Would you like to submit a patch
>> modifying the manpage to suggest using .pkg.tar "if you want to disable
>> compression"?
> Sure, but it is not clear to me what it should say exactly.
> Currently it says:
> ----
>        PKGEXT=".pkg.tar.gz", SRCEXT=".src.tar.gz"
>            Sets the compression used when making compiled or source packages.
>            Valid suffixes are .tar, .tar.gz, .tar.bz2, .tar.xz, .tar.lzo,
>            .tar.lrz, and .tar.Z. Do not touch these unless you know what you
>            are doing.
> ----
> The first line is likely wrong, since it suggests .gz may be the
> default compression. This was not even the case when the line was
> added, nine years ago [1]!
> Then there is the last sentence. It is a bit weird to end this
> paragraph with "Use .tar to disable compression. Do not touch these
> unless you know what you are doing." Perhaps something like "Use .tar
> if you want to disable compression. Do not set these to a compression
> method other than the default unless you know what you are doing." is
> better. On the other hand, maybe the whole "...unless you know what
> you are doing." is a bit too strong anyway, and can simply be dropped.
> I think it is best to mirror whatever the manpage is going to say in
> /etc/makepkg.conf.
> Sorry to make this a bigger fuzz than it deserves. Feel free to simply
> change the text as you see fit if you think that is easier than
> waiting for a patch from me.
> Regards,
> - Jouke
> [1] https://bugs.archlinux.org/task/21302

Actually, the default pacman/makepkg configuration is indeed gz, at
least in the sense that that is what etc/makepkg.conf.in will be
configured with unless you define your own:
./configure --with-pkg-ext --with-src-ext

Arch Linux does not ship with the stock pacman.conf and makepkg.conf,
though. We set distribution defaults independent of the distro-agnostic
pacman.git sources; these distribution defaults include the use of xz
over gzip for compression.

I'm not sure what would make an appropriate default, since unlike many
other makepkg.conf settings the fallback when unspecified is to carry on
as if '' is a plausible answer when it isn't, and it *should* raise a
fatal error I guess. I'll write a lint check for that...

Perhaps it would make sense to have the manpage depend on how
--with-pkg-ext --with-src-ext were used. Although Arch Linux would still
then be calling out gz.

Eli Schwartz
Bug Wrangler and Trusted User

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 1601 bytes
Desc: OpenPGP digital signature
URL: <https://lists.archlinux.org/pipermail/pacman-dev/attachments/20190521/bfaf121e/attachment.sig>

More information about the pacman-dev mailing list