-
Notifications
You must be signed in to change notification settings - Fork 0
MS_WindowsPackageManager
- 戻る(Windows OSの基礎的トピック、プログラムの配付技術)
- Windows 10のパッケージ・マネージャ
昨今、Linux で言う所の
apt や yum コマンド
と似た機能を提供する、
所謂一つのパッケージ・マネージャが開発・提供されているらしい。
PowerShell のコマンドレット
- NuGetProvider と ChocolateyProvider などをインストールする。
- 各パッケージ・マネージャが、このコマンドレットから利用可能になる。
補足(現況): PackageManagement(OneGet)は
「複数のパッケージ管理システムをプロバイダとして束ねる」という構想だったが、
想定ほど普及せず、現在は事実上メンテナンス モードにある。
後述の winget が Microsoft 公式の主流になったため、
新規に採用する理由は薄い。
- Linux ライクな機能(WSL や Windows Terminal に加え)
補足(winget が公式の主流になった): 本ページ執筆時点では
プレビュー段階だったが、現在は、
- Windows 10 / 11 に「アプリ インストーラー」として標準搭載されている
winget install/upgrade/list/export/importなどが使えるwinget configure(WinGet Configuration)により、
YAML ファイルで開発環境の構成を宣言的に再現できる- リポジトリは microsoft/winget-pkgs(GitHub)で運営され、
マニフェストを PR で追加する方式著者が最後に挙げている Scoop の「開発環境構築を楽にする」という価値は、
winget configureによって公式側にも取り込まれた形になる。
- Ubuntu / Debian 系でよく使われるパッケージ管理の apt-get の Windows 版
- PackageManagement から利用できるが単独利用も可能。
補足: 現在も活発に使われており、
winget より収録パッケージ数が多い、
企業向けの機能(内部リポジトリ、ライセンス版)が充実している
といった強みがある。winget と共存させて使う運用も一般的。
-
Linux 文化圏
- にいるけど、色々理由があって今は Windows を使ってるって人間に向けて開発されている。
- のやり方を Windows 上でやることに意義を感じないなら、Scoop を使う必要はない。
-
そして、
- Scoop は開発環境構築を楽にすることに強くフォーカスしている。
- PackageManagement エコシステムの外に居る。
補足(Scoop の設計上の特徴): 著者の言う「Linux 文化圏のやり方」を
具体的に補うと、Scoop は次の点で他と異なる。
- 既定でユーザー プロファイル配下にインストールする
→ 管理者権限が要らない(Chocolatey は原則として要る)- UAC のダイアログが出ないため、スクリプトから一括構築しやすい
- バージョンごとにディレクトリを分け、シンボリック リンクで切り替える
→ 複数バージョンの共存と切り戻しが容易CLI ツールや開発ツールを個人環境に入れる用途に向き、
一般ユーザー向けの GUI アプリ配布は winget / Chocolatey の領分になる。
コチラは、言語系のパッケージ・マネージャ
- 所謂一つの NuGet パッケージ・マネージャ。
- PackageManagement から利用できる。
補足(2 つの層を区別する): 本ページが最後に NuGet に触れているとおり、
パッケージ・マネージャには目的の異なる 2 つの層がある。
層 対象 例 システム / アプリ PC にソフトを入れる winget、Chocolatey、Scoop、apt、yum 言語 / ライブラリ プロジェクトに依存を入れる NuGet、npm、pip 前者は端末の状態を、後者はリポジトリの内容を管理する。
混同すると、CI で「なぜビルドが再現しないのか」といった形で問題になる。
-
OneGet/oneget: PackageManagement (aka OneGet) is a package manager for Windows
https://github.com/OneGet/oneget -
PackageManagement (aka. OneGet) の利用時の簡単な注意 - tech.guitarrapc.cóm
http://tech.guitarrapc.com/entry/2015/09/03/045447 -
Windows10のパッケージ管理を試した(仮)
https://qiita.com/Zero_Kohaku/items/302055fdd40595ea7199 -
Windows 10 のパッケージ管理エコシステムについて整理する。
https://qiita.com/japboy/items/451cf30fd0d763d98ae6 -
Windows10 PackageManagementの導入
https://qiita.com/icbmuma/items/ceb55a497efd934bab38
-
Windows Package Manager (Preview) メモ - Qiita
https://qiita.com/rubytomato@github/items/f9cc8e261c765c86f9cd -
[速報]Windows用パッケージマネージャ「winget」がプレビューリリース。
コマンドラインからアプリケーションをインストール。Microsoft Build 2020 - Publickey
https://www.publickey1.jp/blog/20/windowswingetmicrosoft_build_2020.html -
Windows 10に公式パッケージ管理システム「winget」登場 | マイナビニュース
https://news.mynavi.jp/article/20200523-1040229/ -
Microsoft、オープンソースのパッケージマネジャー「Windows Package Manager」の
プレビュー版を公開:コマンドラインツールと一連のサービスで構成 - @IT
https://www.atmarkit.co.jp/ait/articles/2006/09/news034.html -
winget ツールを使用したアプリケーションのインストールと管理 | Microsoft Docs
https://docs.microsoft.com/ja-jp/windows/package-manager/winget/
-
Chocolatey - The package manager for Windows
https://chocolatey.org/ -
Chocolateyを使った環境構築の時のメモ
https://qiita.com/konta220/items/95b40b4647a737cb51aa -
Windows での開発環境構築は、Chocolatey を使おう! - はしくれエンジニアもどきのメモ
https://cartman0.hatenablog.com/entry/2015/10/09/211022
- Scoop と PackageManagement を使った Windows 環境の構築
https://qiita.com/kikuchi_kentaro/items/77793e4a21db6ffdb7cd - ScoopでWindowsにおける開発環境構築を最適化しよう | さにあらず
https://blog.satotaichi.info/scoop/
Tags: インフラストラクチャ, Windows
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。