iPod touch を Fedora 14 KDE Spin で利用する (1)

2011/01/24PC::Linux/BSD

Fedora 14 KDE Spin環境でiPod touchを利用できるようにしたときのメモ。
参照にした情報がFedora 12でiPhone/iPod touchを利用するものだったので、Fedora 14との相違点も含めて記録として残しておきます。

とりあえずiPod touchのファイルシステムをマウントできるようにするまでのまとめ。

環境

  • Fedora 14 KDE Spin/x86_64
  • iPod touch 1st Generation (8GB)
    • iOS 3.1.3 Jailbreaked
    • iTunes Synchronized

必要パッケージのインストール

以下のパッケージを導入します。

  • libusb (私の環境ではすでに導入されていました)
  • gtkpod
  • usbmuxd-devel
  • libplist-devel
  • libiphone-devel
  • ifuse
  • python-mutagen
  • sg3_utils-devel
# yum install libusb gtkpod
# yum install usbmuxd-devel libplist-devel libiphone-devel ifuse
# yum install python-mutagen
# yum install sg3_utils-devel

iPod touchをマウントするための環境整備

usbmuxdユーザーの追加 (私の環境では不要でした)

# useradd -r -c "usbmuxd daemon user" -d /media -s /bin/false usbmuxd
useradd: ユーザ 'usbmuxd' は既に存在します

udevルールの追加 (私の環境では不要でした)

/lib/udev/rules.d/85-usbmuxd.rules

# usbmuxd (iPhone "Apple Mobile Device" MUXer listening on /var/run/usbmuxd)

# Forces iPhone 1.0, 3G, 3GS, iPodTouch 1/2 and iPad to USB configuration 3 and run usbmuxd
ACTION=="add", SUBSYSTEM=="usb", OWNER="usbmuxd", ATTR{idVendor}=="05ac", ATTR{idProduct}=="129[0-9a-f]", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}!="$attr{bNumConfigurations}", ATTR{bConfigurationValue}="$attr{bNumConfigurations}", RUN+="/usr/sbin/usbmuxd -u -U usbmuxd"

# Exit usbmuxd when the last device is removed
ACTION=="remove", SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/129[0-9a-f]/*", ENV{INTERFACE}=="255/*", RUN+="/usr/sbin/usbmuxd -x"

fuse.confの作成

/etc/fuse.confを新規作成します。

/etc/fuse.conf
user_allow_other

マウントポイントの作成

マウントポイントを /mnt/kaedepod-touch を作成し、一般ユーザーでもマウントできるようにパーミッションを変更します。

# mkdir /mnt/kaedepod-touch
# chmod 777 /mnt/kaedepod-touch

iPod touchのマウント/アンマウント

マウント

マウントは以下のコマンドで実施します。

$ ifuse /mnt/kaedepod-touch

マウントされているかを確認します。

$ ls /mnt/kaedepod-touch/
DCIM        Podcasts    com.apple.itdbprep.postprocess.lock  iTunes_Control
Downloads   Purchases   com.apple.itunes.lock_sync           ifunbox_shortcut_utf16.txt
MobileCast  Recordings  com.apple.itunes.syncing             jailbreak.log
Photos      Safari      general_storage

アンマウント

アンマウントは以下のコマンドで実施します。
※ 必ずアンマウントしてからiPod touchを取り外す必要があります。

$ fusermount -u /mnt/kaedepod-touch/

その他

iTunesと同期していないiPod touchではHashInfoファイルを生成し、iTunes_Control/Device配下に配置する必要があるようです(未検証)。

下記コマンドの出力からiPod touchの40桁の英数字のシリアルナンバーを調べます。

# lsusb -v | grep -i iSerial

調べたシリアルナンバーをもとに、http://ihash.marcansoft.com/からHashInfoファイルを生成し、iPod touchの/iTunes_Control/Device/以下に格納します。

参考

やったーケータイ小説できたよー(^o^)ノ

2010/12/03雑記::バカバナシ

───アタシの名前はアイ。心に傷を負ったエンジニア。キャリモテスリムで虚弱体質の愛されガール♪
アタシがつるんでる友達は運用をやってるミキ、会社にナイショでFXで稼いでいるユウカ
訳あって二重派遣されているアキナ。友達がいてもやっぱり会社はタイクツ。
今日もミキとちょっとしたことで口喧嘩になった。
エンジニアと運用の間だとこんなこともあるからストレスが溜まるよね☆
そんな時アタシはこっそりとショッピングサイトを覗くことにしている。
がんばった自分へのご褒美ってやつ?自分らしさの演出とも言うかな!
「あームカツク」・・・。
そんなことをつぶやきながら話しかけてくる営業を軽くあしらう。
「アイちゃん、ちょっと話聞いてくれない?」どいつもこいつも同じようなセリフしか言わない。
営業のもってくる案件は見てくれはいいけどなんか薄っぺらくてキライだ。
もっと等身大のアタシを見て欲しい。
「すいません・・・。」
・・・またか、と上級エンジニアなアタシは思った。突っ返すつもりだったけど、
チラっと提案依頼書を見た。
「・・・!!」
 ・・・チガウ・・・今までの案件とはなにかが決定的に違う。スピリチュアルな感覚がアタシのカラダを
駆け巡った・・・。「・・・(スゴイ・・・!!・・・これって運命・・・?)」
案件は一括下請負だった。受注してから仕様変更が発生した。「キャーやめて!」炎上した。
「カチャカチャ。カチカチ」アタシは死んだ。スイーツ(笑)

元ネタ

アンサイクロペディア ケータイ小説

[Ubuntu 10.10] トラックポイントを利用する

2010/11/07PC::Linux/BSD

ThinkPad 600XにKubuntu 10.10(Maverick Meerkat)をインストールしたので、トラックポイントを利用できるようにした時のメモ。

環境

  • ThinkPad 600X (トラックポイントIII)
  • Kubuntu 10.10/i386
  • KDE3.5.12

解説

Ubuntu 10.04より、HALが廃止され9.04の頃のようにfdiでInputDeviceに対するルールを記述するのではなく、従来(8.04の頃)のようにxorgに対する設定ファイル経由で設定を読み込むようになったようです。
しかしながら、/etc/xorg.confはUbuntu 10.10には存在していません。/usr/share/X11/xorg.conf.d/以下に各デバイスに対する設定を記述することで読み込まれるようになったようです。

と、いうことで、また新しくトラックポイントの設定を記述しなければならなくなったわけです。

実装

調べてみたら、ちょうどいい具合に設定が公開されていました。

と、いうことで、上記サイトをベースにトラックポイントに関する設定を記述してみました。
上記サイトには記述されていない、各引数の説明も記述していますので、調整する場合に役立ててください。

/usr/share/X11/xorg.conf.d/20-trackpoint.conf

Section "InputClass"
        Identifier      "IBM TrackPoint"
        MatchProduct    "TrackPoint"
        MatchDevicePath "/dev/input/event*"
        Driver          "evdev"
        # ホイールエミュレートする
        Option          "EmulateWheel" "true"
        # ホイールエミュレートに使用するボタン番号
        Option          "EmulateWheelButton" "2"
        # 1ノッチに対応するカーソル移動量?
        Option          "EmulateIntrtia" "50"
        # ホイールエミュレートのタイムアウト時間(ms)
        Option          "EmulateWheelTimeout" "100"
        # 3ボタンエミュレートをしない
        # 3ボタンエミュレートは、従来の2ボタンマウスを同時押し(確か)することで
        # センターボタン押下をエミュレートする機能
        Option          "Emulate3Buttons" "false"
        # ホイールエミュレート中のX方向の移動に対する発生するイベント
        #(ボタン番号)を定義
        # 第2引数はそれぞれ、左(マイナス)方向、右(プラス)方向
        Option          "XAxisMapping" "6 7"
        # ホイールエミュレート中のY方向の移動に対する発生するイベント
        #(ボタン番号)を定義
        # 第2引数はそれぞれ、下(マイナス)方向、上(プラス)方向
        Option          "YAxisMapping" "4 5"
        
        # Option        "ZAxisMapping" "A B C D"
        # ZAxisMappingはホイールエミュレート中のそれぞれの移動に対して
        # 発生するイベント(ボタン番号)を定義
        # A: 垂直マイナス, B: 垂直プラス, C: 水平マイナス, D: 水平プラス
EndSection

上記を記述したら、再起動*1することで、トラックポイントによるスクロール機能が利用できるようになります。
また、以前はFirefox側にもチルトホイールによるスクロールを受け入れる設定が必要でしたが、Kubuntu 10.10で提供されるFirefox(3.6.12)では、デフォルトの設定にてスクロールが有効になっています。

*1 : Xサーバーの再起動でも構わないと思いますが、未検証です

Debianインストール時のパッケージ集に含まれるパッケージリストを表示する方法

2010/06/23PC::Linux/BSD

taskselでできるようです。情報を提供してくださった@henrichさん、ありがとうございました。

Kubuntu 9.04/amd64での実行例

タスクの一覧を表示する

$ tasksel --list-tasks
u desktop          Desktop environment
u web-server       Web server
u print-server     Print server
u dns-server       DNS server
i file-server      File server
i mail-server      Mail server
u database-server  SQL database
u laptop           Laptop
u manual           manual package selection

タスクで利用可能なパッケージの一覧を表示する

laptopタスクに含まれるパッケージリストを表示。

$ tasksel --task-packages laptop
acpi-support
hibernate
acpi
apmd
radeontool
anacron
wireless-tools
cpufrequtils
wpasupplicant
vbetool
pcmciautils
acpid
hotkey-setup
bluetooth
avahi-autoipd
uswsusp