Skip to content

Commit 2122cd8

Browse files
committed
Add nix to install options
1 parent eb5334a commit 2122cd8

File tree

1 file changed

+25
-10
lines changed

1 file changed

+25
-10
lines changed

README.md

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,40 @@ The wheels are accessible through a custom Python Package Index (PyPI) and can b
1212

1313
## Installation
1414

15-
MKL-accelerated wheels are available for 64-bit versions of Linux and Windows. There are no
16-
prerequisites apart from `pip` or `uv`; all dependencies are automatically installed by the package
17-
manager.
15+
MKL-accelerated wheels are available for 64-bit versions of Linux and Windows. If using one of the
16+
recommended package manager below, there are no other prerequisites; all dependencies — including
17+
Python if using uv or Nix — are automatically installed by the package manager.
1818

1919
**uv**
2020

2121
```sh
22-
# Run this from project directory
22+
# Create a Python project with uv.
2323
uv init
2424
uv add numpy scipy --index https://urob.github.io/numpy-mkl
2525
```
2626

2727
**pip**
2828

2929
```sh
30+
# Install globally or into active venv.
3031
pip install numpy scipy --extra-index-url https://urob.github.io/numpy-mkl
3132
```
3233

34+
**nix**
35+
36+
```sh
37+
# Create and run virtual devshell using Nix.
38+
nix flake init --template github:urob/numpy-mkl
39+
nix develop .
40+
```
41+
42+
**manual**
43+
44+
Wheels for manual installs can be [downloaded here](https://urob.github.io/numpy-mkl/). Manual
45+
installs must install compatible versions of `mkl-service`, `mkl`, and its indirect dependencies. It
46+
is recommended to install `mkl-service` from this repository, which has been patched to detect and
47+
autoload the `mkl` library at runtime.
48+
3349
## Cross-platform collaborations
3450

3551
MKL is only available on `x86-64` architectures, excluding macOS systems. When using `uv`, one can
@@ -71,12 +87,11 @@ The usual way to obtain MKL-accelerated NumPy and SciPy packages is through
7187
this repository is to provide an alternative for users who prefer to use `pip` or `uv` for package
7288
management. Other alternatives are listed below.
7389

74-
| | MKL | PyPI | Notes |
75-
| ------------------------------------------------------------------------------------------------------------------------------- | --- | ---- | -------------------------- |
76-
| This repository | Yes | Yes | |
77-
| [Intel(r) Distribution for Python](https://www.intel.com/content/www/us/en/developer/tools/oneapi/distribution-for-python.html) | Yes | Yes | Does not support NumPy 2.x |
78-
| [Numpy-mkl-wheels](https://github.com/cgohlke/numpy-mkl-wheels) | Yes | No | No Linux wheels |
79-
| [Python Package Index](https://pypi.org/) | No | Yes | Slow on Intel CPUs |
90+
| | Windows | Linux | Notes |
91+
| ------------------------------------------------------------------------------------------------------------------------------- | ------- | ----- | -------------------------- |
92+
| This repository | Yes | Yes | |
93+
| [Intel(r) Distribution for Python](https://www.intel.com/content/www/us/en/developer/tools/oneapi/distribution-for-python.html) | Yes | Yes | Does not support NumPy 2.x |
94+
| [Numpy-mkl-wheels](https://github.com/cgohlke/numpy-mkl-wheels) | Yes | No | Manual install only |
8095

8196
## Technical details
8297

0 commit comments

Comments
 (0)