# [layman] ajout d'un overlay (résolu)

## 341438

Salut à tous,

j'ai besoin d'ebuild supplémentaires et j'aimerais donc ajouter des overlays qui contiennent ceux que je veux. J'ai vu

qu'il faut installer layman pour avoir accès aux autres overlays. J'ai suivi la page du wiki, mais emerge ne trouve pas 

les ebuild situés dans d'autres overlays. Voici mon make.conf:

```

$ cat /etc/portage/make.conf

# These settings were set by the catalyst build script that automatically

# built this stage.

# Please consult /usr/share/portage/config/make.conf.example for a more

# detailed example.

CFLAGS="-march=native -O2 -pipe"

CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j4"

# WARNING: Changing your CHOST is not something that should be done lightly.

# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.

CHOST="x86_64-pc-linux-gnu"

# These are the USE flags that were used in addition to what is provided by the

# profile used for building.

USE="bindist mmx sse sse2 X alsa vaapi"

PORTDIR="/usr/portage"

DISTDIR="${PORTDIR}/distfiles"

PKGDIR="${PORTDIR}/packages"

# Local overlay

#PORTDIR_OVERLAY="/usr/local/portage"

#X.org

#(For mouse, keyboard support)

INPUT_DEVICES="evdev synaptics"

# For intel video cards

VIDEO_CARDS="intel i915"

ACCEPT_KEYWORDS="~amd64"

source /var/lib/layman/make.conf

```

Comme ma version de layman est récente, je n'ai rien changé à /etc/layman/layman.cfg.J'ai suivi la méthode pour

une version de layman supérieure à 2.1. J'ai donc créé le répertoire /etc/portage/repos.conf:

```

$ ls -l /etc/portage/repo.conf/

total 0

```

Si j'ajoute ensuite un overlay, voici ce que j'obtiens en l'ajoutant:

```

$ sudo layman -a sabayon

 * Adding overlay...

 * Overlay "sabayon" is not an official. Continue install? [y/n]: y

 * Running Git... # ( cd /var/lib/layman  && /usr/bin/git clone git://github.com/Sabayon/for-gentoo.git /var/lib/layman/sabayon )

Cloning into '/var/lib/layman/sabayon'...

remote: Counting objects: 88630, done.

remote: Total 88630 (delta 0), reused 0 (delta 0), pack-reused 88630

Receiving objects: 100% (88630/88630), 56.56 MiB | 6.25 MiB/s, done.

Resolving deltas: 100% (54435/54435), done.

Checking connectivity... done.

 * Running Git... # ( cd /var/lib/layman/sabayon  && /usr/bin/git config user.name "layman" )

 * Running Git... # ( cd /var/lib/layman/sabayon  && /usr/bin/git config user.email "layman@localhost" )

 * ReposConf: ConfigHandler.read(); Failed to read "/etc/portage/repos.conf/layman.conf".

 * File not found.

 * CLI: Errors occurred processing action add

 * ReposConf: ConfigHandler.read(); Failed to read "/etc/portage/repos.conf/layman.conf".

 * File not found.

 * Exception caught installing repository 'sabayon' : ConfigHandler instance has no attribute 'repo_conf'

```

Le problème vient du fait que layman.conf est absent. D'après ce que j'ai vu il faut utiliser layman-updater. Toutefois cela ne fonctionne pas:

```

$ sudo layman-updater -R

 *   Creating layman's repos.conf file

Traceback (most recent call last):

  File "/usr/lib/python-exec/python2.7/layman-updater", line 30, in <module>

    main()

  File "/usr/lib64/python2.7/site-packages/layman/updater.py", line 90, in __call__

    elif not self.check_is_new(self.args.rebuild):

  File "/usr/lib64/python2.7/site-packages/layman/updater.py", line 102, in check_is_new

    getattr(self, 'create_%(conf)s' % {'conf': conf})()

  File "/usr/lib64/python2.7/site-packages/layman/updater.py", line 191, in create_repos_conf

    open(self.config['repos_conf'], 'w').close()

IOError: [Errno 2] No such file or directory: '/etc/portage/repos.conf/layman.conf'

```

Est-ce que je dois créer ce fichier manuellement ? Je dois avoir loupé une étape, mais je ne vois pas où........

MerciLast edited by 341438 on Mon May 04, 2015 7:53 pm; edited 1 time in total

----------

## 341438

Je crois que j'ai trouvé: apparemment la version 2.3.1 corrige le problème. Voir ici. 

Je vais en profiter pour poser une question supplémentaire: la version 2.3.1 est sortie, mais l'ebuild est encore 2.3.0. Est-ce qu'on informe le développeur dans ce cas-là ? Si oui, y'a-t-il une manière de le faire ? Il y a peut-être un mécanisme de notification quelque part que je n'ai pas vu. Ou alors on attend qu'il le fasse ?

----------

## 341438

En fait, je ne sais pas quand sortira la version. J'ai donc installé la version de développement, ce qui a résolu mon problème.

Je peux à présent utiliser d'autres overlays. J'ai vu qu'un fichier vide a été créé. Je suppose donc qu'un simple 

```

# touch /etc/portage/repos.conf/layman.conf

```

aurait suffit. Mais je laisse les spécialistes me corriger. 

Mon problème est résolu, mais j'en profite pour poser deux questions supplémentaires: 

- est-ce que tous les paquets se finissant par 9999 sont les versions actuelles de développement ?

- lorsqu'on constate qu'une nouvelle version d'un logiciel est sortie, doit-on l'annoncer si on veut un ebuild adapté ?

Quel est la manière de procéder dans ce cas ? 

Merci!

----------

## xaviermiller

Hello,

- les versions terminant par -9999 sont en effet des version "live" (git, cvs, ...), que tu peux recompiler avec @live-rebuild (ou en nommant explicitement les ebuilds)

- pour une nouvelle version, ouvre une demande de "bump" sur bugs.gentoo.org

----------

## 341438

Merci pour les informations!   :Very Happy: 

----------

