-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Warning: Linkname can't be converted from UTF-8 to current locale. #445
Comments
swupd now uses a more recent version of libarchive. This needs to be tested to see if it is still an issue. |
This problems is still present on Clear 25040, swupd version 3.17.14, when installing os-core. |
I am noticing this on 3.17.15 with libarchive 3.3.3. |
This is all expected. You are installing only 4 small bundles (os-core, bootloader, kernel-kvm, os-core-update), so it should be fast. sudo and ping aren't included in thoses bundles, so they should fail. If you want to install them you can do that by running: $ swupd bundle-add network-basic sudo
The problems aren't related. The "Warning: Linkname..." is a known bug when installing os-core bundle and the only issue we have is the warning being printed. The final installed system is sane and work fine. |
Standard locale on C applications is C and we use in clearlinux UTF-8 for file names. Libarchive checks the program locale to convert filenames so we need to set this. According to setlocale documentation, setlocale(LC_ALL, "") sets the locale to system default (in the case of ClearLinux, UTF-8). More information on the libarchive problem: https://github.com/libarchive/libarchive/wiki/Filenames and libarchive/libarchive#587 Fixes clearlinux#445 Signed-off-by: Otavio Pontes <otavio.pontes@intel.com>
Standard locale on C applications is C and we use in clearlinux UTF-8 for file names. Libarchive checks the program locale to convert filenames so we need to set this. According to setlocale documentation, setlocale(LC_ALL, "") sets the locale to system default (in the case of ClearLinux, UTF-8). More information on the libarchive problem: https://github.com/libarchive/libarchive/wiki/Filenames and libarchive/libarchive#587 Fixes clearlinux#445 Signed-off-by: Otavio Pontes <otavio.pontes@intel.com>
Standard locale on C applications is C and we use in clearlinux UTF-8 for file names. Libarchive checks the program locale to convert filenames so we need to set this. According to setlocale documentation, setlocale(LC_ALL, "") sets the locale to system default (in the case of ClearLinux, UTF-8). More information on the libarchive problem: https://github.com/libarchive/libarchive/wiki/Filenames and libarchive/libarchive#587 Fixes #445 Signed-off-by: Otavio Pontes <otavio.pontes@intel.com>
When extracting symlinks with non-ASCII (UTF-8) characters in the name, swupd (actually libarchive) complains about converting even if the current locale is UTF-8.
We first investigated whether Mixer was generating something wrong, but it seems to be generating valid tar files. That investigation is in clearlinux/mixer-tools#92. The next stop is looking a libarchive, as the error message seems misleading.
For debugging libarchive, a starting point:
The text was updated successfully, but these errors were encountered: