(Translated by https://www.hiragana.jp/)
GNU Guix - Wikipedia コンテンツにスキップ

GNU Guix

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』
GNU Guix
最新さいしんばん
1.1.0[1] / 2020ねん4がつ15にち (4ねんまえ) (2020-04-15)
リポジトリ ウィキデータを編集
プログラミング
言語げんご
Guile Scheme, C++ (Nix core)
ライセンス GPLv3+
公式こうしきサイト guix.gnu.org
テンプレートを表示ひょうじ

GNU Guixは、クロスプラットフォームパッケージマネージャで、インスタンス生成せいせいオペレーティングシステム (OS) の管理かんりUnixけいでするためのツールでもある。GuileスキームAPIつNixパッケージマネージャにもとづき、完全かんぜんフリーソフトウェアである[2]伝統でんとうてきなパッケージマネージャとことなり、GuixはNixのように、ソフトウェアハッシュによって生成せいせいされた単一たんいつディレクトリインストールされるという、純粋じゅんすい関数かんすうてきなデプロイのモデルを利用りようしている。それぞれのソフトウェアの依存いぞん関係かんけいはそれぞれのハッシュにふくまれており、依存いぞん地獄じごく問題もんだい解決かいけつする[3]。このパッケージ管理かんりたいするアプローチは、より信頼しんらいせいがあり、ポータブルで再現さいげんせいのあるパッケージを生成せいせいすることを約束やくそくする[4]

GNU Guixの開発かいはつは、Guixシステムの開発かいはつからっており、これは完全かんぜんにインストール可能かのうなGNUシステムでLinux-libreカーネルとGNU Shephered initシステムをもちいている[5]

Guixのロールバック機能きのうは、Nixの設計せっけいによるもので、これはDebianArch LinuxFedoraCentOSopenSUSEとそれぞれの派生はせいぶつにはられないものである。

プロジェクトは、ボランティアチームによりインターネットつうじて管理かんりされており、これはメンバーとともにフランス営利えいり組織そしきGuix Europeにまれている[6]

特徴とくちょう

[編集へんしゅう]

以下いか特徴とくちょうはGuixのパッケージ管理かんり機能きのう関連かんれんしている。下記かきのGuixシステムの特徴とくちょう参照さんしょうのこと。

Nixの設計せっけいぎ、パッケージマネージャの内容ないようだい部分ぶぶんは、/gnu/storeディレクトリに保存ほぞんされている。このディレクトリは、Guixデーモンのみに許可きょか権限けんげんがある。

ガーベジコレクション

[編集へんしゅう]

GuixはNixのように、まれたガベージコレクション機能きのうっており、これはdead状態じょうたいのストアのアイテムをlive状態じょうたいたもつのに役立やくだ[7].。

プロファイル

[編集へんしゅう]

Guixのパッケージは、プロファイル生成せいせい使つかっており、これはストアアイテムをあつめ、ユーザがなにをインストールしたかを特定とくていするシムリンクの集合しゅうごうである。パッケージがインストール、削除さくじょされるたびに毎回まいかいあたらしい生成せいせい構築こうちくされる。

ロールバック

[編集へんしゅう]

Guixのパッケージは、シムリンクをよりはや時期じきのプロファイル生成せいせい変更へんこうすることをつうじて以前いぜんのプロファイル生成せいせい手軽てがるにロールバックすることを可能かのうにする[8]

環境かんきょう

[編集へんしゅう]

Guixの環境かんきょうは、ユーザーに複数ふくすうのプロジェクトの依存いぞんでデフォルトのプロファイルに問題もんだいこされることなく、ソフトウェア開発かいはつ必要ひつようなパッケージをふく環境かんきょうはいることを可能かのうにする[9]

Guix packは、ユーザにストアアイテムを複数ふくすう同時どうじたばねることを可能かのうにし、Dockerバイナリのイメージや、さい配置はいち可能かのうなtarball、squashfsバイナリなどに出力しゅつりょくすることを可能かのうにする[10]

Guix packは、ユーザにパッケージとその依存いぞん関係かんけいことなったグラフることを可能かのうにする[11]

Guix System Distribution

[編集へんしゅう]

Guix System以前いぜんGuixSDばれていた)は、Linuxディストリビューションで、GNU Guixパッケージマネージャをもちいて構築こうちくされている[12]。このディストリビューションは、宣言せんげんてきなOSの設定せってい[13]可能かのうにし、また容易よういにロールバックできる信頼しんらいせいのあるシステムをも可能かのうにしている[14]。システムは、GNU Hurdカーネルの開発かいはつちゅうのサポートとともに、Linux-libreカーネルを使つかっている。2015ねん2がつ3にち、このディストリビューションはFSFのフリーなLinuxディストリビューションのリストにくわえられた[15]

アーキテクチャのサポート

[編集へんしゅう]

IA-32x64AArch32/64がサポートされており[16]、また2019ねん4がつにはPOWER9のサポートのための作業さぎょう進行しんこうちゅうである[17]

機能きのう

[編集へんしゅう]

システムサービス

[編集へんしゅう]

システムサービスは、Guixシステムのかくとなる機能きのうで、ユーザに宣言せんげんてきなデーモンとバックグランドサービスの設定せってい構成こうせい容易ようい適切てきせつ設定せってい定義ていぎすることを可能かのうにする。

GNU Shephred Init system

[編集へんしゅう]

Guixシステムは、GNU Shepherdデーモンをinitシステムとして使つかっており、Guixの開発かいはつあわせでおこなわれ、またこのデーモンはGuileかれている。これは以前いぜん "dmd"("Daemon managing Daemons"または"Daemons-managing Daemon")としてられていたが、Digital MarsのDコンパイラとの名前なまえ競合きょうごうけるために名称めいしょう変更へんこうされた[18]

リリースと安定あんていせい

[編集へんしゅう]

最新さいしんのGuixシステムは、不安定ふあんていばん開発かいはつGitリポジトリにのみあり[19]、これはGuixによって共有きょうゆうされているが、チャンネル機能きのう使つかうことで、ユーザや組織そしき安定あんていばんのリリースチャンネルにすることも可能かのうである[20]

歴史れきし

[編集へんしゅう]

GNUプロジェクトは、2012ねん11月にGNU Guixの最初さいしょのリリースを宣言せんげんした。これはNixをベースとした機能きのうてきなパッケージマネージャで、GuileスキームAPIを提供ていきょうしていた[21]。プロジェクトはGNU GuileのLudovic Courtèsによって2012ねん6がつにスタートされた[22]2015ねん8がつ20日はつかには、GuixがGNU Hurd移植いしょくされたことが宣言せんげんされた[23]

関連かんれん項目こうもく

[編集へんしゅう]

脚注きゃくちゅう

[編集へんしゅう]

出典しゅってん

[編集へんしゅう]
  1. ^ Ludovic Courtès, Marius Bakke (2020ねん4がつ15にち). “GNU Guix 1.1.0 released”. 2020ねん4がつ17にち閲覧えつらん
  2. ^ Functional Package Management with Guix
  3. ^ Prins, P., Suresh, J. and Dolstra, E., "Nix fixes dependency hell on all Linux distributions," linux.com, December 22, 2008
  4. ^ Dolstra, E. The Purely Functional Software Deployment Model. PhD thesis, Faculty of Science, Utrecht, The Netherlands. January 2006. ISBN 90-393-4130-3.
  5. ^ Programming Interface (GNU Guix Reference Manual)
  6. ^ guix-europe”. git.savannah.gnu.org. 2019ねん5がつ16にち閲覧えつらん
  7. ^ Invoking guix gc”. gnu.org. 2019ねん5がつ16にち閲覧えつらん
  8. ^ Invoking guix package”. gnu.org. 2019ねん5がつ16にち閲覧えつらん
  9. ^ Invoking guix environment”. gnu.org. 2019ねん5がつ16にち閲覧えつらん
  10. ^ Invoking guix pack”. gnu.org. 2019ねん5がつ16にち閲覧えつらん
  11. ^ Invoking guix graph”. gnu.org. 2019ねん5がつ16にち閲覧えつらん
  12. ^ List of Free GNU/Linux Distributions”. 2015ねん2がつ3にち閲覧えつらん
  13. ^ Using the Configuration System”. gnu.org. 2019ねん4がつ27にち閲覧えつらん
  14. ^ Package Management”. gnu.org. 2019ねん4がつ27にち閲覧えつらん
  15. ^ FSF adds Guix System Distribution to list of endorsed distributions”. Free Software Foundation (2015ねん2がつ3にち). 2015ねん2がつ3にち閲覧えつらん
  16. ^ Download”. gnu.org. 2019ねん4がつ27にち閲覧えつらん
  17. ^ "Patch adding POWER9 cross compile support" (Mailing list). 2019ねん4がつ27にち閲覧えつらん
  18. ^ guix-devel mailing lists”. 2016ねん11月5にち閲覧えつらん
  19. ^ "Re: We need an RFC procedure" (Mailing list). 2019ねん4がつ27にち閲覧えつらん
  20. ^ Channels”. gnu.org. 2019ねん4がつ27にち閲覧えつらん
  21. ^ Courtès, Ludovic (23 November 2012). "Introducing GNU Guix" (Mailing list). gnu-system-discuss.
  22. ^ Stallman, Richard (5 June 2012). "A GNU Distribution" (Mailing list). gnu-system-discuss.
  23. ^ Ragkousis, Manolis (20 August 2015). "[GSoC update] Porting Guix to GNU/Hurd" (Mailing list). guix-devel. 2015ねん8がつ20日はつか閲覧えつらん

外部がいぶリンク

[編集へんしゅう]