fedora12の2.6.3x系で起動できないという話

yast wagonとか

opensuse使ってる人のサイトが増えてくれると嬉しいなー
google:yast wagon
http://en.opensuse.org/Wagon
http://red456.blog5.fc2.com/blog-category-31.html


http://ja.opensuse.org/Upgrade/Supported
http://ja.opensuse.org/Zypper/Usage/11.1


`foo-branding-upstream'ってな感じのパッケージの命名規則について

boost/diff

modelineの中でfencを設定してはいけない

  1. ファイルをバッファに読み込み
  2. BufRead/BufReadPostイベント発生
  3. モードライン読み込み
  4. バッファがウィンドウに表示
  5. BufWinEnterイベント発生

Header V3 DSA signature: NOKEY, key ID

zypper upでこんなん出てくる。
GPG keyが無いと言われてるのだろうか。

http://pc11.2ch.net/test/read.cgi/linux/1259099273/352
[ Linux ] SUSE Linux Part 25

352 名前:login:Penguin [sage]: 2010/01/23(土) 19:04:48 id:E5Tr/Ud/
zypper upすると、何かのパッケージで毎回警告が出てきます。

warning: /var/cache/zypp/packages/repo_2/i586/gstreamer-0_10-plugins-base-lang-0.10.25-999.pm.1000.12.i586.rpm: Header V3 DSA signature: NOKEY, key ID 9a795806

gpg-keyの取得したはずですし、
yast repository -> GPG Keys
には追加してあるレポジトリのkeyを全て持っている状態が確認できます。
何が原因なのでしょうか。


353 名前:login:Penguin [sage]: 2010/01/23(土) 19:37:09 ID:8Wu14WIy
>>352
そのIDはpackmanの鍵だよ。

$ gpg --recv-keys 0x9a795806
のようにして自分のキーリングに鍵をインポートしてから、
$ gpg --export -a 0x9a795806 > packman.txt
のようにして鍵をファイルに書き出し、
作成したファイル(packman.txt)をyastから読み込めばいい。

ふむ。

$ gpg --keyserver pgp.nic.ad.jp --search-keys 0x9a795806
gpg: searching for "0x9a795806" from hkp server pgp.nic.ad.jp
(1) PackMan Build Service (PackMan Build Service)
1024 bit DSA key 9A795806, created: 2007-08-10

確かに見つかる。

ここで、pgp.nic.ad.jpは国内の鍵サーバ。
http://pgp.nic.ad.jp/
(See http://pgp.nic.ad.jp/faq/index.html)
他の国内の鍵サーバには、http://openpksd.org/
がある。
openpksd.orgのウェブページの左上のフォームから
0x9a795806を探すと、Packmanの公開鍵を見せてくれるのだけれど、
コマンドからクエリをかけると、

$ gpg --keyserver openpksd.org --search-keys 0x9a795806
gpg: searching for "0x9a795806" from hkp server openpksd.org
gpg: key "0x9a795806" not found on keyserver

と言われてしまう。

まあ、兎にも角にもPackmanレポジトリの鍵は0x9a795806で正しそうなので
インポートしておくことにしましょう。

ウィルスチェック/ウィルス対策

poファイル

man bashより。

       --dump-po-strings
              Equivalent  to  -D,  but  the  output  is  in the GNU gettext po
              (portable object) file format.

portable objectの略称らしい。

poというディレクトリについて

  • 'GNU gettext'
    • bashでは echo $"ERROR"とかやるとロケールによって
      • echo "ERROR"
      • の代わりに
      • echo "エラー"
      • になるらしい.スクリプト内でのロケールの変え方は忘れた.
      • LANGとかCTYPEではなかったはず.

元windowsドライブをlinuxでmountするときのオプション

$ # mount -t ntfs -o utf8,user,rw,uid=500,gid=500 /dev/partition /path/to/dir

などはご自由に。


sambaでアクセスできるディレクトリにmountしておくと、便利。
uidとgidをsambaでアクセスできるユーザのものにしておかないとディレクトリが開けない。
utf8を入れないと、多分文字化けする。

参考

man mount
ntfsの項を参照のこと

TODO: git

githubの使い方をまとめたエントリー(github使い方まとめ - bugfix)を
嬉しいことに、こちらで参考にしていただいた。
雲雀は高く空を舞い - ひよこの会

ふ 2009/11/18 01:51
"git fetch origin :" は間違いではありませんが古風ですね。現代のgitなら、単に"git fetch"して、origin/から使う、というのが標準的だと思います。

ネタ元のウェブページを更新してもらったら良いかも知れません。

「正しいけど、最近のやりかたではない。」
こういう意見はとてもありがたい。


最近gitに関する書籍を買ったので、
その内容も含めて、修正しよう。

一般ユーザでmountできるようにする

http://www.momonga-linux.org/docs/Removable-HOWTO/ja/mount_by_user.html
バイス名は固定にしなくてはならないのだろうか。

PCを起動してから最初に挿されるUSBフラッシュメモリは、
俺の環境だとsdb1になるから

# mount -t auto -o user,noauto,rw /dev/sdb1 /mnt/tmp

を発行するとして、/etc/fstabに

/dev/sdb1  /mnt/tmp/   auto   user,noauto,rw 0 0

としておけば、一般ユーザに

$ mount /dev/sdb1

とコマンドしてもらえば、/mnt/tmpにマウントされて、
このディレクトリ以下のファイルは全て、マウントしたユーザのパーミッションになる。

例外

つまり

  • USBフラッシュメモリという括りでディスクを認識したい。
  • 2本目以降は、/mnt以下に自動でディレクトリを作成してマウントしてほしい。
    • 作成するディレクトリ名はユニークなものが必要。
    • umountしたら消してくれると、尚嬉しい。

Win32開発

  • Windows SDKをインストール
  • Visual Studio側でライブラリやインクルードフォルダのパスを設定
    • 「ツール」→「オプション」→「プロジェクトおよびソリューション」→「ディレクトリを表示するプロジェクト」
    • 「実行可能ファイル」、「インクルードファイル」、「ライブラリファイル」を追加する。


これをやらないと、windows.hが見つからないとか出てきた。
昔使っていたPCでは、設定されていたってことかー。


※追加するフォルダを忘れてしまった時には、
「C:\Program Files\Microsoft SDKs\Windows」(規定)の下をwindows.hでfind掛ければいいと思うよ。

find -prune

$ find . -iname '*.cpp' -o -iname '*.c' -o -iname '*.h'
./Projects/fooWin32/fooWin32/fooWin32.cpp
./Projects/fooWin32/fooWin32/fooWin32.h
./Projects/fooWin32/fooWin32/Resource.h
./Projects/fooWin32/fooWin32/stdafx.cpp
./Projects/fooWin32/fooWin32/stdafx.h
./Projects/fooWin32/fooWin32/targetver.h
./Projects/fooWin32_/fooWin32_/main.c
./Projects/tmp/tmp/main.cpp
./Projects/tmp0/tmp/Resource.h
./Projects/tmp0/tmp/stdafx.cpp
./Projects/tmp0/tmp/stdafx.h
./Projects/tmp0/tmp/targetver.h
./Projects/tmp0/tmp/tmp.cpp
./Projects/tmp0/tmp/tmp.h
./Projects/vector_capacity/vector_capacity/main.cpp
$ find . -iname '*.cpp' -o -iname '*.c' -o -iname '*.h' -o -ipath '*tmp*' -prune -type f
./Projects/fooWin32/fooWin32/fooWin32.cpp
./Projects/fooWin32/fooWin32/fooWin32.h
./Projects/fooWin32/fooWin32/Resource.h
./Projects/fooWin32/fooWin32/stdafx.cpp
./Projects/fooWin32/fooWin32/stdafx.h
./Projects/fooWin32/fooWin32/targetver.h
./Projects/fooWin32_/fooWin32_/main.c
./Projects/vector_capacity/vector_capacity/main.cpp

ただし

$ find . -iname '*.cpp' -o -iname '*.c' -o -iname '*.h' -o -ipath '*tmp*' -prune -type f -print

何も表示されない

$ find . \( -iname '*.cpp' -o -iname '*.c' -o -iname '*.h' -o -ipath '*tmp*' -p
rune -type f \) -print
./Projects/fooWin32/fooWin32/fooWin32.cpp
./Projects/fooWin32/fooWin32/fooWin32.h
./Projects/fooWin32/fooWin32/Resource.h
./Projects/fooWin32/fooWin32/stdafx.cpp
./Projects/fooWin32/fooWin32/stdafx.h
./Projects/fooWin32/fooWin32/targetver.h
./Projects/fooWin32_/fooWin32_/main.c
./Projects/vector_capacity/vector_capacity/main.cpp