パスワードを忘れた? アカウント作成
11693325 story
Windows

Windows 10にはコマンドライン式のパッケージマネージャが導入されるかも 56

ストーリー by hylom
重いWindows-Updateをなんとかしてほしい 部門より
あるAnonymous Coward 曰く、

ExtremeTechによると、Windows 10テクニカルプレビューの最新ビルドには、Linuxなどで採用されているようなパッケージマネージャ機能が含まれているという。このパッケージマネージャは「OneGet」と呼ばれている(ExtremeTechマイナビMSDNSlashdot)。

OneGetはPowerShellで利用できるパッケージ管理機能であり、Find-Package、Install-Package、Uninstall-Package、Update-Packageなどのコマンドが用意されているという。

これまではインストーラをダウンロードし、ウィザードダイアログで「次」を繰り返し押してインストール作業を実施する必要があったが、Windows 10からはコマンド一発でインストールやアップデートといった管理を行えるようになる可能性がある。

なお、OneGetはWindows Management Framework V5 Previewとしてすでにプレビュー版の配布が行われている。また、OneGetはオープンソースで開発されておりソースコードの公開も行われている(GitHubのOneGetプロジェクト)。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 公式配布インストーラーにツールバー同梱な無料ソフトはリポジトリのポリシーで弾いてくれるのだろうか?
    依存関係で知らずに入るとかだったら嫌すぎる。

  • by MeeD (18266) on 2014年10月31日 16時47分 (#2703880)

    今でもmsiexecで同様のことができるはずですが…(きちんと.msiファイルが作られていれば)

    • Re:msiexecは…? (スコア:5, 参考になる)

      by tty01 (46299) on 2014年10月31日 17時22分 (#2703908)

      msiexec はインストールだけなんで Linux だと dpkg や rpm コマンド相当。
      OneGet は外部レポジトリからパッケージの検索、インストール、更新が行えるので apt や yum に相当。

      親コメント
      • by Anonymous Coward

        WindowsだとChocolateyやMSYS2なんかが近いですかね。

        • by Anonymous Coward

          OneGetはChocolateyのリポジトリを使用するようですよ。
          しかし、

          > Chocolatey which has over 1,700 unique software packages.

          少なっ。

          OneGetの登場を機会として今後増えるのかもしれませんが。

    • by Anonymous Coward on 2014年10月31日 17時34分 (#2703918)

      「コマンドライン式」という意味では、おっしゃるとおり従来のWindows Installerでもできたことですね。
      実際のところ、Chocolateyで公開されているパッケージも、従来のインストーラをサイレント実行させるだけのものが大部分です。
      (例えばRubyのパッケージをインストールすると、OneClick Installerがダウンロードされます。)

      今回の(※)ポイントは、中央レポジトリが用意され、複数パッケージ間の依存関係を管理できるようになった点だと思います。
      Windows Installerの問題というより、各デベロッパが勝手気ままに自分のWebサイトにインストーラを公開するようなWindowsの文化では、上手くできなかったことです。
      この点が、「UNIXスタイル」などと呼ばれる所以なのだと思います。

      個人的には、UNIX系オープンソースコミュニティの管理社会はあまり好きではありませんが、便利なのは確かなので、
      よいところはどんどん取り入れてもらえばいいと思います。

      (※)厳密には、すでにVisualStudioやChocolateyで利用されているNuGet仕様の特徴ですが。

      親コメント
      • by Anonymous Coward on 2014年10月31日 23時07分 (#2704101)

        UNIX系のアプリも各開発者がバラバラに公開していると思いますが。
        パッケージにまとめているのはディストリビューションを作っているところです。

        # 最近UNIX関係でやたらともってまわった文体と断言調で誤解を振り撒いている人がいますね。

        親コメント
        • by Anonymous Coward

          そらUNIXでなくてLINUX

        • by Anonymous Coward

          開発者でない人が勝手にまとめることが(ライセンス的に)可能なことが大きな違いでしょう。

        • by Anonymous Coward

          xrdp7はubuntuのパッケージで入れたんだが、RDP8に対応していない
          xrdp8はパッケージが存在しないので、xrdpの配布サイトからxrdp8を手に入れて苦労してコンパイルしてインストールしたら、OSがまともに起動しなくなりました

  • by Anonymous Coward on 2014年10月31日 16時57分 (#2703888)

    四半世紀近く前に使っていた SVR4 な UNIX には、pkgadd とか pkgdel とか既にあったけどな。

    • by Anonymous Coward

      問題はフォーマットが統一されてないことだと思うけどね。debかyumかに厳格な書式を決めてunix系で統一して欲しい。わりとマジで。GUIとかはかってにやってくれていいから。

      • by Anonymous Coward

        たとえばフォーマットが deb に統一されたとして、Debian 用の deb は RedHat では
        動かず、RedHat 用の deb は Debian では動かない、みたいなことになって、
        かえって混乱が増すんじゃないかなあ。どうせ動かないならパッケージのフォーマットを
        統一してもあまりメリットないし。コマンドが統一できると言うかもしれないが、
        たぶんそれもすぐに分裂するだろうし。

        ユーザーの作成という超基本的なことすら統一できない Linux 界隈でパッケージツールの
        統一なんて夢のまた夢じゃないかな。

        • by Anonymous Coward

          同一のもので済む場合の方法として欲しいんですよ。
          複数のファイルを固まりとしてあつかって一発で追加削除出来るのは、操作ミスリスクを減らせるので。

          • by Anonymous Coward

            それ、Dockerで出来るよ。

  • by Anonymous Coward on 2014年10月31日 17時06分 (#2703893)

    カレーにOneGet!(´⌒(´ ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡  ̄ ̄ (´⌒(´⌒;; ズザーーーーーッ

  • by Anonymous Coward on 2014年10月31日 17時07分 (#2703894)

    ついでに、レジストリも廃してほしい。

    • by Anonymous Coward on 2014年11月01日 4時05分 (#2704202)

      で、iniファイルがあちらこちらに散らばってどこに有るか分からない&名前被って上書きする&OSのiniファイルを上書きするカオスな時代に戻ると。

      親コメント
    • by Anonymous Coward

      systemdがregistry相当の機能を提供して阿鼻叫喚になる未来が見えた

      • by Anonymous Coward

        既にgconfがありますが…>レジストリ相当

    • by Anonymous Coward

      レジストリの混沌は何とかして欲しいけど、代わりにテキストファイルとかはカンベンな。

  • by Anonymous Coward on 2014年10月31日 17時15分 (#2703903)

    aptにして下さい。

  • by Anonymous Coward on 2014年10月31日 17時27分 (#2703913)

    パッケージのインストール先の指定はできるんだろうな・・・?
    SSDだからそこに突っ込まれまくると嫌なんだが

  • by Anonymous Coward on 2014年10月31日 18時40分 (#2703954)

    8以降だとPowershellからget-appxpackageコマンドとかでストアアプリとかを消したりできたとおもうけど
    一般のインストーラーに対しても似たような事ができるってことかな?

  • by Anonymous Coward on 2014年10月31日 18時42分 (#2703956)

    こういうのはシステムワイドでインストールされるすべてのパッケージを管理下におかないと、依存関係の解決などの完全なパッケージ管理はできないものですが、そこまでしっかりやるわけではないんでしょうね。

    • by Anonymous Coward

      今でも/usr/localなんて無法地帯だろ?
      別に何にも変わらないと思うんだが。

    • by Anonymous Coward

      そういうのは98の時代にライブラリの置き換え合戦があった末否定された。
      今時ディスクなんて安いんだし、必要なファイルはパッケージ内に自分で持つ。コンシューマ向けはこれで十分。

      #Linuxの依存が循環しててどうにもならないようなのもベストプラクティスだとは思えんけどね

  • by Anonymous Coward on 2014年10月31日 18時48分 (#2703960)

    今でも単にWindowsUpdateを立ち上げるだけならcontrol updateだけで済むけどその後がマウス操作。
    せっかくなのでpacman使ってmsys2(+mingw-x64)も一緒に面倒見てくれるといいんだけどなあ(笑)
    ほら、wgetとかもヤバいご時世なので(マテ)

  • by Anonymous Coward on 2014年10月31日 23時38分 (#2704123)

    apacheはapache loungeで配布されているZIPオンリー
    firefoxは常にnightlyかaurora
    operaは必ずスタンドアローンインストール
    その他のソフトも、ZIPで配布されて「インストール」とかいう作業が極力不要なものを探しまくる。シャレにならないくらい探しまくる。無ければ使わなかったりもする。
    複数の版を入れて比べて遊ぶんだ。

    • by Anonymous Coward

      そこまでじゃないけどインストーラ版とzip版の両方があるなら迷わずzip版を使う

    • by Anonymous Coward

      強制解凍できないインストーラーしかない場合は、仮想マシンにインストールしてからコピー

  • by Anonymous Coward on 2014年10月31日 23時52分 (#2704136)

    やっぱり最大の利点は複雑な操作を説明しやすくなることだろうな。
    いざという時役に立つ。
    GUIだといちいち画面を説明する必要があるが、
    コマンドライン操作ならDOS窓開かせれば後は
    「直接入力で今から言うコマンド打ってください、何が表示されましたか?」
    で済む。
    いろいろ条件があってもオプションキーや引数で済むから簡単。
    わからなくてもコピペ一発で解決。
    「それならrm -rf /って打ってみろ」系のいたずらが増えそうだが。

    • by Anonymous Coward

      こっちとしては複数方法あるのは嬉しい。
      コマンド一発レベルですむケースもありますので。

      ですが、qと9やcapslock、numlockでのトラブルによる時間増加の方が大きいだろうな。
      ※「代わりの人もうすぐ入れるから、それまで対応しなくて良いよ」は某大学。

  • Windows というか,マイクロソフトの場合,GUI のみにしておいた方がセキュリティ的には後々ラクなんじゃないかなあ…

    • by Anonymous Coward

      Windows serverを使った事がないのでしょうか…?
      最近のは、純粋にコンソールのみとか、+必要なパッケージのみとか出来ますよ。
      なので、yumライクな「OneGet」の要望があり実装されたのでしょうし

    • by Anonymous Coward

      後々もなにも、できたらすぐにマルウェアのインストーラーとして大活躍しそうだが。
      つまり、なんか有名なパッケージに自分のマルウェアの依存関係つけたもの勝ちだろ?

      • by Anonymous Coward

        そのへんのことをどうやって防ぐつもりなのかがマジで気になる。あれだけWindows Storeをガチガチにしておいて、まさか何も考えていないということはいくらなんでもないよね。

  • なんか[TAB]を押しても、候補が連続的に提示されるだけだった。
    一覧表示なんかできないんだろうか?

    ともかく、apt update、apt upgrade(apt-getなどの機能はaptコマンドに統合中)
    yum installとかport installとかはコマンドのヘルプで、簡単にオプションを調べられる。

    対して
    〉Find-Package、Install-Package、Uninstall-Package、Update-Package
    である。

    search-packageだったっけ?あれ違うな、えっとなんだっけ?
    Windowsに、コマンド一覧を出すコマンドってあったっけ?

    ってなる。

    これ、前者は「○○を検索する」といった日本語的な文法と
    「検索する○○を」という英語的な文法の違いに似ているかもしれない。

    少なくとも、日本人の感覚だと、前者のほうがなじみやすい気がする。

    ちなみに、Ubuntuでapt[TAB]ってファイル名補完させるとこんな感じ。
    $ apt
    apt-add-repository apt-config apt-internal-solver aptd aptitude-curses
    apt-cache apt-extracttemplates apt-key aptdcon aptitude-run-state-bundle
    apt-cacher apt-ftparchive apt-mark aptitude apturl
    apt-cdrom apt-get apt-sortpkgs aptitude-create-state-bundle apturl-gtk

    一覧出してくれたほうが便利だと思うんだけどね>PowerShell

    • > search-packageだったっけ?あれ違うな、えっとなんだっけ?
      > Windowsに、コマンド一覧を出すコマンドってあったっけ?

      PowerShellではリストアップするなら Get、設定するなら Set のように
      最初からコマンドの目的に対する命名記法を統一する文化が根付いてるから、そんなことにはならない

      「名前忘れたけどとりあえずリストアップなら動詞はGetだから後はタブ押して~」で行ける

      もしくは、名詞がわかっているなら *-Package[TAB] で補完できる
      俺は一々補完で一覧出されてそこから選ぶってめんどいから、今の方が好き

      一覧がいいなら、標準で入ってるPowerShell ISEでインテリセンスが使えるし、GUIもWindowsライクだからずっと使いやすい

      親コメント
    • by Anonymous Coward

      PowerShellなら、Get-Helpコマンドレットで色々表示してくれますよ。ちなみにmanというエイリアスも持っています。
      さらに、Get-Helpに指定した名前が完全一致するものが無かった場合、部分一致するものを一覧表示してくれます。

typodupeerror

一つのことを行い、またそれをうまくやるプログラムを書け -- Malcolm Douglas McIlroy

読み込み中...