Dark Moon X est un sous‐système UNIX libre tournant sous Windows et basé sur le noyau de Dark Moon v1.0.2 utilisant la bibliothèque Cygwin.dll. Il est maintenu par Mehdi Boutayeb Ferkatou sous licence GNU GPL v2 pour architecture x64.
Présentation
Dark Moon est une grande collection d’outils GNU portés sur Windows et gérée par la DLL de Cygwin. Auparavant, pour interagir avec ces outils, il fallait passer par l’invite de commande Windows pour exécuter bash.exe
. La nouvelle version intègre CygwinX, il est possible de lancer un Xfce 4 entier et d’utiliser des outils graphiques.
Sommaire
- Windows Subsystem for Linux (WSL) et Dark Moon
- Dark Moon et Cygwin
- Ajouter des commandes
- Fonctionnalités
La différence avec le noyau v1.0.2 édité en 2018 est que l’utilisateur n’a plus à travailler sur le CMD trop basique de Windows, mais peut maintenant travailler sur un environnement graphique complet et sur une console plus intuitive. On observe un temps d’exécution quasi instantané du système, alors qu’auparavant il fallait patienter le temps que les auto‐extracteurs de fichiers CAB Windows démarrent l’extraction dans le répertoire temporaire.
Windows Subsystem for Linux (WSL) et Dark Moon
Dark Moon et WSL sont deux systèmes indépendants mais ces derniers ne sont pas incompatibles :
WSL 2 est un noyau Linux natif intégré à Windows qui nécessite Hyper-V pour virtualiser Linux à très bas niveau (WSL 1 étant une utilisation du sous‐système Linux de Windows développé à la base pour faire tourner des applications Android), tandis que Dark Moon est un ensemble d’outils du projet GNU recompilés en binaire Windows et reproduisant le comportement d’un système UNIX à très bas niveau avec la DLL de Cygwin, sans pour autant avoir recours à la virtualisation.
Cela signifie que, lors de la compilation d’un programme, ce dernier génèrera du binaire Windows (*.exe
). Cependant il est possible de compiler le programme en binaire Linux ELF64 et de l’exécuter dans le sous‐système WSL.
De nombreux paquets ont été intégrés par défaut, notamment GCC, Rsync, ou encore Gedit (liste complète sur le site du projet Dark Moon), mais il est possible d’obtenir d’autres paquets via Wget et Git en se connectant sur des sites miroirs de Cygwin et sur des dépôts.
Dark Moon et Cygwin
Le fonctionnement de Dark Moon est centré autour de cygwin.dll
pour émuler les comportements d’un système UNIX. Cependant, le noyau de Dark Moon est portable et permet de « fournir un environnement de développement ainsi qu’un émulateur UNIX cloisonnés dans un exécutable apportant une mobilité au logiciel, permettant d’exécuter l’application sur n’importe quel système Windows ».
« Dark Moon : une distribution GNU/Cygwin portable pour Windows », sur LinuxFr.org.
La version Xfce de Dark Moon n’est fonctionnelle que pour Windows 10 à ce jour. Néanmoins, il est prévu de porter le serveur X.Org sur tous les systèmes Windows à l’avenir.
Dark Moon est la première et la seule distribution GNU/Linux à être à la fois indépendante de WSL de Microsoft et à être un portage d’outils GNU tournant avec la bibliothèque cygwin.dll
distribuée aux clients Windows 10 sur le Microsoft Store.
Ainsi, les utilisateurs ont la possibilité de consulter les fichiers de l’arborescence UNIX depuis le gestionnaire de fichiers afin d’y effectuer des modifications, et il est même possible de déplacer des fichiers dans une clé USB, ce qui n’est pas possible simplement avec Windows Subsystem for Linux de Microsoft pour le moment.
Le programme de déploiement est toujours présenté sous la forme d’un exécutable :
Microsoft Windows [version 10.0.17134.885]
(c) 2018 Microsoft Corporation. Tous droits réservés.
C:\Users\User>cd C:\Program Files\WindowsApps8318MBKlogiciel.DarkMoonX_1.0.0.0_x64__mdpxzc6tk7y0p
C:\Program Files\WindowsApps8318MBKlogiciel.DarkMoonX_1.0.0.0_x64__mdpxzc6tk7y0p>dir
Le volume dans le lecteur C s’appelle Windows
Le numéro de série du volume est 30A1-4BDD
Répertoire de C:\Program Files\WindowsApps8318MBKlogiciel.DarkMoonX_1.0.0.0_x64__mdpxzc6tk7y0p
07/08/2019 02:08 <DIR> .
07/08/2019 02:08 <DIR> ..
07/08/2019 02:08 <DIR> AI_STUBS
07/08/2019 02:08 438 684 AppxBlockMap.xml
07/08/2019 02:08 3 310 AppxManifest.xml
07/08/2019 02:08 <DIR> AppxMetadata
07/08/2019 02:08 5 427 AppxSignature.p7x
07/08/2019 02:08 <DIR> Assets
07/08/2019 02:08 384 795 776 DarkMoonX.exe
07/08/2019 02:08 8 192 Registry.dat
07/08/2019 02:08 4 216 resources.pri
6 fichier(s) 385 255 605 octets
5 Rép(s) 468 682 117 120 octets libres
Il est possible d’exécuter une session de Terminal depuis le CMD de Windows ainsi que depuis Powershell et vice versa. Il est également possible de faire la même chose depuis l’environnement graphique et console de DarkMoon en tapant cmd
et powershell
; il est donc possible de travailler dans l’arborescence de Dark Moon avec la ligne de commande Windows sur l’environnement Xfce, par exemple.
Bash lancé depuis cmd :
Microsoft Windows [version 10.0.17134.885]
(c) 2018 Microsoft Corporation. Tous droits réservés.
C:\Users\User>cd c:/Linux
c:\Linux>start_linux
[1].Start an XFCE session
[2].Start terminal
[3].Exit DarkMoon
#####
#######
# ##O#O##
###### ### #VVVVV#
## # ## VVV ##
## ### ### #### ### ### ##### ##### # ##
## # ## ### ## ## ## ## ## # ##
## # ## ## ## ## ## ### # ###
## ### ## ## ## ## ### QQ# ##Q
## # ### ## ## ## ## ## ## QQQQQQ# #QQQQQQ
## ## ### # ## ## ### ### ## ## QQQQQQQ# #QQQQQQQ
############ ### #### #### #### ### ##### ##### QQQQQ#######QQQQQ
DARK MOON X for Microsoft Windows (c) UWP. GNU licensed project
2
User@MSI ~
$
cmd
lancé depuis Bash :
User@MSI ~
$ cmd
Microsoft Windows [version 10.0.17134.885]
(c) 2018 Microsoft Corporation. Tous droits réservés.
C:\Linux\home\User>
Ajouter des commandes
Démonstration pour installer la commande apt-cyg
via wget
(récupéré depuis la page GitHub de DarkMoon) :
Les commandes telles que git
et wget
sont déjà présentes dans Dark Moon ; cependant, l’utilisateur à la possibilité d’installer la commande apt-cyg
:
Installez et lancez cyg-apt
:
- téléchargez
apt-cyg
avec la commandewget
:
$ wget https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg
Vous obtiendrez ceci :
--2019-07-26 20: 19: 24-- https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg
Résolution de raw.githubusercontent.com (raw.githubusercontent.com)… 151.101.120.133
Connexion à raw.githubusercontent.com (raw.githubusercontent.com) | 151.101.120.133 |: 443… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille: 13765 (13K) [text / plain]
Sauvegarde en: «apt-cyg.1»
apt-cyg.1 100% [======================================== =======>] 13,44K --.- KB / s ds 0,03s
2019-07-26 20:19:25 (396 KB / s) - «apt-cyg.1» sauvegardé [13765/13765]
Après avoir téléchargé apt-cyg
, vous devez faire un chmod
:
chmod +x apt-cyg
Et finalement, vous devrez faire un mv
:
mv apt-cyg /usr/local/bin
Fonctionnalités
Voici les principales fonctionnalités pré‐embarquées sur Dark Moon UWP :
- Bash ;
- Xfce ;
- G++ (compilateur C++) ;
- GCC-Objc (compilateur Objective-C et ObjectiveC++) ;
- GCC-ADA (compilateur Ada) ;
- GCC-Fortran (compilateur Fortran) ;
- Python 3 ;
- TCL ;
- GTK+ ;
- Nano ;
- Gedit ;
- Vim ;
- OpenSSH ;
- OpenSSL ;
- Make ;
- Wget ;
- Git ;
- Xserver ;
- Zip ;
- Rsync ;
- Perl ;
- grep ;
- Midnight Commander ;
- Cygwin.dll ;
- TCP-IP.
Aller plus loin
- Site Web officiel de Dark Moon GNU (827 clics)
- Nouvelles de Dark Moon GNU sur Developpez.com (109 clics)
- Documentation de Dark Moon GNU (86 clics)
- Clip vidéo de présentation (95 clics)
# une distribution cygwin
Posté par Thomas Debesse (site web personnel) . Évalué à 10.
Je suis un peu gêné par le titre de la dépêche, car le produit présenté ne semble pas être pas un « sous-système Linux » tel le lecteur s’attend à trouver depuis que cette appellation est utilisée par Microsoft pour désigner une couche de compatibilité binaire avec les logiciels Linux.
Il me semble plus juste de parler de « distribution cygwin », Je reconnais que cela semble moins immédiat pour le néophyte de saisir que le projet vise à fournir un système familier pour les utilisateurs de Linux.
Mais sinon c’est une bonne chose d’avoir une distribution de ce type de distribution disponible dans le Windows Store, c’est d’ailleurs pour moi l’argument le plus important à côté d’un Cygwin ou d’un MSys2.
Cette phrase gagnerait beaucoup à être dans le chapo. Et là encore, si Dark Moon X est une « distribution linux », alors FreeBSD est une distribution Linux… ;-)
À propos de Cygwin la distribution et MSYS2, comparé à ces deux distributions quels sont les autres point forts de Dark Moon X en plus de la vocation à installer un bureau facilement et d’être disponible dans le store ?
Pour l’aspect « installer un bureau comme sous Linux », la copie d’écran est sympatoche et bien parlante !
ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: une distribution cygwin
Posté par Mehdi . Évalué à 1.
c'est l'aspect portable du noyau le principale avantage
[^] # Re: une distribution cygwin
Posté par Thomas Debesse (site web personnel) . Évalué à 3.
Ah oui, l’aspect portable est distinctif aussi, en effet.
(Même remarque sur PsychoFox sur le noyau).
ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: une distribution cygwin
Posté par Mehdi . Évalué à 1.
Quand je parle de noyau, je veux dire que je retrouve une arborescence de type unix avec les composants unix, peut-être que je n'ais-je pas été claire là dessus
[^] # Re: une distribution cygwin
Posté par Mehdi . Évalué à 2. Dernière modification le 04 septembre 2019 à 02:40.
Le titre a été modifié
# noyo
Posté par Psychofox (Mastodon) . Évalué à 1.
Pourquoi parler de noyau alors qu'il n'y en a pas ?
[^] # Re: noyo
Posté par Mehdi . Évalué à 1.
c'est un noyau basé sur de cygwin reproduisant le comportement d'un système linux
# remplacement du titre
Posté par Mehdi . Évalué à 2.
J'ai demandé le remplacement du nom par Dark Moon X, un sous-système Cygwin portable + XFCE sans WSL
[^] # Re: remplacement du titre
Posté par Pierre Jarillon (site web personnel) . Évalué à 5.
Modification faite…
# Pas mal mais...
Posté par valkyrie . Évalué à 6.
C'est bien de voir qu'une alternative à WSL est présente sur le Microsoft Store mais il faut bien faire la différence entre "Unix" et "Linux" parce que ça resemble à du linux mais c'est du Unix/Cygwin avec des commandes présentes sur Linux.
Après ça empêche pas au programme de faire son travail.
[^] # Re: Pas mal mais...
Posté par Mehdi . Évalué à 2.
j'ai demandé la modification du titre pour mettre Cygwin en avant à la place
# Questions
Posté par Graveen . Évalué à 7.
Bonjour, j'ai 3 questions:
Merci, et vraiment beau boulot !
[^] # Re: Questions
Posté par Mehdi . Évalué à 6.
Bonjour et Merci,
Comparé à WSL, avec du binaire Unix recompilé pour Windows oui, Dark Moon se montrera plus efficace pour exécuter certaines taches.
C'est un Xwin dédié à Dark Moon, c'est comme ça qu'il est préconçu, vous pouvez toujours coder un petit script pour faire autre chose avec.
Il serait par exemple préférable d'utiliser Dark Moon pour pouvoir porter le système portable sur une clé USB et pouvoir le lancer partout (sans le GUI) sur différents système Windows (Seven, vista, 8…) impensable avec WSL.
# Fichier texte ?
Posté par Anthony Jaguenaud . Évalué à 1. Dernière modification le 04 septembre 2019 à 15:14.
D’un côté avec le WSL, on a un Linux qui tourne, donc fichier texte au format UNIX, de l’autre, des fichiers au format, ça dépend… et les scripts incompatible entre un Linux et un cygwin sont-ils toujours de mise ?
Le WSL permet également de prendre un exécutable Linux et de l’exécuter. Ce n’est pas le cas de cygwin.
Le WSL n’a qu’un inconvénient, il n’y a pas de serverX intégré. Mais les solutions de contournement, n’ont plus lieu d’être àmha.
[^] # Re: Fichier texte ?
Posté par Psychofox (Mastodon) . Évalué à 1.
Le serveur X tu t'en branles un peu puisqu'il peut tourner en dehors du WSL. C'est plutôt si tu voulais faire tourner un truc wayland specific que ça peut coincer.
[^] # Re: Fichier texte ?
Posté par Anthony Jaguenaud . Évalué à 3.
Oui, mais quand je l’ai essayé sur le portable du boulot, j’ai installé kdevelop sans problème… je m’attendais à ce que ça marche out of box.
C’est juste une déception et un sentiment de pas terminé que je ne m’attendais pas à avoir de la part de microsoft.
[^] # Re: Fichier texte ?
Posté par Mehdi . Évalué à 2.
oui en effet
# Page Wikipedia du projet en demande de suppression
Posté par vpo . Évalué à 2. Dernière modification le 08 septembre 2019 à 19:22.
J'ai noté qu'il y a une page Wikipedia pour le projet (https://fr.wikipedia.org/wiki/Dark_Moon_GNU_Project).
Par contre quelqu'un vient de mettre un bandeau de demande de suppression considérant que le projet n'a pas de notoriété pérenne.
Ce qui est clair, c'est que l'article comporte des erreurs : l'auteur de l'article semble faire l'amalgame entre Linux et POSIX. Car dans ma compréhension, Dark Moon est plus une collection de logiciels compilés avec Cygwin pour avoir des outils dispo sur les systèmes Unix qu'un noyau Linux encapsulé et communiquant avec Windows.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.