Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Ebuild GIT] Pb de permissions (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: 161
Location: France

PostPosted: Fri Jul 08, 2011 10:10 pm    Post subject: [Ebuild GIT] Pb de permissions (Résolu) Reply with quote

Bonjour à tous,

Je travaille en ce moment sur la réalisation d'un ebuild, afin d'installer un logiciel dont les sources (en ruby) sont gérées par GIT via Github.com...

J'ai un problème de droits avec les sources, je m'explique :

Si je récupère les sources à la main, avec un 'git clone http://github.com/openplacos/openplacos', les droits sur les fichiers sont les bons (ex: droits en execution sur les fichiers *.rb).

En revanche, si j'utilise git_src_unpack, je récupère les sources mais les bons droits sur les différents fichiers n'existent plus !

Via git clone http://github.com/openplacos/openplacos :

Code:
dbox2 plugins # ll
total 52
drwxr-xr-x  3 root root 4096  3 juil. 21:23 db
-rwxr-xr-x  1 root root 3277  3 juil. 21:23 debug_server.rb
-rwxr-xr-x  1 root root 1439  3 juil. 21:23 fill_sql.rb
-rwxr-xr-x  1 root root 3124  3 juil. 21:23 jabber.rb
-rwxr-xr-x  1 root root 2269  3 juil. 21:23 log.rb
-rwxr-xr-x  1 root root  940  3 juil. 21:23 rackup.rb
-rwxr-xr-x  1 root root  965  3 juil. 21:23 ror_frontend.rb
drwxr-xr-x 12 root root 4096  3 juil. 21:23 rorplacos
-rwxr-xr-x  1 root root 2252  3 juil. 21:23 soap.rb
-rwxr-xr-x  1 root root 4440  3 juil. 21:23 sql.rb
-rwxr-xr-x  1 root root 1447  3 juil. 21:23 template.rb
-rwxr-xr-x  1 root root 1698  3 juil. 21:23 xmlrpc.rb


Via git_src_unpack (fonctionnalité ebuild) :

Code:
dbox2 plugins # ll
total 52
drwxr-xr-x  3 openplacos root 4096  7 juil. 14:56 db
-rw-r--r--  1 root       root 3277  7 juil. 15:19 debug_server.rb
-rw-r--r--  1 root       root 1439  7 juil. 15:19 fill_sql.rb
-rw-r--r--  1 root       root 3124  7 juil. 15:19 jabber.rb
-rw-r--r--  1 root       root 2269  7 juil. 15:19 log.rb
-rw-r--r--  1 root       root  940  7 juil. 15:19 rackup.rb
-rw-r--r--  1 root       root  965  7 juil. 15:19 ror_frontend.rb
drwxr-xr-x 13 openplacos root 4096  7 juil. 15:19 rorplacos
-rw-r--r--  1 root       root 2252  7 juil. 15:19 soap.rb
-rw-r--r--  1 root       root 4440  7 juil. 15:19 sql.rb
-rw-r--r--  1 root       root 1447  7 juil. 15:19 template.rb
-rw-r--r--  1 root       root 1698  7 juil. 15:19 xmlrpc.rb


Fichier ebuild :

http://pastebin.com/V0qqAeGJ

C'est assez génant car cela me force à attribuer les droits à la main depuis mon script ebuild. Vu qu'il y a pas mal de monde dans le train c'est assez laborieux...

:idea: Quelqu'un aurait-il une idée ?

Merçi par avance...
_________________
:-) Gentoo Linux Rullez !


Last edited by jaypeche on Sun Sep 11, 2011 4:48 am; edited 1 time in total
Back to top
View user's profile Send private message
guilc
Bodhisattva
Bodhisattva


Joined: 15 Nov 2003
Posts: 3326
Location: Paris - France

PostPosted: Sat Jul 09, 2011 6:36 am    Post subject: Reply with quote

Avant d'aller plus loin, je te suggère de commencer par migrer ton ebuild pour utiliser l'eclass "git-2" et non "git" qui est déprécié ;)

A priori, il te suffit juste de changer l'eclass.
Et vire ta fonction unpack. Laisse faire l'eclass qui va mettre correctement la fonction par défaut (ne la mets que si tu veux faire des trucs en plus de ce qui est fait par défaut)
_________________
Merci de respecter les règles du forum.

Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 161
Location: France

PostPosted: Sun Jul 10, 2011 2:37 pm    Post subject: Reply with quote

Merçi Guilc pour ces précisions... :wink:

J'ai donc suivi ta démarche dans un premier temps, je suis passé en "eclass git-2", supprimer la fonction unpack, ce qui n'altère pas le fonctionnement de l'ebuild.

Malheureusement cela n'a pas solutionner mes problèmes de droits sur les fichiers, je vais me pencher sur l'Eclass GIT-2.

Code:
dbox2 jay # emerge -v openplacos

 * IMPORTANT: 9 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.


These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] app-misc/openplacos-0.2.0  USE="-arduino -gtk2" 0 kB [?=>1]

Total: 1 package (1 reinstall), Size of downloads: 0 kB
Portage tree and overlays:
 [0] /usr/portage
 [1] /usr/local/portage
 [?] indicates that the source repository could not be determined


>>> Verifying ebuild manifests

>>> Emerging (1 of 1) app-misc/openplacos-0.2.0 from unknown repo
 * Package:    app-misc/openplacos-0.2.0
 * Maintainer: ruby@gentoo.org
 * USE:        elibc_glibc kernel_linux userland_GNU x86
 * FEATURES:   sandbox
>>> Unpacking source...
GIT update -->
   repository:               git://github.com/openplacos/openplacos.git
   at the commit:            62351647d7ea3896ac98e51d7e4ee5b2b0343af2
   commit:                   62351647d7ea3896ac98e51d7e4ee5b2b0343af2
   branch:                   master
   storage directory:        "/usr/portage/distfiles/egit-src/openplacos.git"
   checkout type:            bare repository
Cloning into /var/tmp/portage/app-misc/openplacos-0.2.0/work/openplacos-0.2.0...
done.
Switched to a new branch 'tree-62351647d7ea3896ac98e51d7e4ee5b2b0343af2'
>>> Unpacked to /var/tmp/portage/app-misc/openplacos-0.2.0/work/openplacos-0.2.0
>>> Source unpacked in /var/tmp/portage/app-misc/openplacos-0.2.0/work
>>> Preparing source in /var/tmp/portage/app-misc/openplacos-0.2.0/work/openplacos-0.2.0 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/app-misc/openplacos-0.2.0/work/openplacos-0.2.0 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/app-misc/openplacos-0.2.0/work/openplacos-0.2.0 ...
make -j3
make: Rien à faire pour « all ».
>>> Source compiled.
>>> Test phase [not enabled]: app-misc/openplacos-0.2.0




:idea: Si tu as qq pistes ...
_________________
:-) Gentoo Linux Rullez !


Last edited by jaypeche on Sun Aug 28, 2011 12:49 pm; edited 1 time in total
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 161
Location: France

PostPosted: Sun Jul 17, 2011 7:46 pm    Post subject: Up ! Reply with quote

Toujours sur mon problème ebuild lié à GIT :
Je me suis penché sur l' Eclass git-2, je n'arrive tjs pas à comprendre pourquoi je n'arrive pas à récupérer les sources comme le ferais un 'git clone UrI' ?
http://pingwho.homelinux.org/pub/gentoo/ftp/portage/eclass/git-2.eclass

l'option 'checkout type: bare repository' me laisse perplexe ?!

Merçi :)
_________________
:-) Gentoo Linux Rullez !
Back to top
View user's profile Send private message
netfab
Veteran
Veteran


Joined: 03 Mar 2005
Posts: 1698
Location: 127.0.0.1

PostPosted: Mon Jul 18, 2011 8:11 am    Post subject: Reply with quote

Tu n'as donc pas de problème ni avec ton ebuild, ni avec l'eclass ?
L'option bare du dépôt est une option de git, cela signifie que le dépôt n'est qu'un dépôt, et non un dépôt+répertoire de travail.

Edit: et pour répondre à ton interrogation, d'après les commentaires et l'imbrication des fonctions dans l'eclass, lorsqu'un dépôt git est téléchargé avec option bare activée, les sources sont récupérées à l'aide d'un clone lors du src_unpack par la fonction git-2_migrate_repository.
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 161
Location: France

PostPosted: Wed Jul 20, 2011 11:34 am    Post subject: Reply with quote

Merçi pour ta reponse netfab mais mon probleme n'en est pas moins resolu :

Pourquoi un git clone URL fonctionne il nickel ? à savoir avec les droits ki vont bien... :)

Alors que la function src_unpack ne recupere pas les sources avec leurs droits respectifs..; zarb

l'Eclass GIT-2 ne m'aide pas bcp..

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


Joined: 03 Mar 2005
Posts: 1698
Location: 127.0.0.1

PostPosted: Wed Jul 20, 2011 2:06 pm    Post subject: Reply with quote

A mon avis il n'y a rien d'anormal. C'est justement le but de l'ebuild d'effectuer les opérations (copie/droits/etc..) pour l'utilisateur.
Si tu trouves que ton ebuild devient trop complexe à cause de tous ces fichiers à copier et tous ces droits à positionner, tu devrais demander au niveau upstream à ce que le makefile soit correctement réécrit : les droits sur les fichiers installés devraient être positionnés au moment du make install.
Back to top
View user's profile Send private message
jaypeche
Apprentice
Apprentice


Joined: 13 Jun 2007
Posts: 161
Location: France

PostPosted: Sun Sep 11, 2011 4:45 am    Post subject: Reply with quote

Je tarde un peu à repondre.. dsl

Ne maitrisant pas l'eclass git-2, et n'arrivant pas à solutionner ce problème de droits, je me suis rabattu sur l'eclass git :cry:

J'ai remplacer l'ebuild comme ceçi, au niveau de la copie des sources et j'arrive à ce que je voulais :idea:

Code:
src_install () {

        # Copying files
        einfo
        einfo "Copying files"
        insinto ${OPOS_PATH} || die "insinto failed !"
        cp -dpR * ${D}/${OPOS_PATH} || die "copy failed !"
...


:idea: Résolu

Merçi à tous pour votre aide :)
_________________
:-) 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