{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreifsqxi45nfr2dsjurcvsy3f5idg3rdyk2ze6oahq7krxceo7mn4vy",
"uri": "at://did:plc:3pjw65epwlo3rzajhx6xg4br/app.bsky.feed.post/3mlj6ukxvz3h2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreibtouec3tdkp5jax25mho75pd7mfecmkbicolusw2bu32xkmrghta"
},
"mimeType": "image/webp",
"size": 6696
},
"path": "/vigesimosexta-actualizacion-de-kde-frameworks-6-y-libreria-karchive.html",
"publishedAt": "2026-05-10T15:06:53.000Z",
"site": "https://www.kdeblog.com",
"tags": [
"el 28 de febrero de 2024 la Comunidad KDE realizó un importante salto tecnológico",
"Qt 6",
"Qt",
"KDE",
"KDE Frameworks en el blog",
"KArchive",
"Extra CMake Modules (ECM)",
"Attica",
"BluezQt",
"https://api.kde.org/karchive-index.html",
"https://github.com/KDE/Karchive",
"KDE API Reference/KDE Libraries",
"KCalendarCore",
"KCodecs",
"KConfig",
"KCoreAddons",
"KDBusAddons",
"KGlobalAccel",
"KGuiAddons",
"KHolidays",
"KI18n",
"KIdleTime",
"Kirigami",
"KItemModels",
"KItemViews",
"KPlotting",
"KQuickCharts",
"KSyntaxHighlighting",
"KTextTemplate",
"KUserFeedback",
"KWidgetsAddons",
"KWindowSystem",
"ModemManagerQt",
"NetworkManagerQt",
"Prison",
"Solid",
"Sonnet",
"ThreadWeaver",
"KAuth",
"KColorScheme",
"KCompletion",
"KContacts",
"KCrash",
"KDeclarative",
"KFileMetaData",
"KNotifications",
"KPackage",
"KPty",
"KService",
"KStatusNotifierItem",
"KUnitConversion",
"Syndication",
"Baloo",
"KBookmarks",
"KCMUtils",
"KConfigWidgets",
"KDAV",
"KDESu",
"KIconThemes",
"KIO",
"KJobWidgets",
"KNewStuff",
"KNotifyConfig",
"KParts",
"KPeople",
"KRunner",
"KSvg",
"KTextEditor",
"KTextWidgets",
"KWallet",
"KXMLGui",
"Purpose",
"FrameworkIntegration",
"Vigesimosexta actualización de KDE Frameworks 6 y librería KArchive",
"KDE Blog"
],
"textContent": "**Como los lectores habituales del blog sabrán,el 28 de febrero de 2024 la Comunidad KDE realizó un importante salto tecnológico, uno que marcó su evolución para los próximos años. Este gran cambio a las librerías Qt 6 nos proporcionó el nuevo escritorio Plasma 6, del que ya he hablado a lo largo de muchas entradas. Pero no solo fue eso, sino que además nos trajo el salto también a KDE Frameworks 6, las librerías propias del proyecto KDE. El pasado 8 de mayo se anunció la vigesimosexta actualización de KDE Frameworks 6, el motor del proyecto que soporta todo el resto de la infraestructura. Como extra de este año voy a complementar esta serie con el listado y descripción de los componentes de esta importante pieza de la maquinaria de KDE.**\n\n## Vigesimosexta actualización de KDE Frameworks 6 y librería KArchive\n\nA pesar de que para los usuarios corrientes esta noticia sea algo confusa ya que no se trata de realzar una nueva aplicación ni de una nueva gran funcionalidad del escritorio, el desarrollo de KDE Frameworks tiene repercusiones directas en él a medio y largo plazo.\n\nKonqi tiene un corazón Qt\n\nPara los que no lo sepan, KDE Frameworks añade unas 83 librerías a la propias de Qt que proporcionan una gran variedad de funcionalidades necesarias y comunes, precisadas por los desarrolladores, testeadas por aplicaciones específicas y publicadas bajo licencias flexibles.\n\nDe esta forma, KDE Frameworks se convierte en la base de trabajo de los desarrolladores para realizar sus aplicaciones o sus desarrollos para los entornos de trabajo (escritorio para ordenadores, plasma mobile, etc).\n\nUn buen símil es que KDE Frameworks es como el papel y las herramientas de dibujo para un artista: cuanto mejor sea el papel y mejores pinceles tenga, la creación de una artista será mejor.\n\nComo he dicho, el pasado 28 de febrero de 2024 KDE Frameworks saltó de la versión 5 a la 6, y el pasado, **8 de mayo de 2026** fue anunciado **que ya tenemos la vigesimosexta** **actualización** de la rama, es decir, que ha sido lanzado **KDE Frameworks 6.26.**\n\nHay que destacar que esta versión forma parte de una serie de versiones mensuales planificadas para poner las mejoras a disposición de los desarrolladores de forma rápida y previsible y que es **absolutamente recomendable su actualización.**\n\nMás información: KDE |KDE Frameworks en el blog.\n\n## Librería KArchive\n\nTal y comenté el a principio de año, voy a ir describiendo cada una de las librerías que nos ofrece KDE Frameworks. El mes de febrero empecé con la única de **Tier 0** , o nivel base de KDE Frameworks, Extra CMake Modules (ECM), y desde el mes de marzo inicié la serie de las **Tier 1 con Attica y BluezQt**\n\nEste mes seguimos con la tercera librería de KDE Frameworks, Karchive una biblioteca diseñada para facilitar la lectura, creación y manipulación de diversos formatos de archivo comprimidos y empaquetados mediante una API de C++ sencilla y unificada.\n\nSus funciones principales incluyen:\n\n * **Soporte de múltiples formatos:** Permite trabajar de manera transparente con archivos en formato **ZIP, TAR, GZip (gz), BZip2 (bz2) y XZ (lzma)**.\n * **Abstracción de acceso:** Trata a los archivos comprimidos como si fueran una estructura de directorios normal. Esto permite navegar por el contenido de un `.zip` o un `.tar.gz` utilizando clases que representan archivos (`KArchiveFile`) y directorios (`KArchiveDirectory`).\n * **Integración con Qt:** Está construida sobre el ecosistema de Qt, utilizando clases como `QIODevice` para el manejo de la entrada y salida de datos, lo que facilita su integración en proyectos que ya utilicen este framework.\n * **Facilidad de uso:** Ofrece métodos directos para extraer el contenido completo de un archivo a un directorio local o para añadir archivos y carpetas a un archivo comprimido existente.\n * **Alto rendimiento:** Está optimizada para manejar operaciones de compresión y descompresión de forma eficiente dentro de aplicaciones de escritorio o servicios del sistema.\n\n\n\nPor tanto, podemos decir que es una herramienta fundamental para cualquier desarrollador que necesite gestionar archivos comprimidos sin tener que implementar manualmente la lógica específica de cada formato.\n\nMás información:\n\n * **Página principal:** https://api.kde.org/karchive-index.html\n * **Repositorio Git:** https://github.com/KDE/Karchive\n\n\n\n## Las librerías de KDE Frameworks 6\n\nLas librerías que conforman KDE Frameworks se categorizan, según podemos leer en la documentación de KDE API Reference/KDE Libraries, en varios niveles de complejidad, categorías o, en inglés,_Tier_ , que es como lo vamos a leer en muchos sitios.\n\nDe esta forma tenemos el siguiente listado categorizado.\n\n**Tier 0** : nivel base de KDE Frameworks, independiente de cualquier otro framework de KDE.\nExtra CMake Modules (ECM)\nMódulos extra de CMake\n\n**Tier 1** : dependen solo de Qt (y posiblemente un pequeño número de otras bibliotecas de terceros), por lo que pueden usarse fácilmente en cualquier proyecto basado en Qt.\n\n * Attica\n * BluezQt\n * KArchive\n * KCalendarCore\n * KCodecs\n * KConfig\n * KCoreAddons\n * KDBusAddons\n * KGlobalAccel\n * KGuiAddons\n\n\n\n * KHolidays\n * KI18n\n * KIdleTime\n * Kirigami\n * KItemModels\n * KItemViews\n * KPlotting\n * KQuickCharts\n * KSyntaxHighlighting\n * KTextTemplate\n\n\n\n * KUserFeedback\n * KWidgetsAddons\n * KWindowSystem\n * ModemManagerQt\n * NetworkManagerQt\n * Prison\n * Solid\n * Sonnet\n * ThreadWeaver\n\n\n\n**Tier 2** : dependen adicionalmente de frameworks de Tier 1, pero aún tienen dependencias fácilmente manejables.\n\n * KAuth\n * KColorScheme\n * KCompletion\n * KContacts\n * KCrash\n\n\n\n * KDeclarative\n * KFileMetaData\n * KNotifications\n * KPackage\n * KPty\n\n\n\n * KService\n * KStatusNotifierItem\n * KUnitConversion\n * Syndication\n\n\n\n**Tier 3** : son generalmente paquetes más potentes y completos, y por consiguiente tienen dependencias más complejas.\n\n * Baloo\n * KBookmarks\n * KCMUtils\n * KConfigWidgets\n * KDAV\n * KDESu\n * KIconThemes\n\n\n\n * KIO\n * KJobWidgets\n * KNewStuff\n * KNotifyConfig\n * KParts\n * KPeople\n * KRunner\n\n\n\n * KSvg\n * KTextEditor\n * KTextWidgets\n * KWallet\n * KXMLGui\n * Purpose\n\n\n\n**Tier 4** : pueden ser en gran parte ignorados por los programadores de aplicaciones; este tier consiste en plugins que actúan en segundo plano para proporcionar funcionalidad adicional o integración de plataforma a frameworks existentes (incluyendo Qt).\n\nEl único tier de esta categoría o nivel es FrameworkIntegration\n\nEn un futuro iremos describiendo cada una de estas librerías, con sus usos más comunes.\n\nLa entrada Vigesimosexta actualización de KDE Frameworks 6 y librería KArchive se publicó primero en KDE Blog.",
"title": "Vigesimosexta actualización de KDE Frameworks 6 y librería KArchive"
}