@@ -20,6 +20,21 @@ <h3>A. Installing MSYS2</h3>
2020 C:\msys64 </ span
2121 > .
2222</ p >
23+ < p >
24+ Some versions of Windows are too old to support the default MSYS2 installer.
25+ In such cases, download this alternative
26+ < a href ="{{ proxy_path }}/msys2/repo/distrib/msys2-x86_64-latest.sfx.exe "
27+ > executable</ a
28+ >
29+ and run it. It will unpack the
30+ < span
31+ style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
32+ > msys64</ span
33+ >
34+ folder into your Downloads folder. Copy this folder to the default MSYS2
35+ location, and run the UCRT64 executable within it to proceed with the
36+ installation as normal.
37+ </ p >
2338< h3 > B. Setting Up MSYS2</ h3 >
2439< h4 > i. Setting Up the MSYS2 Package Manager (If Network-Restricted)</ h4 >
2540< p >
@@ -39,7 +54,7 @@ <h4>i. Setting Up the MSYS2 Package Manager (If Network-Restricted)</h4>
3954< pre
4055 style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
4156>
42- C:\msys64\etc\pacman.d
57+ C:\msys64\etc\pacman.d
4358</ pre >
4459< h4 > ii. Installing Dependencies</ h4 >
4560< p >
@@ -51,11 +66,11 @@ <h4>ii. Installing Dependencies</h4>
5166< pre
5267 style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
5368>
54- $ pacman -Syu
55- $ pacman -S msys2-runtime
56- $ pacman -S rsync
57- $ pacman -S mingw-w64-ucrt-x86_64-python-pip
58- $ pacman -S mingw-w64-ucrt-x86_64-rust
69+ $ pacman -Syu
70+ $ pacman -S msys2-runtime
71+ $ pacman -S rsync
72+ $ pacman -S mingw-w64-ucrt-x86_64-python-pip
73+ $ pacman -S mingw-w64-ucrt-x86_64-rust
5974</ pre >
6075< p >
6176 Other utility packages such as
@@ -74,6 +89,60 @@ <h4>ii. Installing Dependencies</h4>
7489 > pacman -Ss <package-name></ span
7590 >
7691</ p >
92+ < h4 > Downgrading Python packages</ h4 >
93+ < p >
94+ MSYS2 current installs Python 3.14 by default, which we have not rigorously
95+ tested Murfey with. For now, we downgrade to Python 3.12.12, which is known to
96+ work with Murfey. To do so, download the following packages:
97+ </ p >
98+ < ul >
99+ < li >
100+ < a
101+ href ="{{ proxy_path }}/msys2/repo/mingw/ucrt64/mingw-w64-ucrt-x86_64-python-3.12.12-1-any.pkg.tar.zst "
102+ style ="
103+ font-family: Consolas, Monaco, "Lucida Console", monospace;
104+ "
105+ > mingw-w64-ucrt-x86_64-python-3.12.12-1-any.pkg.tar.zst</ a
106+ >
107+ </ li >
108+ < li >
109+ < a
110+ href ="{{ proxy_path }}/msys2/repo/mingw/ucrt64/mingw-w64-ucrt-x86_64-python-distlib-0.4.0-2-any.pkg.tar.zst "
111+ style ="
112+ font-family: Consolas, Monaco, "Lucida Console", monospace;
113+ "
114+ > mingw-w64-ucrt-x86_64-python-distlib-0.4.0-2-any.pkg.tar.zst</ a
115+ >
116+ </ li >
117+ < li >
118+ < a
119+ href ="{{ proxy_path }}/msys2/repo/mingw/ucrt64/mingw-w64-ucrt-x86_64-python-pip-25.3-2-any.pkg.tar.zst "
120+ style ="
121+ font-family: Consolas, Monaco, "Lucida Console", monospace;
122+ "
123+ > mingw-w64-ucrt-x86_64-python-pip-25.3-2-any.pkg.tar.zst</ a
124+ >
125+ </ li >
126+ < li >
127+ < a
128+ href ="{{ proxy_path }}/msys2/repo/mingw/ucrt64/mingw-w64-ucrt-x86_64-python-setuptools-80.9.0-2-any.pkg.tar.zst "
129+ style ="
130+ font-family: Consolas, Monaco, "Lucida Console", monospace;
131+ "
132+ > mingw-w64-ucrt-x86_64-python-setuptools-80.9.0-2-any.pkg.tar.zst</ a
133+ >
134+ </ li >
135+ </ ul >
136+ < p >
137+ These files will be placed in your account's Downloads folder by default, and
138+ can then be installed using the following command:
139+ </ p >
140+ < pre
141+ style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
142+ >
143+ $ pacman -U /c/Users/<username>/Downloads/<package-name></ pre
144+ >
145+
77146< h4 > iii. Configuring the Rust Package Manager (If Network-Restricted)</ h4 >
78147< p >
79148 Many newer Python packages now have dependencies written in Rust that allow
@@ -119,13 +188,13 @@ <h4>iii. Configuring the Rust Package Manager (If Network-Restricted)</h4>
119188< pre
120189 style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
121190>
122- %USERPROFILE%\.cargo
191+ %USERPROFILE%\.cargo
123192</ pre >
124193< p > For a user named Murfey, for example, this would take the form:</ p >
125194< pre
126195 style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
127196>
128- C:\Users\Murfey\.cargo
197+ C:\Users\Murfey\.cargo
129198</ pre >
130199< p >
131200 With this file configured,
@@ -154,9 +223,9 @@ <h3>A. (Optional) Setting Up a Virtual Environment</h3>
154223< pre
155224 style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
156225>
157- $ pip install virtualenv --index-url {{ request.url.scheme }}://{{ netloc }}{{ proxy_path }}/pypi --trusted-host {{ netloc }}
158- $ virtualenv your-env-name # Create the virtual environment
159- $ source your-env-name/bin/activate # Activate the virtual environment
226+ $ pip install virtualenv --index-url {{ request.url.scheme }}://{{ netloc }}{{ proxy_path }}/pypi --trusted-host {{ netloc }}
227+ $ virtualenv your-env-name # Create the virtual environment
228+ $ source your-env-name/bin/activate # Activate the virtual environment
160229</ pre >
161230< h3 > B. Installing Murfey</ h3 >
162231< p >
@@ -166,6 +235,40 @@ <h3>B. Installing Murfey</h3>
166235< pre
167236 style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
168237>
169- $ pip install murfey --index-url {{ request.url.scheme }}://{{ netloc }}{{ proxy_path }}/pypi/index --trusted-host {{ netloc }}
238+ $ pip install murfey --index-url {{ request.url.scheme }}://{{ netloc }}{{ proxy_path }}/pypi/index --trusted-host {{ netloc }}
170239</ pre >
240+
241+ < h4 > Installing Pillow</ h4 >
242+ < p >
243+ Python's Pillow package will be needed for certain instruments. This will
244+ require the installation of additional image libraries in
245+ < span
246+ style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
247+ > pacman</ span
248+ > :
249+ </ p >
250+ < pre
251+ style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
252+ >
253+ $ pacman -S \
254+ mingw-w64-ucrt-x86_64-freetype \
255+ mingw-w64-ucrt-x86_64-giflib \
256+ mingw-w64-ucrt-x86_64-lcms2 \
257+ mingw-w64-ucrt-x86_64-libjpeg-turbo \
258+ mingw-w64-ucrt-x86_64-libpng \
259+ mingw-w64-ucrt-x86_64-libtiff \
260+ mingw-w64-ucrt-x86_64-libwebp \
261+ mingw-w64-ucrt-x86_64-openjpeg2 \
262+ mingw-w64-ucrt-x86_64-zlib
263+ </ pre >
264+ < p >
265+ Once the necessary libraries have been installed, Pillow can be installed by
266+ running the following command:
267+ </ p >
268+ < pre
269+ style ="font-family: Consolas, Monaco, "Lucida Console", monospace "
270+ >
271+ $ ZLIB_ROOT="/ucrt64" pip install pillow --index-url {{ request.url.scheme }}://{{ netloc }}{{ proxy_path }}/pypi/index --trusted-host {{ netloc }}
272+ </ pre >
273+
171274{% endblock %}
0 commit comments