File kf6-ki18n.spec of Package kf6-ki18n
#
# spec file for package kf6-ki18n
#
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define qt6_version 6.8.0
%define rname ki18n
# Full KF6 version (e.g. 6.23.0)
%{!?_kf6_version: %global _kf6_version %{version}}
%bcond_without released
Name: kf6-ki18n
Version: 6.23.0
Release: kf.54.1
Summary: KDE Gettext-based UI text internationalization
License: LGPL-2.1-or-later
URL: https://www.kde.org
Source: %{rname}-%{version}.tar.xz
%if %{with released}
Source1: %{rname}-%{version}.tar.xz.sig
Source2: frameworks.keyring
%endif
BuildRequires: fdupes
BuildRequires: gettext-runtime
BuildRequires: kf6-extra-cmake-modules >= %{_kf6_version}
BuildRequires: python3
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
BuildRequires: cmake(Qt6Qml) >= %{qt6_version}
BuildRequires: cmake(Qt6ToolsTools) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
%description
KI18n provides functionality for internationalizing user interface text
in applications, based on the GNU Gettext translation system.
It wraps the standard Gettext functionality, so that the programmers
and translators can use the familiar Gettext tools and workflows.
%package -n libKF6I18n6
Summary: KDE Gettext-based UI text internationalization
Requires: iso-codes
%if 0%{?suse_version} == 1500
# iso-codes and iso-codes-lang were merged, the lang package is only required on Leap 15
Requires: iso-codes-lang
%endif
Requires: kf6-ki18n >= %{version}
%description -n libKF6I18n6
KI18n provides functionality for internationalizing user interface text
in applications, based on the GNU Gettext translation system.
It wraps the standard Gettext functionality, so that the programmers
and translators can use the familiar Gettext tools and workflows.
%package imports
Summary: QML components for ki18n Framework
%description imports
This package contains QML imports for the ki18n framework.
%package devel
Summary: KDE Gettext-based UI text internationalization
Requires: gettext-runtime
Requires: gettext-tools
Requires: kf6-extra-cmake-modules
Requires: libKF6I18n6 = %{version}
Requires: python3
Requires: cmake(Qt6Widgets) >= %{qt6_version}
%description devel
KI18n provides functionality for internationalizing user interface text
in applications, based on the GNU Gettext translation system.
It wraps the standard Gettext functionality, so that the programmers
and translators can use the familiar Gettext tools and workflows.
Development files.
%lang_package -n libKF6I18n6
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
%fdupes %{buildroot}
%find_lang ki18n6
for i in `ls %{buildroot}%{_kf6_sharedir}/locale`
do
if test -d %{buildroot}%{_kf6_sharedir}/locale/$i/LC_SCRIPTS
then
echo "%dir %lang(${i%%_*}) %{_kf6_sharedir}/locale/$i/LC_SCRIPTS" >> ki18n6.lang
echo "%lang(${i%%_*}) %{_kf6_sharedir}/locale/$i/LC_SCRIPTS/ki18n6/" >> ki18n6.lang
fi
done
%ldconfig_scriptlets -n libKF6I18n6
%files
%{_kf6_debugdir}/ki18n.categories
%{_kf6_debugdir}/ki18n.renamecategories
%{_kf6_plugindir}/kf6/ktranscript.so
%files -n libKF6I18n6
%license LICENSES/*
%doc README.md
%{_kf6_libdir}/libKF6I18n.so.*
%{_kf6_libdir}/libKF6I18nLocaleData.so.*
%{_kf6_libdir}/libKF6I18nQml.so.*
%files imports
%{_kf6_qmldir}/org/kde/i18n/
%{_kf6_qmldir}/org/kde/ki18n/
%files devel
%{_kf6_includedir}/KI18n/
%{_kf6_includedir}/KI18nLocaleData/
%{_kf6_cmakedir}/KF6I18n/
%{_kf6_libdir}/libKF6I18n.so
%{_kf6_libdir}/libKF6I18nLocaleData.so
%{_kf6_libdir}/libKF6I18nQml.so
%files -n libKF6I18n6-lang -f ki18n6.lang
%changelog
* Fri Feb 6 2026 Christophe Marin <christophe@krop.fr>
- Update to 6.23.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.23.0
- Changes since 6.22.0:
* Update dependency version to 6.23.0
* tests: fix asan mem leak in klocalizedstringtest
* fixup! qml: introduce KI18nContext
* qml: introduce KI18nContext
* Add another explicit moc include to source file for moc-covered header
* Update version to 6.23.0
* Sun Jan 4 2026 Christophe Marin <christophe@krop.fr>
- Update to 6.22.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.22.0
- Changes since 6.21.0:
* Update dependency version to 6.22.0
* docs: expand org.kde.ki18n coverage
* Remove duplicate headers in same file
* Update version to 6.22.0
* Fri Dec 12 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.21.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.21.0
- Changes since 6.20.0:
* Update dependency version to 6.21.0
* qml: expose a LocalizedContext singleton as KI18n
* Update version to 6.21.0
* Thu Nov 13 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.20.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.20.0
- Changes since 6.19.0:
* Update dependency version to 6.20.0
* Update version to 6.20.0
* Tue Oct 7 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.19.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.19.0
- Changes since 6.18.0:
* Update dependency version to 6.19.0
* Temporarily link to repo Programmer's Guide
* Update version to 6.19.0
* Mon Sep 8 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.18.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.18.0
- Changes since 6.17.0:
* Update dependency version to 6.18.0
* Define string as local variable and do not call .data() to put it in string view
* Fix clazy warnigns about detaching containers
* Update version to 6.18.0
* Mon Aug 4 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.17.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.17.0
- Changes since 6.16.0:
* Update dependency version to 6.17.0
* Mention %%2 in both of the msgctxt of the "fake french" translation
* It compiles fine without qt 6.10 deprecated methods
* Update version to 6.17.0
* Mon Jul 7 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.16.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.16.0
- Changes since 6.15.0:
* Update dependency version to 6.16.0
* autotests: Add test cases for shortcut delimiter handling For fixed functionality in previous commit.
* i18n/kuitsetup: Handle shortcuts that use a delimiter as a key Currently, 'Meta++' is interpreted as just 'Meta', because the delimiter is used to split and does not preserve empty parts. By preserving empty parts, we can read the shortcut more carefully because two empty parts indicate the presence of the delimiter as a key.
* Update version to 6.16.0
* Mon Jun 9 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.15.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.15.0
- Changes since 6.14.0:
* Update dependency version to 6.15.0
* Add tags file to documentation
* Remove leftover doxygen file
* Add missing qhp projects
* Add missing QDoc dependencies
* Add landing page for QDoc
* kuitsetup.cpp make Role "enum class"
* Port API documentation to QDoc syntax
* Fix embedded ISO 3166-1/2 cache loading in static builds
* Update version to 6.15.0
- Replace _kf6_bugfix_version usage
* Sun May 4 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.14.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.14.0
- Changes since 6.13.0:
* Update dependency version to 6.14.0
* Add test showing the translation can use more/less %% arguments than the source text
* Update version to 6.14.0
* Remove conditions for no longer supported Qt versions
* Sat Apr 5 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.13.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.13.0
- Changes since 6.12.0:
* Use iso-codes' common_name field for country names when present (kde#501968)
* It compiles fine without qt6.9 deprecated methods
* Update dependency version to 6.13.0
* Tue Mar 11 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.12.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.12.0
- Changes since 6.11.0:
* Update dependency version to 6.12.0
* Update version to 6.12.0
* Sat Feb 8 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.11.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.11.0
- Changes since 6.10.0:
* Update dependency version to 6.11.0
* Add xml/yaml linting
* CI: Add linux-qt6-next build
* Update version to 6.11.0
* Thu Jan 9 2025 Christophe Marin <christophe@krop.fr>
- Update to 6.10.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.10.0
- Changes since 6.9.0:
* Update dependency version to 6.10.0
* Add context to missing argument warnings in i18n QML calls
* Update version to 6.10.0
* Sun Dec 8 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.9.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.9.0
- Changes since 6.8.0:
* Update dependency version to 6.9.0
* Handle multiple country-specific locales for the same language correctly
* Look up Qt translations catalogs ourselves
* Add auto tests for Qt catalog loading
* Improve fallback handling for Qt translation catalog loading
* Fix license identifier
* Remove obsolete Qt translation catalogs
* Fix loading of Qt's translation catalogs on Android
* Bump KF and QT versions in cem_set_disabled_deprecation_versions
* Update version to 6.9.0
* Thu Nov 7 2024 Dominique Leuenberger <dimstar@opensuse.org>
- Fix requires_eq call: it does not, and never did, work on virtual
provides, only package names (in the past it was simply ignored,
newly throws an error exposing those things).
* Mon Nov 4 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.8.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.8.0
- Changes since 6.7.0:
* Allow explicit setting of Python3 fallback executible path
* Update dependency version to 6.8.0
* Add missing include
* Trigger binding reevaluation on language change
* Propagate QML dependency for a static build with KTranscript enabled
* Add CI for static builds on Linux
* Update version to 6.8.0
* Reduce temporary allocations
* Modernize member initialization
* Fix container size type narrowing warnings
* Remove commented-out KLocale leftovers
* Align argument names between definition and declaration
* Re-evaluate the languages we translate to on QEvent::LanguageChange
* Cleanup KLocalizedContext d-ptr handling
* Special-case the language fallback for country-less English
* Use QStringView for locale splitting
* Mon Nov 4 2024 Christophe Marin <christophe@krop.fr>
- Update package dependencies
* Mon Oct 7 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.7.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.7.0
- Changes since 6.6.0:
* Update dependency version to 6.7.0
* Make KTranscript work in static builds
* Make QML API unit test work with static Qt builds
* Update version to 6.7.0
* Sat Sep 7 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.6.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.6.0
- Changes since 6.5.0:
* Update version to 6.6.0
* Spinboxdoc
* Formatting
* ci: add Alpine/musl job
* Fix test to actually use a QDoubleSpinBox as intended here
* Unambiguous documentation of formatString
* Mon Aug 5 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.5.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.5.0
- Changes since 6.4.0:
* Update dependency version to 6.5.0
* Use more specific names for the functions
* Add comment for translators in example code
* Code cleanup
* Minor Doxygen change
* Build with older clang versions too
* Test also retranslateFormatString
* Make retranslateFormatString() call function from correct namespace and adjust code documentation
* Add helper method for setting a plural-aware spin box prefix/suffix
* Update version to 6.5.0
* Tue Jul 9 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.4.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.4.0
- Changes since 6.3.0:
* Make country name detection substring matching more strict
* Wed Jun 5 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.3.0
* New feature release
* For more details please see:
* https://kde.org/announcements/frameworks/6/6.3.0/
- Changes since 6.2.0:
* Remove explicit maintainer from metainfo
* Mon May 6 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.2.0
* New feature release
* For more details please see:
* https://kde.org/announcements/gear/6.2.0/
- Changes since 6.1.0:
* gitignore: add VS Code dir
* Fri Apr 5 2024 Christophe Marin <christophe@krop.fr>
- Update to 6.1.0
* New feature release
- Changes since 6.0.0:
* update version for new release
* Fix compilation with GCC 9
* main: ensure current thread is main thread
* Wed Feb 21 2024 Fabian Vogt <fabian@ritter-vogt.de>
- Update to 6.0.0
* New bugfix release
* Release announcement not available yet
- Changes since 5.249.0:
* update version for new release
* KCountrySubdivision: unbreak support of iso-codes >= 4.16
* update version for new release
* Wed Jan 31 2024 Fabian Vogt <fabian@ritter-vogt.de>
- Update to 5.249.0 (6.0 RC 2):
* New bugfix release
* For more details see https://kde.org/announcements/megarelease/6/rc2/
* Mon Jan 15 2024 Fabian Vogt <fabian@ritter-vogt.de>
- Update to 5.248.0 (6.0 RC 1)
* For more details please see:
https://kde.org/announcements/megarelease/6/rc1/
* Sat May 27 2023 Christophe Marin <christophe@krop.fr>
- Init kf6-ki18n