Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 681146 - >=media-gfx/darktable-2.6.1: Install failure "rm: cannot remove '/var/tmp/portage/media-gfx/darktable-2.6.2/image/usr/share/locale/ca': No such file or directory"
Summary: >=media-gfx/darktable-2.6.1: Install failure "rm: cannot remove '/var/tmp/por...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Graphics Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-21 10:28 UTC by Aaron W. Swenson
Modified: 2019-05-04 22:42 UTC (History)
3 users (show)

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


Attachments
darktable-2.6.1-build.log.bz2 (darktable-2.6.1-build.log.bz2,22.96 KB, application/x-bzip2)
2019-03-21 10:28 UTC, Aaron W. Swenson
Details
darktable-image-tree (darktable-2.6.1-image-tree,35.91 KB, text/plain)
2019-03-21 10:30 UTC, Aaron W. Swenson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Aaron W. Swenson gentoo-dev 2019-03-21 10:28:29 UTC
Created attachment 570096 [details]
darktable-2.6.1-build.log.bz2

Both 2.6.1 and 2.6.2 fail to install because it cannot remove a nonexistent directory.

~ # emerge --info darktable
Portage 2.3.62 (python 2.7.14-final-0, !../../home/titan/repos/gentoo/profiles/default/linux/amd64/17.0, gcc-8.2.0, glibc-2.27-r6, 4.9.140-gento
o x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.9.140-gentoo-x86_64-Intel-R-_Core-TM-_i3-4160_CPU_@_3.60GHz-with-gentoo-2.6
KiB Mem:    16130164 total,   3289940 free
KiB Swap:   16777212 total,  16656600 free
Timestamp of repository gentoo: Wed, 20 Mar 2019 23:30:01 +0000
Head commit of repository gentoo: 496d7b5ac1e6a32b7cdf799aa2ba2c2b3dcba575
Head commit of repository 4nykey: 0d7e2718c5511f35f70a9f1beb48efc3360db950

sh bash 4.4_p23-r1
ld GNU ld (Gentoo 2.30 p5) 2.30.0
distcc 3.3.2 x86_64-pc-linux-gnu [disabled]
app-shells/bash:          4.4_p23-r1::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.24.3-r1::gentoo
dev-lang/python:          2.7.14-r1::gentoo, 3.4.8::gentoo, 3.5.5-r1::gentoo, 3.6.5-r1::gentoo
dev-util/cmake:           3.9.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/openrc:          0.34.11::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.13.4-r2::gentoo, 1.14.1::gentoo, 1.15.1-r2::gentoo
sys-devel/binutils:       2.30-r4::gentoo
sys-devel/gcc:            8.2.0-r6::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers)
sys-libs/glibc:           2.27-r6::gentoo
Repositories:

gentoo
    location: /var/cache/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-metamanifest: yes
    sync-rsync-extra-opts:
    sync-rsync-verify-max-age: 24

4nykey
    location: /usr/local/overlays/4nykey
    sync-type: git
    sync-uri: https://github.com/4nykey/4nykey.git
    masters: gentoo

titanofold-dev-overlay
    location: /home/titan/repos/titanofold-gentoo-x86
    masters: gentoo

rust
    location: /var/lib/layman/rust
    masters: gentoo
    priority: 50

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA FraunhoferFDK teamspeak3"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /var/bind /var/lib/unifi"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/apache2-php7.0/ext-active/ /etc/php/apache2-php7.1/ext-active/ /etc/php/apache2-php7.2/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cgi-php7.0/ext-active/ /etc/php/cgi-php7.1/ext-active/ /etc/php/cgi-php7.2/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/php/cli-php7.0/ext-active/ /etc/php/cli-php7.1/ext-active/ /etc/php/cli-php7.2/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/var/cache/portage/distfiles"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US en-US"
MAKEOPTS="-j5"
PKGDIR="/var/cache/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X aac aacplus acl aes alsa amd64 apache2 apcupsd avx avx2 berkdb bzip2 cairo cli crypt cups cxx dbus dri dri3 emacs exif fdk flac fma3 fortran gdbm gfile gif glamor gnutls gphoto2 gsettings gstreamer gtk iconv icu imagemagick imap iproute2 ipv6 ithreads jpeg jpeg2k libnotify libtirpc mmx mmxext mp3 mpeg mtp multilib ncurses nptl ogg openexr opengl openmp openssl pam pcre png popcnt postgres printsupport pulseaudio qt5 readline sasl seccomp sid speech speex sqlite sse sse2 sse3 sse4_1 sse4_2 ssl ssse3 startup-notification svg tcpd theora threads tiff truetype twolame udev unicode urandom usb vaapi vorbis webp wide-int wma-fixed xattr xcb xetex xft xml xpm zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx
via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load
memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" L10N="en en_US en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-1" POSTGRES_TARGETS="postgres9_5 postgres9_6 postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6"
PYTHON_TARGETS="python2_7 python3_4 python3_5 python3_6" RUBY_TARGETS="ruby24" SANE_BACKENDS="genesys" USERLAND="GNU" VIDEO_CARDS="intel i965" 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:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Aaron W. Swenson gentoo-dev 2019-03-21 10:30:12 UTC
Created attachment 570098 [details]
darktable-image-tree

Attached is the full image tree.

There are no ${ED}/usr/share/locale directories.
Comment 2 Dylan 2019-04-01 21:45:16 UTC
A theory: the ebuild is not handling the L10N environment variable properly. 
Running 
emerge darktable fails with locale/ca

L10N=ca emerge darktable will then fail with locale/de

L10N="ca de" emerge darktable will then fail with locale/es

etc...
Comment 3 Laslo Hunhold 2019-04-02 06:47:44 UTC
I can confirm this problem.

Both ebuilds (2.6.1 and 2.6.2) contain the following loop in src_install()

   for lang in ${LANGS} ; do
   	if ! use l10n_${lang}; then
   		rm -r "${ED}"/usr/share/locale/${lang/-/_} || die
   	fi
   done

where

   LANGS=" ca de es fi fr hu ja nb nl pl pt-BR ru sl"

So naturally, when setting L10N=ca the flag l10n_ca will be enabled and the loop will not attempt to remove the non-existing folder /usr/share/locale/ca, but fail with the next one (/usr/share/locale/de).

Something must have changed upstream regarding locales. This is probably the right direction to investigate into.
Comment 4 Andreas Sturmlechner gentoo-dev 2019-04-03 20:46:15 UTC
The l10n handling should just be dropped really.
Comment 5 Jaak Ristioja 2019-04-28 20:53:50 UTC
CMakeLists.txt in the root of the sources skips generation of locales if USE_NLS is not set, more specifically, it only attempts to add_directory(po) if USE_NLS is set and gettext is found.

In src_install(), enclosing the loop over ${LANGS} inside an "if use nls; then" block seems to work.
Comment 6 Markus Meier gentoo-dev 2019-05-04 04:09:20 UTC
(In reply to Jaak Ristioja from comment #5)
> CMakeLists.txt in the root of the sources skips generation of locales if
> USE_NLS is not set, more specifically, it only attempts to add_directory(po)
> if USE_NLS is set and gettext is found.
> 
> In src_install(), enclosing the loop over ${LANGS} inside an "if use nls;
> then" block seems to work.

ah that was it... thanks for the heads up!
should be fixed in https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29225397e9119c4665ae85952d5c172efda9c501
Comment 7 Aaron W. Swenson gentoo-dev 2019-05-04 22:42:43 UTC
Fix verified. It finally installed.