GNU/Linux >> LINUX-Kenntnisse >  >> Fedora

Fedora 35 – Was ist neu aus Entwicklersicht

Die offizielle stabile Version für Fedora 35 wurde am 2. November 2021 zum Download bereitgestellt, nachdem sie verschoben wurde, um einige ausstehende Blockierungsfehler zu beheben. Das Warten hat sich jedoch gelohnt! Der Release-Zyklus umfasst Fedora Server, Spins, IoT und Fedora Labs mit kuratierten Softwarepaketen, um Nischenanforderungen gerecht zu werden. Darüber hinaus bietet es GNOME 41, aktualisierte Entwicklertools, neue Programmiersprachen, Energieverwaltungsprofile, verbesserte Softwareverwaltung anderer Apps von Drittanbietern.

Dieser Artikel ist ein Einblick eines Softwareentwicklers in neue Funktionen, Entwicklungstools, Fedora Labs und Verbesserungen in Fedora Linux 35.

Einblick eines Entwicklers in Fedora 35

Sie können Fedora Workstation 35 von der offiziellen Website herunterladen oder Ihr vorhandenes Betriebssystem über das Terminal mit dnf system-upgrade oder GNOME Software aktualisieren.

Linux-Kernel 5.14

Der neueste Release-Zyklus von Fedora 35 enthält den neuen Linux 5.14-Kernel. Es enthält viele ARM-spezifische Verbesserungen, hauptsächlich in Bezug auf GPUs (Unterstützung auf AMD Radeon-Grafikkarten) und eine verbesserte Unterstützung für USB 4.

Fedora 35-Editionen

Fedora 35-Workstation

Getreu den Fedora-Grundlagen „Freedom“, „First“, „Features“ und „Friends“ enthält die Version das neue GNOME 41, aktualisierte Programmiersprachen und Entwicklertools für Ihre Softwareentwicklungsanforderungen. Wenn Sie Fedora für tägliche Aufgaben verwenden, bietet es auch neue Energieverwaltungsprofile, Kindersicherung und Verbesserungen bei der Verwaltung anderer Apps von Drittanbietern. Lesen Sie unseren Artikel zu den „Top-Neuheiten in Fedora 35 Workstation“, um mehr zu erfahren.

Fedora IoT

Fedora IoT [Internet of Things] Edition ist ein unveränderliches Betriebssystem mit atomaren Updates. Es wird mithilfe der OTree-Technologie implementiert. Sie können es für IoT-Ökosysteme für kleine Heimprojekte, große Industrieprojekte oder Analysen mit KI/ML verwenden.

Entwickler von IoT-Systemen können Fedora IoT auch nutzen, um containerorientierte Workflows zu erstellen. Im Wesentlichen können Sie Anwendungen mit integrierter Open Container Initiative (OCI)-Image-Unterstützung erstellen, bereitstellen und verwalten, indem Sie Podman oder containerisierte Anwendungen aus öffentlichen Registrierungen verwenden.

Fedora IoT verfügt über das Greenbolt-Check-Framework für systemd, um sicherzustellen, dass Ihr System im gewünschten Zustand startet. Mit Blick auf die Sicherheit können Entwickler die Unterstützung für SecureBoot, TPM2 und die automatische Speicherentschlüsselung mit Clevis genießen. Es bietet auch Unterstützung für mehrere Architekturen wie x86_64-, aarch64- und armhfp-Prozessoren. Darüber hinaus gibt es Unterstützung für die webbasierte Bereitstellung durch das Ignition-Bereitstellungsdienstprogramm und den Zezere-Webdienst. Daher können Sie Ihre Fedora IoT-Umgebung bereitstellen, verwalten und skalieren, ohne eine physische Konsole zu benötigen. Sie können Fedora IoT von seiner offiziellen Seite herunterladen.

Fedora Kinoite

Fedora Kinoite ist das neueste Mitglied der Fedora-Familie. Diese Neuauflage basiert auf den zugrunde liegenden Technologien von Fedora Silverblue (Fedora Linux, rpm-ostree, podman). Es verfügt standardmäßig über einen KDE-Plasma-Desktop.

Das Fedora-Projektteam beschreibt Fedora Kinoite als Betriebssystem der nächsten Generation. Damit können Sie Ihre tägliche Arbeit erledigen, im Internet surfen, Dateien verwalten und produktiv werden, ohne sich Gedanken über eine Beschädigung Ihres Systems machen zu müssen.

Erfahren Sie mehr über das Projekt auf der offiziellen Homepage von Fedora Kinoite oder laden Sie entweder die X86_64- oder AArch64-Architektur herunter.

Fedora 35 Cloud-Basis-Images

Fedora Cloud bietet verschiedene Images, die in privaten und öffentlichen Cloud-Infrastrukturen verwendet werden können. Dieser Release-Zyklus beinhaltet die Einführung der Hybrid-BIOS+UEFI-Boot-Unterstützung. Wenn UEFI nicht funktioniert, haben Sie als Fallback immer noch Legacy-BIOS-Unterstützung.

Btrfs ist jetzt das Standarddateisystem für Fedora Cloud. Btrfs wurde als Standarddateisystem in Fedora Workstation 34 eingeführt und wird in Fedora-Editionen zunehmend angenommen. Sie können die Vorteile der transparenten Komprimierung nutzen, um Speicherplatz im Dateisystem und andere Funktionen von Btrfs zu sparen.

Der Release-Zyklus von Fedora 35 umfasst die folgenden Cloud-Basis-Images:

  • Cloud Base – Ein minimales Fedora-Image zum Erstellen universeller virtueller Maschinen (VMS). Es sind nur minimale Pakete erforderlich, um in jeder Cloud-Umgebung ausgeführt zu werden.
  • Vagrant Images – Umfasst Vagrant Boxes-Images sowohl für die Cloud-Basis als auch für Atomic. Sowohl VirtualBox als auch libvirt werden vom VirtualBox-Image und den libvirt/KVM-Images unterstützt. Wenn Sie Vagrant auf Fedora verwenden, ist das libvirt/KVM-Image ideal für Ihre Bereitstellungen.
  • Atomic Image – ein Atomic Image ist eine leichtgewichtige, unveränderliche Plattform zum Ausführen von containerisierten Anwendungen oder in jeder privaten oder öffentlichen Cloud-Umgebung.
  • Docker-Image – Das Fedora Cloud-Team stellt das neueste Fedora-Image für Docker bereit, das Sie über Docker-Pull-Fedora erhalten können.
  • Cloud Base Images für Google Cloud Platform (GCP) – Das Image ist für die Ausführung auf der GCP konfiguriert.
  • Cloud Base Images für Amazon Public Cloud bietet x86_64-AMIs und aarch64-AMIs-AMIs zum Starten in Ihrem Amazon Web Services-Konto.

Fedora 35 Labs

Fedora Labs ist eine Sammlung von Apps, Linux-Paketen und Inhalten, die in einem Image gebündelt sind, um Nischenanforderungen gerecht zu werden. Fedora Labs umfassen Astronomy, Comp Neuro, Design Suite, Python Classroom, Scientific, Security Lab, Games, JAM, Robotics Suite.

Python-Klassenzimmer

Python-Ausbilder oder Lehrer können Fedora Python Classroom Lab verwenden, um Demonstrationen in Klassenzimmern oder Workshops zu unterrichten oder zu präsentieren. Das Betriebssystem wird mit vorinstallierten Paketen wie Python, IPython, Jupyter Notebook, tox, virtualenvs, git und vielen mehr gebündelt.

Fedora Python Classroom Lab ist entweder als GNOME-Desktop oder als Headless-Umgebung für Vagrant oder Docker erhältlich. Sie können es im grafischen Modus mit GNOME ausführen oder es mit Vagrant virtualisieren oder in einem Docker-Container ausführen, je nachdem, was zu Ihrer Architektur passt.

Fedora Scientific Labs

Fedora Scientific Lab wird mit wesentlichen wissenschaftlichen, numerischen Open-Source-Anwendungen, Tools und Bibliotheken ausgeliefert. Die Pakete enthalten Bibliotheken und Tools wie die GNU Scientific Library, die SciPy-Bibliotheken. Werkzeuge zum Setzen, Schreiben und Veröffentlichen. Grafikprogramme wie Inkscape. Das aktuelle Fedora 35 Scientific Lab enthält eine Reihe von Paketen wie eine IDE, Bibliotheken für die Programmierung in Python, C, C++, Java und R.

Fedora Design Suite Labs

Fedora Design Suite Labs ist eine Desktop-Umgebung mit vorinstallierten kostenlosen Open-Source-Multimedia-Produktions- und Veröffentlichungstools, die von Designern für Designer erstellt wurden. Es enthält Ihre bevorzugten Tools und Programme zum Erstellen von Grafiken, Desktop-Hintergründen, CD-Hüllen, Webseitendesigns, Flyern oder App-Oberflächen.

Sie können es für verschiedene Funktionen wie Dokumentveröffentlichung, Vektor- und Bitmap-Bearbeitung, 3D-Modellierung oder Fotoverwaltung verwenden. Darüber hinaus können Sie jederzeit viele weitere Apps aus den umfangreichen Linux-Paketen installieren.

Wenn Sie ein Astronom oder ein Enthusiast sind, möchten Sie vielleicht die Astronomielabors von Fedora ausprobieren. Ein Spieler kann das Games Lab installieren, Audio-Enthusiasten und Musiker, die Audio und Musik unter Linux erstellen, bearbeiten und produzieren möchten, können die Fedora Jams Labs verwenden. Im Grunde gibt es „fast“ alles für Ihren Nischenbedarf. Weitere zusätzliche Labs sind Comp Neuro, Security und Robotics Suite.

Entwicklertools herunterladen

Selbstverständlich. Fedora ist ein Betriebssystem, das von Entwicklern für Entwickler entwickelt wurde. Fedora 35 bietet einige der besten Programmierwerkzeuge, aktualisierte Programmiersprachen und Datenbanken. Außerdem finden Sie Tools für die Zusammenarbeit, mit denen Sie Ihre Projekte vom Start bis zur Bereitstellung und Verteilung verwalten können.

Programmiersprachen

Fedora 35 bietet Entwicklern neue Programmiersprachen, Systembibliotheksaktualisierungen, zugrunde liegende Paketaktualisierungen und Toolchain-Aktualisierungen. Die folgenden Programmiersprachen sind in Fedora 35 gebündelt.

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

Fedora bietet eine einfache und zuverlässige Plattform zum Verwalten von Projekten, ob Befehlszeilen-Apps, Web-Apps, Desktop-Apps oder Hardwaregeräteprojekte mit Raspberry Pi oder Arduino.

.NET-Plattform

Wenn Sie die .NET-Plattform für die Entwicklung verwenden, stehen .NET Core und Mono zur Installation auf Fedora zur Verfügung. Erstellen von Anwendungen mit den Programmiersprachen C#, F# oder VB.NET. Sie können .NET Core und Mono mit den folgenden einfachen Schritten installieren.

.NET Core

.NET Core ist eine modulare, plattformübergreifende Open-Source-Plattform für jede allgemeine Entwicklung. .NET Core ist in Fedora gepackt, und Sie können das neueste SDK mit dem folgenden Befehl installieren:

$ sudo dnf install dotnet
Mono

Mono ist eine kostenlose Open-Source-Implementierung des .NET Framework. Sie können Mono mit dem folgenden Befehl installieren:

$ sudo dnf install mono-devel
Python

Python ist eine interpretierte, objektorientierte, höhere Programmiersprache. Python 3 ist bereits auf Fedora 35 mit vielen beliebten Paketen für Python vorinstalliert.
Um Python auszuführen oder die installierte Version zu überprüfen, öffnen Sie Ihr Terminal und geben Sie den Befehl Python oder python3 ein.

Virtuelle Umgebungen verwenden

Wenn Sie an Softwareentwicklungsprojekten arbeiten, können virtuelle Umgebungen Konflikte begrenzen, indem sie Abhängigkeiten an einem Ort bündeln. Sie können sie für Projekte verwenden, die verschiedene Versionen eines Moduls benötigen.

Verwenden Sie den folgenden Befehl, um eine virtuelle Umgebung zu erstellen.

$ python -m venv web_project_venv

Der Projektname lautet web_project_venv und enthält Python und Pip. Sie können pip verwenden, um andere Abhängigkeiten in Ihrer virtuellen Umgebung zu installieren.
Um in der virtuellen Umgebung zu arbeiten, müssen Sie sie mit dem folgenden Befehl aktivieren.

$ source web_project_venv/bin/activate

Wenn Sie die virtuelle Umgebung aktivieren, können Sie Module über Pip installieren.

(web_project_venv) $ python -m pip install module_name

Sie können die virtuelle Umgebung deaktivieren.

(web_project_venv) $ deactivate
Fortran

Fortran ist eine allgemeine, imperative Programmiersprache, die für numerische Berechnungen und wissenschaftliche Berechnungen geeignet ist. Um Fortran in Fedora 35 zu verwenden, müssen Sie den gfortran-Compiler installieren, da Fortran eine kompilierte Sprache ist.
Um den gfortran-Compiler zu installieren, verwenden Sie den folgenden Befehl.

$ sudo dnf install gcc-gfortran

Welche Sprache Sie auch immer für die Entwicklung verwenden, Fedora bietet Pakete für andere Sprachen wie C, C++, Go, Java, Node.js, PHP, Haskell, Perl, R, Rust, Ruby und viele mehr.

Datenbanken

Fedora 35 bietet eine zuverlässige Plattform und Pakete zum Installieren und Verwalten von Datenbank-Engines. Sie können Datenbank-Engines wie MariaDB (ein Drop-in-Ersatz für MySQL), SQLite, Cassandra, PostgreSQL, SQLite, Redis, MongoDB (dokumentenorientierte/NoSQL-Datenbank) und viele mehr installieren.

PostgreSQL

PostgreSQL ist ein fortschrittliches objektrelationales Datenbankmanagementsystem (DBMS). Fedora 35 bietet einen vollständigen Paketsatz für PostgreSQL-Client und -Server, serverkompatible Plug-Ins und Datenbankkonnektoren.
Um mit PostgreSQL in Fedora zu beginnen, können Sie es mit den folgenden Befehlen installieren und konfigurieren.

$ 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

Wenn Sie unterwegs nicht weiterkommen, können Sie jederzeit den Hilfebefehl verwenden.

Apache Cassandra

Apache Cassandra ist ein Open-Source-Datenbankserver für hochskalierte Anwendungen. Seine lineare Skalierbarkeit und Fehlertoleranz auf handelsüblicher Hardware oder Cloud-Infrastruktur machen es zur perfekten Wahl für unternehmenskritische Daten. Die Datenbank verwendet die Cassandra Query Language (CQL), die SQL relativ nahe kommt.

Führen Sie die folgenden Befehle aus, um Cassandra auf Fedora 35 zu installieren und zu initialisieren.

$ sudo dnf install cassandra cassandra-server # install Apache Cassandra client/server
$ sudo systemctl start cassandra # initialize Cassandra server

Aktivieren Sie Cassandra, um beim Booten ausgeführt zu werden:

$ sudo systemctl enable cassandra
$ cqlsh # run Cassandra client tool
NEBENBEI:
A group of whales is called a pod.

Container in Fedora 35 verwalten

Container ermöglichen es Entwicklern, Anwendungen zusammen mit Abhängigkeiten zu verpacken und sie überall auszuführen. Container ermöglichen es Ihnen, Kernbetriebssystemaktualisierungen von Anwendungsaktualisierungen zu trennen. Sie können auch verschiedene Versionen von Anwendungen testen und bereitstellen. Das Fedora-Projektteam stellt Fedora IoT und Fedora CoreOS bereit, die zuverlässige Unterstützung für containerorientierte Arbeitsabläufe bieten.

Fedora CoreOS

Laut dem Fedora-Projektteam ist Fedora CoreOS ein sich automatisch aktualisierendes, minimales Betriebssystem, das für die sichere und skalierbare Ausführung containerisierter Workloads entwickelt wurde. Das Betriebssystem ermöglicht es Ihnen, Anwendungen als Container auszuführen. Sie können auch zusätzliche Pakete mit dem Tool rpm-ostree installieren, das Änderungen atomar über das Basis-Image schichtet.
Sie können Fedora CoreOS von seiner offiziellen Download-Seite herunterladen.

Docker

Docker ist eine hervorragende Plattform für Entwickler, um Anwendungen in Containern zu entwickeln, zu versenden und auszuführen. Mit Docker können Sie Anwendungen schnell zusammenstellen und Ihren Code so schnell wie möglich testen und in der Produktion bereitstellen. Sie können das Paket docker-ce mithilfe des Docker-Repositorys in Fedora 35 mit den folgenden Schritten installieren.
Installieren Sie das Paket dnf-plugins-core:

$ sudo dnf install dnf-plugins-core

Fügen Sie das Docker-ce-Repository hinzu:

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

Installieren Sie die Docker-Engine:

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

Starten Sie den Docker-Dienst:

$ sudo systemctl start docker

Erfahren Sie mehr über Docker-Installationstipps und -tricks in Fedoras Dokumentation zu den ersten Schritten mit Docker.
Sie können auch Docker Compose ausprobieren, ein Tool zum Orchestrieren mehrerer Container.

Podmann

Podman ist eine Daemon-lose Container-Engine zum Entwickeln, Verwalten und Ausführen von OCI-Containern im Root- oder Rootless-Modus. Es ist eine Alternative zu Docker, aber die Podman-Container-Engine ist leichtgewichtig. Sie können es mit dem folgenden Befehl installieren.

$ sudo dnf install podman

Sie können Podman Compose auch verwenden, um mehrere Container zu verwalten und zu orchestrieren.

Entwicklungsumgebungen

Zusammenarbeit ist ein wesentlicher Aspekt der Softwareentwicklung, und Fedora bietet mehrere Pakete und IDEs, die es Ihnen ermöglichen, mit Ihrem Team zusammenzuarbeiten.

IDEs

Eine integrierte Entwicklungsumgebung (IDE) unterstützt Entwickler in jedem Schritt des Softwareentwicklungszyklus. Die Wahl der IDE kann von einer Programmiersprache, der von Ihnen verwendeten Plattform oder den verfügbaren Ressourcen abhängen. Fedora bietet mehrere IDE-Pakete wie Eclipse, Sublime-text, Microsoft Visual Studio, Atom-Texteditor und viele mehr. Jeder Entwickler hat eine Lieblings-IDE.

Eclipse-IDE

Eclipse ist eine voll funktionsfähige, mehrsprachige IDE zur Verwaltung Ihres Softwareentwicklungslebenszyklus. Sie können schnell ein neues Projekt starten, an bestehenden Projekten arbeiten oder Anwendungen überwachen und optimieren. Darüber hinaus können Sie innerhalb der Eclipse-IDE auch elegante Dokumentationen schreiben und mit anderen Issue-Tracking-Systemen oder CI interagieren.

Installieren Sie das Eclipse-Paket:

$ sudo dnf install eclipse
Arduino-IDE

Arduino ist eine beliebte und zuverlässige Hardwareplattform. Leider können Sie das Fedora-Betriebssystem nicht auf Arduino-Boards ausführen. Sie können Fedora jedoch zum Entwickeln von Anwendungen und Projekten für Arduino verwenden.
Sie können die grafische Arduino IDE mit dem folgenden Befehl installieren:

$ sudo dnf install arduino
Landstreicher

Vagrant ist eines der unverzichtbaren Tools für Entwickler. Damit können Sie reproduzierbare und portable Entwicklungsumgebungen erstellen. Es funktioniert auf einigen Virtualisierungs- oder Containerisierungstechnologien wie VirtualBox, Docker und libvirt.

Vagrant mit VirtualBox
Um Vagrant mit VirtualBox in Fedora 35 zu verwenden, installieren Sie das Vagrant-Paket mit dem folgenden Befehl:

$ sudo dnf install vagrant

Beachten Sie, dass Vagrant über eine integrierte Unterstützung für VirtualBox verfügt. Sie müssen VirtualBox jedoch separat installieren, da es nicht Teil der Fedora-Pakete ist.

Vagrant mit Docker
Um Vagrant mit Docker zu verwenden, installieren Sie die Vagrant- und Docker-Pakete mit dem folgenden Befehl:

$ sudo dnf install vagrant docker

Docker-Dienst starten:

$ sudo systemctl start docker

Beachten Sie, dass Vagrant über integrierte Unterstützung verfügt und Sie Docker sowohl als Provider als auch als Provisioner verwenden können.

Paketbereitstellung und Verteilung von Anwendungen

Die Freude eines Entwicklers ist das Bereitstellen und Verteilen von Software, und es ist noch enthusiastischer, wenn die Software Open Source ist. Fedora 35 bietet eine großartige Plattform und Tools zum Packen, Bereitstellen und Verteilen von Software. Einige Vorteile der Verpackung sind:

  • Code, Daten, Konfigurationsdateien und Skripte nach der Installation werden zusammen gebündelt.
  • Sie können Pakete signieren, die sicherstellen, dass Benutzer überprüfen können, ob das Paket nicht geändert wurde.
  • Es ermöglicht eine einfache Installation, Aktualisierung oder Entfernung von Apps.
  • Sie können Installationspfade standardisieren.

RPM-Verpackung

Mit RPM-Packaging können Sie Anwendungen paketieren und an RPM-basierte Systeme senden.
Führen Sie den folgenden Befehl aus, um den Fedora-Packager zu installieren und einzurichten.

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

Weitere Informationen finden Sie in der offiziellen RPM-Dokumentation.

Copr Build Service

Copr ist ein benutzerfreundlicher automatischer Build-Service, der Anwendungen als RPM erstellt und Ihnen als Ausgabe ein DNF/Yum-Paket-Repository zur Verfügung stellt. Daher müssen Sie über ein Quell-RPM (aus dem RPM-Paket) verfügen, bevor Sie den Copr-Dienst verwenden können. Beachten Sie, dass Sie Copr nur für FOSS-Projekte (Free Open Source Software) verwenden können.

OpenShift

OpenShift Origin ist eine Distribution von Kubernetes, die sich für Entwickler als nützlich erweisen kann, um die kontinuierliche Anwendungsentwicklung und mandantenfähige Bereitstellungen zu verwalten. Es fügt Entwicklertools zu Kubernetes hinzu, um eine schnelle Entwicklung, einfache Bereitstellung, Skalierung und langfristige Lebenszykluswartung für Teams jeder Größe zu ermöglichen.

Abschluss

Fedora-Editionen bieten einen umfangreichen Satz von Tools und Paketen. Mit seiner „Freedom“-Philosophie hat ein Softwareentwickler die Qual der Wahl für Pakete, Entwicklungs-IDEs, Virtualisierungs-, Containerisierungs- oder Bereitstellungstools. Der Artikel stellt einige der Tools vor, die ich zum Entwickeln, Packen und Bereitstellen von Anwendungen verwende.


Fedora
  1. Was ist neu in Fedora 27 Workstation

  2. Fedora 23 veröffentlicht! Was gibt's Neues ?

  3. Fedora vs. Ubuntu:Was sind die Hauptunterschiede?

  4. 10 Nuggets aus den Cloud-Computing-Statistiken 2015

  5. Was macht Rackspace in der Cloud?

So aktualisieren Sie von Fedora 25 auf Fedora 26

Was ist neu in Fedora 32 Workstation

Fedora 33 Review:Was ist neu und wie man aktualisiert

So aktualisieren Sie von Fedora 32 auf Fedora 33

So aktualisieren Sie von Fedora 34 auf Fedora 35

Multifaktor-Authentifizierung aus dem Cloud Control Panel