Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 331763 - app-emacs/lua-mode-20100617 will not emerge with recent portages (permission problem with DISTDIR)
Summary: app-emacs/lua-mode-20100617 will not emerge with recent portages (permission ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Emacs project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-08-09 12:17 UTC by m_zwart
Modified: 2010-08-10 10:09 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description m_zwart 2010-08-09 12:17:02 UTC
The new ebuild has a src_prepare that does:

mv "${DISTDIR}"/${P}.el "${WORKDIR}"/${PN}.el

There are a few problems with this:

- It's in src_prepare, while it might as well be in src_unpack (the default unpack ends up doing nothing anyway because it doesn't know how to handle .el files).
- It's missing "|| die "mv failed""
- It doesn't actually work on my system, because $DISTDIR is:

drwxr-xr-x 2 root portage 4096 Aug  9 13:59 /var/tmp/portage/app-emacs/lua-mode-20100617/distdir

That is: DISTDIR is a separate root-owned directory containing symlinks to the actual source files, and the portage user has no write access to it.

Proposed solution (untested):

S="${WORKDIR}"
src_unpack() { 
    cp "${DISTDIR}"/${P}.el "${WORKDIR}"/${PN}.el || die "cp failed"
}


Reproducible: Always

Steps to Reproduce:
1. emerge -1 lua-mode

Actual Results:  
>>> Preparing source in /var/tmp/portage/app-emacs/lua-mode-20100617/work ...
mv: cannot move `/var/tmp/portage/app-emacs/lua-mode-20100617/distdir/lua-mode-20100617.el' to `/var/tmp/portage/app-emacs/lua-mode-20100617/work/lua-mode.el': Permission
 denied
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/app-emacs/lua-mode-20100617/work ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/app-emacs/lua-mode-20100617/work ...
 * Compiling GNU Emacs Elisp files ...
>>Error occurred processing *.el: File error (("Opening input file" "no such file or directory" "/var/tmp/portage/app-emacs/lua-mode-20100617/work/*.el"))
 * elisp-compile: batch-byte-compile failed

Expected Results:  
Upgrade lua-mode.


Portage 2.2_rc67 (default/linux/x86/10.0/desktop/gnome, gcc-4.4.4, glibc-2.11.2-r0, 2.6.32-24-generic i686)
=================================================================
System uname: Linux-2.6.32-24-generic-i686-AMD_Athlon-tm-_XP_2600+-with-gentoo-2.0.1
Timestamp of tree: Mon, 09 Aug 2010 09:15:03 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11
dev-lang/python:     2.6.5-r3, 3.1.2-r4
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.6.1-r1
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
virtual/os-headers:  2.6.34
ACCEPT_KEYWORDS="x86 ~x86"
ACCEPT_LICENSE="* -@EULA PUEL skype-eula AdobeFlash-10 AdobeFlash-10.1"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-ggdb -O2 -fomit-frame-pointer -march=athlon-xp -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-ggdb -O2 -fomit-frame-pointer -march=athlon-xp -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests cached-virtuals candy ccache collision-protect distlocks fixpackages news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict test unmerge-logs unmerge-orphans userfetch userpriv usersandbox verify-rdepend"
GENTOO_MIRRORS="http://gentoo.tiscali.nl/"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_GB en_US nl fy fy_NL"
PKGDIR="/var/tmp/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/cross /usr/local/portage/canon-overlay /usr/local/portage/mzbot-overlay /usr/local/portage/java-overlay /usr/local/portage/gentoo-lisp-overlay /usr/local/portage/private"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acpi alsa applet avahi branding bzip2 cairo canberra caps cdda cddax cdio cdr cli consolekit crypt cups cxx dbus dia doc dri dts dvd dvdr dvi emacs emboss evo exif expat fbcon fbcondecor fbsplash ffmpeg firefox flac fluidsynth fontconfig fortran fuse gif glib gmp gnome gsf gstreamer gtk iconv idn inotify ipv6 jack jpeg ladspa lash latex lcms libcaca libnotify libsamplerate lzma maildir matroska mmx mmxext mng modules mozdevelop mp3 mp4 mpeg nautilus ncurses network new-clx nls nptl nptlonly objc offensive ogg opengl pam pango pch pdf playlist png policykit pppd preview-latex pulseaudio python qt4 quote readline realtime reflection rtc rtsp schroedinger secure-delete session sftp sound speex spell spl sqlite sse ssl startup-notification stream svg sysfs tagwriting test theora toolkit-scroll-bars tools truetype udev unicode urwid usb vorbis vpx wxwidgets x264 x86 xcb xcomposite xft xinerama xml xorg xslt xterm-color xulrunner xv zlib zsh-completion" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB en_US nl fy fy_NL" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="radeon r300" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Wormo (RETIRED) gentoo-dev 2010-08-10 02:13:43 UTC
Thanks for the report, assigning to emacs team
Comment 2 Diego Elio Pettenò (RETIRED) gentoo-dev 2010-08-10 10:09:43 UTC
QA fixed this.