La version du projet Bottles 2022.1.28 a été présentée, développant une application pour simplifier l'installation, la configuration et le lancement d'applications Windows sur Linux utilisant Wine ou Proton. Le programme fournit une interface pour gérer les préfixes, définissant l'environnement Wine et les paramÚtres pour lancer des applications, ainsi que des outils pour installer les dépendances nécessaires au bon fonctionnement des programmes exécutés. Le code du projet est écrit en Python et distribué sous la licence GPLv3. Le programme est fourni au format Flatpak et dans des paquets pour Arch Linux.
Au lieu du script Winetricks dans Bottles pour l'installation de bibliothÚques additionnelles, un systÚme complet de gestion des dépendances est utilisé, dont le fonctionnement rappelle celui des gestionnaires de paquets des distributions. Pour chaque application Windows lancée, une liste de dépendances (bibliothÚques DLL, polices, runtime, etc.) à télécharger et à installer pour un fonctionnement normal est définie, chaque dépendance pouvant avoir ses propres dépendances.

Bottles fournit un dépÎt contenant des informations sur les dépendances pour divers programmes et bibliothÚques, ainsi qu'un ensemble d'outils pour une gestion centralisée des dépendances. Toutes les dépendances installées sont suivies, de sorte que lors de la désinstallation d'un programme, il est possible de supprimer également les dépendances associées si elles ne sont pas utilisées pour exécuter d'autres applications. Cette approche permet de se passer de l'installation d'une version distincte de Wine pour chaque application et d'utiliser un seul environnement Wine pour lancer le plus grand nombre d'applications possible.

La gestion des prĂ©fixes Windows dans Bottles utilise le concept d'environnements, fournissant des configurations prĂȘtes Ă l'emploi, des bibliothĂšques et des dĂ©pendances pour une certaine catĂ©gorie d'applications. Des environnements de base sont proposĂ©s : Gaming â pour les jeux, Software â pour les applications de bureau et Custom â un environnement propre pour effectuer des expĂ©rimentations personnelles. Dans l'environnement de jeu, DXVK, VKD3D, Esync sont inclus, sur les systĂšmes avec une carte graphique hybride, la carte graphique discrĂšte est activĂ©e, et PulseAudio comprend des rĂ©glages pour amĂ©liorer la qualitĂ© sonore. Dans l'environnement pour applications, des rĂ©glages adaptĂ©s aussi bien aux programmes multimĂ©dias qu'aux applications de bureau sont inclus.

Si nécessaire, il est possible d'installer plusieurs versions différentes de wine, proton et dxvk, et de basculer entre elles à la volée. L'importation d'environnements depuis d'autres gestionnaires Wine, tels que Lutris et PlayOnLinux, est possible. Les environnements sont lancés avec une isolation sandbox, séparés du systÚme principal et n'ayant accÚs qu'aux données nécessaires dans le répertoire personnel. Un support de contrÎle de version est fourni, sauvegardant automatiquement l'état avant l'installation de chaque nouvelle dépendance et permettant de revenir à l'un des états précédents en cas de problÚmes.

Parmi les changements dans la nouvelle version :
- Un nouveau backend pour la gestion de Wine a été ajouté, composé de trois composants : WineCommand, WineProgram et Executor.
- Plusieurs gestionnaires ont été proposés pour WineProgram :
- reg, regedit - pour travailler avec le registre, permettant de modifier plusieurs clés en un seul appel.
- net - pour gérer les services.
- wineserver - pour vérifier le fonctionnement du processus de gestion Bottles.
- start, msiexec et cmd - pour travailler avec des raccourcis .lnk et des fichiers .msi/.batch.
- taskmgr - gestionnaire de tĂąches.
- wineboot, winedbg, control, winecfg.
- Un gestionnaire d'exĂ©cution (Executor) a Ă©tĂ© mis en Ćuvre, appelant automatiquement le gestionnaire nĂ©cessaire en fonction de l'extension du fichier (.exe, .lnk, .batch, .msi) lors du lancement d'un fichier exĂ©cutable.
- Il est maintenant possible d'exécuter des commandes dans un environnement complet ou réduit.
- Le support de la synchronisation utilisant l'appel systÚme futex_waitv (Futex2), introduit dans le noyau Linux 5.16, a été ajouté. Un gestionnaire Caffe basé sur Wine 7 a été ajouté et prend en charge le mécanisme de synchronisation Futex2.
- Pour les installateurs, la possibilitĂ© de modifier les fichiers de configuration (json, ini, yaml) a Ă©tĂ© mise en Ćuvre.
- Ajout de la prise en charge de la masquage des éléments dans la liste des programmes.

- Un nouveau dialogue a été ajouté pour afficher le contenu des fichiers manifeste pour les dépendances et les installateurs.

- La fonction de recherche a été ajoutée à la liste des installateurs disponibles.

De plus, on peut mentionner la publication de la version du projet Proton 7.1-GE-1, dans le cadre duquel des passionnés créent des versions étendues indépendantes du paquet Proton pour exécuter des applications Windows, caractérisées par une version plus récente de Wine, l'utilisation de FFmpeg dans FAudio et l'inclusion de patches supplémentaires résolvant des problÚmes dans diverses applications de jeu.
Dans la nouvelle version de Proton GE, le passage Ă Wine 7.1 avec des patches de Wine-staging 7.1 a Ă©tĂ© effectuĂ© (Wine 6.3 continue d'ĂȘtre utilisĂ© dans Proton officiel). Tous les changements des dĂ©pĂŽts git des projets vkd3d-proton, dxvk et FAudio ont Ă©tĂ© transfĂ©rĂ©s. Des problĂšmes dans les jeux Forza Horizon 5, Resident Evil 5, Persona 4 Golden, Progressbar95 et Elder Scrolls Online ont Ă©tĂ© rĂ©solus.
Source : opennet.ru



