2013/12/05

Cygwinにapt-cygを導入する

Cygwinでソフトウェアをインストールする際にはインストールする際に利用したsetup.exeを利用するのですが,できればCygwin上のターミナルでコマンドでできるようにしたかったので,
apt-cygを導入しました.

導入方法を書いていきます.

まず,前準備でapt-cygを利用するために必要なものをsetup.exeを使ってインストールしてきます.
setup.exeを利用したインストール方法はCygwin自体をインストールするときとほぼ同じで,
ソフトウェア一覧の画面になったときに必要なソフトをインストールする設定にすればいいだけです.
#Cygwin自体をインストールするのと同じようにしても2回目以降はCygwin自体はインストールされず,ソフトだけインストールされます.

setup.exeで次のものをインストールします.
#検索して探すと楽です.
  • wget
  • tar
  • gawk
  • bzip2
  • git
ちなみにgitはapt-cygをダウンロードするときに使います.

apt-cygのプロジェクトは下にあるのですが,
apt-cyg - A command-line software installer for Cygwin - Google Project Hosting
http://code.google.com/p/apt-cyg/

そのサイトで「これからの新しいのはGitHubでフォークしてあるものを使ってください。」というような記述があるので,
その通りにGitHubの方を使います.

フォーク前のGitHubはこちらです。
transcode-open/apt-cyg
https://github.com/transcode-open/apt-cyg

こちらにどのようにフォークされているか確認することができます。
Network Graph · transcode-open/apt-cyg · GitHub
https://github.com/transcode-open/apt-cyg/network

 現時点では"kou1okada"というところのapt-cygが一番活発に変更されているので、
ここのapt-cygを使いたいと思います。
kou1okada/apt-cyg · GitHub
https://github.com/kou1okada/apt-cyg


まず,Cygwinを立ち上げて,
git clone https://github.com/kou1okada/apt-cyg.git
cd apt-cyg
chmod +x apt-cyg

######################################################
# 2013.12.07 追記
# acさんのコメントを参考にして上の記述を変更しました。
# acさん有難うございます。
######################################################

そして,apt-cyg自体をPATHが通るところに置きます.
(/usr/bin にコピーしてもいいですし,リンクを張ってもいいです.)

次にupdateします.
apt-cyg update

何かをインストールしたいときには次のようにします。
下は"vim"をインストールするときの例です。
apt-cyg install vim

他の操作方法はhelpオプションで確認できます。
apt-cyg --help
apt-cyg: Installs and removes Cygwin packages.
  "apt-cyg install " to install packages
  "apt-cyg remove " to remove packages
  "apt-cyg update" to update setup.ini
  "apt-cyg show" to show installed packages
  "apt-cyg find " to find packages matching patterns
  "apt-cyg describe " to describe packages matching patterns
  "apt-cyg packageof " to locate parent packages
Options:
  --charch     : change archetecture (must appear first)
  --use-setuprc      : set cache and mirror with /etc/setup/setup.rc
  --ignore-case,-i   : ignore case distinctions for 
  --force-remove     : force remove
  --mirror, -m  : set mirror
  --cache, -c   : set cache
  --file, -f   : read package names from file
  --noupdate, -u     : don't update setup.ini from mirror
  --ipv4, -4         : wget prefer ipv4
  --help
  --version

これでおkです。




4 件のコメント:

  1. apt-cyg の作者が言ってるのは GitHub で公開したのをそのまま使ってねって意味じゃなくて、fork して修正したのを皆で共有して使ってねって意味だよ。
    https://github.com/transcode-open/apt-cyg は作者が皆に fork して使ってもらうために公開したものなので、そのまま使ったんじゃ意味がない。
    最後に参考にしたサイトを3つ紹介しているけど、それらの修正は setup.ini, setup.bz2 のパスが変更された点に限定したもの。他にも .xz 形式のパッケージ形式への対応とかいくつか必須の修正があるので、その3つのサイトを参考として挙げると、このページ見た人が皆それで十分なんだと誤解してしまう。
    修正が入った fork は多数あるのでどれを選ぶのかは自由だけど、fork の network が以下で一覧できるので、参考になると思う。
    https://github.com/transcode-open/apt-cyg/netwok

    返信削除
  2. ごめん
    https://github.com/transcode-open/apt-cyg/network
    だった。

    返信削除
    返信
    1. acさん
      コメント有難うございます。
      私の知識が足りなく、apt-cygの導入を適切でない方法で行っていました。
      コメントを参考に記事を変更させて頂きました。

      変更前はインストールするものによって正常にインストールできないものもあったのですが、
      今のところ訂正後はそのようなこともないようです。

      ご指摘いただき有難うございました。

      削除
  3. GnuPGも必要なようですね
    入れてみて分かりました

    返信削除