Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[eselect repository] Dépot overlay mal identifié (Résolu)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Tue Jun 24, 2025 6:04 pm    Post subject: [eselect repository] Dépot overlay mal identifié (Résolu) Reply with quote

Bonjour à tous,

Je me suis enfin décidé à créer mon overlay personnel pour redistribuer les ebuilds que j'utilise au quotidien et qui ne sont pas présents dans portage.

J'ai donc créer un repo GIT (pingwho-overlay) sur Github, et initialisé le dépot sur ma machine de test.

Je n'utilise pas layman mais eselect repository, qui est plus récent et qui permet de s'indexer facilement sur github ou autre...

J'ai donc créer un repositories.xml, et suivi le wiki pour mettre en place le dépot.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<repositories version="1.0">
  <repo quality="experimental" status="unofficial">
    <name>pingwho-overlay</name>
      <description lang="en">Gentoo Linux overlay @pingwho.org</description>
        <homepage>https://github.com/jaypeche/pingwho-overlay</homepage>
        <maintainer type="person">
            <name>jaypeche</name>
            <email>contact@pingwho.org</email>
        </maintainer>
        <source type="git">https://github.com/jaypeche/pingwho-overlay.git</source>
        <feed>https://github.com/jaypeche/pingwho-overlay/commits/master.atom</feed>
        <bugs-to>https://github.com/jaypeche/pingwho-overlay/issues</bugs-to>
  </repo>
</repositories>


L'intéret est que seulement 3 commandes suiffisent à initialiser le dépot.

Code:
emerge -av eselect-repository

eselect repository add pingwho-overlay git https://github.com/jaypeche/pingwho-overlay.git

emaint sync -r pingwho-overlay


Je pense m'y être mal pris car mon overlay est bien référencé, mais l'url correspondante ne lui est pas associée :


Code:
strix /var/db/repos/pingwho-overlay # eselect repository list | grep -n5 pingwho
--2025-06-24 19:58:19--  https://qa-reports.gentoo.org/output/repos/repositories.xml
Résolution de qa-reports.gentoo.org… 151.101.1.91, 151.101.65.91, 151.101.129.91, ...
Connexion à qa-reports.gentoo.org|151.101.1.91|:443… connecté.
requête HTTP transmise, en attente de la réponse… 304 Not Modified
Le fichier « /root/.cache/eselect-repo/repositories.xml » n’a pas été modifié sur le serveur. Téléchargement sauté.

274-  [273] phoenix591 (https://github.com/Phoenix591/gentoo-overlay)
275-  [274] pholthaus-overlay (https://github.com/pholthau/pholthaus-overlay)
276-  [275] php-overlay (https://github.com/gentoo-php-overlay/php-overlay)
277-  [276] pica-pica (https://github.com/antonsviridenko/pica-pica-gentoo-overlay)
278-  [277] pigfoot (https://cgit.gentoo.org/user/pigfoot.git/)
279:  [278] pingwho-overlay @
280-  [279] piniverlay (https://github.com/pinicarus/gentoo-overlay)
281-  [280] pinkbyte (https://github.com/Pinkbyte/pinkbyte-overlay)
282-  [281] pixlra (https://cgit.gentoo.org/user/carreira.git/)
283-  [282] pkalin (https://github.com/thinrope/pkalin)
284-  [283] plex-overlay (https://github.com/comio/plex-overlay)
strix /var/db/repos/pingwho-overlay #


URL du dépot : https://github.com/jaypeche/pingwho-overlay

Je pense être passé à coté de quelquechose ? rrhh !

:idea: Une idée ?
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !


Last edited by jaypeche on Tue Jul 15, 2025 3:11 pm; edited 1 time in total
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Tue Jun 24, 2025 6:17 pm    Post subject: Reply with quote

Je me reponds à moi même :

Peut être simplement disable, remove puis create, cf : https://wiki.gentoo.org/wiki/Eselect/Repository#Create_a_new_ebuild_repository ?
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Tue Jun 24, 2025 10:27 pm    Post subject: Reply with quote

jaypeche wrote:
Je me reponds à moi même :

Peut être simplement disable, remove puis create, cf : https://wiki.gentoo.org/wiki/Eselect/Repository#Create_a_new_ebuild_repository ?


:evil: Ne fonctionne pas !
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
xaviermiller
Bodhisattva
Bodhisattva


Joined: 23 Jul 2004
Posts: 8729
Location: ~Brussels - Belgique

PostPosted: Wed Jun 25, 2025 6:43 am    Post subject: Reply with quote

Bonjour,

De mon côté je mets à jour le fichier repos.conf dans /etc/portage

J'y configure facilement les repos distants ou locaux.

As-tu essayé cette option?
_________________
Kind regards,
Xavier Miller
Back to top
View user's profile Send private message
netfab
Advocate
Advocate


Joined: 03 Mar 2005
Posts: 2028
Location: 127.0.0.1

PostPosted: Wed Jun 25, 2025 7:53 am    Post subject: Reply with quote

Salut,

Si tu tiens vraiment à ce que ton overlay soit public et référencé par eselect repository tu dois en faire la demande avec un pull request.
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Thu Jun 26, 2025 5:47 pm    Post subject: Reply with quote

Bonjour,

Je vous remercie pour votre retour,

@xaviermiller :
Quote:
De mon côté je mets à jour le fichier repos.conf dans /etc/portage

J'y configure facilement les repos distants ou locaux.

As-tu essayé cette option?


Oui bien sur, je me suis penché vite fait sur la doc, et eselect repository est recommandé, il est très simple d'utilisation, et l'idée que l'on puisse importer mon overlay en 3 commandes, c'est toute l'idée du truc !

Mon repos.conf :
Code:
[pingwho-overlay]
location = /var/db/repos/pingwho-overlay
sync-type = git
sync-uri = https://github.com/jaypeche/pingwho-overlay.git


@netfab :

Je te remercie pour ta réponse, et je vais tenter un pull request...
J'ai essayé de plus ou moins standardisé le truc, dans le but justement, de pouvoir être référencé officiellement.
Merci pour l'idée,

Bien à vous,
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Thu Jun 26, 2025 8:51 pm    Post subject: Reply with quote

La doc est assez indigeste :

https://docs.github.com/fr/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request

Y'a des chances que je revienne faire un tour par içi :(


Pensez-vous cette commande github-cli puisse fonctionner ? https://gist.github.com/jaypeche/66fcd2f575966a0f949231d2e416e8bd

Pour le moment la requète ne semble pas aboutir ???

Code:
strix /var/db/repos/pingwho-overlay # gh pr create --project pingwho-overlay --assignee "@me" --title "Gentoo Linux pingwho-overlay" --body "Pull request for pingwho-overlay" --reviewer jaypeche

Creating pull request for master into master in jaypeche/pingwho-overlay

could not add to project: 'pingwho-overlay' not found

_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
netfab
Advocate
Advocate


Joined: 03 Mar 2005
Posts: 2028
Location: 127.0.0.1

PostPosted: Fri Jun 27, 2025 6:41 pm    Post subject: Reply with quote

Je n'ai jamais utilisé cette méthode pour effectuer un pull request sur github.
La méthode que j'utilise :

  1. tu te connectes à ton compte github sur le web
  2. tu fork le dépôt cible en un clic (en haut à droite sur github)
  3. tu clones ton fork sur ton système
  4. tu fais les modifications
  5. tu commit et tu push sur ton dépôt github
  6. tu retournes sur la page de ton fork sur github, tu auras un bouton « pull request »
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Fri Jun 27, 2025 8:41 pm    Post subject: Reply with quote

Salut netfab,

Tu m'as devancé ! j'allais y revenir lol !

Je te remercie pour les explications, car c t un peu confus pour moi. Je ne savais pas si il fallait passer par une api gentoo ou autre.
Je tente la manip des que j'ai un peu de temps :!:
En tout cas tu confirmes ce qu'il me semblait en avoir compris en survolant la doc.

Thx
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Sun Jun 29, 2025 11:25 pm    Post subject: Reply with quote

Slt,

Je viens de tenter une pull-request, comme tu me l'as décrit, seulement je n'ai pas réussi à forker car github me dit que je suis propriétaire du dépot.

J'en suis revenu a github-cli, ou j'ai recréer une branche production et un changement pour pouvoir commiter, et lancé la commande de pull request.

Code:
strix /var/db/repos/pingwho-overlay # gh pr create --base master --head production --title "Pull request for official production repository" --body "Adding github pullrequest for pingwho-overlay::production"
a pull request for branch "production" into branch "master" already exists:
https://github.com/jaypeche/pingwho-overlay/pull/1
strix /var/db/repos/pingwho-overlay #


:idea: Je peux voir que cette requete a aboutie : https://github.com/jaypeche/pingwho-overlay/pull/1


Seulement tout cela reste assez confus pour moi. :?

Y'a t'il des précautions à prendre en condidération en terme de sécurité ?

J'aurais besoin de savoir en quoi considte exactement la demande de tirage, je pense qu'il s'agit d'autoriser des requettes pull sur le dépot mais je n'en suis pas sur ?

Comment cette requète devrait me permettre d'avoir l'url du depot associé à mon overlay via 'eselect repository list' ? Dois je relancé un eselect repository add ...?

Thx
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
netfab
Advocate
Advocate


Joined: 03 Mar 2005
Posts: 2028
Location: 127.0.0.1

PostPosted: Mon Jun 30, 2025 6:48 pm    Post subject: Reply with quote

Tu n'as pas compris le principe d'un pull request.
Le pull request tu dois le faire sur le dépôt https://github.com/gentoo/api-gentoo-org, pas sur ton propre dépôt contenant ton overlay.
Regarde ce petit guide qui explique les fondamentaux.


1. Connecte toi à ton compte github sur le web
2. Va sur la page https://github.com/gentoo/api-gentoo-org
3. En haut à droite tu cliques sur le bouton « Fork »
4. github va te forker ce dépôt sur ton propre compte : tu obtiendras https://github.com/jaypeche/api-gentoo-org/
5. Ce nouveau dépôt tu le clones sur ton propre système :
Code:

cd /tmp  && git clone https://github.com/jaypeche/api-gentoo-org/

4. Dans ce dépôt tu vas modifier le fichier :
Code:

    api-gentoo-org/files/overlays/repositories.xml

... pour y inclure la déclaration de ton overlay, de la même façon que tu avais créé ton fichier repositories.xml dans ton premier post.
Fais bien attention de suivre les règles définies dans l'entête du fichier, notamment :
Quote:

When adding repositories, please keep this file ordered by repository name.


5. Une fois que tu as modifié ce fichier dans ton clone sur ton système, tu commit et tu push sur ton dépôt https://github.com/jaypeche/api-gentoo-org/
6. Une fois que tu auras pushé, tu retournes sur la page https://github.com/jaypeche/api-gentoo-org/ tu verras le bouton « Compare and Pull request ».

Quand tu cliqueras sur ce bouton et que tu valideras la page, cela creéra le pull request sur le dépôt original, c'est à dire https://github.com/gentoo/api-gentoo-org.
Tu pourras alors voir que ton pull request est listé sur cette page : https://github.com/gentoo/api-gentoo-org/pulls
Ce pull request demandera donc l'autorisation d'inclure ta modification sur le fichier repositories.xml permettant de définir ton overlay lorsque tu exécutes
Code:
$ eselect repository list
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Tue Jul 01, 2025 5:50 pm    Post subject: Reply with quote

Salut netfab,

Je te remercie infiniment pour cette explication détaillée car j'ai enfin pu créer un pull request validé : https://pasteboard.co/QjPm7Q13Xhgo.png

J'attends la mise à jour pour vérifier l'exactitude du dépot via

Code:
# eselect repository,list


Cela m'a été très instructif, car Git est un formitable outil ! :idea:

Le lien vers Dataschool très intéressant !

Thx
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Fri Jul 04, 2025 10:56 am    Post subject: Reply with quote

Slt,

Bon ben... Je reviens içi car le "pull request" n'a pas abouti. C'est a dire, que le repository guru n'a pris en compte mon commit.

Je pense que comme que comme me l'a suggéré Netfab, il y aurait du y avoir qu'un seul commit, hors je m'y suis pris en 3 fois car erreur de positionnement dans le fichier ! oups !
Du coup 3 commits différents, c'est pas très propre : https://github.com/gentoo/api-gentoo-org/pull/746 :?:
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
netfab
Advocate
Advocate


Joined: 03 Mar 2005
Posts: 2028
Location: 127.0.0.1

PostPosted: Fri Jul 04, 2025 4:48 pm    Post subject: Reply with quote

jaypeche wrote:
Slt,

Bon ben... Je reviens içi car le "pull request" n'a pas abouti. C'est a dire, que le repository guru n'a pris en compte mon commit.

Je pense que comme que comme me l'a suggéré Netfab, il y aurait du y avoir qu'un seul commit, hors je m'y suis pris en 3 fois car erreur de positionnement dans le fichier ! oups !
Du coup 3 commits différents, c'est pas très propre : https://github.com/gentoo/api-gentoo-org/pull/746 :?:


Lorsqu'il y a plusieurs commits et qu'au final tu n'en veux qu'un seul, avec git tu as la possbilité de faire un rebase interactif et de squasher les commits. Tutos ici et par exemple.
Une fois tes commits squashés, et l'historique réécrit, tu force-push ta branche, et le pull request se mettra à jour automatiquement.

Ensuite : Je ne pense pas que ce dépôt ait quoi que ce soit à voir avec l'overlay GURU. C'est juste un dépôt officiel de gentoo, et il faut donc attendre qu'un développeur passe par là pour valider ou non les demandes. D'ailleurs, tu remarqueras que tu n'es pas le seul dans ce cas : https://github.com/gentoo/api-gentoo-org/pulls

Enfin : dans ta modification tu as mis :
Quote:

<repo quality="experimental" status="official">

Du point de vue de gentoo, ton overlay n'est pas officiel, il serait officiel s'il été géré par des développeurs de gentoo. Regarde toutes les autres demandes.
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Sat Jul 12, 2025 6:08 pm    Post subject: Reply with quote

Bonsoir,

Ma demande de pull request a été cloturée et il semblerait que, malgré quelques "cafouillages", mon overlay soit a présent dans api-gentoo-org https://github.com/gentoo/api-gentoo-org/blob/master/files/overlays/repositories.xml#L3408
Ce qui semble signifié que le pull request a été accepté

J'ai aussi remarquer qu'il existait maintenant une copie de mon overlay sous gentoo/gntoo-mirror : https://github.com/gentoo-mirror/pingwho-overlay
Code:
# eselect repository list | grep pingwho
 [278] pingwho-overlay @
:arrow: Ne me retourne pas l'url complète du dépot, je pense qu'il faut attendre la synchronisation des serveurs.

Je remercie netfab qui m'a bien aidé 8)

La suite aux prochaines màj :!:
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Tue Jul 15, 2025 3:10 pm    Post subject: Reply with quote

Bonjour à tous,

Suite a la mise à jour de eselect-repository, je viens de voir que mon overlay est maintenant bien référencé à l'exeption d'un * dont je ne sais pourquoi cela apparait ainsi ?

Code:
strix /home/jay # eselect repository list | grep pingwho
  [279] pingwho-overlay * (https://github.com/jaypeche/pingwho-overlay)


Je remercie grandement netfab qui a pris le temps de me guider avec des explications claires. Je me demandais depuis un moment comment on pouvait soumettre du code sur un dépot qui ne nous appartient pas ?.
Je comprends maintenant l'intêret d'une pull request ! Pour le coup cela a été très instructif !

Je vais cloturer ce post et le passer en résolu !

En vous remerciant :)
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
Anard
Apprentice
Apprentice


Joined: 01 Oct 2020
Posts: 255

PostPosted: Wed Jul 16, 2025 5:21 am    Post subject: Reply with quote

Bonjour.
L'étoile veut dire que tu as ajouté ce dépôt. J'ai également des dépôts signalés avec un #, mais je ne sais pas quelle est la différence…

EDIT , ah bah voilà, il va falloir que je mme penche sur la question :
Code:
$ man repository.eselect
[...]
ACTION: LIST
       List all repositories. The repositories in the listing are suffixed by a
       symbol, that indicates their current state.

       eselect repository list [-i]

       Parameters:

       -i     Only list installed

       State suffixes:

       *      Repository is enabled

       #      Repositorys sync information is out of date and needs to  be  up‐
              dated (via disable/enable) or is customized

       @      Repository is not listed by name in the official, published list

_________________
"iMack" : GA-H97M-D3H, Intel i7 4790, 16Go DDR3, Sapphire RX570 4Go, 2x SSD 256Go, HDD 500Go + Zpool 3x2To / Clover - macOS Mojave / Gentoo-Xfce
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 197
Location: France

PostPosted: Wed Jul 16, 2025 2:09 pm    Post subject: Reply with quote

Slt Anard,

Je dois reconnaitre que je n'ai pas eu le reflex de la manpage.
J'en deduis que dans mon cas tout semble correct ;)

Merçi pour le partage !
_________________
"Je peux expliquer le logiciel libre en 3 mots : Liberté, égalité, fraternité" Richard Stallman (2012)

:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum