<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Nixos :: Fumi Web</title>
    <link>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/index.html</link>
    <description>Nixosのあれこれ&#xA;Info 重要な点としてここでの記事の内容は、Nix package managerが本質です。 そのためNixOSでなくても、LinuxやmacOSにNixを導入すれば、同様の手順で開発環境の再現ができます。&#xA;記事まとめ 基本情報 環境設定 Nix Flakeでプロジェクト開発環境を再現 root artemis 解析環境の再現 artemis-working-training 参考リンク Official page Nix package search Home manager option search</description>
    <generator>Hugo</generator>
    <language>ja-JP</language>
    <lastBuildDate>Sun, 06 Sep 2026 19:10:26 +0900</lastBuildDate>
    <atom:link href="https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>チュートリアル環境を構築</title>
      <link>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/train/index.html</link>
      <pubDate>Sun, 06 Sep 2026 19:10:26 +0900</pubDate>
      <guid>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/train/index.html</guid>
      <description>ここではfumi wiki:arteimsのチュートリルのサンプル環境を使えるようにします。&#xA;ここを参考に環境を整備して、チュートリアル通り実行していけば、良い練習になるかと思われます。&#xA;環境はartemis-workdir-trainingにあるので、まずはこのリポジトリをクローンします。&#xA;git clone https://github.com/FumiHubCNS/artemis-workdir-training.git cd artemis-workdir-training あとは以下で環境を構築すればOKです。&#xA;nix devlop 問題なく架橋に入れていたら以下のコマンドが実行できます。&#xA;artemis -l</description>
    </item>
    <item>
      <title>Artemisを使えるようにする</title>
      <link>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/artemis/index.html</link>
      <pubDate>Sun, 06 Sep 2026 19:09:58 +0900</pubDate>
      <guid>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/artemis/index.html</guid>
      <description>ここではartemisを実行できるようにします。&#xA;今回の場合、artemisはNixパッケージマネージャーには対応していないので、flake.nixでパッケージらしく扱うためのラップをします。&#xA;ラップ済みコードはartemis-flakeにあります。&#xA;そのためまずはコードを落としてきます。&#xA;git clone https://github.com/FumiHubCNS/artemis-flake.git cd artemis-flake 次に環境に入り、ビルドします。&#xA;nix develop nix build このようにするとresultなどにビルド済みのバイナリが生成されます。&#xA;あとは実行するのみです。&#xA;nix run .# または&#xA;result/bin/artemis で実行が可能になるはずです。&#xA;メモ 2026年9月現在では、フルスペック（GET Decorder, OpenMPI, etc…込）ではありません</description>
    </item>
    <item>
      <title>ROOTを使えるようにする</title>
      <link>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/root/index.html</link>
      <pubDate>Sun, 06 Sep 2026 19:09:37 +0900</pubDate>
      <guid>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/root/index.html</guid>
      <description>ここではNixOSでROOTを使えるようにする方法を書いておきます。&#xA;ROOTはNixパッケージに入っているので、すごく簡単です。&#xA;まずは以下のようなflake.nixを作成します。&#xA;{ description = &#34;root execution environment&#34;; inputs = { nixpkgs.url = &#34;github:nixos/nixpkgs?ref=nixos-unstable&#34;; flake-utils.url = &#34;github:numtide/flake-utils&#34;; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; in { devShells.default = pkgs.mkShell { name = &#34;my-root-project&#34;; packages = [ pkgs.root ]; }; } ); } ファイルを生成できたら、&#xA;nix flake update nix develop で、flake.lockを作成し、環境に入ればROOTが使えます。&#xA;サンプルコード 適当なヒストグラムを作成してみます。</description>
    </item>
    <item>
      <title>環境設定</title>
      <link>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/env/index.html</link>
      <pubDate>Sun, 06 Sep 2026 15:41:51 +0900</pubDate>
      <guid>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/env/index.html</guid>
      <description>ここでは、私のサーバーにNixOSインストールしたときの設定の一部、および書き方の備忘録を残しておきます。&#xA;OSの設定 まずはインストールしたあとのコマンドなどについてです。&#xA;NixOsでは/etc/nixosに、OSやUser、ソフトの設定を行うようです。&#xA;最初は&#xA;configuration.nix hardware-configuration.nix があります。&#xA;まずはconfiguration.nixを編集して設定などをかえます。&#xA;反映するためには&#xA;sudo nixos-rebuild switch を打つ必要があります。&#xA;書き方は色々ですが、configuration.nix内では&#xA;imports = [ ## Include the results of the hardware scan. ./hardware-configuration.nix ./i18n.nix ./host.nix ./avahi.nix ./user.nix ]; のような形でファイルを分離することもできます。&#xA;そこで色々設定しました。例えば以下&#xA;boot.kernelPackages = pkgs.linuxPackages_7_1; nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ wget git tmux ]; programs.neovim = { enable = true; defaultEditor = true; vimAlias = true; }; networking.firewall.allowedTCPPorts = [ 3389 ]; nix = { settings = { auto-optimise-store = true; experimental-features = [&#34;nix-command&#34; &#34;flakes&#34;]; }; gc = { automatic = true; dates = &#34;weekly&#34;; options = &#34;--delete-older-than 14d&#34;; }; }; hardware.graphics.enable = true; services.xserver.videoDrivers = [ &#34;nvidia&#34; ]; hardware.nvidia.open = true; などです。</description>
    </item>
    <item>
      <title>基本情報</title>
      <link>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/basic/index.html</link>
      <pubDate>Sun, 06 Sep 2026 15:06:13 +0900</pubDate>
      <guid>https://www.rcnp.osaka-u.ac.jp/~fendo/ja/wiki/nixos/basic/index.html</guid>
      <description>NixOSについて Nixパッケージマネージャ・ビルドシステムベースのLinux ディストリビューションです。&#xA;NixOSではOSの状態を設定ファイルに書き、その設定からシステムを構築するという設計になっています。&#xA;例えば&#xA;configuration.nix flake.nix flake.lock などに設定をあらわに書くことで、何をインストールして、どのサービスを有効化したのかを明示できます。&#xA;そのため新しいPCでも同じ設定を使えば、かなり近い環境を再構築で来ます。&#xA;Nixの良いところはバージョンの管理と再構成が簡単だということだと思います。&#xA;例えば、NixOSは設定変更のたびに新しいGenerationを作るため、新しい設定で問題が起きても、以前のGenerationに戻すことができます。&#xA;これはArmalinuxでライブラリー入れたりしているときに何を変更したのかわからなくなってしまう私のような人間に取っては嬉しいです。&#xA;/nix/store について Nixで入れたものは、/nix/storeに置かれます。&#xA;後述する設定ファイルを変更する事に上記のディレクトリに新たにパッケージを生成します。&#xA;例えば&#xA;/nix/store/&lt;hash&gt;-git-... /nix/store/&lt;hash&gt;-gcc-... /nix/store/&lt;hash&gt;-root-... のように保存されます。&#xA;そのため異なるバージョンのソフトウェアを共存させやすく、依存関係の衝突も起こりにくい設計になっています。&#xA;NixOSでのシステム（環境）管理方法 設定を次の3階層に分けて管理できます。&#xA;OS │ ├── NixOS │ └── configuration.nix │ ├── User │ └── Home Manager │ └── home.nix │ └── Project └── flake.nix └── nix develop NixOSはマシン全体、Home Managerはユーザー環境、flake.nix はプロジェクトごとの環境を設定します。</description>
    </item>
  </channel>
</rss>