Gestion avancée des répertoires de données

Le principe

Classiquement, nous pouvons bouger le « share » sur différentes partitions (ntfs, exfat et vfat mais pas encore sur ext4 pour le moment).

Ce qui permet de bouger de manière commune les répertoires suivants de pixL:

et cela vers un autre support (usb, disque interne, microsd, …) que celui qui a permis d’installer l’os mais cela oblige de bouger tout et pas juste un répertoire (mais on peut le faire que dans le cas de l’utilisation d’un partage réseau « Network Share » finalement à ce jour demandant aussi de modifier le recalbox-boot.conf)

Donc généralement, on ne peut pas juste bouger les roms ou d’autres répertoires comme les bios, etc… même si on veut les garder en dehors du support d’installation. Par exemple, dans le cas du steam deck, on voudrait pouvoir avoir l’OS sur microSD, mais avoir les datas (roms, themes, bios, saves…) sur une partition du disque interne ou même sur un device externe comme une clé usb sur un dock et donc avoir plusieurs sources de roms par exemple. On peut imaginer avoir nos roms de nos jeux préférés en interne (toujours dispo en déplacement) mais pouvoir en avoir d’autres complémentaires à partir d’un dock avec un support usb et même un partage réseau à distance ou à la maison.

Pour le moment, dans pixL, on garde la gestion du share comme on le connait à l’origine sur recalbox mais on essai de donner plus de flexibilités sur la gestion des répertoires de données.

Pour cela, on utilise le montage automatique des appareils externes (USB, NETWORK) dans le « share » et dans « externals » :

Mais malheureusement, les disques internes n’étaient pas gérés donc il a fallu rajouter aussi un montage automatique pour les supports/disques « internes » (DRIVE) dans le « share » et donc « internals » dans ce cas :

Donc comme on peut le voir, on peut gérer jusqu’à 8 supports amovibles « USB », 4 sources réseaux « NETWORK » et 8 supports internes « DRIVE »

Comment configurer cela ?

Donc on va pouvoir utiliser plusieurs sources simultanément pour les roms et les themes par exemple mais on pourra utiliser une seule source à la fois pour les bios, saves, etc.. pour des raisons fonctionnelles. Les roms/themes pourront être géré/scanné par pegasus-frontend mais les émulateurs pourront utiliser une seule source de bios ou même de saves pour des raisons compréhensibles et éviter de réécrire le fonctionnement interne des émulateurs. On pourra peut être le faire par la suite pour les overlays, mais il faudra réécrire une partie interne du « configgen » qui gére le lancement/configuration des émulateurs lors de leur lancement.

Donc pour cela on va pouvoir chercher les répertoires dans chaque supports via la convention de nommage suivante:

  • Directement à la racine « /roms, /saves, /bios, etc.. »
  • Dans un répertoire dédié comme pixl (ou recalbox) ainsi « /recalbox/roms, /pixl/saves, /pixl/bios, etc.. »

Attention, pour les noms de répertoires, il faudra toujours resté en minuscule pour éviter une mauvaise détection de ceux-ci

Donc dès lors que l’on va rajouter/plugger un support amovible (ou même l’enlever), on va afficher une fenêtre de dialogue pour prévenir et proposer de scanner les répertoires si présent (bien sur, il faudra vous même créer vos répertoires et mettre leur contenu comme vous les connaissez à ce jour dans votre share d’origine)

Quand on plug un support amovible qui contient un répertoire « roms » comme décrit auparavant.
Quand on enlève un support, on propose de refaire un scan des jeux si on le souhaite.

Après le scan par Pegasus-frontend, si vous avez rien configuré, ils seront tous pris en compte surtout pour les roms et les themes et pour les autres, cela utilisera ce que vous avez déjà dans votre « share » comme pour les bios ou les saves.

Donc pour configurer tout cela, un nouveau menu est apparu, le menu « Advanced directories configuration » :

Donc on va donc chercher les répertoires surligné en jaune ci-après dans les différents supports détectés et vous proposer de configurer:

Donc cela fait 10 au total pour le moment 😉 :

Donc pour roms et themes, on pourra en choisir/exclure plusieurs :

Après ces changements, en sortie des menus, on pourra vous proposer de relancer pegasus pour re-scanner vos roms/themes :

message finalement générique au changement nécessitant un « restart »

Pour les autres, un seul choix possible pour des raisons fonctionnelles pour rappel:

Suite au changement de ces configurations, vous serez invité à monter les répertoires en question pour être pris en compte sinon, il faudra rebooter pour que cela soit pris finalement en compte :

Attention: si on monte en sélectionnant un répertoire sur un partage réseau existant (utilisant le « Network Share »)et cela à partir du menu de Pegasus-Frontend, il faudra rebooter pour restaurer le partage réseau même si on revient en arrière. Finalement, quand on sélectionnera à partir des menus, un chemin d’origine (ex : /recalbox/share/bios, etc… sans externals ou internals dans le chemin), on restaurera le contenu du share interne d’origine de pixL. Il faudra donc rebooter pour revenir sur le share réseau. A savoir donc !

Erreurs à connaitre

Lors de la sélection du support de stockage du « share », même si on affiche toutes les partitions de plus de 1Go, le format ext4 n’est pas supporté et vous aurez donc cette alerte pour le moment si vous en sélectionné une et la partition précédente sera gardée :

Si vous n’avez pas de rom disponible à partir de votre sélection, vous aurez ce message et vous pourrez corriger cela en retournant dans les menus :

Même problématique, si vous n’avez pas de thème disponible à partir de votre sélection, vous aurez ce message et vous pourrez corriger cela en retournant dans les menus :

Lors du montage d’un répertoire comme pour bios, saves, overlays, etc… si on rencontre un problème lors du montage à cause d’une incompatibilité, un message pourra s’afficher en expliquant le problème rencontré (un problème de droit sur une partition particulière par exemple…) :

c’est un exemple d’erreur qui dans ce cas est généré « artificiellement » à partir d’une version de test de Pegasus-frontend sous Ubuntu

Laisser un commentaire