MojoSetup - Le Bottin des Jeux Linux

MojoSetup

🗃️ Specifications

📰 Title: MojoSetup 🕹️ / 🛠️ Type: Tool
🗃️ Genre: Development 👁️ Visual: 2D
🏷️ Category: Development ➤ Installation software 🏝️ Perspective: First person (interface)
🔖 Tags: Development; Installation Software ⏱️ Pacing: Real Time
🐣️ Approx. start: 👫️ Played: Single
🐓️ Latest: 2019-12-26 🚦 Status: 04. Released (status)
📍️ Version: Rev 892 ❤️ Like it: 9. ⏳️
🏛️ License type: 🕊️ Libre 🎀️ Quality: 7. ⏳️
🏛️ License: zlib & libpng ✨️ (temporary):
🐛️ Created: 2014-03-31 🐜️ Updated: 2024-06-22

📦️ Deliverables

📦️ Package name: ..... 📦️ Arch:
📄️ Source: ✓ ..... 📦️ RPM:
⚙️ Generic binary: ✓ ..... 📦️ Deb:
🌍️ Browser version: ..... 📦️ AppImage:
📱️ PDA support: ..... 📦️ Flatpak:
✨️ Not use: ..... 📦️ Snap:

🚦 Entry status

📰 What's new?: 👔️ Already shown:
💡 Lights on: 💭️ New version published (to be updated):
🎨️ Significant improvement: 🦺️ Work in progress:
🎖️ This work: 4 stars 🚧️ Some work remains to be done:
👫️ Contrib.: goupildb & Louis 👻️ Temporary:
🎰️ ID: 14242

📖️ Summary

📜️[en]: A graphical installer enabling developers to provide a unified interface for the installation of their software, and for neophytes to install software which are not in the repositories of their Linux distribution, in a simple manner. 📜️[fr]: Un installateur graphique permettant aux développeurs de fournir une interface unifiée pour l'installation de leur logiciel, et aux néophytes d'installer de manière simple des logiciels qui ne sont pas dans les dépôts de leur distribution Linux.

🎥️ Videos


🎮️ Showcase: (202xxx♺), (202xxx♺), (202xxx♺),

🕸️ Links

🏡️ Website & videos
[Homepage] [Dev site] [Features/About] [Screenshots] [Videos t(202xxx) gd(202xxx) gu(202xxx) r(202xxx) lp(202xxx) d(202xxx♺) g(202xxx) g[fr](202xxx) g[de](202xxx) g[ru](202xxx) g[pl](202xxx) g[cz](202xxx) g[sp](202xxx) g[pt](202xxx) g[it](202xxx) g[tr](202xxx)] [WIKI] [FAQ] [RSS] [Changelog 1 2 3]

💰 Commercial
• (empty)

🍩️ Resources
• MojoSetup binaries: [GitHub (MojoSetup-Bins)]
• Some specific installers for games: [Linux Game Installers]

🛠️ Technical informations
[Open Hub] [PCGamingWiki] [MobyGames]

🦣️ Social
Devs (Ryan C. Gordon [fr] [en]): [Site 1 2] [Patreon] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(201504) 2(201603) 3(201408) 4(201205) 5(200506)]
Devs (Loki Software [fr] [en]): [Site 1 2] [Chat] [mastodon] [PeerTube] [YouTube] [PressKit] [Interview 1(199908) 2(202xxx)]
The Project: [Blog] [Chat] [Forums] [mastodon] [PeerTube] [YouTube] [PressKit] [reddit] [Discord]

🐝️ Related
[UBUNTU [cz]]

📦️ Misc. repositories
[Repology] [pkgs.org] [Generic binary] [Arch Linux / AUR] [openSUSE] [Debian/Ubuntu] [Flatpak] [AppImage(author's repo)] [Snap] [PortableLinuxGames]

🕵️ Reviews
[HowLongToBeat] [metacritic] [OpenCritic] [iGDB]

📰 News / Source of this Entry (SotE) / News (SotN)
[LinuxGames (20070523)] [Phoronix (20070517)]

🕊️ Source of this Entry: [Site (date)]

🦣️ Social Networking Update (on mastodon)

🛠️ Title:
🦊️ What's:
🏡️
🐣️
🔖
📦️
📖 Our entry: https://www.lebottindesjeuxlinux.tuxfamily.org/en/online/lights-on/

🥁️ Update:
⚗️
📌️ Changes:
🦣️ From: 🛜️

🏝️ https://www.youtube.com/embed/
🦉️ https://www.youtube.com/embed/
🦝️ https://www.youtube.com/embed/
🦝️ https://www.youtube.com/embed/
🕵️ https://www.youtube.com/embed/
🕯️https://www.youtube.com/embed/
🕯️https://www.youtube.com/embed/
🎲️ https://www.youtube.com/embed/
🎲️ https://www.youtube.com/embed/
🎲️ https://www.youtube.com/embed/
🎲️[fr] https://www.youtube.com/embed/
🎮️ https://www.youtube.com/embed/
🎮️ https://www.youtube.com/embed/
🐧https://www.youtube.com/embed/
🐧https://www.youtube.com/embed/

🕶️

📚️ Name is a

📕 Description [en]

📜️ "blabla" 📜️


A graphical installer, derived from loki_setup.

Ryan C. Gordon icculus at icculus.org
Sat May 12 11:44:59 EDT 2007

...so I set out to revamp some pieces of loki_setup to make progress on a 2.0 release.

We first talked about 2.0 in June of 2005: https://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?2:mss:666:200506:fjepgpbjejjcppnfihnf

And the latest commit to the 2.0 branch happened around that same time: https://cvs.icculus.org/cvs/loki_setup/?sortby=date&only_with_tag=SETUP_2_0

Several of us have been submitting patches to 1.0 in the meantime, making good fixes and adding workarounds for deficiencies but not really making improvements to the codebase.

Generally loki_setup has worked well enough so it wasn't worth investing the effort to do radical improvements, but there are many many areas where it is either annoying, outdated, or flat out broken. Some of these were issues of lack of engineering resources (we're all busy as hell, and usually desperately patching the installer when issues crop up during crunch time on a product shipping in the next several hours!), and some were things that broke as Linux progressed (glibc incompatibilities, etc). Some were legitimate design decisions that turned out to be less than ideal in the real world. The codebase is very organic, and you can see where various vines of code grew based on concessions made over time. Evolution is a painful process. :)

So I started out to do heavy revamping of loki_setup to get to 2.0, starting with the archive plugin stuff: https://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?2:mss:678:200506:nbooliokgneeciafbijn

...and as I started to think about the implications of changing that subsystem, I realized that there were other related things I'd like to rework, too, and eventually I realized I wanted to rework almost everything. By the time I mapped out an ideal loki_setup, it wasn't loki_setup at all anymore.

So I started from scratch.

I've been making good progress on this (I'm calling it "MojoSetup" at the moment), and while there is still much to be done, I feel it's finally ready to show to the public. Here are some things that panned out pretty well so far...this is a _lot_ of information, but I thought you might be interested in the details, and maybe have some opinions to share.

Most of MojoSetup was designed explicitly to solve specific shortcomings in loki_setup. It's not that I'm trashing on loki_setup, it's just what I think a nextgen replacement would have to address.

Some of these are technical notes, some are bullet point features. Skip the ones that bore you. :) All of these are currently implemented, but some still need work (the UI could use some polishing, for instance).

(...)


Phoronix:

With the Loki graphical installer (loki_setup) being fairly old, Ryan C. Gordon "Icculus" recent set out to work on version 2.0 of loki_setup. However, he came to the conclusion that he wanted to rewrite loki_setup from scratch, and thus MojoSetup was born. Ryan's MojoSetup is designed specifically to solve shortcomings in loki_setup while making this the next-generation graphical installer for Linux and other *NIX platforms. MojoSetup uses the Lua scripting language instead of XML, uses plugins for the user interface, a rollback mechanism for uninstallation, and the installer can access packages via FTP and HTTP (in addition to CDs, DVDs, SMBs, USB drives, etc), and is all distributed under the zlib license. The interface is also modern and Gordon had referred to it as looking like an Apple software installer. MojoSetup isn't yet ready for prime-time but last week he had just announced that it was ready for unveiling it to the public.


🌍️ Wikipedia (Linux Installers for Linux Gamers (liflg)):

Linux Installers for Linux Gamers (liflg) is a website that supplies and builds game installers for Linux using the Loki and Mojo setup tools.
The goal of the project is that this will supply a user friendly interface for the use of Linux native games. Through the use of these tools they also hope to allow older game ports, such as those created by Loki Software, to run better on modern systems. This is accomplished in multiple ways, such as installing legacy libraries alongside the program if needed. The installers also allow users to install some games with all potential patches already applied. The project also occasionally releases installers for popular game modifications, such as Red Orchestra: Combined Arms.

📕 Description [fr]

Un installateur graphique de logiciels, par Ryan C. Gordon (& contributeurs).

MojoSetup est un installateur graphique (dérivé, mais complètement ré-écrit du Loki graphical installer aka loki_setup, du studio Loki Software) permettant aux développeurs de fournir une interface unifiée pour l'installation de leur logiciel, et aux néophytes d'installer de manière simple des logiciels qui ne sont pas dans les dépôts de leur distribution Linux.

L'installation par le gestionnaire des paquets des distributions est toujours préférable (notamment pour la gestion des dépendances des bibliothèques / vérification des fichiers éventuellement en doublons dans un même répertoire).
Néanmoins cet installateur peut se révéler particulièrement utile pour des jeux non libres (jeux commerciaux) ou libres mais encore absents des distributions et requérant une installation / désinstallation particulière / un peu compliquée pour un néophyte.
Il permet notamment une installation à partir d'un CD/DVD ou en ligne, et - en cas d'erreur imprévue, permet de revenir à l'état initial (d'avant l'installation) par un mécanisme de "rollback".

Utilisé par ces jeux / Used by these games:

Unreal Tournament 3, Enemy Territory: Quake Wars, Prey, Braid, Aquaria, Lugaru, Postal 2, Savage 2, Heroes of Newerth, The Spring Project, Celetania, Caster, Arena Live, Monster 2, The Perfect Tree, Soccer Cup Solitaire, Dress-Up Pups, MegaGlest, Anomaly Warzone Earth, Hammerfight, Cogs, Frozen Synapse, Jamestown: Legend of the Lost Colony, Shank, Super Meat Boy, Avadon: The Black Fortress, Psychonauts, Stacking, Costume Quest, Brütal Legend, Dear Esther,


Un installateur graphique, dérivé de loki_setup (NdT : un autre installateur graphique pour Linux).

HISTORIQUE

Ryan C. Gordon icculus sur icculus.org
Sam. 12 mai 11:44:59 EDT 2007

... alors je me suis mis à réorganiser certaines parties de loki_setup pour progresser vers une version 2.0.

Nous avons d'abord parlé d'une version 2.0 en juin 2005: https://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?2:mss:666:200506:fjepgpbjejjcppnfihnf

Et la dernière validation de la branche 2.0 s'est produite en même temps: https://cvs.icculus.org/cvs/loki_setup/?sortby=date&only_with_tag=SETUP_2_0

Plusieurs d'entre nous ont soumis des patches à la version 1.0 en attendant, réparant et ajoutant des solutions de contournement pour des lacunes, mais n'apportant pas réellement d'améliorations au code de base.

D'une manière générale, loki_setup a bien fonctionné, et donc cela ne valait pas vraiment la peine d'investir dans un gros effort pour y apporter des améliorations radicales, mais il existe de nombreux domaines où il est ennuyant, dépassé ou totalement cassé. Certains d'entre eux portaient sur le manque de ressources d'ingénierie (nous sommes tous très pris et, en général, nous remédions désespérément au programme d'installation lorsque les problèmes surviennent au cours de la période incompressible où nous devons expédier un produit dans les toutes prochaines heures !), et d'autres étaient dus à des trucs qui ne fonctionnaient plus à mesure que Linux progressait (incompatibilités de bibliothèques glibc, etc.). D'autres encore portaient sur des décisions de conception légitimes qui se révélèrent être moins qu'idéales dans le monde réel. Le code de base est devenu très organique, et vous pouvez voir où plusieurs branches de code se sont développées en fonction des concessions faites avec le temps. L'évolution est un processus pénible. :)

J'ai donc commencé à faire un revamping lourd de loki_setup pour le passer à 2.0, en commençant par le plugin d'archives: https://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?2:mss:678:200506:nbooliokgneeciafbijn

... et lorsque j'ai commencé à réfléchir aux implications de la modification de ce sous-système, je me suis rendu compte qu'il y avait d'autres choses connexes que j'aurai souhaité retravailler, et finalement, j'ai réalisé que je voulais tout refaire. Et petit à petit lorsque j'ai maquetté un loki_setup idéal, ce n'était plus loki_setup.

J'ai donc redémarré à zéro.

j'ai fait de bons progrès dans ce domaine (je l'appelle "MojoSetup" pour le moment), et même s'il reste encore beaucoup à faire, je pense qu'il est enfin prêt pour être présenté au public. Voici ci-après un panel de ce qui se prépare ... c'est assez dense, mais je pensais que vous pourriez être intéressé par les détails, et peut-être avoir des opinions à partager.

La majeure partie de MojoSetup a été conçue explicitement pour résoudre des lacunes spécifiques à loki_setup. Ce n'est pas que je souhaite spécialement mettre loki_setup à la poubelle, c'est juste ce que j'estime qu'un remplaçant devrait être capable de faire.

Une partie de ce qui suit est relative à des notes techniques, l'autre concerne des caractéristiques importantes. Sautez les parties qui vous ennuient. :) Tout cela est actuellement implémenté, mais certains points nécessitent encore un peu de travail (l'interface utilisateur pourrait encore être améliorée, par exemple).

(...)


(NdT : je n'ai pas traduit la suite, qui est longue et très technique. Je pense qu'elle n'offre un intérêt que pour ceux qui y comprennent quelque-chose, et ceux là n'ont probablement pas besoin d'une traduction :)