Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[emerge] Creer son propre package... [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
MaKKrO
Apprentice
Apprentice


Joined: 04 Oct 2005
Posts: 265
Location: Paris - FRANCE

PostPosted: Tue Jul 04, 2006 5:57 am    Post subject: [emerge] Creer son propre package... [résolu] Reply with quote

Salut a tous.

Alors voila, au Taf j'install beaucoup de server, tous sous gentoo.
J'ai pas mal de package a installer, toujours de la meme maniere... et bien souvent peu importe la version (sauf gros changement)
J'ai par exemple toujours apache, mysql, php5, freeradius...

Ensuite j'ai toujours la meme conf, donc j'ai mes fichiers sur mon server principal, toujours au meme endroit...

Je me disai donc qu'il serait peut etre possible que je cree un package, ou script qui me permettrai d'installer tout ca en 2 fois plus rapide... enfin au moins pour moi !

Si quelqu'un a deja fait, j'aimerai bien un peu d'aide histoire de me lancer...

Merci
_________________
Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs


Last edited by MaKKrO on Tue Jul 04, 2006 1:55 pm; edited 1 time in total
Back to top
View user's profile Send private message
kwenspc
Advocate
Advocate


Joined: 21 Sep 2003
Posts: 4954

PostPosted: Tue Jul 04, 2006 6:32 am    Post subject: Reply with quote

L'option "--buildpkg" d'emerge est ton ami 8)

Enfin pour en savoir plus, ce thread assez récent peut t'aider (la méthode du BINHOST) : https://forums.gentoo.org/viewtopic-t-475282.html
En gros, une machine sert à la mise à jour, compilatiom et création des packages, et les autres viennent s'y connecter afin de récupérer les dis paquets binaires.
_________________
membre officieux du SAV Ati GEntoo
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Tue Jul 04, 2006 7:02 am    Post subject: Reply with quote

Tu peux également utiliser la technique du stage4 : http://en.gentoo-wiki.org/HOWTO_Custom_Stage4. Quelques scripts sont fournis. :wink:

Enjoy !
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
MaKKrO
Apprentice
Apprentice


Joined: 04 Oct 2005
Posts: 265
Location: Paris - FRANCE

PostPosted: Tue Jul 04, 2006 7:21 am    Post subject: Reply with quote

Je pense que ce qui me convient le plus est le buildpkg...

Peut etre changerai-je d'avis plus tard... :roll:

Logiquement, si je build mon pkg, que je le met sur un server de chez moi, en runnant un :
Code:

emerge --usepkg --getbinpkg <mon_pkg>

avec dans le make.conf :
Code:

PORTAGE_BINHOST="http://mon_server/path"


Ca devrai rouler... ca me plait bien ca en tout cas.

Le seul petit hic, est-il possible de faire un seul packake tout ???
Parce que je pige pas bien le truc... si je fais
Code:
buildpkg mysql freeradius


Ca me fait un tbz2 pour chaque package... dans /usr/portage/packages/All :?

Merci pour vos réponses !

@ yoyo : Le stage 4, je pense que c'est un peu trop lourd pour ce que je veux faire pour l'instant... apres je me trompe peut etre / surment...
_________________
Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Back to top
View user's profile Send private message
kwenspc
Advocate
Advocate


Joined: 21 Sep 2003
Posts: 4954

PostPosted: Tue Jul 04, 2006 7:30 am    Post subject: Reply with quote

En effet emerge avec --buildpkg va te créer des archive .tbz2 pour chaque paquet. ça n'en créera pas un seul qui contiendra tous les paquets.
C'est logique car lorsque tu vas utiliser emerge -gK <paquet> il va tout de même vérifier l'atomicité du paquet (sa version, etc...) et l'installer proprement, et ce afin de pouvoir l'unmerger tout aussi proprement par la suite si besoin est.
C'est pour le bien de la machine :wink: car même si ce sont des paquets binaires, portage les installe et continu de les gérer comme des paquets qu'il aurait emergé normalement (compilé etc...).
C'est, entre autres, un des nombreux aspects qui fait de portage un outil ultra performant, enfin je trouve.
_________________
membre officieux du SAV Ati GEntoo
Back to top
View user's profile Send private message
MaKKrO
Apprentice
Apprentice


Joined: 04 Oct 2005
Posts: 265
Location: Paris - FRANCE

PostPosted: Tue Jul 04, 2006 7:59 am    Post subject: Reply with quote

En fait, si je comprend bien, l'interet va etre : pas de unpack, pas de configure, pas de compil ni install....

Je vais testé ca et vous dire !

En tout cas merci !
_________________
Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Back to top
View user's profile Send private message
MaKKrO
Apprentice
Apprentice


Joined: 04 Oct 2005
Posts: 265
Location: Paris - FRANCE

PostPosted: Tue Jul 04, 2006 1:06 pm    Post subject: Reply with quote

Bon ba alors la y'a un truc que je ne comprend pas...

tout ca est sensé gagné du temps ou tout ca... mais ca DL quand meme les tar.gz !!!!

Je comprend pas trop la !

J'ai mes .tbz2 sur mon server, j'ai modifié mon make.conf avec l'URL qui va bien...

je pige pas...
_________________
Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Back to top
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Tue Jul 04, 2006 1:12 pm    Post subject: Reply with quote

Peut-être pour les digests ... C'est vraiment curieux ... 8O

Enfin, partage ton distfiles (via nfs par exemple) et le tour sera joué !

Mes 0.02 cents

ps : /me qui reste persuadé que la soluce du stage4 aurait été plus simple (pour l'install, pas les mises à jour). :P
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
kwenspc
Advocate
Advocate


Joined: 21 Sep 2003
Posts: 4954

PostPosted: Tue Jul 04, 2006 1:12 pm    Post subject: Reply with quote

tu as bien ces deux variables?:

Code:

PORTAGE_BINHOST="ton_binhost"

PKGDIR="/usr/portage/packages"


utilises emerge -g <le_paquet> pour voir.

Hum sinon vérifis que tu ais bien sur ton binhost le rep /usr/portage/packages avec dedans un rep All et tous les autres rep de catégories portage. Si oui, alors mets en place une procédure qui sur les autres machines récupères le contenu de /usr/portage/packages du binhost pour le mettre chez elles.
à partir de là ça devrait aller. Sinon demande de l'aide à la personne qui a créer un binhost dans le liens que je t'ai fournit plus haut.

[edit] +1 pour le partage de portage via nfs [/edit]
_________________
membre officieux du SAV Ati GEntoo
Back to top
View user's profile Send private message
MaKKrO
Apprentice
Apprentice


Joined: 04 Oct 2005
Posts: 265
Location: Paris - FRANCE

PostPosted: Tue Jul 04, 2006 1:22 pm    Post subject: Reply with quote

Bon, je viens de rajouter dans mon make.conf :

Code:

PKGDIR="/usr/portage/packages"


Mais je ne comprend toujours pas l'interet !

A quoi sert le PORTAGE_BINHOST si je dois avoir les tbz2 dans /usr/portage/packages/All de mon server local (celui ou y'a encore rien)??????

Je n'avais pas le /usr/portage/packages/All sur le BIN HOST. Mais je pensais que si je mettai le path qui allait bien dans le make.conf, ca devrai rouler nan ??????????

je vous met tout :

make.conf :
Code:

CHOST="i686-pc-linux-gnu"
CFLAGS="-march=athlon -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
USE=" -X mysql apache freeradius pam ssl xml -kde -gnome xml2"
ACCEPT_KEYWORDS="~x86"
PORTAGE_BINHOST="http://<mon_server/Package-Bin/"
PKGDIR="/usr/portage/packages"


Sur mon BIN_HOST :

Code:

linowave Package-Bin # ls -l
total 21180
-rw-r--r--  1 root root  1177794 Jul  4 14:54 apache-2.0.58.tbz2
-rw-r--r--  1 root root   108095 Jul  4 14:54 chillispot-1.0.tbz2
-rw-r--r--  1 root root  1145797 Jul  4 14:54 freeradius-1.1.1-r1.tbz2
-rw-r--r--  1 root root   274975 Jul  4 14:54 iptables-1.3.5-r1.tbz2
-rw-r--r--  1 root root 15030777 Jul  4 14:54 mysql-4.1.20.tbz2
-rw-r--r--  1 root root  1215499 Jul  4 14:54 ntp-4.2.0.20040617-r3.tbz2
-rw-r--r--  1 root root  2700159 Jul  4 14:54 php-5.1.4.tbz2


Essai :
Code:
localhost ~ # emerge -g mysql
Fetching binary packages info...
Loaded metadata pickle.
cache miss: 'x' --- cache hit: 'o'
ooooooo
  -- DONE!

Calculating dependencies ...done!
>>> emerge (1 of 1) dev-db/mysql-5.0.22 to /
>>> Downloading http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
--17:26:59--  http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
           => `/usr/portage/distfiles/mysql-5.0.22.tar.gz'
Resolving distfiles.gentoo.org... 64.50.236.52, 64.50.238.52, 216.165.129.135, ...
Connecting to distfiles.gentoo.org|64.50.236.52|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 19,542,405 (19M) [application/x-gzip]

 2% [>                                                                                  ] 393,565      200.91K/s



?? Any suggestions ? :?
_________________
Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Back to top
View user's profile Send private message
blasserre
Veteran
Veteran


Joined: 10 Feb 2004
Posts: 1362
Location: Lille, Vlaanderen

PostPosted: Tue Jul 04, 2006 1:37 pm    Post subject: Reply with quote

MaKKrO wrote:

Code:

linowave Package-Bin # ls -l
total 21180
-rw-r--r--  1 root root  1177794 Jul  4 14:54 apache-2.0.58.tbz2
-rw-r--r--  1 root root   108095 Jul  4 14:54 chillispot-1.0.tbz2
-rw-r--r--  1 root root  1145797 Jul  4 14:54 freeradius-1.1.1-r1.tbz2
-rw-r--r--  1 root root   274975 Jul  4 14:54 iptables-1.3.5-r1.tbz2
-rw-r--r--  1 root root 15030777 Jul  4 14:54 mysql-4.1.20.tbz2
-rw-r--r--  1 root root  1215499 Jul  4 14:54 ntp-4.2.0.20040617-r3.tbz2
-rw-r--r--  1 root root  2700159 Jul  4 14:54 php-5.1.4.tbz2


Essai :
Code:
localhost ~ # emerge -g mysql
Fetching binary packages info...
Loaded metadata pickle.
cache miss: 'x' --- cache hit: 'o'
ooooooo
  -- DONE!

Calculating dependencies ...done!
>>> emerge (1 of 1) dev-db/mysql-5.0.22 to /
>>> Downloading http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
--17:26:59--  http://distfiles.gentoo.org/distfiles/mysql-5.0.22.tar.gz
           => `/usr/portage/distfiles/mysql-5.0.22.tar.gz'
Resolving distfiles.gentoo.org... 64.50.236.52, 64.50.238.52, 216.165.129.135, ...
Connecting to distfiles.gentoo.org|64.50.236.52|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 19,542,405 (19M) [application/x-gzip]

 2% [>                                                                                  ] 393,565      200.91K/s



?? Any suggestions ? :?

essaye de demander la même version emerge -av mysql-4.1.20
si emerge voit que mysql-5.0.22 est la dernière version et que tu ne l'as pas dans tes packages, il va emerger la dernière normalement sans se soucier des packages précompilés
enfin c'est une supposition je n'ai jamais tenté le coup
_________________
benj

technicien professionnel, ascendant winner
Back to top
View user's profile Send private message
MaKKrO
Apprentice
Apprentice


Joined: 04 Oct 2005
Posts: 265
Location: Paris - FRANCE

PostPosted: Tue Jul 04, 2006 1:45 pm    Post subject: Reply with quote

Bon et bien ca a l'air de marcher.

Le problème semble etre la version... A priori si le bin pkg est plus vieux que celui de portage, il ne check pas les packages précompilés...

Je pense que c'est ca...

Je vais voir avec tous les packages et testé le système !

Merci a vous !

[edit]

J'ai ca :
Code:

>>> emerge (2 of 2) dev-lang/php-5.1.4 to /
>>> extracting info
/usr/lib/portage/bin/ebuild.sh: line 1765: /var/db/pkg/dev-lang/php-5.1.4/php-5.1.4.ebuild: No such file or directory

!!! ERROR: dev-lang/php-5.1.4 failed.
!!! Function , Line 1765, Exitcode 1
!!! error sourcing ebuild
!!! If you need support, post the topmost build error, NOT this status message.

>>> extracting php-5.1.4
>>> Merging dev-lang/php-5.1.4 to /
--- /etc/
--- /etc/php/
--- /etc/php/apache2-php5/



Ca a l'air de marcher quand meme.....

[/edit]
_________________
Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Back to top
View user's profile Send private message
MaKKrO
Apprentice
Apprentice


Joined: 04 Oct 2005
Posts: 265
Location: Paris - FRANCE

PostPosted: Tue Jul 04, 2006 1:56 pm    Post subject: Reply with quote

Ca marche parfaitement...

Merci beaucoup a vous : kwenspc, blasserre et yoyo
_________________
Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
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