m (→Développement) |
|||
Line 139: | Line 139: | ||
=== Développement === | === Développement === | ||
Les développeurs de C++ vont s'y habituer, la célèbre bibliothèque Boost a été mise à jour vers la version 1.50. De nouveaux algorithmes génériques ont été ajoutés comme ceux de recherches de données, la compatibilité avec des fonctionnalités C++11 (et la compilation dans ce mode) a été renforcée, etc. | Les développeurs de C++ vont s'y habituer, la célèbre '''bibliothèque Boost a été mise à jour vers la version 1.50.''' De nouveaux algorithmes génériques ont été ajoutés comme ceux de recherches de données, la compatibilité avec des fonctionnalités C++11 (et la compilation dans ce mode) a été renforcée, etc. | ||
Mise à jour de l’environnement de développement pour le langage D comme le compilateur ou l'interfaçage avec GTK. Cela est également l'occasion d'ajouter des modules liés à OpenGL pour l'exploiter au mieux ou encore le support de l'interfaçage avec SQLite pour les bases de données. | '''Mise à jour de l’environnement de développement pour le langage D''' comme le compilateur ou l'interfaçage avec GTK. Cela est également l'occasion d'ajouter des modules liés à OpenGL pour l'exploiter au mieux ou encore le support de l'interfaçage avec SQLite pour les bases de données. | ||
Arrivée de DragonEgg, plugin de GCC pour remplacer certaines optimisations et générateurs de code de GCC par ceux projet LLVM. Ce changement a été fait pour améliorer les optimisations réalisées mais aussi pour faire de la compilation croisée sur des architectures supportées par LLVM (mais avec GCC) sans nécessiter un paquet supplémentaire pour ce type d'opération. | '''Arrivée de DragonEgg,''' plugin de GCC pour remplacer certaines optimisations et générateurs de code de GCC par ceux projet LLVM. Ce changement a été fait pour améliorer les optimisations réalisées mais aussi pour faire de la compilation croisée sur des architectures supportées par LLVM (mais avec GCC) sans nécessiter un paquet supplémentaire pour ce type d'opération. | ||
Histoire d'être à la pointe du développement logiciel, le Glasgow Haskell Compiler a été également mis à jour vers la version 4.7.2 pour les amateurs de ce langage fonctionnel. | Histoire d'être à la pointe du développement logiciel, '''le Glasgow Haskell Compiler a été également mis à jour vers la version 4.7.2''' pour les amateurs de ce langage fonctionnel. | ||
Le langage Python a toujours été à l'honneur chez Fedora et cela se poursuit avec le débarquement de Python 3.3. Il revoit la méthode de stockage des caractères pour économiser de la mémoire, la syntaxe des générateurs a été revue, la possibilité de créer des environnements de Python virtuels, de grands changements dans la gestion des exceptions, etc. | Le langage Python a toujours été à l'honneur chez Fedora et cela se poursuit avec '''le débarquement de Python 3.3.''' Il revoit la méthode de stockage des caractères pour économiser de la mémoire, la syntaxe des générateurs a été revue, la possibilité de créer des environnements de Python virtuels, de grands changements dans la gestion des exceptions, etc. | ||
Au delà de Python lui-même, IPython a été porté vers la version 0.13. De plus la structure des paquets pour ce projet a été revue avec plus de sous-paquets. Nous rappelons que ce projet est un shell pour le langage Python pour compléter celui proposé de manière officielle. | Au delà de Python lui-même, '''IPython a été porté vers la version 0.13.''' De plus la structure des paquets pour ce projet a été revue avec plus de sous-paquets. Nous rappelons que ce projet est un shell pour le langage Python pour compléter celui proposé de manière officielle. | ||
Les jaloux du langage Perl pourront quant à eux se satisfaire de la version 5.16 de leur langage favoris. De plus le PCRE (Perl-Compatible Regular Expression) a été également mis à jour vers la version 8.30 qui apporte un changement important dans son API et le support de UTF-16. Cela a nécessité de reprendre de nombreux paquets qui en dépendaient. | '''Les jaloux du langage Perl pourront quant à eux se satisfaire de la version 5.16''' de leur langage favoris. De plus le PCRE (Perl-Compatible Regular Expression) a été également mis à jour vers la version 8.30 qui apporte un changement important dans son API et le support de UTF-16. Cela a nécessité de reprendre de nombreux paquets qui en dépendaient. | ||
Pour les amateurs de Ruby, c'est Ruby on rails qui est à l'honneur avec sa version 3.2 et l'ajout de 10 gems qui ont été empaquetés. Il apporte entre autre : un mode de développement plus rapide, un nouveau moteur de routage, une explication automatique des requêtes, | Pour les amateurs de Ruby, '''c'est Ruby on rails qui est à l'honneur avec sa version 3.2 et l'ajout de 10 gems qui ont été empaquetés.''' Il apporte entre autre : un mode de développement plus rapide, un nouveau moteur de routage, une explication automatique des requêtes, | ||
Le projet Clojure fait également son apparition dans la liste des langages officiellement supportés avec tout son environnement de programmation dédié. Ce langage libre fonctionnel qui dispose d'un fort typage est un dialecte de Lisp. L'objectif premier du langage étant d'avoir un Lisp moderne pouvant fonctionner avec la plateforme Java, notamment dans le cadre de la programmation concurrente. Un travail proche du projet initial qui ressemble fortement à l'initiative fait autour du langage D depuis quelques versions. | '''Le projet Clojure fait également son apparition''' dans la liste des langages officiellement supportés avec tout son environnement de programmation dédié. Ce langage libre fonctionnel qui dispose d'un fort typage est un dialecte de Lisp. L'objectif premier du langage étant d'avoir un Lisp moderne pouvant fonctionner avec la plateforme Java, notamment dans le cadre de la programmation concurrente. Un travail proche du projet initial qui ressemble fortement à l'initiative fait autour du langage D depuis quelques versions. | ||
=== Projet Fedora === | === Projet Fedora === |
Revision as of 18:09, 6 January 2013
En ce mardi 15 janvier 2013, le projet Fedora est fier d’annoncer la sortie de la distribution GNU/Linux Fedora 18. Cette version est baptisée « Spherical Cow », au nom d'une blague prenant origine sur l'approximation physique.
Fedora est une distribution communautaire développée par le projet éponyme et sponsorisée par Red Hat, qui lui fournit des développeurs ainsi que des moyens financiers et logistiques. Fedora peut se voire comme une sorte de vitrine technologique pour le monde du logiciel libre, c’est pourquoi elle est prompte à inclure des nouveautés.
Fedora garde un rôle central dans le développement de ces nouveautés via le développement en amont. En effet, les développeurs de la distribution contribuent également directement au code d’un certain nombre de logiciels libres contenus dans la distribution, dont le noyau Linux, GNOME, NetworkManager, PackageKit, PulseAudio, X.Org, la célèbre suite de compilateurs GCC, etc. Cliquez ici pour voir l’ensemble des contributions de Red Hat.
Par ailleurs, les distributions tels que RHEL, Scientifique Linux ou CentOS (plus indirectement), avec un temps de cycle plus faible permettant un support à plus long terme, sont développées à partir d’une version de Fedora et mises à jour environ tous les trois à cinq ans. Notons que CentOS est un clone gratuit de RHEL, cette dernière étant certes libre, mais payante, offrant ainsi un support technique et une garantie.
Liste des nouveautés
Bureautique
Environnement bureautique
Gnome se met à jour avec la version 3.6. Cela permet de stabiliser la branche 3 du logiciel en apportant de nombreuses petites retouches. Nous avons du coup la suppression de la vue de l'ensemble des applications pour se centrer sur la recherche, les notifications ont été revisités pour être plus confortables à l'usage et permettre plus d’interactions, intégrations des données de Facebook, Kerberos ou Active Directory, l'écran de déverrouillage est maintenant intégré avec le reste de l'interface. Mais il y aussi un remaniement dans les paramètres qui sont plus simples et puissants. C'est l'occasion aussi de rendre fonctionnel l'application Boxes pour la virtualisation, le gestionnaire de disque et de son occupation (Disques et baobab) sont portés vers GTK+ 3 et une application d'horloges/alarmes est disponible tout comme un visionneurs des différentes polices. Le navigateur Epiphany continue de rattraper la concurrence avec l'option de ne pas tracer les visiteurs ou les vignettes sur la page de démarrage. Pour finir Nautilus poursuit son intégration avec une interface revisitée et une recherche plus puissante.
KDE suit la même tendance avec la version 4.9. Ainsi les fichiers peuvent être liés à des activités, les différents éléments de Plasma sont portés vers une version en QML, KWin subit de nombreuses corrections pour l'affichage des fenêtres avec un changeur des tâches qui est paramétrable, le gestionnaire de fichiers Dolphin peut afficher les métadonnées directement et faire du renommage de fichiers sans utiliser la boîte de dialogue. Le lecteur de documents Okular peut lire les vidéos directement dans les PDF, désactiver l'économie d'énergie lors d'une présentation, enregistrer les annotations dans un fichier PDF. Konsole, le visionneur d'images Qwenview et l'éditeur de texte Kate ont aussi le droit à nombre de petits correctifs.
Le gestionnaire de bureau XFCE débarque aussi en version 4.10. Le gestionnaire de fenêtre supporte maintenant le mode pavé pour la disposition des fenêtres, il est possible d'avoir plusieurs rangés de lanceur dans les panneaux, il est dorénavant possible de supprimer aisément les anciennes sessions enregistrées, la compatibilité avec les applications Gnome ou KDE a été accrue, différents éléments dans la configuration ont été amélioré, il est également possible d'utiliser des thèmes de GTK+ 3 et la documentation a été mise en ligne et non plus sous forme d'archive.
L'interface Sugar pour l'ordinateur XO-1 a été mise à jour vers la version 0.98. Le portage vers GTK+ 3 a débuté et le développement sous l'ancienne version a été dépréciée et la page d'accueil affiche dorénavant les différents éléments par ordre alphabétique. Le portage vers GTK+ 3 demandant beaucoup de ressources, il y a peu d'éléments qui ont été amélioré à côté.
Mais cette fois une autre interface très célèbre a été mise à disposition aux utilisateurs à savoir MATE. MATE est un fork de Gnome, de la branche 2.X plus exactement, car insatisfaits de l'évolution que prenait la branche 3.X. C'est la version 1.4 de cet environnement qui est mise à disposition, afin de contenter un maximum d'utilisateurs et de profiter de la diversité des environnements bureautiques disponibles.
Autres
Le logiciel de gestion des différentes dispositions claviers iBus a été grandement amélioré. Tout d'abord, une meilleure intégration avec Gnome 3 a été mise en œuvre afin d'améliorer l'expérience utilisateur autour de cet outil. Apparition de ibus-libpinyin pour simplifier la saisie du chinois simplifié et gagner en vitesse de frappe dans cette langue. Le système de prédiction lors de la frappe, précédemment disponible que pour la langue anglaise, est disponible pour différentes langues asiatiques mais aussi le danois et le français ! Cela permet donc une frappe plus rapide par auto-complétion dans l'ensemble du système et améliore également l'orthographe en limitant aussi les fautes de frappes.
Fedora propose également la version 2 des polices Liberation, polices libres qui sont censées remplacer les polices très populaires dans les différents produits Microsoft comme New Time Roman afin que les textes écrits dans ces produits aient un rendu similaire sous Fedora.
Fontconfig a été mis à jour vers la version 2.10. Il supporte plus de langues « exotiques », correction de fuites de mémoires, le support de Unicode 6.1, amélioration des performances, plus de stabilité et de documentation avec d'autres fonctionnalités et corrections !
L'installation du système a été totalement revu. En effet, le logiciel Anaconda, dédié à cette tâche, a été entièrement réécrit afin d'offrir la possibilité d'une installation non linéaire (en limitant le besoin de faire « Suivant, Suivant, Suivant » et l'interface globale les différents éléments de configurations ont été également revus. De part un grand problème de stabilité lors de son développement, la sortie de Fedora 18 a été maintes fois repoussée mais ces 2 mois de retard permet d'offrir à l'utilisateur un système fiable et stable. Mais aussi, la configuration initiale poste-installation a été revue en se basant sur les travaux de Gnome 3 dans le domaine.
Administration système
Noyau / Matériel
Passage de 16 à 256 couleurs pour la sortie des émulateurs de terminal compatibles. Les terminaux qui s'affichent à la volée comme Tilda, Guake ou Yakuake auront besoin d'une configuration plus tardivement mais la console virtuelle du noyau ou aterm ne sont pas compatibles. Cela permet d'améliorer le rendu des sorties de différentes commande comme ls ou encore de rendre plus efficace (et joli) la coloration syntaxique par exemple.
Prise en charge de Secure boot, le procédé qui nécessite de signer le chargeur de démarrage et le noyau pour être utilisable sur les tablettes ayant Windows 8 RT par défaut. En effet, dans les critères pour pouvoir vendre une tablette avec Windows 8 RT, les constructeurs ne doivent autoriser que le chargement des systèmes étant signé pour s'assurer qu'ils ne sont pas vérolés. Cela pose un problème pour les systèmes à base du noyau Linux étant donné que le noyau est modifié par chaque distribution. cela a impliqué de modifier Grub, Linux, Lorax et Anaconda pour tenir compte de cela et d'ajouter des outils pour générer des certificats et le boot dans une telle situation. L'objectif étant de rendre Fedora installable et utilisable sur de telles tablettes.
Prise en charge du pilote des groupes de réseaux. L'objectif est de permettre de gérer les requêtes réseaux par groupe de cartes réseaux où chaque groupe se comporte comme une seule carte réseau. Cette fonctionnalité était déjà présente dans le noyau, ici le travail a été de refaire un comportement similaire tout en améliorant l'architecture. Nous nous retrouvons avec une architecture plus modulaire, plus efficiente et piloté en espace utilisateur. En plus de ces améliorations, quelques fonctionnalités ont été ajoutés comme la gestion de la répartition de la charge via LACP, la gestion des priorités par ports, surveillance des liens réseaux par ports, la sollicitation par le réseau de voisinage IPv6. C'est le paquet teamd qui s'en charge.
Apparition de libStorageMgmt, une API agnostique pour gérer en ligne de commande le stockage de données via NAS ou SAN. targetd vient le seconder pour contrôler à distance les interfaces de stockages avec notamment la possibilité d'exporter des volumes à une autre machine hôte par iSCSI par exemple. Il n'y a pas de gain immédiat, des applications et bibliothèques apparaitront pour en profiter. Cependant nous pouvons nous attendre à de gains importants en performance et souplesses auprès de systèmes virtualisés qui peuvent nécessiter une grande souplesse dans la gestion des volumes et ressources de la machine hôte.
Mise à disposition du Système de Contrôle du Stockage (commande ssm) pour manipuler facilement en ligne de commande les systèmes de stockages de différentes technologies comme lvm, btrfs, volumes chiffrés, etc. Cette couche d'abstraction permet de simplifier la tâche dans ce type d'opération en limitant le besoin de recourir à la commande spécifique d'un système de stockage et donc de se souvenir comment cela se passe pour chaque technologie.
L'option du noyau rngd est activé par défaut. Il permet au noyau de générer des nombres aléatoires basés sur le bruit de son environnement, du moins si le matériel est compatible, comme les processeurs Intel prenant en charge l'instruction RDRAND. L'objectif est de générer des nombres aléatoires moins pseudo-aléatoires en tenant compte du caractère aléatoire du bruit environnent pour générer la graine. Et ceci est à disposition des applications (notamment pour générer des clés ou certificats de sécurités) mais aussi des machines virtuelles.
Prise en charge de l'architecture PowerPC, plus précisément sa sous-architecture ppc64p7. C'est plus précisément encore une optimisation pour ce type d'architecture qui améliore de 20% les performances en général (et même 100% dans certains cas). Cela ne remet pas en cause la compatibilité avec les PowerPC de versions antérieures à la version 7, tout comme le support de x86_64 n'a pas remis en cause le support des machines i686.
Les pilotes graphiques utilisés par les serveurs vont migrer vers KMS à partir du pilote X.org. Cela concerne les puces MGA G200SE et AST notamment que se retrouvent très régulièrement dans ce type de configurations. L'objectif étant de gérer les pilotes graphiques de manière plus générique et cela leur permettra un meilleur support à l'avenir.
Réseau
NetworkManager crée maintenant par défaut des points d'accès en mode « AP » plutôt qu'en mode « AdHoc ». En effet, le mode AP est plus « sécurisé » car le noyau Linux fonctionne bien mieux avec la sécurité WPA/WPA2 dans ce mode qu'avec le AdHoc ce qui permet d'augmenter la sécurité sans pertes de performances ou de stabilité. De plus, de nombreux fabricants refusent la connexion sur des points d'accès AdHoc par le manque de « sécurité » présumé, le mode AP permet de lever cette problématique. Bien entendu, il est toujours possible de préciser de créer un point d'accès AdHoc sans difficulté.
Avahi est le protocole de réseau local utilisé pour découvrir maintenant les périphériques de type MDNS comme des imprimantes. L'intégration a été faite pour que la gestion du pare-feu et de SELinux ne bloque pas une telle possibilité tout en garantissant une grande sécurité du système.
Les domaines Active Directory fonctionnent désormais à la sortie de la boîte pour les services d'authentifications centralisées. Cela permettra une meilleure intégration de Fedora dans ces environnements, très prisés en entreprise. Son couplage avec SSSD permet en plus la possibilité d'utiliser son compte hors ligne (technologie développée il y a quelques versions de là).
Free IPA est également mis à la version 3. Ce logiciel, semblable à la solution Active Directory de Microsoft, permet de vérifier l'identité, l'authentification et l'audit au sein d'un réseau notamment pour mettre en œuvre des annuaires LDAP. Cela a permis la mise en place de la confiance vers les domaines Active Directory. Du coup il est possible de réaliser une seule authentification entre un domaine Active Directory et IPA, d’accéder à partir du domaine IPA aux données présentes sur l'Active Directory et la non nécessité d'attribuer des valeurs POSIX aux domaines Active Directory.
Déplacement du cache de KRB5, de /tmp/krb5cc_UID_XXXXXX à /run/user/$USERNAME/krb5cc plus une plus grande facilité d'accès (nom moins aléatoire) et une plus grande sécurité des données car le répertoire /run sera monté dans la RAM, rendant les données illisibles à l'extinction de la machine contrairement à /tmp. Le système du cache de KRB5 est par ailleurs modifié en passant à KRB5 DIR ce qui simplifie l'infrastructure de développement de Fedora à migrer vers un système Kerberos mais aussi cela permet de se connecter à plusieurs instances de Kerberos simultanément.
Mise à disposition de NFSometer pour mesurer les performances de NFS, que ce soit le protocole ou les clients implémentés. En effet, il est capable de comparer le temps d’exécution de différents types d'opérations sur ce système de fichier et de comparer ces performances pour évaluer les régressions entre les différents noyaux Linux, versions ou options activées de NFS. Il permet également de tester des opérations suivant l'usage qu'à l'administrateur du NFS et de comprendre les performances caractéristiques de l'installation (et éventuellement comment les améliorer).
Samba 4 a été également le centre de toutes les attentions. Il supporte les protocoles précédents SMB 3 et 2.2, une nouvelle interface de script a été mise en place pour y interagir avec des programmes codés avec Python, il peut aussi être mis en place avec LSA Service Daemon pour FreeIPA pour établir des connexions sécurisées.
Introduction de FedFS, le système de fichier fédéré pour la gestion de fichiers à travers le réseau via Samba ou NFS à partir d'une seule interface. Il a pour base le RFC 5716.
Gestionnaire de paquets
Le changement le plus médiatique est sans doute l'arrivée d'un nouveau gestionnaire de paquet, en option, qui est DNF et qui pourrait remplacer à terme Yum. L'objectif est de simplifier le code global en améliorant aussi les performances des différentes procédures. Pour fonctionner, DNF utiliser le solveur de dépendance libsolve via hawkey, ce meilleur découpage des rôles permet aussi de changer plus facilement l'une des composantes pour un autre ou de le porter pour d'autres gestionnaires de paquets d'autres distributions.
RPM, le gestionnaire de paquets de base de la distribution est porté vers la version 4.10. Il apporte une amélioration des performances, le rechargement automatique des politiques SELinux en cas de changement, il est plus robust vis à vis des conflits de fichier, il détecte mieux certaines erreurs pour mieux les corriger seul avec bien entendu la correction de nombreux bogues.
La mise à jour hors ligne tire profit de PackageKit et de systemd pour contrôler l’environnement de manipulation et améliorer les possibilités dans ce domaine. Entre autre les mises à jour sont téléchargés avant de prévenir l'utilisateur pour diminuer le temps d'attente d'installation et d'installer les mises à jour durant l'extinction de la machine. En effet, dans certains cas la mise à jour remplace des composants critiques (comme des bibliothèques systèmes) ce qui peut provoquer une instabilité. En proposant une installation à l'extinction de la machine, le problème est bien plus limité et moins gênant pour l'utilisateur. ce système est à rapprocher de ce que fait Windows en général.
Utilisation de la compression Dwarf pour réduire la taille des fichiers de débogues des paquets debuginfo.
Un minimum d'informations de débogues sont fournis dans les binaires par défaut, dans l'objectif d'améliorer la qualité des rapports de bogues en minimisant la quantité de paquets nécessaires à télécharger pour le faire avec les complications que cela entrainent. Il est possible de supprimer ces éléments lors de la construction d'une image Fedora personnalisée et ce très facilement.
Services / Démons
systemd continue son évolution avec la suppression du script prefdm pour choisir son gestionnaire de bureau (et le gestionnaire de connexion) par défaut, remplacé par un service intégré à systemd. Cela simplifie la gestion du démarrage de la machine et évite la gestion du fichier complexe qui gérait la configuration de prefdm.
Conversion des scripts init de SysV vers systemd. Systemd est l'application qui gère le lancement des processus lors du démarrage de la machine afin qu'elle se lance correctement. Systemd a déjà remplacé init chez Fedora pour cette tâche pour la 15ème version, mais la plupart des services utilisaient la couche de compatibilité entre init et systemd. Maintenant ce sont des scripts natifs pour systemd et qui par conséquent exploitent mieux ses possibilités. Le temps de démarrage peut être sensiblement amélioré et la configuration de ces scripts sera beaucoup plus simple pour les administrateurs systèmes. Ce travail a débuté depuis de nombreuses versions de Fedora mais n'a jamais été totalement finalisé, ce travail est toujours en cours.
Le pare-feu dynamique est mise en place par défaut sous forme de démon nommé firewalld. Son objectif est de remplacer les outils iptables qui sont statiques. Le principal inconvénient étant qu'actuellement le pare-feu statique nécessite un redémarrage de ce dernier en cas de modification des paramètres, entrainant un problème de sécurité et nécessitant même de perdre la connexion durant ce laps de temps. Ce problème est résolu avec ce nouveau pare-feu et qui permet entre autre l'usage de Avahi pour les périphériques MSDN en toute transparence.
Filtrage les appels systèmes par application pour limiter leur appel à certaines applications et augmenter ainsi la sécurité et la fiabilité du système. Cela se fait par l'inclusion de la bibliothèque libseccomp.
Haute disponibilité / Supervision
Migration de procps tools vers procps-ng, outil qui permet de surveiller et gérer les processus du système. Le projet originel n'était plus maintenu et ne progressait qu'à l'aide de correctifs disparates entre les distributions qui n'étaient pas remontés au projet (créant des incompatibilités). Tout a été remis à plat ce qui permet une meilleure maintenabilité, une diminution de la consommation des ressources, de nouvelles fonctionnalités et de nombreuses corrections.
Introduction du LLTng 2.0 qui est une infrastructure pour contrôler et tracer les composants en espace utilisateur. Il peut ainsi servir à détecter les baisses de performances ou les conflits d'accès des processus et threads. Intégré partiellement au noyau, il peut maintenant supporter des requêtes de plusieurs utilisateurs et de multiples sessions.
Dans la gestion des parcs de serveurs, il est important de pouvoir les contrôler à distance et de manière simultanée tout en ayant en main l'ensemble des paramètres matériels à surveiller sur tous les systèmes. L'objectif étant bien entendu de manier au mieux le parc de machines et s'assurer de son bon fonctionnement (et faciliter le débogage à distance si besoin). C'est pourquoi Fedora 18 apporte le « Service Processor » où nous pouvons y connecter différents services de supervision et de contrôle du système. L'objectif est de pouvoir à terme implémenter l'ensemble des standards IMPI (via OpenIMPI) et WS-Management qui sont utilisés dans l'industrie pour ce type d'opération. Le travail sera poursuivi dans le support de ces standards dans Fedora 19.
Toujours dans cette voie de la supervision, les projets openlmi, sblim et pegasus sont intégrés et modifiés de sorte à supporter les standards industriels de la DMTF : CIM et WBEB pour la gestion de parcs de machines distribuées et des applications à travers ce réseaux. En réalisant tout ceci, il est possible d'intégrer Fedora à un parc de machines compatibles avec ces normes le tout avec une interface centralisée et unique. Il est également possible de réutiliser les scripts ou applications compatibles avec ces normes que proposent d'autres constructeurs ou éditeurs.
Autres
Ajout de Riak comme gestionnaire de base de données NoSQL. Ce gestionnaire, écrit en Erlang, était particulièrement complexe à installer en manuel et la demande pour des bases de données NoSQL est particulièrement grandissante notamment pour sa simplicité et sa capacité à supporter de hautes charges par rapport à une base de données relationnelles.
Tous les booléens de SELinux débutant par allow_ sont renommés pour utiliser le nom d'un domaine plus spécifique à chacun. SELinux, qui permet d'étendre la gestion des droits du système et de renforcer la sécurité, a accumulé avec les années des booléens qui se sont mis dans l'espace de nom allow_ qui est générique. L'objectif était de nettoyer la situation pour les mettre dans un espace de nom plus approprié et de rendre son utilisation et son administration plus simple.
Toujours à propos de SELinux, il y a son intégration à systemd pour qu'il contrôle si les services lancés sont autorisés à manipuler un autre service. Cela permet d'étendre son champ de compétence et accroit d'autant plus la sécurité du système. Typiquement Networkmanager pourrait lancer ou couper le service pour se connecter à un serveur NTP mais le système pourrait l'interdire dans le même temps de faire la même chose avec le pare-feu ou le serveur HTTP.
Simplification de la procédure de rapport de bogues via ABRT serveur. Pour simplifier la procédure, il y a moins d'actions demandés à l'utilisateur, la collecte des données se fait de manière plus automatique et il n'est plus nécessaire de posséder un compte Bugzilla pour y soumettre un bogue par ce biais. Pour les mainteneurs derrière, ils ont accès à plus de données et peuvent faire des statistiques plus fines pour identifier le problème, notamment sur base des rapports doublons, pour corriger plus rapidement le bogue.
/tmp est monté en tmpfs par défaut (ce qui le met dans la RAM). Ce cas est de plus en plus courant dans l'univers Unix (Solaris ayant ouvert le bal en 1994). L'objectif visé est de diminuer les entrées/sorties sur le disque dur (et augmenter ainsi la réactivité du système), allonger la durée de vie des composants dont les SSD et consommer un peu moins d'énergie. Les données cependant disparaissent à la coupure de la machine, au lieu du nettoyage tous les dix jours. Il est possible de revenir à l'ancien mode si nécessaire, notamment en cas de données trop volumineuses pour tenir convenablement dans la RAM.
Virtualisation
Création de virt-sandbox-server pour gérer les bac à sables et les isolant pour les applications et les systèmes utilisant libvirt. Il fait appel aux unités de systemd pour paramétrer les informations concernant les conteneurs que libvirt va gérer conjointement avec SELinux pour les droits d'accès. Cela améliore grandement la sécurité des différentes applications virtualisées notamment vis à vis des processus du système hôte ou d'autres conteneurs.
Prise en charge de l'hibernation et de la mise en veille des systèmes invités via QEMU et libvirt qui avaient tendance à ne pas reprendre correctement leur travail après le relancement du système. En plus de gérer ce cas proprement, via la commande virsh il est possible de commander depuis le système hôte la mise en veille de machines virtualisées.
Intégration de la prise de clichés à la volée des systèmes virtualisés via QEMU et libvirt. Contrairement à ce qui était possible avant, il est possible de le faire sans interruption du service le temps de l'opération. C'est bien évidemment une grande amélioration pour la disponibilité des services sans empêcher la sauvegarde des données régulièrement.
oVirt qui a été incluse la version précédente est mise à jour vers la version 3.1. cette version offre une interface graphique et une interface web pour le contrôler, il gère le partage des disques, les clichés à la volée, le support du système de fichier POSIX, le support de contrôle de bases de données, le support de solutions Red-Hat et IBM pour les serveurs, l'hôte et l'hyperviseur peuvent être sur la même machine, etc.
Cloud computing
Possibilité de créer un service cloud via Eucalyptus pour le calcul, réseau et stockage de données. Il est notamment utilisé pour les services de hautes disponibilités et son caractère AWS-compatible, le service cloud de Amazon.
Arrivée de Heat qui est un AWS CloudFormation API pour gérer les applications du cloud à travers la solution OpenStack en ligne de commande, solution particulièrement développée chez Fedora depuis plus d'un an.
Par ailleurs, OpenStack voit sa version progresser en passant à OpenStack Folsom. Il apporte entre autre la possibilité d'écrire des données avec l'assurance d'être uniques, la préallocation de l'espace disque pour mieux gérer celle-ci, la compatibilité avec le service Amazon est déporté dans un projet externe plus plus de simplicité dans le développement, la possibilité d'écrire des objets versionnés ou encore une intégration plus profonde du module de statistiques pour la surveillance du système.
Développement
Les développeurs de C++ vont s'y habituer, la célèbre bibliothèque Boost a été mise à jour vers la version 1.50. De nouveaux algorithmes génériques ont été ajoutés comme ceux de recherches de données, la compatibilité avec des fonctionnalités C++11 (et la compilation dans ce mode) a été renforcée, etc.
Mise à jour de l’environnement de développement pour le langage D comme le compilateur ou l'interfaçage avec GTK. Cela est également l'occasion d'ajouter des modules liés à OpenGL pour l'exploiter au mieux ou encore le support de l'interfaçage avec SQLite pour les bases de données.
Arrivée de DragonEgg, plugin de GCC pour remplacer certaines optimisations et générateurs de code de GCC par ceux projet LLVM. Ce changement a été fait pour améliorer les optimisations réalisées mais aussi pour faire de la compilation croisée sur des architectures supportées par LLVM (mais avec GCC) sans nécessiter un paquet supplémentaire pour ce type d'opération.
Histoire d'être à la pointe du développement logiciel, le Glasgow Haskell Compiler a été également mis à jour vers la version 4.7.2 pour les amateurs de ce langage fonctionnel.
Le langage Python a toujours été à l'honneur chez Fedora et cela se poursuit avec le débarquement de Python 3.3. Il revoit la méthode de stockage des caractères pour économiser de la mémoire, la syntaxe des générateurs a été revue, la possibilité de créer des environnements de Python virtuels, de grands changements dans la gestion des exceptions, etc. Au delà de Python lui-même, IPython a été porté vers la version 0.13. De plus la structure des paquets pour ce projet a été revue avec plus de sous-paquets. Nous rappelons que ce projet est un shell pour le langage Python pour compléter celui proposé de manière officielle.
Les jaloux du langage Perl pourront quant à eux se satisfaire de la version 5.16 de leur langage favoris. De plus le PCRE (Perl-Compatible Regular Expression) a été également mis à jour vers la version 8.30 qui apporte un changement important dans son API et le support de UTF-16. Cela a nécessité de reprendre de nombreux paquets qui en dépendaient.
Pour les amateurs de Ruby, c'est Ruby on rails qui est à l'honneur avec sa version 3.2 et l'ajout de 10 gems qui ont été empaquetés. Il apporte entre autre : un mode de développement plus rapide, un nouveau moteur de routage, une explication automatique des requêtes,
Le projet Clojure fait également son apparition dans la liste des langages officiellement supportés avec tout son environnement de programmation dédié. Ce langage libre fonctionnel qui dispose d'un fort typage est un dialecte de Lisp. L'objectif premier du langage étant d'avoir un Lisp moderne pouvant fonctionner avec la plateforme Java, notamment dans le cadre de la programmation concurrente. Un travail proche du projet initial qui ressemble fortement à l'initiative fait autour du langage D depuis quelques versions.
Projet Fedora
Simplification des procédures pour les mainteneurs des versions « spins » de Fedora et des mainteneurs de paquets au sein du projet via l'utilisation d'un service de présélection des services. En effet, auparavant quand vous installez un paquet RPM, les macros %post permettent par exemple de lancer des services pour ses propres besoins (ou lancer ce que l'utilisateur a voulu installer). Seulement cela ne tient pas compte des versions dérivées officielles de Fedora, les « spins » et cela demandait une lourde charge aux mainteneurs des paquets pour en tenir compte. Ici c'est systemd qui prend le relais, un simple fichier explicite les services à lancer suivant la configuration prédéfinie par défaut ce qui est idéal dans le cas des spins qui ont justement des paquets prédéfinis. Il est possible de prioriser différentes configurations en cas de besoin en simultanée. Ainsi la Fedora canonique sera plus propre et maintenable, la vie des « spinners » sera facilité et l'échange de fichier .spec de RPM entre distributions sera facilité également.
Les groupes de paquets sont réorganisés et leur affichage a été amélioré pour l'utilisateur.
Mises à jour majeures
Voici la liste des mises à jour majeures des paquets de Fedora avec les liens vers leurs notes de versions :
- Noyau Linux 3.6
- Firefox 16
- Thunderbird 16
- Gnome 3.6
- KDE 4.9
- Sugar 0.98
- Xfce 4.10
- LibreOffice 3.6
- RPM 4.10
- Samba 4.0
- Ruby On Rails 4.2
- Perl 5.16
- Python 3.3
Liens externes
- Site officiel du projet Fedora
- Site officiel de la communauté francophone de Fedora
- Notes de versions officielles en français
- Téléchargez Fedora 18 par Torrent ! (méthode à privilégier)
- Téléchargez Fedora 18 par FTP ou HTTP