# (solved) Failed to emerge media-libs/elementary-1.17.0

## artbody

 :Crying or Very sad:  Es ist mal wieder soweit.

Hatte erst vor 9 Wochen das gesamte System neu aufgesetzt

Heute wollte ich mal einen Update machen 

Ok, mit 

```
 emerge --keep-going -avuDN  --backtrack=300 world

```

lies sich das dann auch bewerkstelligen

aber nun das GRAUEN   :Sad:   :Question:   :Question:   :Question: 

```
 

make[1]: Leaving directory '/var/tmp/portage/media-libs/elementary-1.17.0/work/elementary-1.17.0'

>>> Source compiled.

 * --------------------------- ACCESS VIOLATION SUMMARY ---------------------------

 * LOG FILE: "/var/log/sandbox/sandbox-8397.log"

 * 

VERSION 1.0

FORMAT: F - Function called

FORMAT: S - Access Status

FORMAT: P - Path as passed to function

FORMAT: A - Absolute Path (not canonical)

FORMAT: R - Canonical Path

FORMAT: C - Command Line

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

 * --------------------------------------------------------------------------------

>>Failed to emerge media-libs/elementary-1.17.0, Log file:

>>>  '/var/tmp/portage/media-libs/elementary-1.17.0/temp/build.log'

*** Resuming merge...

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

Calculating dependencies... done!

 * Messages for package x11-drivers/nvidia-drivers-340.98:

 * Gentoo supports kernels which are supported by NVIDIA

 * which are limited to the following kernels:

 * <sys-kernel/gentoo-sources-4.4

 * <sys-kernel/vanilla-sources-4.4

 * 

 * You are free to utilize epatch_user to provide whatever

 * support you feel is appropriate, but will not receive

 * support as a result of those changes.

 * 

 * Do not file a bug report about this.

 * 

 * One or more packages are either masked or have missing dependencies:

 * 

 *   x11-wm/enlightenment[enlightenment_modules_notification] pulled in by:

 *     (virtual/notification-daemon-0:0/0::gentoo, installed)

 * 

 * The resume list contains packages that are either masked or have

 * unsatisfied dependencies. Please restart/continue the operation

 * manually, or use --skipfirst to skip the first package in the list and

 * any other packages that may be masked or have missing dependencies.

 * 

 * The following package has failed to build, install, or execute postinst:

 * 

 *  (media-libs/elementary-1.17.0:0/0::gentoo, ebuild scheduled for merge), Log file:

 *   '/var/tmp/portage/media-libs/elementary-1.17.0/temp/build.log'

 * 

```

Hat dazu vieleicht jemand einen Tip

Sandbox habe ich bereits neu   emerge sandbox

----------

## artbody

Ok bin ein kleines Stück weiter

Habe in dem Thema 

https://forums.gentoo.org/viewtopic-t-1042476-start-0.html

was gefunden, wo das gleiche Problem auftrat, allerdings mit einem anderen Paket.

```
env -i emerge --oneshot =media-libs/elementary-1.17.0
```

dann das nächste Problem  :Embarassed: 

```
make[2]: Entering directory '/var/tmp/portage/x11-wm/enlightenment-0.20.5/work/enlightenment-0.20.5/po'

make[2]: Leaving directory '/var/tmp/portage/x11-wm/enlightenment-0.20.5/work/enlightenment-0.20.5/po'

make[1]: Leaving directory '/var/tmp/portage/x11-wm/enlightenment-0.20.5/work/enlightenment-0.20.5'

>>> Source compiled.

 * --------------------------- ACCESS VIOLATION SUMMARY ---------------------------

 * LOG FILE: "/var/log/sandbox/sandbox-16216.log"

 * 

VERSION 1.0

FORMAT: F - Function called

FORMAT: S - Access Status

FORMAT: P - Path as passed to function

FORMAT: A - Absolute Path (not canonical)

FORMAT: R - Canonical Path

FORMAT: C - Command Line

F: mkdir

S: deny

P: /run/user/1000/.ecore

A: /run/user/1000/.ecore

R: /run/user/1000/.ecore

C: /usr/bin/efreetd 

 * --------------------------------------------------------------------------------

>>> Failed to emerge x11-wm/enlightenment-0.20.5, Log file:

>>>  '/var/tmp/portage/x11-wm/enlightenment-0.20.5/temp/build.log'

*** Resuming merge...

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

Calculating dependencies... done!

 * Messages for package x11-drivers/nvidia-drivers-340.98:

 * Gentoo supports kernels which are supported by NVIDIA

 * which are limited to the following kernels:

 * <sys-kernel/gentoo-sources-4.4

 * <sys-kernel/vanilla-sources-4.4

 * 

 * You are free to utilize epatch_user to provide whatever

 * support you feel is appropriate, but will not receive

 * support as a result of those changes.

 * 

 * Do not file a bug report about this.

 * 

 * One or more packages are either masked or have missing dependencies:

 * 

 *   x11-wm/enlightenment[enlightenment_modules_notification] pulled in by:

 *     (virtual/notification-daemon-0:0/0::gentoo, installed)

 * 

 * The resume list contains packages that are either masked or have

 * unsatisfied dependencies. Please restart/continue the operation

 * manually, or use --skipfirst to skip the first package in the list and

 * any other packages that may be masked or have missing dependencies.

 * 

 * The following package has failed to build, install, or execute postinst:

 * 

 *  (x11-wm/enlightenment-0.20.5:0.17/0.20.5::gentoo, ebuild scheduled for merge), Log file:

 *   '/var/tmp/portage/x11-wm/enlightenment-0.20.5/temp/build.log'

 * 

```

ok gleiche Vorgehensweise

```
env -i emerge --oneshot =x11-wm/enlightenment-0.20.5 
```

hab jetzt noch von Hand ein 

```
chmod 777
```

 auf  

```
/run/user/1000/ 
```

gesetzt

 :Shocked:   hm also wieso kommt emerge und was auch immer auf die Idee als user 1000 zu agieren, wenn ich als user root ein update world mache .... ??? seltsam   :Question: 

----------

## artbody

Also so langsam komm ich glaube der Sache näher

Mein Update 

```
emerge --keep-going -avuDN  --backtrack=300 world
```

hatte ca 400 Pakete und davon schon 300 installiert, bevor die obigen Fehler auftraten

naja trotz --keep-going abgebrochen -> seltsame Dinge geschehen 

Vieleicht war das der Grund

```
* Messages for package sys-power/acpid-2.0.27:

 * You should reboot the system now to get /run mounted with tmpfs!

```

Aber wer bricht einen Update mitten drin mit einem Reboot ab    :Shocked:   ? Da beist sich doch die Katze in den Schwanz !  :Confused: 

Naja jetzt läuft das update 

```
emerge --keep-going -avuDN  --backtrack=300 world
```

 ich laß jetzt  den Rest voll updaten und schau mal was noch so alles kommt.

----------

## mrsteven

Das ursprüngliche Problem sieht nach diesem Bug hier aus:

https://bugs.gentoo.org/show_bug.cgi?id=589306

Emerge aus einer Login-Shell aufzurufen sollte helfen:

```

$ su --login

Passwort:

# emerge -uDavN @world
```

Der Hintergund ist, dass die ganzen XDG_*-Variablen nicht gesetzt sein dürfen.

Das Thema mit /run als tmpfs sollte sich nach einem Reboot erledigt haben, Update natürlich erstmal durchlafen lassen.

----------

## artbody

@mrsteven 

erst mal danke.

 *Quote:*   

> Emerge aus einer Login-Shell aufzurufen sollte helfen:

 

Ich war als "su root" eingelogged

siehe 2 Postings weiter oben

 *Quote:*   

> hm also wieso kommt emerge und was auch immer auf die Idee als user 1000 zu agieren, wenn ich als user root ein update world mache .... ??? seltsam 

 

das verstehe ich immer noch nicht   :Shocked: 

Ok der Update ist nun durchgelaufen.   :Very Happy: 

Mal schauen was ein Reboot macht

----------

## mrsteven

 *artbody wrote:*   

> Ich war als "su root" eingelogged

 

Das ist etwas anderes als su --login root. Die Manpage zu su verrät dazu folgendes:

 *Quote:*   

> -, -l, --login
> 
> Provide an environment similar to what the user would expect had the user logged in directly.

 

Wohingegen das Standardverhalten ohne die Option das hier ist:

 *Quote:*   

> The current environment is passed to the new shell. The value of $PATH is reset to /bin:/usr/bin for normal users, or /sbin:/bin:/usr/sbin:/usr/bin for the superuser. This may be changed with the ENV_PATH and ENV_SUPATH definitions in /etc/login.defs.

 

Das bedeutet wiederum, dass deine root-Shell die Variablen XDG_* aus der grafischen Sitzung deines normalen Users mitbekommt und diese an die dann als root gestarteten Prozesse – wie beispielsweise emerge – weitervererbt.

 *Quote:*   

>  *Quote:*   hm also wieso kommt emerge und was auch immer auf die Idee als user 1000 zu agieren, wenn ich als user root ein update world mache .... ??? seltsam  
> 
> das verstehe ich immer noch nicht   

 

Tut er ja nicht wirklich. Etwas im Gentoo-Ebuild versucht in $XDG_RUNTIME_DIR zu schreiben, falls die Variable gesetzt ist. Das wird von der Portage-Sandbox abgefangen, da es gefährlich wäre, wenn fehlerhafte Ebuilds anfangen würden, wild im Filesystem herumzuschreiben. Daher kommt die Fehlermeldung. Das Ebuild sollte XDG_RUNTIME_DIR gar nicht auswerten und in das dort angegebene Verzeichnis nicht schreiben – deswegen ist es ein Bug.

Ich hoffe das war nun etwas verständlicher als meine etwas knappe Antwort zuvor.

----------

## artbody

Ja super erklärt   :Very Happy: 

Danke

Hab mal wieder was gelernt.

Ich denke das war das Problem

LG

----------

