0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

NixOSでJuliaを使えるようにする

Last updated at Posted at 2023-01-22

タイトルのことを実現するのは,ちょっと前まで手間がかかったし,あまり綺麗じゃない回避策って感じでした.最近調べ直したところ,手軽に実現する方法が提示されていたため共有します.

項目 詳細
目的 NixOS上で(正道な感じの設定で)Juliaが動くようにしたい
注意 私はNixOSおよびNixは素人という点をご留意ください

問題点

NixOSはFHSを準拠としたOSの設計になっておらず, /lib64/ld-linux-x86-64.so.2 等の
動的リンクへアクセスできないことが原因となり素直には動いてくれません.

このことは他の方の 過去記事1過去記事2 でも指摘されていますが,私はNix特有のoverlay等をまだ把握しておらず,メンテが難しそうな解決策は避けたい気持ちです.

この問題はより一般的な視点として,NixOS向けにパッチがあてられたJuliaバイナリが配布されていないことに起因するようです (参考,動的リンクあたりよくわからん).

解決策

nix-ld というものを使ってこの問題を解決します.実際に必要な対応は リンク先L.250-252 を追記の上,

$ sudo nix-channel --add https://github.com/Mic92/nix-ld/archive/main.tar.gz nix-ld
$ sudo nix-channel --update
$ sudo nixos-rebuild switch

を実行・再起動した後, Juliaup のインストールをして julia を実行すれば動くかと思います.

未確認な事

  • vscodeでの実行に問題がないか
  • Plot関連含め,色々なライブラリの挙動に問題ないか

蛇足

日本語入力やLUKS on LVM等は簡単に実現できるので,自分みたいなちょっといじる程度のLinuxユーザにとっては,相当便利なOSになってきてると思います.

既に色んな記事で紹介されていると思いますが

あたりで実現しています.自動生成される hardware-configuration.nix との兼ね合いで hardware-configuration.nix の記述の一部をコメントアウトする必要がありますが,その点を除けばリンク先の設定ファイルをコピーして nixos-install すればほぼ私の環境が再現できます(i3の設定等は別).

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?