Notre objectif est de créer une version Desktop de Hello Phoenix. Dans la version Desktop, nous n’avons pas de serveur distant. Le serveur est intégré à l’application Desktop. L’application intègre les pages html/javascript pour l’interface utilisateur. La solution recherchée est comparable à ce qui se fait dans Electron.
Un projet Elixir Desktop existe, créé par Dominic Letz et présenté lors du Code Beam EU 2021. Nous allons tester la mise en place de ce projet pour la version Hello-Phoenix et créer une application toute simple qui affiche la page officielle Phoenix, comme pour notre projet hello_phoenix.
Analyse du projet Desktop et de ses pré-requis
Mise en place de l’environnement
Nous commençons par mettre en place l’environnement conseillé.
Regardons si d’autres articles existent
liste de projet d’étude sur elixir
conversation sur le projet hello
correction d’un projet humbrella
exemple mobile phone
projet ios expliquant comment commencer
projet android comment commencer
transformation en desktop d’une application phoenix
début des tests
on va commencer par vérifier qu’on a les pre-requis
puis on va modifier l’application selon la description ci-jointe
pour connaitre MSYS2
pour vérifier la présence de node et autre voir ce commentaire
Installation des pré-requis
La description des prérequis du projet Elixir-Desktop à installer :
- Erlang et Elixir
- Msys2
- Node et npm
- Nsis
Installation de Erlang et Elixir
Le projet Elixir-Desktop demande une version d’Erlang postérieure à la version OTP/24.
PS C:\Users\berou> elixir -v Erlang/OTP 25 [erts-13.0.4] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit:ns] Elixir 1.14.3 (compiled with Erlang/OTP 25) PS C:\Users\berou>
La version que nous avons installée pour Elixir/Erlang est conforme aux attentes du projet Elixir-Desktop
Installation de MSYS2
MSYS2 est un ensemble d’outil permettant de construire des application natives Windows. Un terminal en ligne de commande appelé mintty permet de réaliser l’ensemble des actions dans un environnement windows selon les même méthodes que celles que nous utilisons dans un environnement linux ou macOS. En particulier l’utilisation de pacman inclus dans msys2 est similaire à ce que nous faisons avec homebrew sur macOs
Nous suivons les instruction d’installation de la page msys2.
Nous téléchargeons puis exécutons le logiciel d’installation :
- msys2-x86_64-20230718.exe
Nous conservons l’option d’exécuter le terminal MSYS2 pour continuer l’installation en ligne de commande.
La documentation de Elixir-Desktop nous demande d’installer les packages suivants :
- pacman -Syu
- pacman -S –noconfirm pacman-mirrors pkg-config
- pacman -S –noconfirm –needed base-devel autoconf automake make libtool mingw-w64-x86_64-toolchain mingw-w64-x86_64-openssl mingw-w64-x86_64-libtool git
Réalisation de la commande pacman -Syu :
berou@LAPTOP-0SQHKMMQ UCRT64 ~ $ pacman -Syu :: Synchronizing package databases... clangarm64 1722.5 KiB 2.19 MiB/s 00:01 [################################] 100% mingw32 1797.1 KiB 1878 KiB/s 00:01 [################################] 100% mingw64 1936.8 KiB 2.12 MiB/s 00:01 [################################] 100% ucrt64 1976.7 KiB 2.05 MiB/s 00:01 [################################] 100% clang32 1776.2 KiB 1430 KiB/s 00:01 [################################] 100% clang64 1934.2 KiB 8.87 MiB/s 00:00 [################################] 100% msys 460.1 KiB 2.39 MiB/s 00:00 [################################] 100% :: Starting core system upgrade... warning: terminate other MSYS2 programs before proceeding resolving dependencies... looking for conflicting packages... Packages (2) msys2-runtime-3.4.8-1 pacman-6.0.2-8 Total Download Size: 7.99 MiB Total Installed Size: 44.86 MiB Net Upgrade Size: 0.53 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... msys2-runtime-3.4.8-1-x86_64 1834.5 KiB 2012 KiB/s 00:01 [################################] 100% pacman-6.0.2-8-x86_64 6.2 MiB 3.32 MiB/s 00:02 [################################] 100% Total (2/2) 8.0 MiB 4.01 MiB/s 00:02 [################################] 100% (2/2) checking keys in keyring [################################] 100% (2/2) checking package integrity [################################] 100% (2/2) loading package files [################################] 100% (2/2) checking for file conflicts [################################] 100% (2/2) checking available disk space [################################] 100% :: Processing package changes... (1/2) upgrading msys2-runtime [################################] 100% (2/2) upgrading pacman [################################] 100% :: To complete this update all MSYS2 processes including this terminal will be closed. Confirm to proceed [Y/n]
Suite de l’installation :
berou@LAPTOP-0SQHKMMQ MSYS ~ $ pacman -Syu :: Synchronizing package databases... clangarm64 is up to date mingw32 is up to date mingw64 is up to date ucrt64 is up to date clang32 is up to date clang64 is up to date msys is up to date :: Starting core system upgrade... there is nothing to do :: Starting full system upgrade... resolving dependencies... looking for conflicting packages... Packages (15) bsdtar-3.7.1-1 curl-8.2.1-1 file-5.45-1 gmp-6.3.0-1 gzip-1.13-1 less-643-1 libcurl-8.2.1-1 libgnutls-3.8.1-1 libgpgme-1.22.0-1 liblzma-5.4.4-1 libopenssl-3.1.2-1 libxml2-2.11.5-1 mpfr-4.2.1-1 openssl-3.1.2-1 xz-5.4.4-1 Total Download Size: 7.82 MiB Total Installed Size: 27.52 MiB Net Upgrade Size: 0.34 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... libopenssl-3.1.2-1-x86_64 1641.3 KiB 5.45 MiB/s 00:00 [################################] 100% openssl-3.1.2-1-x86_64 663.7 KiB 2.04 MiB/s 00:00 [################################] 100% libxml2-2.11.5-1-x86_64 512.6 KiB 1363 KiB/s 00:00 [################################] 100% curl-8.2.1-1-x86_64 857.4 KiB 2.01 MiB/s 00:00 [################################] 100% xz-5.4.4-1-x86_64 505.9 KiB 5.37 MiB/s 00:00 [################################] 100% gmp-6.3.0-1-x86_64 386.9 KiB 3.07 MiB/s 00:00 [################################] 100% bsdtar-3.7.1-1-x86_64 324.1 KiB 3.20 MiB/s 00:00 [################################] 100% libgnutls-3.8.1-1-x86_64 1394.1 KiB 1851 KiB/s 00:01 [################################] 100% file-5.45-1-x86_64 408.3 KiB 725 KiB/s 00:01 [################################] 100% mpfr-4.2.1-1-x86_64 380.6 KiB 724 KiB/s 00:01 [################################] 100% libgpgme-1.22.0-1-x86_64 362.9 KiB 682 KiB/s 00:01 [################################] 100% libcurl-8.2.1-1-x86_64 268.8 KiB 807 KiB/s 00:00 [################################] 100% gzip-1.13-1-x86_64 90.5 KiB 754 KiB/s 00:00 [################################] 100% liblzma-5.4.4-1-x86_64 85.0 KiB 787 KiB/s 00:00 [################################] 100% less-643-1-x86_64 121.9 KiB 192 KiB/s 00:01 [################################] 100% Total (15/15) 7.8 MiB 5.16 MiB/s 00:02 [################################] 100% (15/15) checking keys in keyring [################################] 100% (15/15) checking package integrity [################################] 100% (15/15) loading package files [################################] 100% (15/15) checking for file conflicts [################################] 100% (15/15) checking available disk space [################################] 100% :: Processing package changes... ( 1/15) upgrading liblzma [################################] 100% ( 2/15) upgrading libopenssl [################################] 100% ( 3/15) upgrading bsdtar [################################] 100% ( 4/15) upgrading openssl [################################] 100% ( 5/15) upgrading gmp [################################] 100% ( 6/15) upgrading less [################################] 100% ( 7/15) upgrading gzip [################################] 100% ( 8/15) upgrading libxml2 [################################] 100% ( 9/15) upgrading libcurl [################################] 100% (10/15) upgrading curl [################################] 100% (11/15) upgrading file [################################] 100% (12/15) upgrading libgnutls [################################] 100% (13/15) upgrading libgpgme [################################] 100% (14/15) upgrading mpfr [################################] 100% (15/15) upgrading xz [################################] 100% :: Running post-transaction hooks... (1/1) Updating the info directory file... berou@LAPTOP-0SQHKMMQ MSYS ~ $
Réalisation de la seconde commande : pacman -S –noconfirm pacman-mirrors pkg-config
berou@LAPTOP-0SQHKMMQ MSYS ~ $ pacman -S --noconfirm pacman-mirrors pkg-config warning: pacman-mirrors-20221016-1 is up to date -- reinstalling resolving dependencies... looking for conflicting packages... Packages (2) pacman-mirrors-20221016-1 pkgconf-2.0.2-1 Total Download Size: 0.06 MiB Total Installed Size: 0.30 MiB Net Upgrade Size: 0.29 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... pacman-mirrors-20221016-1-any 4.1 KiB 8.74 KiB/s 00:00 [################################] 100% pkgconf-2.0.2-1-x86_64 61.6 KiB 85.8 KiB/s 00:01 [################################] 100% Total (2/2) 65.7 KiB 84.9 KiB/s 00:01 [################################] 100% (2/2) checking keys in keyring [################################] 100% (2/2) checking package integrity [################################] 100% (2/2) loading package files [################################] 100% (2/2) checking for file conflicts [################################] 100% (2/2) checking available disk space [################################] 100% :: Processing package changes... (1/2) reinstalling pacman-mirrors [################################] 100% (2/2) installing pkgconf [################################] 100% berou@LAPTOP-0SQHKMMQ MSYS ~ $
Réalisation de la 3ème commande :
berou@LAPTOP-0SQHKMMQ MSYS ~ $ pacman -S --noconfirm --needed base-devel autoconf automake make libtool mingw-w64-x86_64-toolchain mingw-w64-x86_64-openssl mingw-w64-x86_64-libtool git :: There are 19 members in group mingw-w64-x86_64-toolchain: :: Repository mingw64 1) mingw-w64-x86_64-binutils 2) mingw-w64-x86_64-crt-git 3) mingw-w64-x86_64-gcc 4) mingw-w64-x86_64-gcc-ada 5) mingw-w64-x86_64-gcc-fortran 6) mingw-w64-x86_64-gcc-libgfortran 7) mingw-w64-x86_64-gcc-libs 8) mingw-w64-x86_64-gcc-objc 9) mingw-w64-x86_64-gdb 10) mingw-w64-x86_64-gdb-multiarch 11) mingw-w64-x86_64-headers-git 12) mingw-w64-x86_64-libgccjit 13) mingw-w64-x86_64-libmangle-git 14) mingw-w64-x86_64-libwinpthread-git 15) mingw-w64-x86_64-make 16) mingw-w64-x86_64-pkgconf 17) mingw-w64-x86_64-tools-git 18) mingw-w64-x86_64-winpthreads-git 19) mingw-w64-x86_64-winstorecompat-git Enter a selection (default=all): resolving dependencies... looking for conflicting packages... Packages (105) autoconf2.13-2.13-6 autoconf2.69-2.69-3 autoconf2.71-2.71-2 automake1.11-1.11.6-6 automake1.12-1.12.6-6 automake1.13-1.13.4-7 automake1.14-1.14.1-6 automake1.15-1.15.1-4 automake1.16-1.16.5-1 binutils-2.41-2 bison-3.8.2-5 diffstat-1.65-1 diffutils-3.10-1 dos2unix-7.5.0-1 flex-2.6.4-3 heimdal-7.8.0-4 libcbor-0.10.2-1 libfido2-1.13.0-1 libltdl-2.4.7-3 m4-1.4.19-2 mingw-w64-x86_64-bzip2-1.0.8-2 mingw-w64-x86_64-expat-2.5.0-1 mingw-w64-x86_64-gettext-0.21.1-2 mingw-w64-x86_64-gmp-6.3.0-1 mingw-w64-x86_64-isl-0.26-1 mingw-w64-x86_64-libffi-3.4.4-1 mingw-w64-x86_64-libiconv-1.17-3 mingw-w64-x86_64-libltdl-2.4.7-2 mingw-w64-x86_64-libsystre-1.0.1-4 mingw-w64-x86_64-libtre-git-r128.6fb7206-2 mingw-w64-x86_64-mpc-1.3.1-1 mingw-w64-x86_64-mpdecimal-2.5.1-1 mingw-w64-x86_64-mpfr-4.2.1-1 mingw-w64-x86_64-ncurses-6.4.20230708-1 mingw-w64-x86_64-python-3.11.5-2 mingw-w64-x86_64-readline-8.2.001-6 mingw-w64-x86_64-sqlite3-3.43.0-1 mingw-w64-x86_64-tcl-8.6.12-2 mingw-w64-x86_64-termcap-1.3.1-6 mingw-w64-x86_64-tk-8.6.12-2 mingw-w64-x86_64-tzdata-2023c-1 mingw-w64-x86_64-windows-default-manifest-6.4-4 mingw-w64-x86_64-xxhash-0.8.1-2 mingw-w64-x86_64-xz-5.4.4-1 mingw-w64-x86_64-zlib-1.3-1 mingw-w64-x86_64-zstd-1.5.5-1 openssh-9.4p1-1 patch-2.7.6-2 perl-Authen-SASL-2.16-3 perl-Clone-0.46-1 perl-Convert-BinHex-1.125-2 perl-Encode-Locale-1.05-2 perl-Error-0.17029-1 perl-File-Listing-6.16-1 perl-HTML-Parser-3.81-1 perl-HTML-Tagset-3.20-3 perl-HTTP-Cookies-6.10-2 perl-HTTP-Daemon-6.16-1 perl-HTTP-Date-6.05-1 perl-HTTP-Message-6.44-1 perl-HTTP-Negotiate-6.01-3 perl-IO-HTML-1.004-2 perl-IO-Socket-SSL-2.081-1 perl-IO-Stringy-2.113-1 perl-LWP-MediaTypes-6.04-1 perl-MIME-tools-5.510-1 perl-MailTools-2.21-1 perl-Net-HTTP-6.23-1 perl-Net-SMTP-SSL-1.04-2 perl-Net-SSLeay-1.92-4 perl-TermReadKey-2.38-5 perl-TimeDate-2.33-2 perl-Try-Tiny-0.31-1 perl-URI-5.19-1 perl-WWW-RobotRules-6.02-2 perl-libwww-6.67-1 texinfo-7.0.3-3 texinfo-tex-7.0.3-3 autoconf-wrapper-20221207-1 automake-wrapper-20221207-1 base-devel-2022.12-2 git-2.42.0-2 libtool-2.4.7-3 make-4.4.1-1 mingw-w64-x86_64-binutils-2.41-1 mingw-w64-x86_64-crt-git-11.0.0.r124.ge89de847d-1 mingw-w64-x86_64-gcc-13.2.0-2 mingw-w64-x86_64-gcc-ada-13.2.0-2 mingw-w64-x86_64-gcc-fortran-13.2.0-2 mingw-w64-x86_64-gcc-libgfortran-13.2.0-2 mingw-w64-x86_64-gcc-libs-13.2.0-2 mingw-w64-x86_64-gcc-objc-13.2.0-2 mingw-w64-x86_64-gdb-13.2-3 mingw-w64-x86_64-gdb-multiarch-13.2-3 mingw-w64-x86_64-headers-git-11.0.0.r124.ge89de847d-1 mingw-w64-x86_64-libgccjit-13.2.0-2 mingw-w64-x86_64-libmangle-git-11.0.0.r124.ge89de847d-1 mingw-w64-x86_64-libtool-2.4.7-2 mingw-w64-x86_64-libwinpthread-git-11.0.0.r124.ge89de847d-1 mingw-w64-x86_64-make-4.4-2 mingw-w64-x86_64-openssl-3.1.2-1 mingw-w64-x86_64-pkgconf-1~2.0.2-1 mingw-w64-x86_64-tools-git-11.0.0.r124.ge89de847d-1 mingw-w64-x86_64-winpthreads-git-11.0.0.r124.ge89de847d-1 mingw-w64-x86_64-winstorecompat-git-11.0.0.r124.ge89de847d-1 Total Download Size: 184.19 MiB Total Installed Size: 1197.03 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... mingw-w64-x86_64-python-3.1... 23.1 MiB 16.7 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-gcc-objc-1... 13.0 MiB 8.46 MiB/s 00:02 [################################] 100% mingw-w64-x86_64-libgccjit-... 10.4 MiB 17.0 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-openssl-3.... 7.3 MiB 11.8 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-gdb-multia... 6.8 MiB 8.70 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-binutils-2... 6.1 MiB 15.0 MiB/s 00:00 [################################] 100% mingw-w64-x86_64-headers-gi... 5.9 MiB 15.5 MiB/s 00:00 [################################] 100% git-2.42.0-2-x86_64 6.4 MiB 3.10 MiB/s 00:02 [################################] 100% mingw-w64-x86_64-gcc-ada-13... 20.6 MiB 4.61 MiB/s 00:04 [################################] 100% mingw-w64-x86_64-gdb-13.2-3-any 4.3 MiB 12.5 MiB/s 00:00 [################################] 100% mingw-w64-x86_64-gcc-13.2.0... 28.8 MiB 5.21 MiB/s 00:06 [################################] 100% binutils-2.41-2-x86_64 5.4 MiB 3.35 MiB/s 00:02 [################################] 100% mingw-w64-x86_64-crt-git-11... 3.3 MiB 3.24 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-gettext-0.... 3.3 MiB 3.54 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-tcl-8.6.12... 2.7 MiB 5.45 MiB/s 00:00 [################################] 100% mingw-w64-x86_64-ncurses-6.... 1799.5 KiB 5.34 MiB/s 00:00 [################################] 100% mingw-w64-x86_64-tk-8.6.12-... 2006.6 KiB 2.91 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-isl-0.26-1-any 1442.0 KiB 5.77 MiB/s 00:00 [################################] 100% mingw-w64-x86_64-sqlite3-3.... 1669.8 KiB 2.03 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-gcc-libs-1... 965.0 KiB 3.67 MiB/s 00:00 [################################] 100% texinfo-7.0.3-3-x86_64 1344.6 KiB 2.02 MiB/s 00:01 [################################] 100% mingw-w64-x86_64-gcc-libgfo... 881.5 KiB 3.42 MiB/s 00:00 [################################] 100% openssh-9.4p1-1-x86_64 971.3 KiB 1180 KiB/s 00:01 [################################] 100% bison-3.8.2-5-x86_64 777.2 KiB 1650 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-gcc-fortra... 11.3 MiB 1584 KiB/s 00:07 [################################] 100% mingw-w64-x86_64-libiconv-1... 719.8 KiB 1180 KiB/s 00:01 [################################] 100% mingw-w64-x86_64-gmp-6.3.0-... 577.8 KiB 2.01 MiB/s 00:00 [################################] 100% mingw-w64-x86_64-xz-5.4.4-1-any 672.1 KiB 951 KiB/s 00:01 [################################] 100% heimdal-7.8.0-4-x86_64 543.5 KiB 1349 KiB/s 00:00 [################################] 100% automake1.16-1.16.5-1-any 526.3 KiB 1487 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-zstd-1.5.5... 621.6 KiB 968 KiB/s 00:01 [################################] 100% automake1.15-1.15.1-4-any 513.4 KiB 1380 KiB/s 00:00 [################################] 100% automake1.14-1.14.1-6-any 503.1 KiB 2004 KiB/s 00:00 [################################] 100% make-4.4.1-1-x86_64 505.9 KiB 1105 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-readline-8... 504.9 KiB 793 KiB/s 00:01 [################################] 100% automake1.12-1.12.6-6-any 503.1 KiB 1227 KiB/s 00:00 [################################] 100% dos2unix-7.5.0-1-x86_64 440.9 KiB 1592 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-mpfr-4.2.1... 429.8 KiB 1885 KiB/s 00:00 [################################] 100% automake1.13-1.13.4-7-any 501.5 KiB 748 KiB/s 00:01 [################################] 100% automake1.11-1.11.6-6-any 490.2 KiB 838 KiB/s 00:01 [################################] 100% libtool-2.4.7-3-x86_64 397.2 KiB 1735 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-libtool-2.... 394.5 KiB 1578 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-mpdecimal-... 321.9 KiB 2.56 MiB/s 00:00 [################################] 100% mingw-w64-x86_64-tools-git-... 316.7 KiB 2.33 MiB/s 00:00 [################################] 100% flex-2.6.4-3-x86_64 303.8 KiB 2.18 MiB/s 00:00 [################################] 100% diffutils-3.10-1-x86_64 379.8 KiB 922 KiB/s 00:00 [################################] 100% autoconf2.69-2.69-3-any 284.5 KiB 1674 KiB/s 00:00 [################################] 100% m4-1.4.19-2-x86_64 238.1 KiB 1676 KiB/s 00:00 [################################] 100% autoconf2.71-2.71-2-any 328.6 KiB 554 KiB/s 00:01 [################################] 100% mingw-w64-x86_64-tzdata-202... 228.4 KiB 903 KiB/s 00:00 [################################] 100% perl-Net-SSLeay-1.92-4-x86_64 209.4 KiB 914 KiB/s 00:00 [################################] 100% perl-MIME-tools-5.510-1-any 183.6 KiB 927 KiB/s 00:00 [################################] 100% perl-IO-Socket-SSL-2.081-1-any 157.2 KiB 629 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-expat-2.5.... 155.8 KiB 660 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-make-4.4-2-any 135.1 KiB 872 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-xxhash-0.8... 106.1 KiB 1117 KiB/s 00:00 [################################] 100% perl-libwww-6.67-1-any 129.8 KiB 646 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-mpc-1.3.1-... 104.4 KiB 835 KiB/s 00:00 [################################] 100% autoconf2.13-2.13-6-any 137.4 KiB 342 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-zlib-1.3-1-any 104.1 KiB 646 KiB/s 00:00 [################################] 100% patch-2.7.6-2-x86_64 96.8 KiB 629 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-bzip2-1.0.... 89.1 KiB 373 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-libtre-git... 84.2 KiB 378 KiB/s 00:00 [################################] 100% perl-URI-5.19-1-any 80.3 KiB 436 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-pkgconf-1~... 83.7 KiB 301 KiB/s 00:00 [################################] 100% perl-MailTools-2.21-1-any 81.0 KiB 247 KiB/s 00:00 [################################] 100% perl-HTML-Parser-3.81-1-x86_64 80.2 KiB 461 KiB/s 00:00 [################################] 100% perl-HTTP-Message-6.44-1-any 77.1 KiB 419 KiB/s 00:00 [################################] 100% libfido2-1.13.0-1-x86_64 76.4 KiB 306 KiB/s 00:00 [################################] 100% perl-IO-Stringy-2.113-1-any 66.4 KiB 324 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-libltdl-2.... 50.6 KiB 320 KiB/s 00:00 [################################] 100% perl-LWP-MediaTypes-6.04-1-any 40.7 KiB 357 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-libffi-3.4... 42.5 KiB 116 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-winpthread... 39.9 KiB 150 KiB/s 00:00 [################################] 100% perl-Error-0.17029-1-any 39.4 KiB 171 KiB/s 00:00 [################################] 100% libltdl-2.4.7-3-x86_64 39.1 KiB 186 KiB/s 00:00 [################################] 100% perl-Authen-SASL-2.16-3-any 37.9 KiB 152 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-libwinpthr... 29.0 KiB 382 KiB/s 00:00 [################################] 100% diffstat-1.65-1-x86_64 29.2 KiB 185 KiB/s 00:00 [################################] 100% perl-HTTP-Date-6.05-1-any 28.9 KiB 192 KiB/s 00:00 [################################] 100% perl-Convert-BinHex-1.125-2-any 29.8 KiB 124 KiB/s 00:00 [################################] 100% perl-TimeDate-2.33-2-any 35.6 KiB 134 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-libsystre-... 24.0 KiB 228 KiB/s 00:00 [################################] 100% texinfo-tex-7.0.3-3-x86_64 26.1 KiB 184 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-termcap-1.... 28.0 KiB 98.0 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-winstoreco... 23.1 KiB 114 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-libmangle-... 22.2 KiB 99.5 KiB/s 00:00 [################################] 100% perl-Net-HTTP-6.23-1-any 22.8 KiB 57.4 KiB/s 00:00 [################################] 100% perl-HTTP-Cookies-6.10-2-any 21.9 KiB 104 KiB/s 00:00 [################################] 100% perl-TermReadKey-2.38-5-x86_64 20.5 KiB 90.2 KiB/s 00:00 [################################] 100% perl-Try-Tiny-0.31-1-any 19.8 KiB 80.1 KiB/s 00:00 [################################] 100% perl-HTTP-Daemon-6.16-1-any 18.7 KiB 107 KiB/s 00:00 [################################] 100% libcbor-0.10.2-1-x86_64 18.1 KiB 88.0 KiB/s 00:00 [################################] 100% perl-IO-HTML-1.004-2-any 14.4 KiB 67.4 KiB/s 00:00 [################################] 100% perl-HTTP-Negotiate-6.01-3-any 12.1 KiB 60.9 KiB/s 00:00 [################################] 100% perl-WWW-RobotRules-6.02-2-any 12.2 KiB 41.4 KiB/s 00:00 [################################] 100% perl-HTML-Tagset-3.20-3-any 10.9 KiB 50.3 KiB/s 00:00 [################################] 100% perl-Encode-Locale-1.05-2-any 10.7 KiB 59.9 KiB/s 00:00 [################################] 100% perl-Clone-0.46-1-x86_64 10.4 KiB 62.4 KiB/s 00:00 [################################] 100% autoconf-wrapper-20221207-1-any 5.0 KiB 39.7 KiB/s 00:00 [################################] 100% perl-File-Listing-6.16-1-any 10.3 KiB 46.6 KiB/s 00:00 [################################] 100% automake-wrapper-20221207-1-any 4.4 KiB 26.5 KiB/s 00:00 [################################] 100% perl-Net-SMTP-SSL-1.04-2-any 4.9 KiB 24.3 KiB/s 00:00 [################################] 100% mingw-w64-x86_64-windows-de... 3.1 KiB 20.5 KiB/s 00:00 [################################] 100% base-devel-2022.12-2-any 2.4 KiB 20.3 KiB/s 00:00 [################################] 100% Total (105/105) 184.2 MiB 13.9 MiB/s 00:13 [################################] 100% (105/105) checking keys in keyring [################################] 100% (105/105) checking package integrity [################################] 100% (105/105) loading package files [################################] 100% (105/105) checking for file conflicts [################################] 100% (105/105) checking available disk space [################################] 100% :: Processing package changes... ( 1/105) installing binutils [################################] 100% ( 2/105) installing m4 [################################] 100% ( 3/105) installing bison [################################] 100% ( 4/105) installing diffstat [################################] 100% ( 5/105) installing diffutils [################################] 100% ( 6/105) installing dos2unix [################################] 100% ( 7/105) installing flex [################################] 100% ( 8/105) installing texinfo [################################] 100% ( 9/105) installing texinfo-tex [################################] 100% ( 10/105) installing make [################################] 100% ( 11/105) installing patch [################################] 100% Optional dependencies for patch ed: for patch -e functionality ( 12/105) installing base-devel [################################] 100% ( 13/105) installing autoconf2.71 [################################] 100% ( 14/105) installing autoconf2.69 [################################] 100% ( 15/105) installing autoconf2.13 [################################] 100% ( 16/105) installing autoconf-wrapper [################################] 100% ( 17/105) installing automake1.11 [################################] 100% ( 18/105) installing automake1.12 [################################] 100% ( 19/105) installing automake1.13 [################################] 100% ( 20/105) installing automake1.14 [################################] 100% ( 21/105) installing automake1.15 [################################] 100% ( 22/105) installing automake1.16 [################################] 100% ( 23/105) installing automake-wrapper [################################] 100% ( 24/105) installing libltdl [################################] 100% ( 25/105) installing libtool [################################] 100% ( 26/105) installing mingw-w64-x86_64-libwinpthread-git [################################] 100% ( 27/105) installing mingw-w64-x86_64-gcc-libs [################################] 100% ( 28/105) installing mingw-w64-x86_64-zstd [################################] 100% ( 29/105) installing mingw-w64-x86_64-binutils [################################] 100% ( 30/105) installing mingw-w64-x86_64-headers-git [################################] 100% ( 31/105) installing mingw-w64-x86_64-crt-git [################################] 100% ( 32/105) installing mingw-w64-x86_64-gmp [################################] 100% ( 33/105) installing mingw-w64-x86_64-isl [################################] 100% ( 34/105) installing mingw-w64-x86_64-libiconv [################################] 100% ( 35/105) installing mingw-w64-x86_64-mpfr [################################] 100% ( 36/105) installing mingw-w64-x86_64-mpc [################################] 100% ( 37/105) installing mingw-w64-x86_64-windows-default-man... [################################] 100% ( 38/105) installing mingw-w64-x86_64-winpthreads-git [################################] 100% ( 39/105) installing mingw-w64-x86_64-zlib [################################] 100% ( 40/105) installing mingw-w64-x86_64-gcc [################################] 100% ( 41/105) installing mingw-w64-x86_64-gcc-ada [################################] 100% ( 42/105) installing mingw-w64-x86_64-gcc-libgfortran [################################] 100% ( 43/105) installing mingw-w64-x86_64-gcc-fortran [################################] 100% ( 44/105) installing mingw-w64-x86_64-gcc-objc [################################] 100% ( 45/105) installing mingw-w64-x86_64-expat [################################] 100% ( 46/105) installing mingw-w64-x86_64-gettext [################################] 100% ( 47/105) installing mingw-w64-x86_64-libtre-git [################################] 100% ( 48/105) installing mingw-w64-x86_64-libsystre [################################] 100% ( 49/105) installing mingw-w64-x86_64-ncurses [################################] 100% ( 50/105) installing mingw-w64-x86_64-bzip2 [################################] 100% ( 51/105) installing mingw-w64-x86_64-libffi [################################] 100% ( 52/105) installing mingw-w64-x86_64-mpdecimal [################################] 100% ( 53/105) installing mingw-w64-x86_64-openssl [################################] 100% Optional dependencies for mingw-w64-x86_64-openssl mingw-w64-x86_64-ca-certificates ( 54/105) installing mingw-w64-x86_64-termcap [################################] 100% ( 55/105) installing mingw-w64-x86_64-readline [################################] 100% ( 56/105) installing mingw-w64-x86_64-tcl [################################] 100% ( 57/105) installing mingw-w64-x86_64-sqlite3 [################################] 100% ( 58/105) installing mingw-w64-x86_64-tk [################################] 100% ( 59/105) installing mingw-w64-x86_64-xz [################################] 100% ( 60/105) installing mingw-w64-x86_64-tzdata [################################] 100% ( 61/105) installing mingw-w64-x86_64-python [################################] 100% ( 62/105) installing mingw-w64-x86_64-xxhash [################################] 100% ( 63/105) installing mingw-w64-x86_64-gdb [################################] 100% Optional dependencies for mingw-w64-x86_64-gdb mingw-w64-x86_64-python-pygments: for syntax highlighting ( 64/105) installing mingw-w64-x86_64-gdb-multiarch [################################] 100% Optional dependencies for mingw-w64-x86_64-gdb-multiarch mingw-w64-x86_64-python-pygments: for syntax highlighting ( 65/105) installing mingw-w64-x86_64-libgccjit [################################] 100% ( 66/105) installing mingw-w64-x86_64-libmangle-git [################################] 100% ( 67/105) installing mingw-w64-x86_64-make [################################] 100% ( 68/105) installing mingw-w64-x86_64-pkgconf [################################] 100% ( 69/105) installing mingw-w64-x86_64-tools-git [################################] 100% ( 70/105) installing mingw-w64-x86_64-winstorecompat-git [################################] 100% ( 71/105) installing mingw-w64-x86_64-libltdl [################################] 100% ( 72/105) installing mingw-w64-x86_64-libtool [################################] 100% ( 73/105) installing heimdal [################################] 100% ( 74/105) installing libcbor [################################] 100% ( 75/105) installing libfido2 [################################] 100% ( 76/105) installing openssh [################################] 100% ( 77/105) installing perl-Error [################################] 100% ( 78/105) installing perl-Authen-SASL [################################] 100% ( 79/105) installing perl-Encode-Locale [################################] 100% ( 80/105) installing perl-HTTP-Date [################################] 100% ( 81/105) installing perl-File-Listing [################################] 100% ( 82/105) installing perl-HTML-Tagset [################################] 100% ( 83/105) installing perl-Clone [################################] 100% ( 84/105) installing perl-IO-HTML [################################] 100% ( 85/105) installing perl-LWP-MediaTypes [################################] 100% ( 86/105) installing perl-URI [################################] 100% ( 87/105) installing perl-HTTP-Message [################################] 100% ( 88/105) installing perl-HTML-Parser [################################] 100% ( 89/105) installing perl-HTTP-Cookies [################################] 100% ( 90/105) installing perl-HTTP-Daemon [################################] 100% ( 91/105) installing perl-HTTP-Negotiate [################################] 100% ( 92/105) installing perl-Net-HTTP [################################] 100% ( 93/105) installing perl-WWW-RobotRules [################################] 100% ( 94/105) installing perl-Try-Tiny [################################] 100% ( 95/105) installing perl-libwww [################################] 100% Optional dependencies for perl-libwww perl-LWP-Protocol-https: for https:// url schemes ( 96/105) installing perl-TimeDate [################################] 100% ( 97/105) installing perl-MailTools [################################] 100% ( 98/105) installing perl-IO-Stringy [################################] 100% ( 99/105) installing perl-Convert-BinHex [################################] 100% module test... pass. (100/105) installing perl-MIME-tools [################################] 100% (101/105) installing perl-Net-SSLeay [################################] 100% (102/105) installing perl-IO-Socket-SSL [################################] 100% (103/105) installing perl-Net-SMTP-SSL [################################] 100% (104/105) installing perl-TermReadKey [################################] 100% (105/105) installing git [################################] 100% Optional dependencies for git python: various helper scripts subversion: git svn :: Running post-transaction hooks... (1/1) Updating the info directory file... berou@LAPTOP-0SQHKMMQ MSYS ~ $
Installation de la dernière version d’Elixir dans le dossier $HOME/elixir
Nous installation avec msys2 la version d’Elixir selon les instructions de la documentation de Elixir-Desktop
- mkdir $HOME/elixir && cd $HOME/elixir
- wget https://github.com/elixir-lang/elixir/releases/download/v1.12/Precompiled.zip
- unzip Precompiled.zip
- echo « export PATH=\ »$HOME/elixir/bin:\$PATH\ » » >> ~/.bashrc
- export PATH= »$HOME/elixir/bin:$PATH »
Dans la liste des instructions ci-dessus :
- $HOME est le répertoire : /home/berou
- / est le dossier de msys64 soit : c:\msys64
Nous prenons la photo de la variable d’environnement path windows, ne sachant pas si le PATH msys2 modifiera ou utilisera ce path ou encore dispose d’un path propre.
La variable msys2 $PATH avant installation :
berou@LAPTOP-0SQHKMMQ MSYS / $ echo $PATH /usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl berou@LAPTOP-0SQHKMMQ MSYS /
Nous exécutons les 2 premières commandes :
berou@LAPTOP-0SQHKMMQ MSYS ~ $ mkdir $HOME/elixir && cd $HOME/elixir berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $ wget https://github.com/elixir-lang/elixir/releases/download/v1.12/Precompiled.zip --2023-08-30 12:47:37-- https://github.com/elixir-lang/elixir/releases/download/v1.12/Precompiled.zip Loaded CA certificate '/usr/ssl/certs/ca-bundle.crt' Resolving github.com (github.com)... 140.82.121.4 Connecting to github.com (github.com)|140.82.121.4|:443... connected. HTTP request sent, awaiting response... 404 Not Found 2023-08-30 12:47:37 ERROR 404: Not Found. berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $
La version download/v1.12/Precompiled.zip n’est plus disponible. Nous devons trouver une version plus récente.
La dernière version que nous trouvons en Precompiled.zip est la version v1.13.4 :
- wget https://github.com/elixir-lang/elixir/releases/download/v1.13.4/Precompiled.zip
La numérotation des versions précompilées a changé. Nous avons la liste des versions disponibles :
Nous pouvons prendre la dernière version :
- wget https://github.com/elixir-lang/elixir/releases/download/v1.14.5/elixir-otp-25.zip
Execution de wget :
berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $ wget https://github.com/elixir-lang/elixir/releases/download/v1.14.5/elixir-otp-25.zip --2023-08-30 13:54:52-- https://github.com/elixir-lang/elixir/releases/download/v1.14.5/elixir-otp-25.zip Loaded CA certificate '/usr/ssl/certs/ca-bundle.crt' Resolving github.com (github.com)... 140.82.121.3 Connecting to github.com (github.com)|140.82.121.3|:443... connected. HTTP request sent, awaiting response... 302 Found Location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/1234714/53b2f24e-3cdd-40d3-9c99-e61643ee5b19?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230830%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230830T115453Z&X-Amz-Expires=300&X-Amz-Signature=b2b4689e4566c37847f5ab9bcc0e31801820fefb571ce2b40ee3d79b667cb553&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=1234714&response-content-disposition=attachment%3B%20filename%3Delixir-otp-25.zip&response-content-type=application%2Foctet-stream [following] --2023-08-30 13:54:53-- https://objects.githubusercontent.com/github-production-release-asset-2e65be/1234714/53b2f24e-3cdd-40d3-9c99-e61643ee5b19?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230830%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230830T115453Z&X-Amz-Expires=300&X-Amz-Signature=b2b4689e4566c37847f5ab9bcc0e31801820fefb571ce2b40ee3d79b667cb553&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=1234714&response-content-disposition=attachment%3B%20filename%3Delixir-otp-25.zip&response-content-type=application%2Foctet-stream Resolving objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.110.133, 185.199.108.133, 185.199.109.133, ... Connecting to objects.githubusercontent.com (objects.githubusercontent.com)|185.199.110.133|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 6684758 (6.4M) [application/octet-stream] Saving to: 'elixir-otp-25.zip' elixir-otp-25.zip 100%[===================================>] 6.38M 33.5MB/s in 0.2s 2023-08-30 13:54:53 (33.5 MB/s) - 'elixir-otp-25.zip' saved [6684758/6684758] berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $
Nous poursuivons l’installation :
- unzip elixir-otp-25.zip
berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $ unzip elixir-otp-25.zip -bash: unzip: command not found berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $
Nous devons installer unzip dans msys2 : pacman -S unzip
berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $ pacman -S unzip resolving dependencies... looking for conflicting packages... Packages (1) unzip-6.0-2 Total Download Size: 0.09 MiB Total Installed Size: 0.45 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... unzip-6.0-2-x86_64 93.1 KiB 123 KiB/s 00:01 [################################] 100% (1/1) checking keys in keyring [################################] 100% (1/1) checking package integrity [################################] 100% (1/1) loading package files [################################] 100% (1/1) checking for file conflicts [################################] 100% (1/1) checking available disk space [################################] 100% :: Processing package changes... (1/1) installing unzip [################################] 100% berou@LAPTOP-0SQHKMMQ MSYS ~/elixir $
Nous relançons la commande unzip elixir-otp-25.zip :
Nous réalisons l’enregistrement d’elixir dans le path :
berou@LAPTOP-0SQHKMMQ MSYS ~ $ elixir -v -bash: elixir: command not found berou@LAPTOP-0SQHKMMQ MSYS ~ $ echo "export PATH=\"$HOME/elixir/bin:\$PATH\"" >> ~/.bashrc berou@LAPTOP-0SQHKMMQ MSYS ~ $ export PATH="$HOME/elixir/bin:$PATH" berou@LAPTOP-0SQHKMMQ MSYS ~ $ elixir -v /home/berou/elixir/bin/elixir: line 248: exec: erl: not found berou@LAPTOP-0SQHKMMQ MSYS ~ $
Nous vérifions le path :
berou@LAPTOP-0SQHKMMQ MSYS ~ $ echo $PATH /home/berou/elixir/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl berou@LAPTOP-0SQHKMMQ MSYS ~ $
Le dossier /home/berou/elixir/bin est bien ajouté au $PATH avec $HOME en /home/berou
Nous devons regarder l’erreur :
- elixir/bin/elixir: line 248: exec: erl: not found
berou@LAPTOP-0SQHKMMQ MSYS ~ $ erlang -v -bash: erlang: command not found berou@LAPTOP-0SQHKMMQ MSYS ~ $
Nous devons soit installer erlang sous msys2 soit ajouter le chemin vers Erlang\bin dans le $PATH :
- C:\Program Files\Erlang OTP\bin
Cela donnera l’accès à erl.exe
Nous devons convertir le format windows du path en format Msys2 :
- cygpath -u C:\\ »Program Files »\\ »Erlang OTP »\\bin
berou@LAPTOP-0SQHKMMQ MSYS ~ $ cygpath -u C:\\"Program Files"\\"Erlang OTP"\\bin /c/Program Files/Erlang OTP/bin berou@LAPTOP-0SQHKMMQ MSYS ~ $
et pour ajouter le path :
- export PATH= »/c/Program Files/Erlang OTP/bin:$PATH »
- echo « export PATH=\ »/c/Program Files/Erlang OTP/bin:\$PATH\ » » >> ~/.bashrc
Maintenant nous avons bien la version d’Elixir qui s’affiche :
berou@LAPTOP-0SQHKMMQ MSYS ~ $ export PATH="/c/Program Files/Erlang OTP/bin:$PATH" berou@LAPTOP-0SQHKMMQ MSYS ~ $ echo "export PATH=\"/c/Program Files/Erlang OTP/bin:\$PATH\"" >> ~/.bashrc berou@LAPTOP-0SQHKMMQ MSYS ~ $ echo $PATH /c/Program Files/Erlang OTP/bin:/home/berou/elixir/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl berou@LAPTOP-0SQHKMMQ MSYS ~ $ elixir -v Erlang/OTP 25 [erts-13.0.4] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit:ns] Elixir 1.14.5 (compiled with Erlang/OTP 25) berou@LAPTOP-0SQHKMMQ MSYS ~ $
Il est possible que nous aurions pu utiliser cette méthode plutôt que de réinstaller elixir sous msys2.
Installation de Nodejs
Msys2 peut installer nodejs avec pacman
- pacman -S mingw-w64-x86_64-nodejs
berou@LAPTOP-0SQHKMMQ MSYS ~ $ pacman -S mingw-w64-x86_64-nodejs resolving dependencies... looking for conflicting packages... Packages (5) mingw-w64-x86_64-c-ares-1.19.1-1 mingw-w64-x86_64-icu-73.2-1 mingw-w64-x86_64-libuv-1.46.0-1 winpty-0.4.3-1 mingw-w64-x86_64-nodejs-18.17.0-2 Total Download Size: 36.74 MiB Total Installed Size: 195.43 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... mingw-w64-x86_64-c-ares-1.1... 210.8 KiB 357 KiB/s 00:01 [################################] 100% mingw-w64-x86_64-libuv-1.46... 231.3 KiB 286 KiB/s 00:01 [################################] 100% winpty-0.4.3-1-x86_64 500.5 KiB 577 KiB/s 00:01 [################################] 100% mingw-w64-x86_64-nodejs-18.... 13.6 MiB 7.14 MiB/s 00:02 [################################] 100% mingw-w64-x86_64-icu-73.2-1-any 22.3 MiB 11.2 MiB/s 00:02 [################################] 100% Total (5/5) 36.7 MiB 17.5 MiB/s 00:02 [################################] 100% (5/5) checking keys in keyring [################################] 100% (5/5) checking package integrity [################################] 100% (5/5) loading package files [################################] 100% (5/5) checking for file conflicts [################################] 100% (5/5) checking available disk space [################################] 100% :: Processing package changes... (1/5) installing mingw-w64-x86_64-c-ares [################################] 100% (2/5) installing mingw-w64-x86_64-icu [################################] 100% (3/5) installing mingw-w64-x86_64-libuv [################################] 100% (4/5) installing winpty [################################] 100% (5/5) installing mingw-w64-x86_64-nodejs [################################] 100% berou@LAPTOP-0SQHKMMQ MSYS ~ $
Nous avons le chemin vers nodejs/bin :
je prends le chemin de node.exe
- C:\msys64\mingw64\bin que nous mettons au format
- /c/msys64/mingw64/bin
Nous ajoutons le répertoire dans le path
- export PATH= »/c/msys64/mingw64/bin:$PATH »
- echo « export PATH=\ »/c/msys64/mingw64/bin:\$PATH\ » » >> ~/.bashrc
Et nous retestons l’installation de node :
berou@LAPTOP-0SQHKMMQ MSYS ~ $ node -v -bash: node: command not found berou@LAPTOP-0SQHKMMQ MSYS ~ $ export PATH="/c/msys64/mingw64/bin:$PATH" berou@LAPTOP-0SQHKMMQ MSYS ~ $ echo "export PATH=\"/c/msys64/mingw64/bin:\$PATH\"" >> ~/.bashrc berou@LAPTOP-0SQHKMMQ MSYS ~ $ node -v v18.17.0 berou@LAPTOP-0SQHKMMQ MSYS ~ $
Utilisation de nsis comme outil pour créer un installeur pour notre application
Nsis est un outil open source pour créer des logiciel d’installation Windows.
Sur la page de nsis, nous pouvons télécharger le logiciel d’instalaltion de nsis :
- nsis-3.09-setup.exe
Nous avons installé l’ensemble des pré-requis pour utiliser Elixir-Desktop
Conclusion
L’installation des prérequis a été assez longue. Pour simplifier la démarche d’installation des prérequis, après avoir vérifié qu’Elixir et Erlang sont installés, nous pouvons simplement ajouter le path de ces 2 logiciels dans $PATH de MSYS2.