オルタナティブ・ブログ > mtaneda ブログ >

中小企業の開発者は会社で何をしているのか

Lion で Snow Leopard の iCal が動いた

»

社内では、スケジュールの共有に iCal を利用していますが、
Lion になってから、カレンダー一覧を左側に常時表示させておくことができなくなり非常に不便です。

そこで、Snow Leopard の iCal.app を起動してみたのですが、
Framework のバージョンが違うらしく、起動することができませんでした。

しかし、ちょっと手間をかければ動きました。

#あくまで実験なので、実施は At your own risk でお願いします。

1.アプリケーションフォルダの iCal.app をリネームします。


bash-3.2$ sudo mv iCal.app iCal.lion.app

2.アプリケーションフォルダに Snow Leopard の iCal.app を配置します。


bash-3.2$ cp -a DOKOKA/iCal.app /Applications/

3.アプリケーションフォルダ内の iCal.app に必要なフレームワークを配置します。
  (フレームワークは、Snow Leopard の /System/Library/Frameworksと /System/Library/PrivateFrameworks にあります)


bash-3.2$ cd /Applications/iCal.app/Contents/
bash-3.2$ mkdir Frameworks PrivateFrameworks
bash-3.2$ Frameworks
bash-3.2$ cp -a DOKOKA/CalendarStore.framework .
bash-3.2$ cp -a DOKOKA/Message.framework .
bash-3.2$ cd ../PrivateFrameworks
bash-3.2$ cp -a DOKOKA/ExchangeWebServices.framework .

4.起動スクリプトを書きます


bash-3.2$ cd ../MacOS
bash-3.2$ mv iCal iCal.bin
bash-3.2$ cat > iCal
#!/bin/sh
BUNDLE_DIR=`echo ${0} | sed -e 's/iCal$//g'`
DYLD_FRAMEWORK_PATH=${BUNDLE_DIR}../Frameworks/:${BUNDLE_DIR}../PrivateFrameworks
export DYLD_FRAMEWORK_PATH
${BUNDLE_DIR}/iCal.bin
^D
$bash-3.2$ chmod 755 iCal

5.自動同期を止めます


bash-3.2$ cd /System/Library/Frameworks/CalendarStore.framework/Resources/
bash-3.2$ sudo mv iCalExternalSync iCalExternalSync.lion

あとは、iCal を起動すればバージョンになります。
初回にデータベースの変換がありますが、とりあえず基本的な動作は確認できました。

On_lion

Comment(0)