• [^] # Re: Go with C

    Posté par (site web personnel) . En réponse au journal Interface graphique en Go!. Évalué à 1.

    Ça ne marche pas et ça ne marchera pas dans l'avenir.

    Bah c'est la ou on est pas d'accord.

    Il y a l'OS (linux kernel + GNU userland), il y a la distribution (gestionnaire de paquet, configuration centralisée, firmware/driver commun, ...), et enfin il y a les applications de l'utilisateur (navigateur web, client mail, libreoffice, vs code pour les devs, ...).

    Ces applications de l'utilisateur ont juste besoin d'être trouvable dans le PATH et d'avoir un .desktop quelque part. Il existe une solution hyper simple :

    • Avoir un truc du style /apps/*/bin dans le PATH qui soit supporté par les shell
    • Avoir le même système pour les .desktop: /apps/*/*.desktop

    Cette solution est à implémenter au niveau de la distribution. Ensuite, il s'agit d'extraire un .tar.gz dans le dossier /apps.

    Alors oui, "duplication de shared libs", "bordel à la 'program files' de windows", etc... Mais clairement, l'utilisateur final s'en cotrefiche.

    Sur windows les gens font pas mal d'installeur

    Un installeur dont le job est d'extraire les fichiers de l'appli dans Program Files et d'ajouter le raccourci dans le menu démarrer. Quelle différence avec extraire un .tar.gz ?

    sous mac ça se rapporche (il me semble) d'un appimage mais mieux intégré (le finder les prends automatiquement en compte)

    Donc une archive extraite quelque part sur le système, avec la solution que j'ai cité ci dessus du /apps/*/bin et /apps/*/*.desktop (sauf que l'archive est pas vraiment "extraite" pour Mac, mais le principe est le même). Et qui a fait ça ? Les mainteneurs de Mac OS, pas les devs de l'appli.

    aujourd'hui les 2 poussent vers un store, mais ce n'est pas comme les dépôts debian/redhat, les développeurs poussent eux même leurs paquets.

    Les dépôts communautaires ça existe (les PPA pour Ubuntu, AUR pour Arch, ...). Le store de Windows est juste un endroit centralisé ou télécharger/exécuter l'installeur de l'appli. Au lieu d'aller sur le site de l'éditeur.

    Mais cet installeur n'a toujours comme seul rôle d'extraire une archive qui contient tout ce dont elle a besoin.

    Aujourd'hui on s'en approche à peu prêt [...], mais ça demande encore du travail.

    Et ce travail n'est pas a être fait par le développeur de l'application.

    https://link-society.com - https://kubirds.com - https://github.com/link-society/flowg