Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
materiel:logicos:start [2026/03/16 11:58]
emoc [Logiciels installés]
materiel:logicos:start [2026/03/16 12:16] (Version actuelle)
emoc [Comment cette liste a été réalisée?]
Ligne 3: Ligne 3:
 **Pourquoi LogicOS ?**\\ **Pourquoi LogicOS ?**\\
 LogicOS équipe les ordinateurs mis à disposition des adhérent·e·s de l'​association. On peut y retrouver les logiciels spécifiques utilisés avec les machines de fabrication numérique du fablab, en particulier inkscape/​inkstitch,​ l'​extension inkscape-silhouette pour piloter la Cameo 4, cura slicer configuré pour les imprimantes 3D, etc.\\ LogicOS équipe les ordinateurs mis à disposition des adhérent·e·s de l'​association. On peut y retrouver les logiciels spécifiques utilisés avec les machines de fabrication numérique du fablab, en particulier inkscape/​inkstitch,​ l'​extension inkscape-silhouette pour piloter la Cameo 4, cura slicer configuré pour les imprimantes 3D, etc.\\
-Jusque là, nous avions des ordis installés au fil du temps avec des installations de logiciels différentes et différentes versions. Bref, le bazar!+Jusque là, nous avions des ordis installés au fil du temps avec des installations de logiciels différentes et différentes versions. Bref, le bazar! ​\\ 
 + 
 +En 2026, il s'agit de la première version, qui ne sera pas exempte de bugs et nécessitera de futures améliorations. Il est possible d'​indiquer en bas de page les bugs rencontrés et les améliorations souhaitées.
  
 **Quelle système ?**\\ **Quelle système ?**\\
Ligne 12: Ligne 14:
 Mot de passe : lpl\\ Mot de passe : lpl\\
 Ce compte ne peut pas utiliser sudo. La connexion en tant que superutilisateur est accessible à l'​utilisateur root avec un mot de passe spécifique Ce compte ne peut pas utiliser sudo. La connexion en tant que superutilisateur est accessible à l'​utilisateur root avec un mot de passe spécifique
 +
 +**Mise en place**\\
 +Les logiciels ont été installés et configurés sur un premier ordinateur par qui a permis de créer un //master//, puis clonés avec clonezilla. La procédure est documentée sur les pages suivantes :
 +  * [[materiel:​installation_ordinateurs|création du master et clonage]]
 +  * [[materiel:​configuration_ordinateurs|éléments de configuration]]
 +
 +**La version de LogicOS 2026 a été réalisée par [[https://​github.com/​jeromea-greta|Jejy]] dans le cadre d'un stage de BTS SIO.**
  
 ===== Logiciels installés ===== ===== Logiciels installés =====
Ligne 186: Ligne 195:
   * gnome-shell-extensions s'​installe sous le nom «extenqsion-manager»   * gnome-shell-extensions s'​installe sous le nom «extenqsion-manager»
  
 +==== Comment cette liste a été réalisée? ====
 +
 +Cette liste a été extraite au format csv depuis le [[https://​lite.framacalc.org/​systeme-polo-2025|framacalc]] qui a servi à l'​établir puis transformée au format dokuwiki par un script python écrit par un LLM, puis corrigée manuellement dans dokuwiki! Le script est ci-dessous.
 +
 +<​accordion>​
 +<panel title="​csv_to_dokuwiki.py (cliquer pour afficher le code)">​
 +<code python csv_to_dokuwiki.py>​
 +#​!/​usr/​bin/​env python3
 +
 +"""​
 +utilisation : python3 csv_to_dokuwiki.py systeme-logicos26.csv > sortie.txt
 +
 +20260316 / python 3.1.2 @ Tenko / code python réalisé par un LLM
 +
 +prompt :
 +
 +Script python3, sans dépendances pour passer d'un fichier csv à un format tableau dokuwiki. ​
 +Voila comment traiter chaque colonne : 
 +la ligne 1 fournit les entêtes
 +la ligne 2 n'est pas à traiter ​
 +Pour toutes les lignes suivantes ​
 +colonne A : si rempli, créer un nouveau tableau avec les lignes qui suivent ​
 +colonne B : ne pas traiter ​
 +colonne C : traiter uniquement si le caractère ! apparaît dans ce cas il faudra barrer le nom de la colonne D 
 +colonne D : faire apparaître le nom, si la colonne E est remplie faire de ce nom un lien avec l'url de la colonne E colonne E : voir colonne D 
 +colonne F : afficher «origine» et créer un lien vers l'URL contenue dans la colonne F 
 +colonne G : afficher ​
 +colonne H : afficher ​
 +colonne I : reprendre le texte en bas de page hors des tableaux ​
 +colonne J : ne pas traiter ​
 +colonne K : reprendre le texte en bas de page hors des tableaux ​
 +colonne L : reprendre en bas de page
 +"""​
 +
 +import csv
 +import sys
 +
 +def dokuwiki_link(text,​ url):
 +    if url:
 +        return f"​[[{url}|{text}]]"​
 +    return text
 +
 +def strike(text):​
 +    return f"<​del>​{text}</​del>"​
 +
 +def main(csv_file):​
 +    footnotes = []
 +
 +    with open(csv_file,​ newline='',​ encoding="​utf-8"​) as f:
 +        reader = csv.reader(f)
 +
 +        rows = list(reader)
 +
 +    headers = rows[0]
 +    current_table_open = False
 +
 +    for i, row in enumerate(rows[2:​],​ start=3): ​ # ligne 3 et suivantes
 +
 +        colA = row[0].strip() if len(row) > 0 else ""​
 +        colC = row[2].strip() if len(row) > 2 else ""​
 +        colD = row[3].strip() if len(row) > 3 else ""​
 +        colE = row[4].strip() if len(row) > 4 else ""​
 +        colF = row[5].strip() if len(row) > 5 else ""​
 +        colG = row[6].strip() if len(row) > 6 else ""​
 +        colH = row[7].strip() if len(row) > 7 else ""​
 +        colI = row[8].strip() if len(row) > 8 else ""​
 +        colK = row[10].strip() if len(row) > 10 else ""​
 +        colL = row[11].strip() if len(row) > 11 else ""​
 +
 +        # nouveau tableau si colonne A remplie
 +        if colA:
 +            if current_table_open:​
 +                print()
 +            print(f"​===== {colA} ====="​)
 +            print("​^ Nom ^ Origine ^ G ^ H ^")
 +            current_table_open = True
 +
 +        # traitement colonne D (nom + lien éventuel)
 +        name = colD
 +        if colE:
 +            name = dokuwiki_link(name,​ colE)
 +
 +        # si ! dans colonne C → barrer
 +        if "​!"​ in colC:
 +            name = strike(name)
 +
 +        # colonne F → lien origine
 +        origine = ""​
 +        if colF:
 +            origine = f"​[[{colF}|origine]]"​
 +
 +        print(f"​| {name} | {origine} | {colG} | {colH} |")
 +
 +        # collecte bas de page
 +        for note in (colI, colK, colL):
 +            if note:
 +                footnotes.append(note)
 +
 +    # affichage notes hors tableau
 +    if footnotes:
 +        print("​\n----\n"​)
 +        for n in footnotes:
 +            print(f"​* {n}")
 +
 +if __name__ == "​__main__":​
 +    if len(sys.argv) != 2:
 +        print("​Usage:​ csv_to_dokuwiki.py fichier.csv"​)
 +        sys.exit(1)
 +
 +    main(sys.argv[1])
 +</​code>​
 +</​panel>​
 +</​accordion>​
 +
 +===== Bugs rencontrés =====
 +
 +===== Améliorations souhaitées pour les prochaines versions =====
  
  • materiel/logicos/start.1773658691.txt.gz
  • Dernière modification: 2026/03/16 11:58
  • par emoc