GNU/Linux >> Tutoriels Linux >  >> Fedora

Fedora 35 – Quoi de neuf du point de vue du développeur

La version stable officielle de Fedora 35 a été rendue disponible au téléchargement le 2 novembre 2021, après avoir été repoussée pour résoudre certains bogues de blocage en suspens. Cependant, l'attente en valait la peine ! Le cycle de publication comprend Fedora Server, spins, IoT et Fedora Labs avec des progiciels sélectionnés pour répondre aux besoins de niche. En outre, il comprend GNOME 41, des outils de développement mis à jour, de nouveaux langages de programmation, des profils de gestion de l'alimentation, une gestion logicielle améliorée d'autres applications tierces.

Cet article est un aperçu d'un développeur de logiciels sur les nouvelles fonctionnalités, les outils de développement, Fedora Labs et les améliorations de Fedora Linux 35.

Le point de vue d'un développeur sur Fedora 35

Vous pouvez obtenir Fedora Workstation 35 sur le site officiel ou mettre à niveau votre système d'exploitation existant via le terminal avec dnf system-upgrade ou GNOME Software.

Noyau Linux 5.14

Le dernier cycle de publication de Fedora 35 comprend le nouveau noyau Linux 5.14. Il inclut de nombreuses améliorations spécifiques à ARM principalement liées aux GPU (prise en charge sur les cartes graphiques AMD Radeon) et une meilleure prise en charge de l'USB 4.

Éditions Fedora 35

Station de travail Fedora 35

Fidèle aux fondements Fedora de "Liberté", "Premier", "Fonctionnalités" et "Amis", la version inclut le nouveau GNOME 41, des langages de programmation mis à jour, des outils de développement pour vos besoins de développement logiciel. Si vous utilisez Fedora pour les tâches quotidiennes, il propose également de nouveaux profils de gestion de l'alimentation, des contrôles parentaux et des améliorations dans la gestion d'autres applications tierces. Consultez notre article sur les « Principales nouvelles fonctionnalités de Fedora 35 Workstation » pour en savoir plus.

Fedora IdO

L'édition Fedora IoT [Internet des objets] est un système d'exploitation immuable avec des mises à jour atomiques. Il est implémenté à l'aide de la technologie OSTree. Vous pouvez l'utiliser pour les écosystèmes IoT pour de petits projets domestiques, des projets industriels à grande échelle ou des analyses avec AI/ML.

Les développeurs de systèmes IoT peuvent également utiliser Fedora IoT pour créer des flux de travail axés sur les conteneurs. Essentiellement, vous pouvez créer, déployer et gérer des applications avec la prise en charge intégrée des images Open Container Initiative (OCI) à l'aide de podman ou d'applications conteneurisées à partir de registres publics.

Fedora IoT propose le cadre de vérification greenbolt pour systemd afin de garantir que votre système démarre dans l'état souhaité. Dans un souci de sécurité, les développeurs peuvent profiter de sa prise en charge de SecureBoot, TPM2 et du décryptage automatisé du stockage avec Clevis. Il prend également en charge plusieurs architectures telles que les processeurs x86_64, aarch64 et armhfp. De plus, l'approvisionnement basé sur le Web est pris en charge via l'utilitaire d'approvisionnement Ignition et le service Web Zezere. Ainsi, vous pouvez déployer, gérer et faire évoluer votre environnement Fedora IoT sans avoir besoin d'une console physique. Vous pouvez télécharger Fedora IoT depuis sa page officielle.

Fedora Kinoite

Fedora Kinoite est le plus récent ajout à la famille Fedora. Cette nouvelle édition est basée sur les technologies sous-jacentes de Fedora Silverblue (Fedora Linux, rpm-ostree, podman). Il dispose d'un bureau KDE Plasma par défaut.

L'équipe du projet Fedora décrit Fedora Kinoite comme un système d'exploitation de nouvelle génération. Il vous permet de gérer le travail quotidien, de surfer sur le Web, de gérer des fichiers et d'être productif sans vous soucier de casser votre système.

Apprenez-en plus sur le projet sur la page d'accueil officielle de Fedora Kinoite ou téléchargez l'architecture X86_64 ou AArch64.

Images Fedora 35 Cloud Base

Fedora Cloud fournit différentes images qui peuvent être consommées dans des infrastructures de cloud privé et public. Ce cycle de publication inclut l'introduction de la prise en charge du démarrage hybride BIOS + UEFI. Si UEFI ne fonctionne pas, vous disposez toujours de la prise en charge du BIOS hérité comme alternative.

Btrfs est maintenant le système de fichiers par défaut pour Fedora Cloud. Btrfs a été introduit comme système de fichiers par défaut dans Fedora Workstation 34 et sera de plus en plus adopté dans les éditions de Fedora. Vous pouvez tirer parti de la compression transparente pour économiser de l'espace sur le système de fichiers et d'autres fonctionnalités de Btrfs.

Le cycle de publication de Fedora 35 inclut les images Cloud Base suivantes :

  • Cloud Base :une image Fedora minimale pour créer des machines virtuelles (Vms) à usage général. Il ne contient que les packages minimaux requis pour s'exécuter sur n'importe quel environnement cloud.
  • Images Vagrant – Inclut des images Vagrant Boxes pour la base cloud et atomique. VirtualBox et libvirt sont pris en charge par l'image VirtualBox et les images libvirt/KVM. Si vous utilisez Vagrant sur Fedora, l'image libvirt/KVM sera idéale pour vos déploiements.
  • Image atomique :une image atomique est une plate-forme légère et immuable pour l'exécution d'applications conteneurisées ou dans n'importe quel environnement de cloud privé ou public.
  • Image Docker :l'équipe Fedora Cloud fournit la dernière image Fedora pour Docker que vous pouvez obtenir via docker pull fedora.
  • Images Cloud Base pour Google Cloud Platform (GCP) :l'image est configurée pour s'exécuter sur GCP.
  • Cloud Base Images for Amazon Public Cloud fournit des AMI x86_64 et des AMI aarch64 à lancer dans votre compte Amazon Web Services.

Laboratoires Fedora 35

Fedora Labs est une collection d'applications, de packages Linux et de contenu regroupés dans une image pour répondre aux besoins de niche. Les laboratoires Fedora incluent Astronomy, Comp Neuro, Design Suite, Python Classroom, Scientific, Security Lab, Games, JAM, Robotics Suite.

Salle de classe Python

Les instructeurs ou enseignants Python peuvent utiliser Fedora Python Classroom Lab pour enseigner ou présenter des démonstrations dans des salles de classe ou des ateliers. Le système d'exploitation est fourni avec des packages préinstallés tels que Python, IPython, Jupyter Notebook, tox, virtualenvs, git et bien d'autres.

Fedora Python Classroom Lab se présente sous la forme d'un bureau GNOME ou d'un environnement sans tête pour Vagrant ou Docker. Vous pouvez l'exécuter en mode graphique avec GNOME, ou le virtualiser avec Vagrant ou l'exécuter dans un conteneur Docker en fonction de ce qui convient à votre architecture.

Laboratoires Scientifiques Fedora

Fedora Scientific Lab est livré avec des applications, des outils et des bibliothèques scientifiques et numériques open source essentiels. Les packages incluent des bibliothèques et des outils tels que la bibliothèque GNU Scientific, les bibliothèques SciPy. Outils de composition, d'écriture et de publication. Programmes graphiques tels que Inkscape. Le laboratoire scientifique Fedora 35 actuel comprend un ensemble de packages tels qu'un IDE, des bibliothèques pour la programmation en Python, C, C++, Java et R.

Laboratoires Fedora Design Suite

Fedora Design Suite Labs est un environnement de bureau avec des outils de production et de publication multimédia gratuits et open source préinstallés créés par des designers, pour des designers. Il comprend vos outils et programmes préférés pour créer des illustrations, des arrière-plans de bureau, des pochettes de CD, des conceptions de pages Web, des dépliants ou des interfaces d'application.

Vous pouvez l'utiliser pour diverses fonctions telles que la publication de documents, l'édition vectorielle et bitmap, la modélisation 3D ou la gestion de photos. De plus, vous pouvez toujours installer de nombreuses autres applications à partir des packages Linux complets.

Si vous êtes un astronome ou un passionné, vous voudrez peut-être essayer les laboratoires d'astronomie de Fedora. Un joueur peut installer le Games Lab, les passionnés d'audio et les musiciens qui souhaitent créer, éditer et produire de l'audio et de la musique sur Linux peuvent utiliser les Fedora Jams Labs. Essentiellement, il y a «presque» tout pour vos besoins de niche. D'autres laboratoires supplémentaires sont Comp Neuro, Security et Robotics Suite.

Obtenir des outils de développement

Il va sans dire. Fedora est un système d'exploitation créé par des développeurs pour des développeurs. Fedora 35 fournit certains des meilleurs outils de programmation, des langages de programmation mis à jour et des bases de données. Vous trouverez également des outils de collaboration pour gérer vos projets du début au déploiement et à la distribution.

Langages de programmation

Fedora 35 offre aux développeurs de nouveaux langages de programmation, des mises à jour de la bibliothèque système, des mises à jour des packages sous-jacents et des mises à jour de la chaîne d'outils. Les langages de programmation suivants sont intégrés dans Fedora 35.

Python 3.10Node.js 16.xPerl 5.34PHP 8.0Binutils 2.36gcc 11glibc 2.34RPM 4.17binutils 2.37gdb 10.2LLVM 13

Fedora fournit une plate-forme simple et fiable pour gérer des projets, qu'il s'agisse d'applications en ligne de commande, d'applications Web, d'applications de bureau ou de projets de périphériques matériels avec Raspberry Pi ou Arduino.

Plateforme .NET

Si vous utilisez la plate-forme .NET pour le développement, .NET Core et Mono sont disponibles pour une installation sur Fedora. Pour créer des applications à l'aide des langages de programmation C#, F# ou VB.NET. Vous pouvez installer .NET Core et Mono en suivant les étapes simples suivantes.

.NET Core

.NET Core est une plate-forme modulaire, multiplateforme et open source pour tout développement à usage général. .NET Core est intégré à Fedora et vous pouvez installer le dernier SDK avec la commande suivante :

$ sudo dnf install dotnet
Mono

Mono est une implémentation gratuite et open-source du .NET Framework. Vous pouvez installer Mono avec la commande suivante :

$ sudo dnf install mono-devel
Python

Python est un langage de programmation interprété, orienté objet et de haut niveau. Python 3 est déjà préinstallé sur Fedora 35 avec de nombreux packages populaires pour Python.
Pour exécuter Python ou vérifier la version installée, ouvrez votre terminal et tapez la commande Python ou python3.

Utiliser des environnements virtuels

Si vous travaillez sur des projets de développement de logiciels, les environnements virtuels peuvent limiter les conflits en regroupant les dépendances en un seul endroit. Vous pouvez les utiliser pour des projets nécessitant différentes versions d'un module.

Utilisez la commande suivante pour créer un environnement virtuel.

$ python -m venv web_project_venv

Le nom du projet est web_project_venv qui contient Python et pip. Vous pouvez utiliser pip pour installer d'autres dépendances dans votre environnement virtuel.
Pour travailler dans l'environnement virtuel, vous devez l'activer avec la commande suivante.

$ source web_project_venv/bin/activate

Lorsque vous activez l'environnement virtuel, vous pouvez installer des modules via pip.

(web_project_venv) $ python -m pip install module_name

Vous pouvez désactiver l'environnement virtuel.

(web_project_venv) $ désactiver
Fortran

Fortran est un langage de programmation impératif à usage général adapté au calcul numérique et au calcul scientifique. Pour utiliser Fortran dans Fedora 35, vous devez installer le compilateur gfortran car Fortran est un langage compilé.
Pour installer le compilateur gfortran, utilisez la commande suivante.

$ sudo dnf install gcc-gfortran

Quel que soit le langage que vous utilisez pour le développement, Fedora fournit des packages pour d'autres langages tels que C, C++, Go, Java, Node.js, PHP, Haskell, Perl, R, Rust, Ruby et bien d'autres.

Bases de données

Fedora 35 fournit une plate-forme et des packages fiables pour installer et gérer les moteurs de base de données. Vous pouvez installer des moteurs de base de données tels que MariaDB (qui remplace MySQL), SQLite, Cassandra, PostgreSQL, SQLite, Redis, MongoDB (base de données orientée document/NoSQL) et bien d'autres.

PostgreSQL

PostgreSQL est un système avancé de gestion de base de données relationnelle objet (SGBD). Fedora 35 fournit un ensemble complet de packages pour le client et le serveur PostgreSQL, des plug-ins compatibles avec le serveur et des connecteurs de base de données.
Pour démarrer avec PostgreSQL dans Fedora, vous pouvez l'installer et le configurer à l'aide des commandes suivantes.

$ sudo dnf install postgresql postgresql-server # install PostgreSQL client/server$ sudo postgresql-setup --initdb --unit postgresql # initialize PostgreSQL cluster$ sudo systemctl start postgresql # start cluster$ sudo su - postgres # admin login 

Si vous êtes bloqué en cours de route, vous pouvez toujours utiliser la commande d'aide.

Apache Cassandre

Apache Cassandra est un serveur de base de données open source pour les applications à grande échelle. Son évolutivité linéaire et sa tolérance aux pannes sur le matériel de base ou l'infrastructure cloud en font le choix idéal pour les données critiques. La base de données utilise le Cassandra Query Language (CQL), qui est relativement proche de SQL.

Exécutez les commandes suivantes pour installer et initialiser Cassandra sur Fedora 35.

$ sudo dnf install cassandra cassandra-server # installe le client/serveur Apache Cassandra$ sudo systemctl start cassandra # initialise le serveur Cassandra

Activez Cassandra pour qu'elle s'exécute au démarrage :

$ sudo systemctl enable cassandra$ cqlsh # exécuter l'outil client Cassandra
FAIT AMUSANT :
Un groupe de baleines s'appelle un groupe.

Gérer les conteneurs dans Fedora 35

Les conteneurs permettent aux développeurs de regrouper des applications avec des dépendances et de les exécuter n'importe où. Les conteneurs vous permettent de séparer les mises à jour principales du système d'exploitation des mises à jour des applications. Vous pouvez également tester et déployer différentes versions d'applications. L'équipe du projet Fedora fournit Fedora IoT et Fedora CoreOS qui offrent une prise en charge fiable des flux de travail axés sur les conteneurs.

Fedora Core OS

Selon l'équipe du projet Fedora, Fedora CoreOS est un système d'exploitation minimal à mise à jour automatique conçu pour exécuter des charges de travail conteneurisées en toute sécurité et à grande échelle. Le système d'exploitation vous permet d'exécuter des applications en tant que conteneurs. Vous pouvez également installer des packages supplémentaires avec l'outil rpm-ostree, qui superpose atomiquement les changements au-dessus de l'image de base.
Vous pouvez télécharger Fedora CoreOS depuis sa page de téléchargement officielle.

Docker

Docker est une excellente plateforme permettant aux développeurs de développer, expédier et exécuter des applications dans des conteneurs. Avec Docker, vous pouvez rapidement assembler des applications et faire tester et déployer votre code en production aussi vite que possible. Vous pouvez installer le package docker-ce à l'aide du référentiel Docker dans Fedora 35 en procédant comme suit.
Installez le package dnf-plugins-core :

$ sudo dnf install dnf-plugins-core

Ajoutez le dépôt docker-ce :

$ sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo

Installez le moteur docker :

$ sudo dnf install docker-ce docker-ce-cli containerd.io

Démarrez le service Docker :

$ sudo systemctl start docker

En savoir plus sur les trucs et astuces d'installation de Docker dans la documentation de Fedora sur la prise en main de Docker.
Vous pouvez également consulter Docker Compose, un outil permettant d'orchestrer plusieurs conteneurs.

Podman

Podman est un moteur de conteneur sans démon pour développer, gérer et exécuter des conteneurs OCI en mode racine ou sans racine. C'est une alternative à Docker, mais le moteur de conteneur podman est léger. Vous pouvez l'installer à l'aide de la commande suivante.

$ sudo dnf install podman

Vous pouvez également utiliser Podman Compose pour gérer et orchestrer plusieurs conteneurs.

Environnements de développement

La collaboration est un aspect essentiel du développement logiciel, et Fedora fournit plusieurs packages et IDE qui vous permettront de collaborer avec votre équipe.

IDE

Un environnement de développement intégré [IDE] aide les développeurs à chaque étape du cycle de développement logiciel. Un IDE de choix peut dépendre d'un langage de programmation, de la plate-forme que vous utilisez ou des ressources disponibles. Fedora fournit plusieurs packages IDE tels que Eclipse, Sublime-text, Microsoft Visual Studio, l'éditeur de texte Atom et bien d'autres. Chaque développeur a un IDE préféré.

Eclipse IDE

Eclipse est un IDE multilingue complet pour gérer le cycle de vie de votre développement logiciel. Vous pouvez rapidement démarrer un nouveau projet, travailler sur des projets existants ou surveiller et optimiser des applications. De plus, vous pouvez également rédiger une documentation élégante, interagir avec d'autres systèmes de suivi des problèmes ou CI depuis l'intérieur de l'IDE Eclipse.

Installez le package Eclipse :

$ sudo dnf install eclipse
IDE Arduino

Arduino est une plate-forme matérielle populaire et fiable. Malheureusement, vous ne pouvez pas exécuter le système d'exploitation Fedora sur les cartes Arduino. Cependant, vous pouvez utiliser Fedora pour développer des applications et des projets pour Arduino.
Vous pouvez installer l'IDE graphique Arduino avec la commande suivante :

$ sudo dnf installer arduino
Vagabond

Vagrant est l'un des outils indispensables pour les développeurs. Il vous permet de créer des environnements de développement reproductibles et portables. Il fonctionne en plus de certaines technologies de virtualisation ou de conteneurisation telles que VirtualBox, Docker et libvirt.

Vagrant avec VirtualBox
Pour utiliser Vagrant avec VirtualBox dans Fedora 35, installez le paquet vagrant avec la commande suivante :

$ sudo dnf install vagabond

Notez que Vagrant est livré avec un support intégré pour VirtualBox. Cependant, vous devez installer VirtualBox séparément car il ne fait pas partie des packages Fedora.

Vagrant avec Docker
Pour utiliser Vagrant avec Docker, installez les packages vagrant et docker avec la commande suivante :

$ sudo dnf install docker vagabond

Démarrer le service docker :

$ sudo systemctl start docker

Notez que Vagrant est livré avec une prise en charge intégrée et que vous pouvez utiliser Docker à la fois en tant que fournisseur et en tant qu'approvisionneur.

Packager, déployer et distribuer des applications

La joie d'un développeur est de déployer et de distribuer des logiciels, et c'est encore plus enthousiaste lorsque le logiciel est open source. Fedora 35 fournit une excellente plate-forme et des outils pour empaqueter, déployer et distribuer des logiciels. Voici quelques avantages de l'emballage :

  • Le code, les données, les fichiers de configuration et les scripts de post-installation sont regroupés.
  • Vous pouvez signer des packages qui garantissent que les utilisateurs peuvent vérifier que le package n'a pas été modifié.
  • Il facilite l'installation, la mise à niveau ou la suppression d'applications.
  • Vous pouvez normaliser les chemins d'installation.

Emballage RPM

L'empaquetage RPM vous permet d'empaqueter des applications et de les expédier à des systèmes basés sur RPM.
Exécutez la commande suivante pour installer et configurer l'empaqueteur fedora.

$ sudo dnf install fedora-packager rpmdevtools gcc$ rpmdev-setuptree

Pour en savoir plus, consultez la documentation RPM officielle.

Service de création de coprs

Copr est un service de génération automatique facile à utiliser qui crée des applications en tant que RPM et vous fournit un référentiel de packages DNF/Yum en sortie. Par conséquent, vous devez disposer d'un RPM source (provenant du package RPM) avant de commencer à utiliser le service Copr. Notez que vous ne pouvez utiliser Copr que pour les projets FOSS (Free Open Source Software).

OuvrirMaj

OpenShift Origin est une distribution de Kubernetes qui peut être utile aux développeurs pour gérer le développement continu d'applications et les déploiements multi-locataires. Il ajoute des outils de développement en plus de Kubernetes pour permettre un développement rapide, un déploiement facile, une mise à l'échelle et une maintenance à long terme du cycle de vie pour toutes les tailles de votre équipe.

Conclusion

Les éditions Fedora fournissent un ensemble complet d'outils et de packages. Avec sa philosophie "Liberté", un développeur de logiciels a l'embarras du choix pour les packages, les IDE de développement, la virtualisation, les outils de conteneurisation ou les outils de déploiement. L'article présente certains des outils que j'utilise pour développer, empaqueter et déployer des applications.


Fedora
  1. Quoi de neuf dans la station de travail Fedora 27

  2. Nouvelles fonctionnalités dans Fedora 26

  3. Fedora 23 est sortie ! Quoi de neuf ?

  4. 10 pépites du Cloud Computing Stats 2015

  5. Migrer vers le Rackspace Cloud depuis Amazon Web Services

Comment mettre à niveau vers Fedora 26 à partir de Fedora 25

Quoi de neuf dans la station de travail Fedora 32

Revue de Fedora 33 :Quoi de neuf et comment mettre à jour

Comment passer de Fedora 32 à Fedora 33

Comment mettre à niveau vers Fedora 35 à partir de Fedora 34

Authentification multifacteur depuis le panneau de configuration du cloud