Airyx : un système d'exploitation qui s'inspire de macOS
Pourquoi Airyx s'appuie-t-il sur BSD au lieu de Linux ? Selon l'équipe, en théorie, il sera plus facile de construire du code Mac sur FreeBSD, car il est plus proche de macOS que de Linux. Les noyaux BSD supportent également une interface d'appel système étrangère, ce qui devrait faciliter l'émulation des appels système Mach, et éliminer le besoin d'émuler les appels système BSD comme le fait Darling (sur Linux). Airyx place les éléments du système principalement dans /System, /Library, et /usr. L'arbre /usr/local est réservé aux ajouts de l'utilisateur (comme les paquets FreeBSD).
Les répertoires personnels des utilisateurs sont placés de manière appropriée dans /Users, et chacun dispose d'un dossier ~/Library pour les applications Cocoa. Zsh est le Shell système par défaut, comme c'est le cas sur les Mac dont Airyx s'inspire. En effet, Apple a remplacé Bash par Zsh (Z Shell) comme Shell par défaut depuis macOS Catalina sorti en 2019. Bash est toutefois toujours disponible. Les développeurs pourront continuer à utiliser par défaut, sur macOS Mojave et les versions antérieures, Bash comme interpréteur de ligne de commande pour le Shell de connexion et le Shell interactif.
À l'époque, Apple avait tout de même encouragé les développeurs à commencer à se familiariser avec Zsh qui est beaucoup plus moderne et interactif que Bash. Pour en revenir à Airyx, l'équipe note que les applications correctement empaquetées se trouvent généralement sous /Applications ou ~/Applications et sont construites sous la forme d'un paquet .app ou d'une AppImage. Les applications traditionnelles de type Unix sont installées dans des répertoires fixes comme d'habitude. Airyx fournit une implémentation de Cocoa (encore incomplète) et un runtime Objective-C moderne installés dans /System/Library/Frameworks.
Les compilateurs et les linkers ont été corrigés pour supporter les frameworks, et les arguments standard -F et -framework fonctionnent comme prévu. Le support des fichiers de projet XCode est prévu, mais des Makefiles de style BSD sont disponibles aujourd'hui pour construire facilement des Bundles .app et .framework. En outre, la prise en charge de Swift est également prévue sur la feuille de route. Les principaux objectifs de conception sont les suivants :
- la compatibilité des sources avec les applications macOS (c'est-à-dire que vous pouvez compiler une application Mac sur Airyx et l'exécuter) ;
- métaphores GUI similaires et UX familier (gestionnaire de fichiers, lanceur d'applications, barre de menu supérieure qui reflète l'application ouverte, etc.) ;
- Airyx est compatible avec les systèmes de fichiers macOS (HFS+ et APFS) et la disposition des dossiers (/Bibliothèque, /Système, /Utilisateurs, /Volumes, etc.) ;
- des applications autonomes dans des dossiers ou un seul fichier et une expérience (presque) sans installateur pour /Applications ;
- Airyx maintient principalement la compatibilité avec le système de base FreeBSD et X11 - un environnement Unix standard sous le capot ;
- Airyx est compatible avec les binaires Linux via le support Linux de FreeBSD ;
- l'équipe prévoit une compatibilité avec les binaires macOS x86-64 (Mach-O) et les bibliothèques ;
- l'OS se veut agréable à utiliser, sûr, stable, et performant.
Autres caractéristiques/fonctionnalités et objectifs
- barre de menu globale ;
- raccourcis clavier et menus cohérents ;
- installation et désinstallation d'applications par glisser-déposer - pas de gestionnaire de paquets, pas d'installateurs ;
- compatibilité source avec les API Cocoa ;
- commandes familières comme launchctl et open ;
- design fluide et élégant rappelant Aqua
- etc.
Une image d'aperçu d'Airyx pour les développeurs est actuellement disponible sur GitHub. Elle est ouverte à tous, mais l'équipe a déclaré qu'elle est principalement destinée aux développeurs qui aident à construire le système et n'est pas encore prête pour une utilisation quotidienne. Il est recommandé de l'exécuter dans une machine virtuelle, bien qu'elle devrait fonctionner sur tout matériel supporté par FreeBSD 12.2 avec au moins 4GB de RAM. (8GB est recommandé).
Source : Airyx, Référentiel GitHub du projet
Et vous ?
Que Pensez-vous du système d'exploitation Airyx ?
Voir aussi
Apple remplace Bash par Zsh comme Shell par défaut dans macOS Catalina à partir de la version bêta de la nouvelle mise à jour
Fish Shell, un Shell de ligne de commande intelligent et convivial pour les systèmes Unix. Est-il meilleur que Zsh ou Bash ?
Termux, un émulateur de terminal pour Android et une application en environnement Linux, qui fonctionne directement sans avoir besoin de rooter le smartphone
FreeBSD peut-il vraiment être considéré comme un système d'exploitation de bureau ? Si oui, comme OS desktop, pourquoi choisir Linux et non FreeBSD ?
Microsoft lance sa propre version de FreeBSD afin d'assurer un support et un SLA d'entreprise à ses clients exécutant l'image de FreeBSD dans Azure