Mise à jour de l'article : apparemment EEPLY va travailler (quand il aura le temps) sur l'ajout du support des derniers patchs des drivers GPU par la team Fail0verflow au noyau Linux (BzImage), soyez patients donc, c'est une question de temps que les corrections côté GPU au moins, arrivent ! (Issu du forum gbatemp)
Un simple remplacement de fichier sur la partition FAT32 fera l'affaire. ;-)
Bonjour à tous, comme vous avez dû suivre récemment, Eeply a apporté une contribution au noyau Linux avec le driver du pont Display Port => HDMI Panasonic MN864729, cette avancée nous permet enfin de profiter de la sortie vidéo des PS4 Slim et Pro sous Linux.
Dans ces conditions, je me suis m'y au travail, et malgré quelques déboires, j'ai pu en tirer de petite chose, c'est pourquoi je vous apporte une distribution prêt à l'emploi, basée sur ArchLinux, mais avec l'accessibilité d'une Ubuntu.
Voici une petite vidéo du boot de Manjaro Linux Gnome, sur une PS4 Pro avec Firmware 4.55 :
Pourquoi Manjaro ? Parce qu'est elle est à la fois simple à prendre en main, accessible, mais également très modulable, et avantage de taille, rolling release, ce qui signifie qu'elle est mise à jour en temps réel à mesure de la sortie de tous ses composants systèmes (pas de mise à jour à faire tous les X temps comme Ubuntu ou Fedora), mais aussi parce que, basée sur ArchLinux, elle apporte son lot d'outil dont le dépôt communautaire de scripts AUR.
Le système de dépôt Aur, communautaire, est très intéressant, il pourrait être le point d'entrée pour que n'importe qui apport sa contribution facilement pour Linux sur PS4 côté logiciel, via ce dépôt, quiconque peut proposer un script, qui va empaqueter automatiquement n'importe quel fichier/logiciel à partir de sources ou binaires pré-compilées. Il est ainsi possible de proposer des applications, des jeux, des fichiers de configuration, ou même... Un noyau Linux sur mesure, des pilotes customisés, etc.. Et le dépôt grouille déjà d'émulateurs, il est ainsi très simple de compiler automatiquement, les dernières révisions issues de github de nombreux émulateurs (RPCS3 y compris.).
Le processeur x86_64 d'AMD est également un très gros avantage de compatibilité avec l'univers PC, avec Linux sous PS4.
Vous pourrez apporter vos contributions au dépôt communautaire ici => https://aur.archlinux.org
Voici ce qu'apporte la distribution préconfigurée, de multiples solutions d'accès distantes ont été intégrées et activées par défaut pour faciliter débogage et apports :
-Noyau Linux 4.9 patché par Eeply pour le pont Panasonic MN864729
-Boot automatique sur Manjaro x64 (basé sur l'initramfs de la vieille version fedora PS4
-Dernières mises à jour incluses (19/03/2018)
-SSH activé par défaut, accès via un PC sur le même réseau local
-X2Go serveur (LXDE uniquement !) activé par défaut, accès local/distant à une session de bureau via X2Go client sous Linux ou Windows.
-Teamviewer 13 préinstallé. (Accès distant à session de bureau)
-Environnements de bureau Gnome, LXDE, Mate.
-Firefox, Thunderbird, Libreoffice, Gnote, Audacious, VLC, Smplayer, Kodi, Filezilla, XCFA, Handbrake.
-Des émulateurs : Fceux (NES) / Nestopia (NES) /Snes9X (Super Nes) / Yabause (Sega Saturn) /PCSXR (PsOne)/PCSX2 (PS2) /PCSSPP (PSP) /Redream Dreamcast) /Reicast (Dreamcast) / CEMU (WiiU)/ Dolphin (GameCube/Wii) / DesMume (Nintendo DS) / MGBA (Game boy/ Game Boy Advance)
-Steam
-Interpréteur Wine + PlayOnLinux, pour installer simplement des jeux et applications Windows sous Linux, sans émulation, nativement.
-Préconfiguration Azerty/Français intégrale.
-Intégration du logiciel Solaar pour le support des dongles Logitech unifying.
-Flatpak (intégration du système de paquetage universel, mais nécessité d'avoir des kernels-headers pour l'utiliser, en attente d'une contribution donc)
-Intégration de la gestion dynamique du swap (fichier d'échange), désactivé par défaut toutefois pour préserver la mémoire flash de vos clés USB, pour l'activez exécutez la commande "sudo systemctl enable swapspace && sudo systemctl start swapspace"
À propos des bugs et retours de bugs :
La distribution Manjaro en elle même n'a pas de soucis particuliers, tous les bugs rencontrés dépendent des 2 autres éléments, le payload permettant de charger le noyau Linux depuis OrbitOS-BSD (qu'il s'agisse de la version de la version de valentinbreiz ou vultra) , et ledit noyau Linux patché par Eeply qui lui va charger l'initramfs (une sorte de minuscule distribution très légère) qui via ses scripts, chargera ensuite une vraie distribution GNU (tous les éléments libres gravitants autour du noyau Linux, de l’environnement de bureau, les services, les API, logiciels, etc...)
En effet, les PayLoads de valentinbreiz et vultra sont assez instables lors du chargement initial, en moyenne, on retrouve plusieurs types de crashs/échecs avant de réussis à booter Linux et avoir quelque chose s'affichant à l'écran, très souvent on peut rencontrer un crash complêt de la PS4 avec vérification du disque dur, etc... Ou même, se retrouver avec un écran noir/éteint. Et Dans de rares cas, j'ai même rencontré un Freeze de l'OS de la PS4 au moment de charger Linux, ou le noyau d'Eeply qui ne charge pas la distribution tel qu'il est censé le faire..
Un autre bug, vient peut être du fait que ce soit une PS4 Pro et que le pilote proposé par Failoverfl0w n'ait pas été optimisé pour la dernière révision de l'APU d'AMD inclu dans cette version de la console, il y a de nombreux soucis du côté de la gestion des fréquences du GPU de l'APU, c'est pourquoi l'environnement de bureau sous Gnome saccade, de même la prise en charge des résolutions est encore limité au 1080P, quand bien même la sortie HDMI 2.0 devrait aussi bien gérer de la 4K que des résolutions exotiques en 21/9 (3440x1440 et 2560x1440).
De fait, en tout cas sur ma PS4 Pro, seul l'environnement de bureau GNOME avec serveur d'affichage Wayland et pilote graphique logiciel (LLVM) se lance, sous Mate, LXDE, avec Xorg, niet (par contre en accès distant via x2go aucun souci, on peut se servir sans aucun problème de la PS4 comme d'un serveur.)
Par ailleurs il n'y a aucun support du Wifi et du Bluetooth actuellement, ni du disque dur interne.
Tous ces bugs rencontrés, ne dépendront que des mises à jour apportées au PayLoad, et au noyau Linux (BzImage) intégré dans la première partition en FAT32, que le PayLoad va venir charger, ce sont les deux seuls éléments dont il faudra se soucier réellement pour corriger les problèmes, et ça sera à voir du côté d'Eeply et valentinbreiz et vultra.
Leurs github sont accessibles ici, c'est sur leurs github que vous devrez apporter vos contributions, commits, et retours de bugs, ou même forker leur code :
Eeply (noyau & sources Linux): https://github.com/eeply/ps4-linux/
Valentinbreiz (Payload loader noyau Linux): https://github.com/v...4-Linux-Loader/
Vultra (Payload loader Linux) : https://github.com/V...5-Linux-Loader/
Les apports de chacun :
Au niveau des apports, sachez que la virtualisation est supportée par l'APU AMD, donc théoriquement il est possible de pouvoir lancer VirtualBox. Mais ce dernier a besoin des kernel-headers (les sources) du noyau Linux de Eeply pour pouvoir compiler et charger son module (pilote) et être utilisable.
Il faudra donc qu'une âme charitable propose sur le dépôt communautaire AUR, un paquet intégrant proprement les sources dans un paquet "kernel-headers" tel que c'est fait pour les noyaux prévus pour PC, et pourquoi pas, une gestion des mises à jour du noyau au passage directement sur la partition contenant ce dernier (BzImage)
Sachez aussi que quel que soit l'accessoire USB que vous utiliserez, les pilotes que vous voudrez utiliser dépendront essentiellement de deux choses, leur intégration au noyau Linux fourni par Eeply, OU la disponibilité de kernel Headers (les sources du noyau proprement intégrées à la distribution) permettant à tout un chacun de rétro-porter n'importe quel pilote.
Enfin, sachez que le Noyau Linux étant libre et open source, il y a de bonnes chances qu'à termes, tous les apports d'Eeply soient intégré au noyau Linux lors du développement de version ultérieures, et une fois qu'un pilote est présent dans le noyau Linux... Il y reste !
Personne ne rencontrera donc les problèmes typiques de Linux sur PS3, avec un OtherOS bridant l'accès au GPU, une architecture peu courante et quasi à l'abandon et un support logiciel sur la durée pauvre. L'architecture PC de la PS4 joue en notre faveur, dans dix ans, il pourra toujours y avoir des mises à jour et un système Linux à jour, donc n'importe lequel de vos apports, sera fait pour durer !
De même, il serait utile et sympathique qu'un lecteur/contributeur fasse une traduction de cet article en anglais pour GBAtemp et PsHax
Téléchargements :
1er miroir : http://vavar60.online.fr/share/ps4/panasonic_MN864729/
2ème miroir : http://163.172.90.214/ps4linux/
Sources du noyau Linux par Eeeply contenant son patch pour le bridge Panasonic MN864729 => https://github.com/e...archive/1.0.zip
Pilote "radeon" modifié apportant le support du bridge (voir les modifications sur les fichiers ps4_bridge.c, radeon_connectors.c et radeon_encoders.c) => https://github.com/e.../gpu/drm/radeon
Sommes MD5 des fichiers :
PS4-Linux-Loader-4.55.bin : e71c6fcf2f5f61034801d929507a08b8
Manjaro-PS4-V1.7z.001 : 95296f03a3ca4faead4ec67a0c0f9f86
Manjaro-PS4-V1.7z.002 : a5b0bc8cdfadf701835a5d91c4e804a6
Manjaro-PS4-V1.7z.003 : b877a101ca2e36fd3cbfe4dbb619f6ea
Manjaro-PS4-V1.7z.004 : a705ff5bc6e399a761f693558d2818bb
Manjaro-PS4-V1.7z.005 : bf5950eed70067f0c57d8d160d39ae9a
Manjaro-PS4-V1.7z.006 : 930fb6b1377f2453a143a9a4d48a5ba0
Manjaro-PS4-V1.7z.007 : 2cacc3b5dc881d4827f17fd3239da567
J'ai découpé le fichier IMG avec 7zip pour permettre à ceux ayant de petites connexions d'avoir moins de problèmes, et propose deux miroirs pour les téléchargements.
Installation :
Le principe est le même que Fedora pour firmware 1.76, vous aurez besoin de copier bit à bit, le fichier image sur une clé USB ou un disque dur. Vous pouvez utiliser les outils "gnome-disk-utility" (interface graphique) sous Linux ou DD (en ligne de commande) ou coupler les deux, pour ce faire, vous pouvez même redimensionner la partition Linux ensuite avec Gparted, par exemple, si c'est sur un SSD ou HDD sur port USB 3.0
Attention, la première partition du disque doit toujours être celle en FAT32 contenant le noyau Linux chargé par le Payload, et l'initramfs chargé par le noyau Linux, ensuite vous devez avoir la partition contenant Manjaro, et si vous le souhaitez, vous pouvez même rajouter votre partition EXFAT à côté pour vos applications & cie sur PS4 en usage habituel.
Vous pouvez également, si vous utilisez Manjaro Linuxc sur PC, utiliser la commande "mhwd-chroot /dev/sdb2" (remplacez /dev/sdb2 par le bon chemin de la partition système) via un terminal pour vous chrooter directement sur le système installé et modifier à la volée sans être sur PS4, mais sur PC.
Login :
Utilisateur : ps4
Mot de passe : 1
(sudo est fonctionel !)
Super administrateur : root
Mot de passe : 1
Pour des raisons de sécurité évidentes, pensez à changer le mot de passe !
Rappel & documentation :
Encore une fois, ne vous étonnez pas si vous avez des crashs lors du chargement du payload... Ce dernier est encore instable. Par contre quand tout se déroule bien, il n'y a plus de crash (excepté les soucis GPU avec Xorg sur PS4 Pro, mais même quand ça ça plante, la console reste accessible via SSH ou X2Go, il est ainsi possible de redémarrer GDM avec la commande "sudo systemctl restart gdm".
Enfin, les touches magiques fonctionnent, Eeply semble les avoir activé par défaut, ainsi un CTRM+MAJ+PRINT+B va forcer un reboot de la console quelle que soit la situation. (Normalement.)
Documentation de Manjaro : https://wiki.manjaro...Page_Principale
Forum francophone Manjaro : https://www.manjaro.fr/forum/index.php
Documentation d'ArchLinux : https://wiki.archlinux.org
Vous y trouverez tout le nécessaire inhérent à cet écosystème logiciel, de pacman à yaourt pour installer des logiciels, au gestionnaire de pilotes MHWD très simplifié proposé par Manjaro.
Remerciement :
Eeply, Vultra, ValentinBreiz, qwertyuiop, specter, la team Fail0verflow, Linus Torvalds, Richard Stallman, la team ArchLinux, la Team Manjaro, ainsi que tous les contributeurs de logiciels libres, et tous ceux à venir.
Ce message a été modifié par tikilou - 19 mars 2018 - 20:11.