Petite question technique pour le Fédiverse :

Je voudrais packager en .deb un site web local sans utiliser de serveur web et en ouvrant simplement la page d'accueil via file://

Les restrictions CORS de firefox font qu'avec ce protocole, il est interdit de lire des fichiers externes .json.

Du coup, est-ce qu'il est envisageable de packager un profil spécifique XXX enlevant cette restriction et d'avoir comme lanceur "firefox -profile XXX file:///var/www/..." ? Ou est-ce "mal" ?

@johannc Perso ça ne me semble pas "mal", puisque si je comprends bien l'utilisateur va au final choisir de lancer un exécutable particulier (et donc normalement faire attention à ce qu'il fait) plutôt que de "juste" afficher une page web.

Je note au passage que les applis web que je connais (Twine2 et Piskel notamment) livrent des zip plutôt que des deb. Mais ça vaudrait peut-être quand-même le coup de regarder comment elle font ?

@lertsenem

Le côté ennuyeux c'est que l'utilisateur se retrouve, sans forcément en avoir conscience, avec une instance de firefox lancée avec un profil et des droits particuliers.

Lors de mes essais, j'ai volontairement bridé le plus possible ce profil qui n'affiche désormais plus aucune bar d'entête. Cela donne un aspect applicatif intéressant et devrait limiter les risques. Mais cela reste encore problématique. J'essaie de brider le protocol http:// mais sans succès pour l'instant.

@johannc
Je vais être trollesque, mais pour ça, il y a Electron 😅😈
@lertsenem

@Case_Of @lertsenem

Ce n'est pas tellement trollesque parce que, si je ne connaissais pas Electron, j'utilise Apache Cordova pour la distribution Android qui me semble faire le même genre de boulot. Et ça marche super bien.

Maintenant, j'essaie de voir s'il est possible de packager sous linux un site web SANS serveur web. Et a priori, c'est peut-être possible. Ce qui serait plutôt cool.

Cela dit, en cas d'impossibilité, je me retournerai certainement vers Cordova... ou Electron.

@johannc
J'étais trollesque dans le sens où Electron bouffe des tonnes des ressources pour rien
@lertsenem

@Case_Of
Si tu as un firefox dédié en plus de ton firefox normal, la consommation de ressources sera aussi un problème, donc pourquoi pas electron.

Après, tu peux imaginer un simple serveur de web python avec "python3 -m http.server"

En tout cas, ravi d'entendre que tu bosse sur un .deb pour mes ordis debian offline pour les enfants ça serait parfait !
@johannc @lertsenem

@arthurlutzim
J'ai un doute là dessus, Electron utilise Blink qui est bien plus gourmand que Gecko en ressources
@johannc @lertsenem

@Case_Of @arthurlutzim @lertsenem
Je me suis inscrit sur le forum de PrimTux, ce qui m'aide beaucoup.

Et je suis arrivé à une première version beta. Il y a encore plein de petits soucis, mais ça fonctionne. L'exécutable se résume à un simple :

firefox -profile ~/.poufpouf/firefox file:///var/www/...

avec un profil dédié créé à la première exécution. Pas besoin de serveur web, c'est hyper léger.

J'ai mis temporairement le paquet ici si cela tente quelqu'un :
box.poufpoufproduction.fr/pouf

Follow

@Case_Of @arthurlutzim @lertsenem

Il y a encore des points à régler.

A la première exécution, un deuxième onglet invisible est créé par firefox. On ne le voit qu'à la fermeture de la fenêtre et même si cela ne concerne que le premier lancement, cela reste embêtant.

Après j'aimerais vraiment désactiver les connexion http.

Et la persistance des données ne marche pas encore.

Donc, encore un peu de boulot, mais ça avance et je trouve que le résultat est plutôt sympa.

Sign in to participate in the conversation
La Quadrature du Net - Mastodon - Media Fédéré

Bienvenue dans le media fédéré de la Quadrature du Net association de défense des libertés. Les inscriptions sont ouvertes et libres.
Tout compte créé ici pourra a priori discuter avec l'ensemble des autres instances de Mastodon de la fédération, et sera visible sur les autres instances.
Nous maintiendrons cette instance sur le long terme.