make[1]: Leaving directory `/var/tmp/portage/x11-apps/xsm-1.0.1/work/xsm-1.0.1' >>> Completed installing xsm-1.0.1 into /var/tmp/portage/x11-apps/xsm-1.0.1/image/ man: gzipping man page: xsm.1x strip: i686-pc-linux-gnu-strip --strip-unneeded usr/bin/xsm >>> Merging x11-apps/xsm-1.0.1 to / --- /usr/ --- /usr/bin/ >>> /usr/bin/xsm --- /usr/share/ --- /usr/share/X11/ --- /usr/share/X11/app-defaults/ >>> /usr/share/X11/app-defaults/XSm --- /usr/share/man/ --- /usr/share/man/man1/ >>> /usr/share/man/man1/xsm.1x.gz --- /usr/share/doc/ >>> /usr/share/doc/xsm-1.0.1/ >>> /usr/share/doc/xsm-1.0.1/ChangeLog.gz --- /usr/lib/ --- /usr/lib/X11/ !!! Cannot write to '/usr/lib/X11/xsm'. !!! Please check permissions and directories for broken symlinks. !!! You may start the merge process again by using ebuild: !!! ebuild /usr/portage/x11-apps/xsm/xsm-1.0.1.ebuild merge !!! And finish by running this: env-update phylo ~ # ls -la /usr/lib/X11/xsm lrwxrwxrwx 1 root root 20 Nov 29 18:29 /usr/lib/X11/xsm -> ../../../etc/X11/xsm phylo ~ # ls -la /etc/X11/xsm ls: /etc/X11/xsm: No such file or directory phylo ~ # After creating /etc/X11/xsm I could install the package.
We'll have to add a check for that symlink and get rid of it.
(In reply to comment #1) > We'll have to add a check for that symlink and get rid of it. > Any idea how it got there?
(In reply to comment #2) > (In reply to comment #1) > > We'll have to add a check for that symlink and get rid of it. > > Any idea how it got there? Nope. I just took a look in the old xorg 6.x and xfree ebuilds and xsm wasn't specifically mentioned anywhere. It could've been some sort of loop that just symlinked everything in /usr/libdir/X11/.
OK, I had a look on my machines in the cluster and on several of them I have this symlink and on some not. One example: taxo6 ~ # equery belongs xsm [ Searching for file(s) xsm in *... ] x11-apps/xsm-1.0.1 (/usr/lib/X11/xsm) x11-apps/xsm-1.0.1 (/usr/bin/xsm) taxo6 ~ # ls -la /usr/lib/X11/xsm lrwxrwxrwx 1 root root 20 Oct 25 2005 /usr/lib/X11/xsm -> ../../../etc/X11/xsm taxo6 ~ # ls -la /etc/X11/xsm drwxr-xr-x 2 root root 23 Dec 19 18:11 . drwxr-xr-x 13 root root 4096 Dec 19 19:22 .. -rw-r--r-- 1 root root 77 Dec 19 18:11 system.xsm taxo6# taxo6 ~ # equery files =x11-apps/xsm-1.0.1 [ Searching for packages matching =x11-apps/xsm-1.0.1... ] * Contents of x11-apps/xsm-1.0.1: /usr /usr/bin /usr/bin/xsm /usr/lib /usr/lib/X11 /usr/lib/X11/xsm /usr/lib/X11/xsm/system.xsm /usr/share /usr/share/X11 /usr/share/X11/app-defaults /usr/share/X11/app-defaults/XSm /usr/share/doc /usr/share/doc/xsm-1.0.1 /usr/share/doc/xsm-1.0.1/ChangeLog.gz /usr/share/man /usr/share/man/man1 /usr/share/man/man1/xsm.1x.gz taxo6 ~ # taxo3 ~ # equery belongs xsm [ Searching for file(s) xsm in *... ] x11-apps/xsm-1.0.1 (/usr/lib/X11/xsm) x11-apps/xsm-1.0.1 (/usr/bin/xsm) taxo3 ~ # equery files =x11-apps/xsm-1.0.1 [ Searching for packages matching =x11-apps/xsm-1.0.1... ] * Contents of x11-apps/xsm-1.0.1: /usr /usr/bin /usr/bin/xsm /usr/lib /usr/lib/X11 /usr/lib/X11/xsm /usr/lib/X11/xsm/system.xsm /usr/share /usr/share/X11 /usr/share/X11/app-defaults /usr/share/X11/app-defaults/XSm /usr/share/doc /usr/share/doc/xsm-1.0.1 /usr/share/doc/xsm-1.0.1/ChangeLog.gz /usr/share/man /usr/share/man/man1 /usr/share/man/man1/xsm.1x.gz taxo3 ~ # ls -la /usr/lib/X11/xsm total 4 drwxr-xr-x 2 root root 23 Dec 19 18:12 . drwxr-xr-x 5 root root 96 Dec 19 18:38 .. -rw-r--r-- 1 root root 77 Dec 19 18:12 system.xsm taxo3 ~ # ls -la /etc/X11/xsm total 8 drwxr-xr-x 2 root root 23 Aug 16 2005 . drwxr-xr-x 13 root root 4096 Dec 19 19:23 .. -r--r--r-- 1 root root 77 Nov 15 2005 system.xsm taxo3 ~ #
Inspecting emerge.log on the problematic host on Aug 16 2005 I see: 1124148917: >>> emerge (41 of 120) x11-base/xorg-x11-6.8.2-r2 to / 1124148917: === (41 of 120) Cleaning (x11-base/xorg-x11-6.8.2-r2::/usr/portage/x11-base/xorg-x11/xorg-x11-6.8.2-r2.ebuild) 1124148917: === (41 of 120) Compiling/Merging (x11-base/xorg-x11-6.8.2-r2::/usr/portage/x11-base/xorg-x11/xorg-x11-6.8.2-r2.ebuild) 1124150825: === (41 of 120) Post-Build Cleaning (x11-base/xorg-x11-6.8.2-r2::/usr/portage/x11-base/xorg-x11/xorg-x11-6.8.2-r2.ebuild) 1124150838: >>> AUTOCLEAN: x11-base/xorg-x11 1124150838: --- AUTOCLEAN: Nothing unmerged. 1124150838: ::: completed emerge (41 of 120) x11-base/xorg-x11-6.8.2-r2 to / 1124150838: >>> emerge (42 of 120) x11-libs/Xaw3d-1.5-r1 to / 1124150838: === (42 of 120) Cleaning (x11-libs/Xaw3d-1.5-r1::/usr/portage/x11-libs/Xaw3d/Xaw3d-1.5-r1.ebuild) 1124150838: === (42 of 120) Compiling/Merging (x11-libs/Xaw3d-1.5-r1::/usr/portage/x11-libs/Xaw3d/Xaw3d-1.5-r1.ebuild) 1124150862: === (42 of 120) Post-Build Cleaning (x11-libs/Xaw3d-1.5-r1::/usr/portage/x11-libs/Xaw3d/Xaw3d-1.5-r1.ebuild) 1124150862: >>> AUTOCLEAN: x11-libs/Xaw3d 1124150862: --- AUTOCLEAN: Nothing unmerged. 1124150862: ::: completed emerge (42 of 120) x11-libs/Xaw3d-1.5-r1 to /
(In reply to comment #1) > We'll have to add a check for that symlink and get rid of it. > Would you rather do that than die and inform the user of what to do?
Whenever it's possible to do the right thing automatically and it's unlikely to break anything, we should do it.
Fixed in CVS, thanks for your patience!