Discussion:
Aur git - missing .SRCINFO hook declined to update refs/heads/master - help?
Add Reply
Robin Broda via arch-general
2018-06-04 17:50:41 UTC
Reply
Permalink
Raw Message
I've got a couple of complaints regarding your existing packages
https://aur.archlinux.org/packages/cflow/
provides=("${pkgname") is implicit;
url= & source= can be reached via https - update them!
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
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

In general,
cd "${srcdir}" is redundant,
stop (ab)using msg() and msg2(), &
get rid of the unused assignments.


Regarding the actual issue though,
I was trying to add a new 'console-blanking', but apparently I've got the
git/Aur history so Fsck'ed up there is little hope. I have a love-hate
relationship with git. I love it when it works, I hate it when it doesn't...
The -amend, rebase verbiage is Greek at the moment. If you can zero out
whatever I did so I can simply push a new package, that would be greatly
appreciated. If not, I'll try and stumble through the documentation on -amend
and rebase later tonight.
You haven't pushed anything under that name to the AUR yet, just fix your local history.
--
Rob (coderobe)

O< ascii ribbon campaign - stop html mail - www.asciiribbon.org
David C. Rankin
2018-06-05 07:47:18 UTC
Reply
Permalink
Raw Message
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.
Done, new package '-git' created and delete request submitted on old '_git'
package.
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.
Removed on all. Thank you for your help and tutelage.
--
David C. Rankin, J.D.,P.E.
Eli Schwartz via arch-general
2018-06-04 17:48:31 UTC
Reply
Permalink
Raw Message
List of packages so I can perform AUR administration and remove those
*.src.tar.gz using sekrit TU powers? :p
https://aur.archlinux.org/packages/cflow/
https://aur.archlinux.org/packages/gtkwrite_git/
https://aur.archlinux.org/packages/gtkwrite/
Ignore my little joke, your packages are fine. :)

Well, except for one which contained two versions of a very small
tarball but doesn't anymore, and is not really worth fixing.
I was trying to add a new 'console-blanking', but apparently I've got the
git/Aur history so Fsck'ed up there is little hope. I have a love-hate
relationship with git. I love it when it works, I hate it when it doesn't...
The -amend, rebase verbiage is Greek at the moment. If you can zero out
whatever I did so I can simply push a new package, that would be greatly
appreciated. If not, I'll try and stumble through the documentation on -amend
and rebase later tonight.
There's currently no history to zero out, until you can successfully
push to the AUR without the .SRCINFO hook declining you, nothing will be
uploaded at all.

If you're uncomfortable with git amend/rebase, then you could simply
switch to a new directory, init a new repository, and cp over the
PKGBUILD and .SRCINFO and any other files in the source array which are
not remotely downloaded, then begin the history from scratch. As long
as you commit all files in the first commit it should be fine.
--
Eli Schwartz
Bug Wrangler and Trusted User
David C. Rankin
2018-06-04 21:03:34 UTC
Reply
Permalink
Raw Message
Post by Eli Schwartz via arch-general
There's currently no history to zero out, until you can successfully
push to the AUR without the .SRCINFO hook declining you, nothing will be
uploaded at all.
If you're uncomfortable with git amend/rebase, then you could simply
switch to a new directory, init a new repository, and cp over the
PKGBUILD and .SRCINFO and any other files in the source array which are
not remotely downloaded, then begin the history from scratch. As long
as you commit all files in the first commit it should be fine.
Thank you Eli!

Now that I understood where it was messed up, it was an easy fix.
--
David C. Rankin, J.D.,P.E.
Bennett Piater
2018-06-04 09:30:41 UTC
Reply
Permalink
Raw Message
Well I tried without `-a` and no changes to .SRCINFO or PKGBUILD were
incorporated.
Did you add the files before committing?
remote: error: missing source file: LICENSE
This is a different error, is it not?
Does your most recent commit contain the LICENSE file, or did you only
add PKGBUILD and .SRCINFO?

Cheers,
Bennett
--
GPG fingerprint: 871F 1047 7DB3 DDED 5FC4 47B2 26C7 E577 EF96 7808
mar77i via arch-general
2018-06-04 11:29:54 UTC
Reply
Permalink
Raw Message
Do you have an unpushed commit that may not pass muster, even if it is
not the last?
If so, you could try squashing all unpushed commits together to one
using git rebase.
That's saying that in commit 93a539f81d7d0f001dd5522781ebeabf7cf73f9d
you had committed a .SRCINFO file which listed a LICENSE file, but you
did not commit the LICENSE file itself.
You've got corrupted history, adding a new commit with the LICENSE file
does not fix the old commit. Use --amend if you need to fix up old commits.
If I read this thread correctly, your git history isn't corrupt in the sense that it would break git, but your git history is not conforming with AUR rules. To obey those, reading up about git rebase [0] is the way to go.
Keep in mind that you have to give git rebase a commit behind the one you intend to edit, eg. git rebase -i 93a539f~1 so you can edit (using git add and git commit --amend) the commit in question so it becomes acceptable. One way to go would be to remove LICENSE from the .SRCINFO for 93a539f so it becomes consistent. You can read about the details in the footnote.

cheers!
mar77i

[0] https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History



​Sent with ProtonMail Secure Email.​
Eli Schwartz via arch-general
2018-06-04 11:35:53 UTC
Reply
Permalink
Raw Message
Post by mar77i via arch-general
That's saying that in commit 93a539f81d7d0f001dd5522781ebeabf7cf73f9d
you had committed a .SRCINFO file which listed a LICENSE file, but
you did not commit the LICENSE file itself.
You've got corrupted history, adding a new commit with the LICENSE
file does not fix the old commit. Use --amend if you need to fix up
old commits.
If I read this thread correctly, your git history isn't corrupt in
the sense that it would break git, but your git history is not
conforming with AUR rules.
Correct -- it is corrupt *AUR* history, not corrupt *git* history.
--
Eli Schwartz
Bug Wrangler and Trusted User
Bennett Piater
2018-06-04 09:48:58 UTC
Reply
Permalink
Raw Message
Post by Bennett Piater
This is a different error, is it not?
Does your most recent commit contain the LICENSE file, or did you only
add PKGBUILD and .SRCINFO?
Oh, it's there...
$ tar -tzf console-blanking-0.0.1-4.src.tar.gz
tar: Ignoring unknown extended header keyword 'SCHILY.fflags'
console-blanking/
tar: Ignoring unknown extended header keyword 'SCHILY.fflags'
console-blanking/PKGBUILD
tar: Ignoring unknown extended header keyword 'SCHILY.fflags'
console-blanking/LICENSE
^^^^^^^^^^^^^^^^^^^^^^^^^^^
tar: Ignoring unknown extended header keyword 'SCHILY.fflags'
console-blanking/.SRCINFO
tar: Ignoring unknown extended header keyword 'SCHILY.fflags'
console-blanking/console-blanking.service
Where does that tarball come from?
What I am asking is if the commit contains the files.
If you got that tarball from the aur, then it obviously doesn't contain
what the rejected commit does since that is not online yet :)

Or are you trying to push a commit containing the tarball?
That's not going to work, the aur expects flat files.

Also feel free to ping me on irc if you think that's more productive,
just be aware that my timezone is CEST, GMT+2 :)

Cheers,
Bennett
--
GPG fingerprint: 871F 1047 7DB3 DDED 5FC4 47B2 26C7 E577 EF96 7808
David C. Rankin
2018-06-04 23:03:30 UTC
Reply
Permalink
Raw Message
<snip>
Post by Robin Broda via arch-general
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)?
It looks like I will have to remove the gtkwrite_git package completely and
create a new gtkwrite-git. Attempting a name change fails due to an unexpected
pkgbase being rejected, e.g.

remote: error: invalid pkgbase: gtkwrite-git, expected gtkwrite_git
remote: error: hook declined to update refs/heads/master
To ssh://aur.archlinux.org/gtkwrite_git.git
! [remote rejected] master -> master (hook declined)
error: failed to push some refs to 'ssh://***@aur.archlinux.org/gtkwrite_git.git'


What is the best way to fix this? clone a new repo with the -git name and then
-- how do I completely remove the old _git package?
--
David C. Rankin, J.D.,P.E.
Loading...