La compilation de logiciels KDE ( KDE SC ) était un terme générique pour l' environnement de bureau et une gamme d'applications incluses produites par KDE . De sa sortie 1.0 en juillet 1998 jusqu'à la sortie de la version 4.4 en février 2010, la compilation de logiciels était simplement connue sous le nom de KDE , qui signifiait K Desktop Environment jusqu'au changement de nom. KDE SC , alors appelée , a été utilisée à partir de la version 4.4 jusqu'à la version finale 4.14 en juillet 2014. Elle comprenait le bureau KDE Plasma 4 et les applications KDE dont les équipes de développement ont choisi de suivre le calendrier de sortie de la compilation de logiciels. Après cela, la KDE SC a été divisée en trois entités de produits distinctes : KDE Plasma , KDE Frameworks et KDE Applications , chacune avec leurs propres calendriers de sortie indépendants.
Histoire
Origines
KDE a été fondé en 1996 par Matthias Ettrich , alors étudiant à l' université de Tübingen . À l'époque, certains aspects du bureau Unix le troublaient . Parmi ses réserves, il y avait le fait qu'aucune des applications ne se ressemblait, ne se comportait ou ne fonctionnait de la même manière. Il a proposé la formation non seulement d'un ensemble d'applications, mais plutôt d'un environnement de bureau dans lequel les utilisateurs pourraient s'attendre à ce que les choses se ressemblent, se comportent et fonctionnent de manière cohérente. Il voulait également rendre ce bureau facile à utiliser ; l'une de ses plaintes concernant les applications de bureau de l'époque était que sa petite amie ne pouvait pas les utiliser. Son premier message sur Usenet a suscité beaucoup d'intérêt et le projet KDE est né.
Ettrich a choisi d'utiliser le framework Qt de Trolltech pour le projet KDE. D'autres programmeurs ont rapidement commencé à développer des applications KDE/Qt et, début 1997, quelques applications ont été publiées.
Première série

Le 12 juillet 1998, K Desktop Environment 1.0 est sorti. En novembre 1998, la boîte à outils Qt est sous double licence, la licence publique QPL (Q Public License) libre/ open source et une licence propriétaire pour les développeurs de logiciels propriétaires. Le débat sur la compatibilité avec la licence publique générale GNU (GPL) se poursuit, et en septembre 2000, Trolltech met à disposition la version Unix des bibliothèques Qt sous la licence GPL, en plus de la QPL. Trolltech continue d'exiger des licences pour développer des logiciels propriétaires avec Qt. Les bibliothèques principales de KDE sont sous licence collective sous la licence GNU LGPL , mais la seule façon pour les logiciels propriétaires de les utiliser est d'être développés sous les termes de la licence propriétaire Qt.
Deuxième série

Débutant le 23 octobre 2000, la deuxième série de versions, K Desktop Environment 2 , a introduit des améliorations technologiques significatives. Il s'agissait notamment de DCOP (Desktop COmmunication Protocol), KIO (une bibliothèque d'E/S d'application), KParts (un modèle d'objet composant , qui permet à une application d'en intégrer une autre en elle-même) et KHTML (un moteur de rendu et de dessin HTML ).
Pré-quatrième série

La troisième série était beaucoup plus importante que la précédente, composée de six versions majeures à partir du 3 avril 2002. Les changements d'API entre K Desktop Environment 2 et K Desktop Environment 3 étaient relativement mineurs, ce qui signifie que KDE 3 peut être considéré comme une continuation de la série K Desktop Environment 2. Toutes les versions de K Desktop Environment 3 ont été construites sur Qt 3, qui n'a été publié sous GPL que pour Linux et les systèmes d'exploitation de type Unix, y compris Mac OS X. Il est marqué comme stable sur Mac OS X depuis 2008. Contrairement à KDE SC 4 , cependant, il nécessite un serveur X11 pour fonctionner. En 2002, les membres du projet KDE sur Cygwin ont commencé à porter la base de code Qt/X11 sous licence GPL sur Windows.
Quatrième série

KDE Software Compilation 4 , publié pour la première fois le 11 janvier 2008, est basé sur Qt 4, également publié sous licence GPL pour Windows et Mac OS X. Par conséquent, les applications KDE SC 4 peuvent également être compilées et exécutées nativement sur ces systèmes d'exploitation. KDE Software Compilation 4 sur Mac OS X est actuellement considéré comme une version bêta, tandis que sur Windows, il n'est pas encore au stade final, de sorte que les applications peuvent ne pas être adaptées à une utilisation quotidienne.
KDE SC 4 inclut de nombreuses nouvelles technologies et modifications techniques. La pièce maîtresse est un bureau et des panneaux redessinés, collectivement appelés Plasma , qui remplacent Kicker , KDesktop et SuperKaramba en intégrant leurs fonctionnalités dans une seule pièce de technologie. Plasma est destiné à être plus configurable pour ceux qui souhaitent mettre à jour la métaphore du bureau vieille de plusieurs décennies . Il existe un certain nombre de nouveaux frameworks, dont Phonon (une nouvelle interface multimédia rendant KDE indépendant de tout backend multimédia spécifique) , Solid (une API pour les réseaux et les appareils portables) et Decibel (un nouveau framework de communication pour intégrer tous les protocoles de communication dans le bureau). Il comprend également un framework de métadonnées et de recherche, incorporant Strigi comme service d'indexation de fichiers en texte intégral, et NEPOMUK avec intégration KDE.
À partir de Qt 4.5, Qt a également été rendu disponible sous la version LGPL 2.1, une étape majeure pour l'adoption de KDE dans les environnements d'entreprise et propriétaires, car la LGPL permet aux applications propriétaires de se lier à des bibliothèques sous licence LGPL.
Post-quatrième série

Depuis août 2014, KDE ne fournit plus de versions synchronisées de la compilation complète du logiciel ; à la place, le logiciel est divisé en trois parties :
- KDE Frameworks 5 , une collection de bibliothèques et de frameworks logiciels (5.0 publié le 7 juillet 2014 et de nouvelles versions majeures sont publiées chaque mois)
- KDE Plasma 5 , un environnement de bureau (5.0 publié le 15 juillet 2014 et de nouvelles versions majeures sont publiées tous les trois mois)
- Applications KDE , un ensemble d'applications et de bibliothèques de support (14.12 était la première version intégrant des applications basées sur Frameworks 5 et introduisant des numéros de version basés sur la date).
Les principaux changements incluent le passage de Qt 4 à Qt 5, la prise en charge du protocole de serveur d'affichage de nouvelle génération Wayland , la prise en charge de l' API de rendu de nouvelle génération Vulkan et la modularisation des bibliothèques de base de KDE. Les premières versions de Frameworks 5 et Plasma 5 ont été mises à disposition en juillet 2014.
Les versions KDE Frameworks 5, KDE Plasma 5 et KDE Applications 5 ne sont pas une seule et même entité. Ces parties ont été publiées ensemble et les regrouper sous un seul nom n'a pas vraiment été utile. Les développeurs tiers pensaient qu'ils ne cibleraient que les espaces de travail Plasma, les utilisateurs de Plasma pensaient qu'ils ne pourraient exécuter que des « applications KDE », les utilisateurs potentiels d'applications supposeront qu'ils ne peuvent les utiliser qu'à l'intérieur des espaces de travail Plasma — tout cela est faux, tout cela est tiré directement de mon expérience quotidienne.
Développement
Code source
Les versions de KDE SC sont publiées sur le serveur FTP de KDE sous forme de code source avec des scripts de configuration , qui sont compilés par les fournisseurs de systèmes d'exploitation et intégrés au reste de leurs systèmes avant la distribution. La plupart des fournisseurs n'utilisent que des versions stables et testées de KDE SC, les fournissant sous la forme de paquets précompilés et facilement installables. Le code source de chaque version stable et de développement de KDE SC est stocké dans le référentiel de code source de KDE, en utilisant Git . La plate-forme KDE est sous licence LGPL, licence BSD, licence MIT ou licence X11. Les applications autorisent également la GPL. La documentation autorise également la FDL . Les modules CMake doivent être sous licence BSD.
Sorties majeures
Les versions majeures sont celles qui inaugurent une série (numéro de version X.0). Ces versions sont autorisées à rompre la compatibilité binaire avec la version précédente, ou pour le dire autrement, toutes les versions suivantes (X.1, X.2, ...) garantiront la portabilité binaire ( API et ABI ). Cela signifie, par exemple, qu'un logiciel développé pour KDE 3.0 fonctionnera sur toutes les versions (futures) de KDE 3 ; cependant, il n'est pas garanti qu'une application développée pour KDE 2 puisse utiliser les bibliothèques de KDE 3. Les numéros de version majeurs de KDE suivent le cycle de publication de Qt, ce qui signifie que KDE SC 4 est basé sur Qt 4, tandis que KDE 3 était basé sur Qt 3.
Qt 5.0 est sorti le 19 décembre 2012, Qt 5.2 le 12 décembre 2013. Et par exemple, KDE Frameworks 5.21.0 nécessite Qt >= 5.4, et ne prend plus en charge Qt 5.3 (cf. Historique des versions de Qt).
Versions standards
Il existe deux principaux types de versions standard : les versions de fonctionnalités et les versions de correction de bogues.
Les versions de fonctionnalités ont deux numéros de version, par exemple 3.5, et contiennent de nouvelles fonctionnalités. Dès qu'une version de fonctionnalité est prête et annoncée, le travail sur la version de fonctionnalité suivante commence. Une version de fonctionnalité nécessite plusieurs mois pour être terminée et de nombreux bogues corrigés pendant cette période sont rétroportés vers la branche stable, ce qui signifie que ces correctifs sont incorporés dans la dernière version stable par des versions de correction de bogues. Au cours de la série KDE SC 4, KDE SC a publié une version de fonctionnalité environ tous les six mois. Depuis la scission, KDE Plasma publie une nouvelle version de fonctionnalité environ tous les 3 à 4 mois.
Les versions de correction de bogues ont trois numéros de version, par exemple KDE 1.1.1, et se concentrent sur la correction de bogues, de problèmes mineurs et sur de petites améliorations d'utilisation. Les versions de correction de bogues n'autorisent généralement pas de nouvelles fonctionnalités, bien que certaines versions incluent de petites améliorations. Un calendrier de publication raccourci est utilisé. À partir de la série KDE SC 4, KDE SC propose une version de maintenance environ tous les mois, sauf pendant le mois d'une sortie de fonctionnalité, tandis qu'avec Plasma 5, les versions de correction de bogues ont tendance à se produire encore plus rapidement, par exemple dans un délai de 2 à 3 semaines.
Cycle de publication
L'équipe KDE publie régulièrement de nouvelles versions.
Lignes de code
- KDE 1.0 avait 800 000 LoC .
- KDE 4.3 avait 4 200 000 LoC.
Mise en œuvre
La plupart des logiciels KDE utilisent Qt qui fonctionne sur la plupart des systèmes Unix et similaires (y compris Mac OS X), Android et Microsoft Windows. Depuis 2011, CMake sert d'outil de compilation. Cela permet à KDE de prendre en charge une plus large gamme de plates-formes, y compris Windows. GNU gettext est utilisé pour la traduction. Doxygen est utilisé pour générer la documentation de l'API.
Aperçu
- Compilation de logiciels KDE : La Compilation de logiciels KDE (KDE SC) est la publication coordonnée de nouvelles versions de logiciels, rassemblant des éléments des composants précédents pour construire un noyau intégré de logiciels. La KDE SC n'est pas un produit en tant qu'entité unique.
- Suite Calligra : Suite bureautique intégrée.
- KDEWebdev : Outils de développement Web.
- KDE-Extragear : Extragear est une collection d'applications associées à KDE. Ces applications ne font pas partie de la compilation officielle de logiciels, mais elles font tout de même partie du projet.
- KDE-Playground : ce paquet contient des logiciels pré-version et instables. C'est un endroit où les applications mûrissent.
Paquets
La compilation du logiciel comprend les packages suivants :
- KDE-Libs : une collection de bibliothèques qui fournit des cadres et des fonctionnalités pour les développeurs .
- KDE-Base : L'ensemble de base des fichiers, bibliothèques et programmes nécessaires à la compilation de logiciels. KDE-Base est divisé en trois parties :
- Applications : contenant les applications qui forment le bureau KDE, comme Konqueror, Dolphin, KWrite et Konsole.
- Exécution : applications requises par les applications KDE pour fonctionner correctement lors de l'exécution.
- Espace de travail : Fournit les environnements graphiques.
- KDE-Plasma-Addons : Widgets Plasma supplémentaires .
- Réseau KDE
- KDE-Pim
- Graphiques KDE
- KDE-Multimédia
- Phonon
- KDE-Accessibility : Applications d'accessibilité.
- Utilitaires KDE
- KDE-Éducation
- Jeux KDE
- Jouets KDE
- KDE-Artwork : icônes supplémentaires, styles, etc.
- Administrateur KDE
- SDK KDE
- Liaisons KDE
Technologies de base
- KHTML – Moteur de rendu HTML , intégré à WebKit en 2004
- KJS – Moteur JavaScript
- KIO – Accès aux fichiers extensible et transparent au réseau
- Kiosk – Permet de désactiver des fonctionnalités dans KDE pour créer un environnement plus contrôlé
- KParts – Cadre de composants graphiques légers en cours de développement
- KWin – Gestionnaire de fenêtres
- XMLGUI – Permet de définir des éléments d'interface utilisateur, tels que des menus et des barres d'outils via des fichiers XML
- Phonon – Cadre multimédia
- Plasma – Moteur de widgets de bureau et de panneau
- Solid – Cadre d’intégration des appareils
- Sonnet – Correcteur orthographique
- ThreadWeaver – Bibliothèque pour utiliser les systèmes multiprocesseurs plus efficacement
Applications

Les principales applications de KDE Software Compilation incluent :
- Ark – Outil d'archivage
- Dragon Player – Lecteur multimédia.
- Dolphin – Gestionnaire de fichiers
- Falkon - Navigateur Web
- Gwenview – Visionneuse d'images
- Kate / KWrite – Éditeur de texte
- Konsole – Émulateur de terminal
- Kontact – Gestionnaire d'informations personnelles comprenant un client de messagerie , un client de nouvelles , un agrégateur de flux , des listes de tâches, etc.
- Konqueror – Navigateur Web et gestionnaire de fichiers
- Kopete – Client de messagerie instantanée
- KRDC – un client de bureau à distance . Les protocoles Virtual Network Computing (VNC) et Remote Desktop Protocol (RDP) sont tous deux pris en charge, ce qui permet d'accéder aux PC de type Unix et Windows à l'aide de ce logiciel. Dans le cadre du GSoC, les développeurs du projet ont contribué à la compilation de Libvncserver sur les plates-formes Windows, ce qui a permis un portage vers Windows.
Licence
En novembre 1998, le framework Qt a été mis sous double licence, la Q Public License (QPL) libre et open source et une licence commerciale pour les développeurs de logiciels propriétaires . La même année, la fondation KDE Free Qt a été créée, garantissant que Qt serait soumis à une variante de la licence BSD très libérale si Trolltech cessait d'exister ou si aucune version libre de Qt n'était publiée pendant 12 mois.
Le débat sur la compatibilité avec la licence publique générale GNU (GPL) a continué. En septembre 2000, Trolltech a donc rendu la version Unix des bibliothèques Qt disponible sous la GPL en plus de la QPL, ce qui a éliminé les inquiétudes de la Free Software Foundation . Trolltech a continué à exiger des licences pour développer des logiciels propriétaires avec Qt. Les bibliothèques principales de KDE sont collectivement sous licence GNU LGPL, mais la seule façon pour les logiciels propriétaires de les utiliser était d'être développés sous les termes de la licence propriétaire Qt.
À partir de Qt 4.5, Qt a également été rendu disponible sous la version LGPL 2.1, permettant désormais aux applications propriétaires d'utiliser légalement la version open source de Qt.