[arch-general] Aur git - missing .SRCINFO hook declined to update refs/heads/master - help?

Eli Schwartz eschwartz at archlinux.org
Tue Jun 5 03:41:36 UTC 2018


On 06/04/2018 06:21 PM, David C. Rankin wrote:
> Thank you for the feedback. cflow - updated. I'll push the new set after
> answers to questions below.
> 
>>> https://aur.archlinux.org/packages/gtkwrite_git/
>> The license is invalid, and please don't call it `foo_git` -
>> instead use the common `foo-git`;
>> You're also missing `git` as makedep, and `gtksourceview2` as normal dep
>>
> 
> I changed the name, but when a user builds with the new name gtkwrite-git,
> instead of gtkwrite_git and attempts an install -- will there be a problem
> that requires manual intervention due to the name change? Is there anything
> else I need to do to change gtkwrite_git to gtkwrite-git -- other than change
> the name (and update the parameter expansions)?

You'd need to resubmit a new package in order to rename.

You can use the replaces=() field to indicate that this package should
be installed instead of the former package, but the AUR doesn't really
implement replaces metadata and no AUR helper even tries AFAIK.

>>> https://aur.archlinux.org/packages/gtkwrite/
>> The license is invalid
>> Don't conflicts=() with the -git version or whatever,
>> that's what the other packages providing your pkgname should do,
>> not the other way around;
>> You're also missing `gtksourceview2` as normal dep
>>
> 
> Fixed - thanks again.
> 
>> In general,
>> cd "${srcdir}" is redundant,
>> stop (ab)using msg() and msg2(), &
>> get rid of the unused assignments.
>>
> 
> What is wrong with using msg() or msg2()? I had one short output within each
> prepare(), build(), and package() that simply outputs the stage of the build, e.g.
> 
>     msg2 'prepare() gtkwrite - done'
> 
> I have removed them, but I've never had anyone say that was abusing their
> usage. Is there any particular reason that makes an informational output like
> above wrong?

It's not really correct whether they're meant to be used at all. What
useful information does this impart, which is not already known due to
the status messages that makepkg itself emits?

==> Starting build()... # done by makepkg
  -> build() gtkwrite # next line, printed by your PKGBUILD

This is besides the fact that makepkg has no public API beyond what is
defined in the PKGBUILD(5) manpage, so using the msg2 function could end
up being an error if we ever decide to remove or rename the function.
The only reason it's even possible is because it is kind of hard to
create private functions in bash and prevent anyone else from using them
the way you could in C libraries.

Also in general, you seem to include gcc in the makedepends, and
recently added pkgconf and make as well.
This is incorrect. All three are in the base-devel group, which is
*mandatory* for using makepkg, so anyone who does not have them is doing
the wrong thing.

The AUR does *not* cater to people who try building packages without
base-devel installed.

Which means that as makedepends they're totally unnecessary and
therefore clutter which should be removed.

-- 
Eli Schwartz
Bug Wrangler and Trusted User

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.archlinux.org/pipermail/arch-general/attachments/20180604/fc2f4b1f/attachment-0001.asc>


More information about the arch-general mailing list