Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 765430 - kde-frameworks/kio based application (e.g. kde-apps/dolphin) cannot open file with non-ascii name when LC_ALL is not set
Summary: kde-frameworks/kio based application (e.g. kde-apps/dolphin) cannot open file...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords: UPSTREAM
Depends on:
Blocks:
 
Reported: 2021-01-14 12:44 UTC by Stefan Radermacher
Modified: 2021-02-12 21:56 UTC (History)
3 users (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 Stefan Radermacher 2021-01-14 12:44:57 UTC
After a recent update that included dev-libs/icu-68.2 (from 67.1) both my Gentoo Linux machines encountered problems using files with German umlauts in the file path, when used in KDE applications.

For example, a PDF file that has an umlaut, or is in a directory with an umlaut cannot be opened from Dolphin in Okular. An error box shows error code 100, file cannot be found.

Also, when using ls in Konsole, files or directories with umlauts are listed with 2 "boxes" instead of the umlaut, while xterm shows them correctly.

After downgrading to dev-libs/icu-67.1, everything works as expected again.

Reproducible: Always

Steps to Reproduce:
1. use German locale
2. update to dev-libs/icu-68.2
3. create Folder with umlaut, such as "Über"
4. copy a PDF file to that folder
5. try to open the file in Dolphin

Actual Results:  
Error message "file does not exist" or "chdir: no such file or directory".

Expected Results:  
File is opened in Okular.

Portage 3.0.13 (python 3.8.6-final-0, default/linux/amd64/17.1, gcc-9.3.0, glibc-2.32-r5, 5.8.10-gentoo-x86_64 x86_64)
=================================================================
System uname: Linux-5.8.10-gentoo-x86_64-x86_64-Intel-R-_Core-TM-_i5-2500_CPU_@_3.30GHz-with-glibc2.2.5
KiB Mem:    16278800 total,   1394748 free
KiB Swap:     524284 total,    273384 free
Timestamp of repository gentoo: Wed, 13 Jan 2021 22:45:01 +0000
Head commit of repository gentoo: 480561a2583968a29577081856f9b6e376d41830
Timestamp of repository kde: Tue, 12 Jan 2021 18:35:23 +0000
Head commit of repository kde: 2a833d6c7952037d3ab7e5d706ca13787e88bac8

sh bash 5.0_p18
ld GNU ld (Gentoo 2.34 p6) 2.34.0
app-shells/bash:          5.0_p18::gentoo
dev-java/java-config:     2.3.1::gentoo
dev-lang/perl:            5.30.3::gentoo
dev-lang/python:          2.7.18-r5::gentoo, 3.8.6-r1::gentoo, 3.9.0-r1::gentoo
dev-util/cmake:           3.17.4-r1::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.7::gentoo
sys-apps/openrc:          0.42.1::gentoo
sys-apps/sandbox:         2.20::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r5::gentoo
sys-devel/automake:       1.16.2-r1::gentoo
sys-devel/binutils:       2.34-r2::gentoo
sys-devel/gcc:            9.3.0-r2::gentoo
sys-devel/gcc-config:     2.3.2-r1::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.4-r1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.32-r5::gentoo
Repositories:

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

kde
    location: /var/db/repos/kde
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/kde.git
    masters: gentoo

localrepo
    location: /var/db/repos/localrepo
    masters: gentoo

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.4/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cli-php7.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/data/gentoo/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y --quiet-build=n"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH 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 buildpkg 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 qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://mirror.netcologne.de/gentoo/"
LANG="de_DE.utf8"
LC_ALL=""
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en"
MAKEOPTS="-j2"
PKGDIR="/data/gentoo/binpkgs"
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 a52 aac acl acpi alsa amd64 avahi bash-completion berkdb bzip2 cairo cli crypt cryptsetup css ctype curl daap dbus dga dri elogind encode exif fam fbcondecor ffmpeg flac fortran ftp gd gdbm gif git gles2 gnutls gstreamer iconv imap ipv6 jabber java jpeg lcms libglvnd libnotify libtirpc lm_sensors lxqt mad matroska mng mp3 mpeg mplayer msn multilib mysql mysqli ncurses nls nptl nsplugin ogg openal opengl openmp oscar pam pcre pdf png policykit pulseaudio python qemu qt3support qt5 quicktime rdesktop readline real rtc rtsp samba sasl sdl seccomp spell split-usr sqlite ssl svg tcpd theora tiff truetype udev unicode upnp usb vorbis wayland wmp x264 xattr xcomposite xml xsl xv yahoo zeroconf zlib" ABI_X86="64" ADA_TARGET="gnat_2018" 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 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" L10N="en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-3 php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_8" PYTHON_TARGETS="python2_7 python3_8" RUBY_TARGETS="ruby25" USERLAND="GNU" VIDEO_CARDS="intel" 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, INSTALL_MASK, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Andreas Sturmlechner gentoo-dev 2021-01-14 12:58:02 UTC
Not reproducible on any of my systems. That makes me think you have a local(e) configuration issue.
Comment 2 Stefan Radermacher 2021-01-14 13:11:50 UTC
Andreas, did you recompile packages after updatint icu? I had to recompile about a dozen packages, including dev-qt/qtcore, which maybe why this only affects KDE applications.

Here's my locale listing:
LANG=de_DE.utf8
LC_CTYPE="de_DE.utf8"
LC_NUMERIC="de_DE.utf8"
LC_TIME="de_DE.utf8"
LC_COLLATE="de_DE.utf8"
LC_MONETARY="de_DE.utf8"
LC_MESSAGES=en_US.utf8
LC_PAPER="de_DE.utf8"
LC_NAME="de_DE.utf8"
LC_ADDRESS="de_DE.utf8"
LC_TELEPHONE="de_DE.utf8"
LC_MEASUREMENT="de_DE.utf8"
LC_IDENTIFICATION="de_DE.utf8"
LC_ALL=

And "locale -a":
C
C.utf8
de_DE
de_DE@euro
de_DE.iso88591
de_DE.iso885915@euro
de_DE.utf8
en_US
en_US.iso88591
en_US.utf8
POSIX
Comment 3 Andreas Sturmlechner gentoo-dev 2021-01-14 13:52:59 UTC
(In reply to Stefan Radermacher from comment #2)
> Andreas, did you recompile packages after updatint icu? I had to recompile
> about a dozen packages, including dev-qt/qtcore, which maybe why this only
> affects KDE applications.

Everyone has had automatic rebuilds of ICU revdeps by design, ~arch users have had multiple version bumps of the main kde-*/ package categories since ICU 68.1/68.2 arrived (in October/December) - I'm sure we would have got more reports by now.

On what file system is that happening?
Comment 4 Stefan Radermacher 2021-01-14 18:36:33 UTC
> On what file system is that happening?

I'm using ext4.
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-01-15 15:38:29 UTC
Did all the needed rebuilds occur? No failures interrupting?
Comment 6 Stefan Radermacher 2021-01-15 16:05:33 UTC
(In reply to Sam James from comment #5)
> Did all the needed rebuilds occur? No failures interrupting?

In fact, dev-qt/qtwebengine failed to compile, but calling "ebuild ... compile qmerge" manually after that  finished the job. This also occurred when I downgraded to 67.1 again, thus I figured it might be unrelated.
Comment 7 jospezial 2021-01-18 14:04:19 UTC
Can't reproduce that either.
cp -av Downloads/hl-1400-sm.pdf über/Üml€Ätß.pdf
'Downloads/hl-1400-sm.pdf' -> 'über/Üml€Ätß.pdf'
joerg@jlgentoo ~ $ okular über/Üml€Ätß.pdf
joerg@jlgentoo ~ $ 

Works also in dolphin.

=================================================================
                        Package Settings
=================================================================

dev-libs/icu-68.2::gentoo was built with the following:
USE="-debug -doc -examples -static-libs" ABI_X86="32 (64) (-x32)"
CXXFLAGS="-march=native -mtune=native -O2 -pipe -std=c++14"

locale
LANG=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=

kde on live ebuilds
Comment 9 Andreas Sturmlechner gentoo-dev 2021-02-07 22:38:58 UTC
The upstream MR was merged. Stefan, please try if you can reproduce the problem after applying both patches.

https://invent.kde.org/frameworks/kio/-/commit/0a13e0a3e830be2b2b2e5c2c6cf8cef25bd68bd8.patch
https://invent.kde.org/frameworks/kio/-/commit/423bea37e4bb06b9c04a62a9a91b720ec5d5e3d5.patch
Comment 10 Andreas Sturmlechner gentoo-dev 2021-02-07 22:57:47 UTC
(the patches are supposed to be applied to kde-frameworks/kio)
Comment 11 Stefan Radermacher 2021-02-08 01:01:23 UTC
(In reply to Andreas Sturmlechner from comment #9)
> The upstream MR was merged. Stefan, please try if you can reproduce the
> problem after applying both patches.
> 
> https://invent.kde.org/frameworks/kio/-/commit/
> 0a13e0a3e830be2b2b2e5c2c6cf8cef25bd68bd8.patch
> https://invent.kde.org/frameworks/kio/-/commit/
> 423bea37e4bb06b9c04a62a9a91b720ec5d5e3d5.patch

I'll check it out and report later
Comment 12 Stefan Radermacher 2021-02-08 10:44:56 UTC
(In reply to Andreas Sturmlechner from comment #9)
> The upstream MR was merged. Stefan, please try if you can reproduce the
> problem after applying both patches.
> 
> https://invent.kde.org/frameworks/kio/-/commit/
> 0a13e0a3e830be2b2b2e5c2c6cf8cef25bd68bd8.patch
> https://invent.kde.org/frameworks/kio/-/commit/
> 423bea37e4bb06b9c04a62a9a91b720ec5d5e3d5.patch

Hello Andreas, I have applied the patches to kde-frameworks/kio and updated to icu-68.2 again. Dolphin can now open files from within directories that contain Umlauts. However, Konsole does not handle the Umlauts correctly: in a file listing, for example an Umlaut shows up as two "unknown character" symbols, and when I type an Umlaut I get a question mark.

My locale settings are still as above.
Comment 13 Andreas Sturmlechner gentoo-dev 2021-02-08 11:03:49 UTC
Thanks for checking back. With kde-apps/konsole it could be a similar issue but in a different place, so please search for an existing bug upstream, if none exist open a new one.

If it works with LC_ALL set then it is definitely of the same nature and you could reference back to the linked upstream bug so devs already involved in the current fix can have a look.
Comment 14 Stefan Radermacher 2021-02-08 11:25:24 UTC
Setting LC_ALL does not change the Umlaut display in Konsole. Interestingly, kde-apps/yakuake, which is also a KDE console application gets it right.
Comment 15 emerald 2021-02-08 15:33:02 UTC
It seems the fix to issue https://bugs.gentoo.org/show_bug.cgi?id=679674 triggers hidden UTF8 bugs in other applications: I met this issue, as well as an issue with the owncloud client, which is a pure qt application.
Comment 16 Stefan Radermacher 2021-02-08 18:44:17 UTC
I've noticed that net-misc/nextcloud-client also fails to recognize directories with non-ascii characters.
Comment 17 Larry the Git Cow gentoo-dev 2021-02-12 21:48:43 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=76fbe81975afdff600e155569bca6a5b522c915b

commit 76fbe81975afdff600e155569bca6a5b522c915b
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2021-02-12 21:47:18 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2021-02-12 21:48:29 +0000

    kde-frameworks/kio: Fix default codec being set to US-ASCII in apps
    
    KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=432406
    
    Reported-by: Stefan Radermacher <gentoo@zaister.de>
    Closes: https://bugs.gentoo.org/765430
    Package-Manager: Portage-3.0.14, Repoman-3.0.2
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 ...io-5.77.0-fix-default-codec-not-usascii-1.patch |  36 ++++++++
 ...io-5.77.0-fix-default-codec-not-usascii-2.patch | 100 +++++++++++++++++++++
 kde-frameworks/kio/kio-5.77.0-r2.ebuild            | 100 +++++++++++++++++++++
 kde-frameworks/kio/kio-5.78.0-r2.ebuild            | 100 +++++++++++++++++++++
 4 files changed, 336 insertions(+)
Comment 18 Andreas Sturmlechner gentoo-dev 2021-02-12 21:56:27 UTC
(In reply to emerald from comment #15)
> I met this issue ... with the owncloud client, which is a pure qt application.

(In reply to Stefan Radermacher from comment #16)
> I've noticed that net-misc/nextcloud-client also fails to recognize
> directories with non-ascii characters.

Please file separate bugs for your issues against these packages, link back to  bug 679674 in "See Also" field, and also make reference to the solution found in KIO upstream.