#!/usr/bin/env bash # http://github.com/FreeCAD/FreeCAD/releases/ # debian is still on 0.16 but 0.17 is needed for current workbenches # the ppa has calculix-ccx eigen3 freecad-daily (0.18~beta1) opencascade # ppa:freecad-maintainers/freecad-daily # sudo add-apt-repository ppa:freecad-maintainers/freecad-daily # sudo apt update # groovy focal eoan disco cosmic bionic artful xenial trusty # daily: * * * * # stable: * * * * * # community: * * * * # elmer: * * * * * * # YOUR_UBUNTU_VERSION_HERE=noble # 24.04 LTS buster/sid YOUR_UBUNTU_VERSION_HERE=mantic # 22.04 LTS buster/sid # YOUR_UBUNTU_VERSION_HERE=jammy # 22.04 LTS buster/sid # YOUR_UBUNTU_VERSION_HERE=focal # 20.04 LTS buster/sid sudo bash -c "cat > /etc/apt/sources.list-available/freecad-daily.list" < /etc/apt/sources.list-available/freecad-stable.list" < /etc/apt/sources.list-available/freecad-community.list" < /etc/apt/sources.list-available/elmer.list" <&1 | tee ./make.log \ # wmake libso meshLibrary \ # wmake all executables \ # wmake all utilities # Build elmer from git apt update -o Acquire::CompressionTypes::Order::=gz && apt upgrade -y && apt install -y \ build-essential \ cmake \ git \ libblas-dev \ liblapack-dev \ libmumps-dev \ libparmetis-dev \ mpich \ sudo \ less # Clone the ElmerIce source code and compile Elmer/Ice #RUN git clone git://www.github.com/ElmerCSC/elmerfem -b elmerice elmerice \ # && mkdir elmerice/builddir \ # && cd elmerice/builddir \ # && cmake /home/elmerice \ # -DCMAKE_INSTALL_PREFIX=/usr/local/Elmer-devel \ # -DCMAKE_C_COMPILER=/usr/bin/gcc \ # -DCMAKE_Fortran_COMPILER=/usr/bin/gfortran \ # -DWITH_MPI:BOOL=TRUE -DWITH_Mumps:BOOL=TRUE \ # -DWITH_Hypre:BOOL=FALSE -DWITH_Trilinos:BOOL=FALSE \ # -DWITH_ELMERGUI:BOOL=FALSE -DWITH_ElmerIce:BOOL=TRUE \ # && make \ # && make install \ # && rm -R /home/elmerice # Mystran MYSTRAN_BUILD=/var/tmp/mystran_build mkdir -p ${MYSTRAN_BUILD} pushd ${MYSTRAN_BUILD} || exit git clone https://github.com/MYSTRANsolver/MYSTRAN.git mystran cd mystran || exit cmake . make -j"$(nproc)" #sudo make install # or; # sudo checkinstall make install popd || exit # pynastran # pip3 install pynastran pipx install pynastran