Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 598830 - x11-wm/fvwm-2.6.5-r1: installation fails in RAP/Prefix
Summary: x11-wm/fvwm-2.6.5-r1: installation fails in RAP/Prefix
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords:
Depends on: 599144
Blocks:
  Show dependency tree
 
Reported: 2016-11-03 09:42 UTC by Gábor VIDA
Modified: 2018-10-08 12:15 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
output of emerge --info '=x11-wm/fvwm-2.6.5-r1::gentoo' (emerge.info.txt,5.90 KB, text/plain)
2016-11-03 09:47 UTC, Gábor VIDA
Details
diff between the old and the fixed ebuild (fvwm.ebuild.diff,3.08 KB, patch)
2016-11-03 09:48 UTC, Gábor VIDA
Details | Diff
the fixed ebuild (fvwm-2.6.5-r2.ebuild,4.77 KB, text/plain)
2016-11-03 09:49 UTC, Gábor VIDA
Details
list of installed files using the original ebuild on non-prefixed Gentoo (qlist.fvwm-2.6.5-r1.txt,5.70 KB, text/plain)
2016-11-03 09:50 UTC, Gábor VIDA
Details
list of installed files using the fixed ebuild on non-prefixed Gentoo (qlist.fvwm-2.6.5-r2.txt,5.85 KB, text/plain)
2016-11-03 09:51 UTC, Gábor VIDA
Details
list of installed files using the fixed ebuild on RAP Gentoo (qlist.fvwm-2.6.5-r2.RAP.txt,12.13 KB, text/plain)
2016-11-03 09:53 UTC, Gábor VIDA
Details
build log on RAP Gentoo (build.log,219.49 KB, text/x-log)
2016-11-03 09:54 UTC, Gábor VIDA
Details
the fixed ebuild (fvwm-2.6.5-r2.ebuild,4.85 KB, text/plain)
2016-11-04 15:10 UTC, Gábor VIDA
Details
diff between the old and the fixed ebuild (fvwm.ebuild.diff,3.69 KB, patch)
2016-11-04 15:13 UTC, Gábor VIDA
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Gábor VIDA 2016-11-03 09:42:51 UTC
Hi!

I realized that the ebuild of FVWM is not prepared for Gentoo Prefix. It has many
inproper directory usage, starting from this is src_install():

 * ERROR: x11-wm/fvwm-2.6.5-r1::gentoo failed (install phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line 115:  Called src_install
 *   environment, line 3203:  Called die
 * The specific snippet of code:
 *       echo "/usr/bin/fvwm" > "${D}/etc/X11/Sessions/${PN}" || die;

The line should look like this:

  echo "${EPREFIX}/usr/bin/fvwm" > "${ED}/etc/X11/Sessions/${PN}" || die

I fixed other problems too I faced with while I tried to make it work. I attach the
 
 - new ebuild that I suppose is better

 - a diff

 - qlist of the installed files using the original r1 version on non-prefixed Gentoo

 - qlist of the installed files using the new r2 version on non-prefixed Gentoo

 - qlist of the installed files using the new r2 veriosn on Gentoo RAP

The new ebuild reversion installs FVWM modules to usr/libexec, which I think is
better than the original usr/lib directory, since FVWM modules are standalone
executables that are communicating with FVWM on pipes.

Please note that I have no experience or knowledge writing ebuilds.


Reproducible: Always

Steps to Reproduce:
1. emerge fvwm

Actual Results:  
 * ERROR: x11-wm/fvwm-2.6.5-r1::gentoo failed (install phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line 115:  Called src_install
 *   environment, line 3203:  Called die
 * The specific snippet of code:
 *       echo "/usr/bin/fvwm" > "${D}/etc/X11/Sessions/${PN}" || die;
 * 
 * If you need support, post the output of `emerge --info '=x11-wm/fvwm-2.6.5-r1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=x11-wm/fvwm-2.6.5-r1::gentoo'`.
 * The complete build log is located at '/home/vidagabor/usr/roots/gentoo/var/tmp/portage/x11-wm/fvwm-2.6.5-r1/temp/build.log'.
 * The ebuild environment file is located at '/home/vidagabor/usr/roots/gentoo/var/tmp/portage/x11-wm/fvwm-2.6.5-r1/temp/environment'.
 * Working directory: '/home/vidagabor/usr/roots/gentoo/var/tmp/portage/x11-wm/fvwm-2.6.5-r1/work/fvwm-2.6.5'
 * S: '/home/vidagabor/usr/roots/gentoo/var/tmp/portage/x11-wm/fvwm-2.6.5-r1/work/fvwm-2.6.5'


Expected Results:  
Properly installed package.
Comment 1 Gábor VIDA 2016-11-03 09:47:44 UTC
Created attachment 452232 [details]
output of emerge --info '=x11-wm/fvwm-2.6.5-r1::gentoo'
Comment 2 Gábor VIDA 2016-11-03 09:48:39 UTC
Created attachment 452234 [details, diff]
diff between the old and the fixed ebuild
Comment 3 Gábor VIDA 2016-11-03 09:49:25 UTC
Created attachment 452236 [details]
the fixed ebuild
Comment 4 Gábor VIDA 2016-11-03 09:50:44 UTC
Created attachment 452238 [details]
list of installed files using the original ebuild on non-prefixed Gentoo
Comment 5 Gábor VIDA 2016-11-03 09:51:54 UTC
Created attachment 452240 [details]
list of installed files using the fixed ebuild on non-prefixed Gentoo
Comment 6 Gábor VIDA 2016-11-03 09:53:04 UTC
Created attachment 452242 [details]
list of installed files using the fixed ebuild on RAP Gentoo
Comment 7 Gábor VIDA 2016-11-03 09:54:40 UTC
Created attachment 452244 [details]
build log on RAP Gentoo
Comment 8 Felix Janda 2016-11-03 10:54:50 UTC
Some comments on the patched ebuild:

- there is a typo in the '--docdir'
- is it really necessary to specify '--docdir' anyway?
- the fperms call also needs to be eprefixified

Note that the current proxied maintainer has not worked on the package
for more than a year. So don't expect that this bug will be fixed until
another maintainer steps up. (It could be you.)

Also note that there is a new version (see bug 580166) for which (I
think) some parts of src_install become unecessary.
Comment 9 Gábor VIDA 2016-11-04 14:37:25 UTC
Thank you for the comments!

I was focusing on doing only the minimal to make this ebuild work in RAP. But yes, --docdir is not needed.

I can't see the typo around --docdir, but since I removed, it is not interesting any more.

If I use eprefixified path with fperms, like:

echo "${EPREFIX}/usr/bin/fvwm" > "${ED}/etc/X11/Sessions/${PN}" || die
fperms a+x ${ED}/etc/X11/Sessions/${PN} || die

Then I get this:

chmod: cannot access '/home/vidagabor/usr/roots/gentoo/var/tmp/portage/x11-wm/fvwm-2.6.5-r2/image/home/vidagabor/usr/roots/gentoo//home/vidagabor/usr/roots/gentoo/var/tmp/portage/x11-wm/fvwm-2.6.5-r2/image/home/vidagabor/usr/roots/gentoo//etc/X11/Sessions/fvwm': No such file or directory
 * ERROR: x11-wm/fvwm-2.6.5-r2::gentoo failed (install phase):
 *   fperms failed

I looked into fperms code, and it seems that it does auto-eprefixing:

chmod "${@/#${slash}/${ED}${slash}}"

I'm interested in being the proxy maintainer of this package, however, fvwm is not yet in the maintainer-needed list. Do you think I still can open a Maintainership Request bug?
Comment 10 Gábor VIDA 2016-11-04 15:10:51 UTC
Created attachment 452380 [details]
the fixed ebuild
Comment 11 Gábor VIDA 2016-11-04 15:13:33 UTC
Created attachment 452382 [details, diff]
diff between the old and the fixed ebuild
Comment 12 Felix Janda 2016-11-05 01:12:48 UTC
Please do open a maintainership request bug if you are interested in
maintaining this package. A package can also have more than one
proxied maintainer.

It's good to know that fperms takes the prefix into account.
Comment 13 Pacho Ramos gentoo-dev 2018-10-08 12:15:26 UTC
please retry with 2.6.8 and, if still valid, provide an updated diff

Thanks