[AUR4] Migration de packages AUR3 vers AUR4 (résolu)

Mise à jour / Création /debug de paquetages
Répondre
jojos
Daikyu
Messages : 61
Inscription : ven. 04 nov. 2011, 21:55

[AUR4] Migration de packages AUR3 vers AUR4 (résolu)

Message 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"
}
Dernière modification par jojos le dim. 21 juin 2015, 00:35, modifié 1 fois.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17569
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message par benjarobin »

As tu bien relancé mksrcinfo pour générer un nouveau .SRCINFO ?
Puis bien penser à modifier le commit :

Code : Tout sélectionner

git -a --amend
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
jojos
Daikyu
Messages : 61
Inscription : ven. 04 nov. 2011, 21:55

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17569
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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...
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
papajoke
Elfe
Messages : 814
Inscription : sam. 30 août 2014, 19:54

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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 ?
Arch stable - Kde 6 / fish - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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) ?
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Avatar de l’utilisateur
papajoke
Elfe
Messages : 814
Inscription : sam. 30 août 2014, 19:54

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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.
Dernière modification par papajoke le ven. 19 juin 2015, 23:45, modifié 2 fois.
Arch stable - Kde 6 / fish - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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).
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17569
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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ù ?
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
jojos
Daikyu
Messages : 61
Inscription : ven. 04 nov. 2011, 21:55

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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 ;)
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17569
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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...
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
papajoke
Elfe
Messages : 814
Inscription : sam. 30 août 2014, 19:54

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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
Arch stable - Kde 6 / fish - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
jojos
Daikyu
Messages : 61
Inscription : ven. 04 nov. 2011, 21:55

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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 ;)
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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).
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [AUR4] Migration de packages AUR3 vers AUR4

Message 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. :)
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17569
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR4] Migration de packages AUR3 vers AUR4 (résolu)

Message 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
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Répondre