Page 1 sur 1
[AUR4] Migration de packages AUR3 vers AUR4 (résolu)
Publié : ven. 19 juin 2015, 16:43
par jojos
Salut à tous !!
J'ai un soucis pour faire basculer mes (quelques) paquets AUR3 vers AUR4 et peut être que vous saurez m'éclairer...
En fait, je galère sur mes paquets
gog-* (cf.
https://aur.archlinux.org/packages/?SeB=m&K=jojos).
En prenant l'exemple de mon package
gog-apotheon :
J'ai bien récupéré un nouveau dépôt :
git clone ssh://aur@aur4.archlinux.org/gog-apotheon.git
Puis j'ai placé mes fichiers
PKGBUILD .SRCINFO et
gog-apotheon et ai commit le tout.
C'est en voulant pousser ça sur le dépôt que ça foire ; j'obtient cette erreur :
Code : Tout sélectionner
$ git push
Décompte des objets: 12, fait.
Delta compression using up to 4 threads.
Compression des objets: 100% (12/12), fait.
Écriture des objets: 100% (12/12), 2.03 KiB | 0 bytes/s, fait.
Total 12 (delta 3), reused 0 (delta 0)
remote: error: The following error occurred when parsing commit
remote: error: 8f4f5e085c6ffdc0fad3199ffc3f241a7368354b:
remote: error: missing source file: gog_apotheon_1.0.0.1.tar.gz
remote: error: hook declined to update refs/heads/master
To ssh://aur@aur4.archlinux.org/gog-apotheon.git
! [remote rejected] master -> master (hook declined)
error: impossible de pousser des références vers 'ssh://aur@aur4.archlinux.org/gog-apotheon.git'
Effectivement, le fichier
gog_apotheon_1.0.0.1.tar.gz
n'est pas présent puisqu'il faut le récupérer directement sur le site de gog.
Je n'avais aucun soucis avec AUR3. Il me fallait juste construire le package source et supprimer, dans l'archive, le fichier
gog_apotheon_1.0.0.1.tar.gz.
J'ai regardé comment était fichu les
autres packages gog-* et ils référencent dans les sources les fichiers comme ceci :
source=("local://<mon-archive-de-jeu-gog>")
. Mais même en indiquant le protocole
local:// j'obtiens l'erreur.
J'ai raté un truc ???
Voici le
PKGBUILD en question (qui est tiré de paquets déjà existant) :
Code : Tout sélectionner
# Maintainer : JoJos
pkgname=gog-apotheon
pkgver=1.0.0.1
pkgrel=1
pkgdesc="The Gods of Olympus have abandoned humanity, leaving you to perish without their benevolence. GOG linux game package required!"
arch=("i686" "x86_64")
url="http://www.gog.com/game/apotheon"
license=("custom")
groups=("games")
source=("local://gog_apotheon_${pkgver}.tar.gz" "gog-apotheon")
md5sums=('13432c627e378516474895eafab39ccb'
'08eee547be3e5dc1f43c6937fca5bc6e')
depends=(libgl libx11 libxext desktop-file-utils)
#options=('!strip')
PKGEXT=.pkg.tar
package() {
mkdir -p "${pkgdir}"/opt/gog/apotheon
cp -r "${srcdir}"/Apotheon/* "${pkgdir}"/opt/gog/apotheon
install -Dm644 "${srcdir}"/Apotheon/support/gog-apotheon-primary.desktop "${pkgdir}"/usr/share/applications/gog-apotheon.desktop
install -Dm644 "${srcdir}"/Apotheon/support/gog-apotheon.png "${pkgdir}"/usr/share/pixmaps/gog-apotheon.png
install -Dm644 "${srcdir}"/Apotheon/docs/End\ User\ License\ Agreement.txt "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE
install -Dm755 "${srcdir}/gog-apotheon" "${pkgdir}/usr/bin/gog-apotheon"
}
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 16:51
par benjarobin
As tu bien relancé mksrcinfo pour générer un nouveau .SRCINFO ?
Puis bien penser à modifier le commit :
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 16:55
par jojos
ouais, le voilà d'ailleurs :
Code : Tout sélectionner
pkgbase = gog-apotheon
pkgdesc = The Gods of Olympus have abandoned humanity, leaving you to perish without their benevolence. GOG linux game package required!
pkgver = 1.0.0.1
pkgrel = 1
url = http://www.gog.com/game/apotheon
arch = i686
arch = x86_64
groups = games
license = custom
depends = libgl
depends = libx11
depends = libxext
depends = desktop-file-utils
source = local://gog_apotheon_1.0.0.1.tar.gz
source = gog-apotheon
md5sums = 13432c627e378516474895eafab39ccb
md5sums = 08eee547be3e5dc1f43c6937fca5bc6e
pkgname = gog-apotheon
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 17:20
par benjarobin
As tu bien supprimé tous les commit ? Tu ne dois pas avoir un seul commit possédant un souci, tous les commit sont vérifiés !
Le plus simple est de refaire un nouveau git clone
puis de rajouter tes fichiers...
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 20:43
par papajoke
Bonjour,
je n'ai jamais vu cette notation "local://" pour source, rien dans le
wiki
et c'est bien l'erreur qu'il indique, uniquement pour le i686 :
remote: error: missing source file: gog_apotheon_1.0.0.1.tar.gz
et le fichier pour la version 64 s’appelle "gog-apotheon" ?
le fichier gog_apotheon_1.0.0.1.tar.gz n'est pas présent puisqu'il faut le récupérer directement sur le site de gog.
pourquoi ne pas mettre directement dans source l'url du fichier ?
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 22:03
par Xorg
Normalement, on ne met pas un .tar.gz en source local. Si ton fichier est trop gros, le serveur git va te le refuser, et ton erreur vient peut-être de là. Il faut mettre le lien complet depuis le site où tu l'as téléchargé.
Ou si ça passe, est-ce que tu as indexé correctement l'archive (git add
) ?
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 23:21
par papajoke
trouvé gog_apotheon_1.0.0.1.tar.gz sur torrent 590 Mb ! et avec une version 32 et 64

le serveur git de aur n'est pas un hébergeur
ps: j'ai voulu tester (aur3) des paquets gog- , pour les 2 premiers, même problème : impossible a installer source non trouvée
Code : Tout sélectionner
==> Récupération des sources...
==> ERREUR : dragonsphere_1.0.0.1.tar.gz n’a pas été trouvé dans le répertoire de travail et n’est pas une URL.
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 23:34
par Xorg
La limite doit être de l'ordre du kilooctet, voir peut-être de quelques mégaoctets. C'est mort un fichier de cette taille...
D'autant plus que c'est c'est payant, ce n'est pas autorisé de redistribuer l'archive comme ça. Moi j'avais triché avec
libreoffice-faenza-mod, j'ai uploadé l'archive sur mon
Git personnel, et le paquet récupère l'archive sous forme de fichier distant (ce n'est pas un fichier local).
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : ven. 19 juin 2015, 23:46
par benjarobin
Je crains que vous ayez tous faux. Il y a plein de cas où il n'est pas possible de mettre l'URL, rien que pour des questions de droits / licences.
Et c'est volontaire de ne pas mettre l'archive sur le git, et pour information la limite est de 250ko.
Bref ce qu'il cherche à faire est tout à fait normal et c'est que je sache la bonne façon de faire.
C'est à l'utilisateur de mettre l'archive à côté du PKGBUILD, et en effet une telle pratique ne permet pas facilement d'utiliser yaourt.
Pour un utilisateur, il suffit de faire un git clone, placer manuellement l'archive téléchargée (par quelque soit le moyen) dans le dossier, suivi d'un makepkg
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : sam. 20 juin 2015, 11:19
par Xorg
benjarobin a écrit :Pour un utilisateur, il suffit de faire un git clone, placer manuellement l'archive téléchargée (par quelque soit le moyen) dans le dossier, suivi d'un makepkg
Ça tombe bien, vu qu'on se trompe, explique-nous comment l'utilisateur peut faire un
git clone
si jojos ne peut pas faire de
git push
?
@jojos : Tu fais référence à une archive,
gog_apotheon_1.0.0.1.tar.gz, que tu n'as pas le droit de mettre sur Git. La seule méthode viable est de ne pas faire référence à cette archive dans les sources.
Après il faut que tu préviennes l'utilisateur qu'il doit placer ses sources au bon endroit, et ça devrait passer.
Le dépôt Git vérifie que tous les fichiers sources locaux sont bien poussés, sinon il refuse le push.
Je n'ai jamais vu cette notation
local://. Tu as trouvé ça où ?
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : sam. 20 juin 2015, 15:32
par jojos
Je sais très bien que je n'ai pas le droit de le mettre sur git.
Et je ne veux pas le mettre dessus justement, d'où le fait que je mette l'url en
local://
.
@binjarobin : tu dois avoir la réponse ! effectivement, j'ai plusieurs commits qui doivent être foireux. Je vais tout reprendre et retenter un commit.
@xorg : le
local://
je l'ai trouvé sur d'autres package
gog-* sur aur4 ; tu peux voir un exemple sur ce paquet :
https://aur4.archlinux.org/cgit/aur.git ... f-grimrock
Je vous tiens au courant quand j'aurai pu tester de nouveau

Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : sam. 20 juin 2015, 15:41
par benjarobin
@Xorg On se calme... jojos à fait juste des erreurs de manipulation avec git et il y a surement des commit foireux (et non un seul commit)... Je ne sais pas pourquoi vous êtes partie dans cette direction. L'utilisation de local://
est déjà utilisé par plein de paquet sur AUR4. Si le nom des sources dans le PKGBUILD contient ://
ou lp:
alors le git hook ne vérifie pas si le fichier est sur le git (voir les sources du git hook)
Bref, au final, une fois que tout fonctionnera (une fois que jojos aura fait le git push avec succès), l'utilisateur fera bien un git clone pour utiliser le paquet...
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : sam. 20 juin 2015, 16:39
par papajoke
ok pour le ://(local)
justement, les paquets aur3 gog-* sont non-installables avec yaourt qui retourne (il me semble justement...) en cours d'installation
Code : Tout sélectionner
ERREUR : dragonsphere_1.0.0.1.tar.gz n’a pas été trouvé dans le répertoire de travail et n’est pas une URL.
benjarobin a écrit :l'utilisateur fera bien un git clone pour utiliser le paquet...
Donc se ne sont pas des paquets pour yaourt mais juste un PKGBUILD pour construire en local mon paquet ! ok je comprend maintenant
ces paquets n'ont pas une notice spécifique ? texte pour indiquer l'utilisation, un nom particulier (comme les -git -svn...) histoire de faire le tri
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : dim. 21 juin 2015, 00:35
par jojos
J'ai remis à zéro mon repo git et j'ai pu enfin pousser sur aur mon paquet
gog-apotheon.
Bien joué benjarobin
Mais du coup, c'est vraiment pas permissif comme système... Faut pas se planter quoi.
@papajoke : les paquets en question sont suffixé par
gog- en référence au site
http://www.gog.com . Tapes
gog
dans la recherche AUR et tu les retrouveras

Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : dim. 21 juin 2015, 09:25
par FoolEcho
papajoke a écrit :ces paquets n'ont pas une notice spécifique ? texte pour indiquer l'utilisation, un nom particulier (comme les -git -svn...) histoire de faire le tri
Il y avait eu une tentative de mise en place d'uniformisation de ces règles (c'est peut-être toujours d'actualité mais je ne retrouve pas le lien...)... mais dans les faits, même si pas mal de paquets gog sont faits sur la même base (gog-nom...) chacun peut faire ce qu'il veut à ce niveau...
Ce sujet m'a permis de rectifier un de mes paquets d'ailleurs (je l'avais passé sur aur-dev et maintenu sans problème mais visiblement il s'est fait bouler sur aur4 sans que je m'en rende compte, pour les mêmes raisons que jojos... bizarre).
Re: [AUR4] Migration de packages AUR3 vers AUR4
Publié : dim. 21 juin 2015, 10:01
par Xorg
D'accord pour le
local://, j'ignorais que c'était une nouveauté propre à AUR 4.
jojos a écrit :Mais du coup, c'est vraiment pas permissif comme système... Faut pas se planter quoi.
Ce n'est pas permissif quand on ne sait pas se servir correctement des commandes qui permettent de récupérer les bourses (du genre
git revert
). Mais bon, plutôt que d'annuler quelque chose qui tu as jamais poussé, la méthode la plus simple est encore de refaire un nouveau clone, ça te prend moins de temps d'une certaine façon.
benjarobin a écrit :l'utilisateur fera bien un git clone pour utiliser le paquet...
Bien entendu. Problème résolu.

Re: [AUR4] Migration de packages AUR3 vers AUR4 (résolu)
Publié : dim. 21 juin 2015, 16:19
par benjarobin
@Xorg git revert
ne permet pas d'annuler un historique, il rajoute juste une entrée dans l'historique annulant le commit spécifié.
Pour revenir et donc détruire un historique tu as la commande git reset