[HELP WANTED] Script de création sources.list / preferences

Le gros problème de cette page web c’est que pour une testing ou unstable, c’est tout bonnement mal configuré (pas de stable/testing pour une sid, etc).[/quote]
Ce n’est pas si grave du point de vu du logiciel.

Bof, tu sais bien comment c’est, ils ne posent pas forcément de questions mais ils sont quand même redirigés assez régulièrement vers le T&A “sources liste au carré”. :mrgreen:
Mais, à mon avis, l’inconvénient de ce T&A pour les débutants complets c’est que ça demande un minimum de compréhension de l’environnement Debian alors que bien souvent ils pataugent totalement (même s’il a l’avantage d’expliquer les choses). D’où le fait que j’ai trouvé le principe de cette page web très intéressant malgré sa mauvaise implémentation.[/quote]
Je suis un chieur mais il me semble que ce qui correspond le mieux à ce cas c’est un formulaire web, qui une fois rempli génère un package qui remplace le sources.list et le fichier de préférences.

Ouhla… générer dynamiquement un .deb (tar.gz) avec toute l’arborescence et les bonnes permissions (donc fakeroot)… via une page web ? :119
Ça sera sans moi là, les technos web je ne m’en approche que contraint et forcé, et encore faut-il que la menace soit très menaçante… :smiley:

Ouhla… générer dynamiquement un .deb (tar.gz) avec toute l’arborescence et les bonnes permissions (donc fakeroot)… via une page web ? :119
Ça sera sans moi là, les technos web je ne m’en approche que contraint et forcé, et encore faut-il que la menace soit très menaçante… :smiley:[/quote]
Pff tu le fait en CLI, puis c’est pas si compliqué de faire une interface web qui utilise ce script.

Eh, j’ai une super bonne idée !
Je fais la partie CLI qui pose des questions, puis je l’adapte pour accepter des paramètres en ligne de commande, je fais même le script pour construire le paquet si tu veux, et tu pourras faire l’interface web… :eusa-whistle:

:016 :smiley:

Eh, j’ai une super bonne idée !
Je fais la partie CLI qui pose des questions, puis je l’adapte pour accepter des paramètres en ligne de commande, je fais même le script pour construire le paquet si tu veux, et tu pourras faire l’interface web… :eusa-whistle:

:016 :smiley:[/quote]
Je garanti rien, ça dépendra de mon temps mais pourquoi pas. De toute manière ça va dans le sens de ce que tu voulais faire.

Salut,
J’ai voté “oui” hier, c’est une bonne idée.

Mais… pourquoi s’emmerder à faire un deb ? :017
Pourquoi ne pas simplement générer (comme ça se fait pour tous les générateurs en ligne) un résultat à copier/coller ?

Pour ne pas avoir d’erreur de copier/coller et pour installer les clefs des dépôts.
Ma remarque faisait suite à des problèmes avec l’existant qui consiste à faire du copier coller.

[quote=“MisterFreez”]Pour ne pas avoir d’erreur de copier/coller et pour installer les clefs des dépôts.
Ma remarque faisait suite à des problèmes avec l’existant qui consiste à faire du copier coller.[/quote]

Bien,
Je trouve ça extrême, mais bon!
Ça imposera pour celui qui hébergera plus de ressources à mettre à disposition; Si le générateur fonctionne bien (ce que je lui souhaite), encore plus… Ce n’est rien de compiler un petit deb, mais plusieurs…

C’est mon idée sur la question, peut-être que je me trompe.

Avec une mise en cache des 20 derniers paquets ça doit pas être si monstrueux.

Après je peux dire des conneries et vous avez droits de m’envoyer bouler, hien. Je ne fais que des petites propositions. On peut faire un p’tit script à lancer par l’utilisateur si on considère que ce n’est pas trop compliqué pour lui.

[quote=“MisterFreez”]
Je suis un chieur mais il me semble que ce qui correspond le mieux à ce cas c’est un formulaire web[…][/quote]
+1
mais la question est de savoir si ce +1 est pour le coté “chieur” ou pour l’idée du formulaire :laughing:

Plus sérieusement, je te suis pour le formulaire, car outre l’aspect technique, j’y vois les aspects suivants :

  • cela peut devenir un “service” du site debian-fr.org et donc un atout
  • la correction de “bugs” est plus “largement” diffusée (tout comme la diffusion de bugs d’ailleurs)
  • la maintenabilité en est simplifiée si il s’agit d’un service du site. En effet il n’y aurait qu’une seule version centralisée et non autant de version téléchargées et potentiellement modifiées par l’utilisateur.

J’ai uploadé (dans le premier message) une gribouille qui ne fait que poser des questions et calculer les dépôts nécessaires sans toucher à rien sur le système. Plusieurs remarques :

  • c’est loin d’être complet (ça ne génère pas réellement de sources.list / preferences, juste une liste de dépôts + priorités, et aucune gestion des miroirs)
  • j’ai mis des « (recommandé) » dans l’optique de guider un débutant complet, pas forcément d’être au top du top. Par exemple, je recommande d’inclure les backports sur une stable, comme ça c’est dispo dès le départ (et ça mange pas de pain vu qu’il faut une manip spéciale pour installer un backport). Forcément c’est discutable, alors discutez. :stuck_out_tongue:
  • de même, j’ai fait les pinnings en fonction de ce qui me semble le plus logique et des contraintes des divers dépôts, à discuter encore une fois
  • pas utile de faire des remarques sur l’implémentation proprement dite pour le moment, vu que ça va sûrement changer beaucoup (je sais, c’est crade et rempli de bashismes…)

Y’a pas non plus 36 millions de combinaisons possibles, et sachant que les .deb ne seront pas bien gros c’est pas la fin du monde de tout cacher à la volée en base de données (cache complètement effacé lors d’une mise à jour du script of course). Ça va bouffer quoi ? 1 Mo à tout casser…
Cela dit je vous laisse vous battre avec vos histoires de .deb et d’interface web, moi je m’occupe de faire un script fonctionnel ça sera déjà pas mal… :mrgreen:

[quote=“Totor”]- la correction de “bugs” est plus “largement” diffusée (tout comme la diffusion de bugs d’ailleurs)

  • la maintenabilité en est simplifiée si il s’agit d’un service du site. En effet il n’y aurait qu’une seule version centralisée et non autant de version téléchargées et potentiellement modifiées par l’utilisateur.[/quote]
    Ça c’est clairement un ÉNORME plus, d’autant que le script sera forcément amené à évoluer régulièrement (changements dans les dépôts mozilla, changement de stable, …).

L’exemple donné en astuce fait 2^27 combinaison, le nombre maximal de fichier pour un système de fichier ext4 c’est 4*10^9. Il faudrait donc utiliser un cache en btrfs (il permet 2^64 fichiers).

Bien sûr si on arrive à avoir 2^27 requête avant disons décembre 2013 (date éventuelle de sortie de la prochaine version) 2^27/14/30 (disons qu’un moi fait 30 jours) ça voudrait dire que le script génère 320 000 demandes par jours (différentes je ne compte que des combinaisons de demandes différentes). Ça fait 220 connexion à la minute, je pense que le site web tombera avant le système de fichier.

Donc oui on peut tout mettre en cache si ça peut faire plaisir.

Pour ce qui est de l’interface web j’avais penser à un couple nginx/tornado. Nginx distribue tout ce qui est statique (le formulaire et tout ce qui va avec et le paquet) et tornado pour lancer le script et renvoyer une page avec le lien pour télécharger le paquet (et un petit descriptif sur l’installation de celui-ci.

Histoire de se simplifier la tache on peut, peut être, oublier le paquet pour le moment histoire de voir comment le tout peut se faire. Je bosserais là dessus ce week end, je pense.

Ah oui quand même… :mrgreen:
Je crois comprendre pourquoi j’ai jamais été bon en maths : arrivé à 100, « ça fait beaucoup mais il doit plus en rester tant que ça après ». :icon-lol:

[quote=“MisterFreez”]dotdeb.org je ne connais pas mais leu slogan c’est :

C’est bien un dépôt qui backport des versions de serveurs pour pouvoir faire un web avec Debian ?[/quote]

Yes ! Voilà une interview de son mainteneur (Guillaume Plessis) qui présente bien le projet :
http://www.dotdeb.org/2010/01/20/dotdeb-interviewed-by-php-tv/

Pour info, Guillaume a été employé pendant près de 10ans par un gros hébergeur pro (Nexen, devenu AlterWayHosting depuis…) qui utilise en interne Dotdeb sur ses serveurs. Un gage de qualité :slightly_smiling:

Pour revenir sur ces deux points:

  • formulaire sur un serveur Web: Oui, c’est ce qu’il y a de mieux. Un script qui se ballade, c’est plus risqué (à moins d’avoir un système comme smxi: qui vérifie à chaque lancement s’il est à jour)

  • Le deb: Moi ça me chagrine un peu de ne pas avoir le contrôle…

  • J’aime bien mes fichiers list et preferences dans les dossiers ad-hoc (les .d)
  • Dans le cas ou l’on a déjà un fichier préférences (c’est le cas de beaucoup, notamment à cause de - grace à - apt-listbugs)

Bref… ça impose, il me semble, de prendre en compte des configuration très diverses, avec les risques que ça comporte.

Mon opposition n’est pas “de principe”, et c’est très cool de la part de ceux qui savent coder de se pencher sur ce sujet! :023

Pas très compliqué à mettre en place, faut juste y penser (ce qui est fait maintenant :006).

Où en est-on du support de ces dossiers ? La dernière fois que j’ai essayé (y’a longtemps) aptitude ne les gérait pas correctement. Quid de Synaptic et autres bidules exotiques ?
Faudrait valider que tout ça fonctionne sur Squeeze (quelqu’un en a une sous la main pour tester ?).

Tout chez moi en en Squeeze. Je testerais ce soir.

Je repasse ici pour continuer la discussion commencée là, pas besoin de polluer le sujet de Grhim plus qu’il ne l’est déjà…

Euh… il est pas du tout fini, pour le moment il ne génère rien (mis à part l’affichage des variables utilisées dans le script, mais faut voir ça comme du code de débogage). :blush:
Pour être honnête, je l’avais un peu oublié (ça m’arrive, j’ai toujours dix mille trucs en cours en même temps et des fois y’en a qui passent à la trappe pendant un moment jusqu’à ce que je m’en rappelle). Maintenant qu’on me l’a remis en mémoire je vais voir ce que je peux y faire, ça devrait pas être trop compliqué niveau code.

Pour faire avancer les choses, je pense que je vais oublier l’histoire des .d pour le moment, on pourra toujours adapter après.

Parfait.
Si tu arrive à faire un “truc” qui fonctionne, je veux bien m’occuper du php/html pour le mettre en ligne. :wink: