Просмотр исходного кода

corr

Signed-off-by: Jean-Michel Batto <jmbatto@eldarsoft.com>
Jean-Michel Batto 3 недель назад
Родитель
Сommit
adf41bdb7a
2 измененных файлов с 20 добавлено и 19 удалено
  1. 19 18
      Dockerfile
  2. 1 1
      redo-20260123.txt

+ 19 - 18
Dockerfile

@@ -32,7 +32,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
     # Libs scientifiques PDI
     libhdf5-dev libz-dev \
     # X11 & Xvfb (Pour ProfileView headless)
-    libx11-6 libxext6 libxrender1 libxtst6 xauth xvfb \
+    libx11-6 libxext6 libxrender1 libxtst6 xauth xvfb dbus-x11 \
     # OpenGL Logiciel (Indispensable pour GTK4 dans Docker)
     libgl1-mesa-dri libgl1 \
     # Dépendances GTK4 / Cairo / GDK complètes
@@ -130,35 +130,36 @@ RUN git clone --depth 1 https://github.com/pdidev/pdi.git . && \
 #    # On applique aussi sur libjulia-internal par sécurité
 #    find $JULIA_PATH -name "libjulia-internal.so*" -exec patchelf --clear-execstack {} \; && \
 #    find $JULIA_PATH -type f -name "*.so*" -exec patchelf --clear-execstack {} \; 
-
+ENV LD_LIBRARY_PATH=/usr/local/julia/lib:/usr/local/julia/lib/julia:/usr/local/lib:/usr/lib/x86_64-linux-gnu
 ENV GKSwstype=100
 ENV JULIA_PKG_PRECOMPILE_AUTO=0
 ENV JULIA_PKG_USE_CLI_GIT=true
-# RUN julia -e 'import Pkg; \
-#    Pkg.add([ \
-#        "HDF5"])'
-# RUN xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24 -nolisten tcp" \
-#	julia -e 'import Pkg; \
-#       Pkg.add([ \		
+ RUN julia -e 'import Pkg; \
+    Pkg.add([ \
+        "HDF5"])'
+ RUN xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24 -nolisten tcp" \
+	julia -e 'import Pkg; \
+       Pkg.add([ \		
 #        "Plots", \
-#        "DataFrames", \
-#        "Gtk4", \
-#        "Gtk", \
-#        "ProfileView", \
-#        "PProf", \
-#        "Reexport" \
-#    ])'
+        "DataFrames", \
+        "Gtk4", \
+        "Gtk", \
+        "ProfileView", \
+        "PProf", \
+        "Reexport" \
+    ])'
 
 # ÉTAPE B : ACTION CORRECTIVE CRITIQUE
 # Pkg.add a téléchargé des artifacts (.so) qui violent la sécurité execstack.
 # On doit les patcher AVANT que Julia ne tente de les charger pour la précompilation.
 #RUN echo "Patching des artifacts téléchargés dans .julia..." && \
 #    find /root/.julia -name "*.so*" -exec patchelf --clear-execstack {} \; 
-
+ENV LD_LIBRARY_PATH = ""
 # ÉTAPE C : Précompilation (Maintenant c'est sûr)
 # On utilise xvfb-run car Gtk/ProfileView ont besoin d'un serveur X, même virtuel.
-#RUN xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24 -nolisten tcp" \
-#    julia -e 'import Pkg; Pkg.precompile()'
+RUN xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24 -nolisten tcp" \
+    julia -e 'import Pkg; Pkg.precompile()'
+ENV LD_LIBRARY_PATH=/usr/local/julia/lib:/usr/local/julia/lib/julia:/usr/local/lib:/usr/lib/x86_64-linux-gnu
 # -----------------------------------------------------------------------------
 # 5. Création de l'utilisateur (Structure décomposée conservée)
 # -----------------------------------------------------------------------------

+ 1 - 1
redo-20260123.txt

@@ -21,4 +21,4 @@ init:
 
 # Votre commande de run existante
 run-convergence:
-	julia --project=../Flower.jl --threads=1 ../Flower.jl/examples/convergence.jl ../Flower.jl/examples/convergence_diffusion_constant_conductivity_bubble_wall_Newton.yml
+	xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24 -nolisten tcp julia --project=../Flower.jl --threads=1 ../Flower.jl/examples/convergence.jl ../Flower.jl/examples/convergence_diffusion_constant_conductivity_bubble_wall_Newton.yml