Moodle で Microsoft OneDrive をレポジトリとして使うのに成功/失敗

概要

個人用 Microsoft One Drive をMoodleレポジトリとして使うのは簡単だが, 調子に乗って Microsoft One Drive for Business を安易に使おうとしたら, 設定を誤ってファイルアップロード以外の場所でもエラーが出る状態になったけどリカバーした話.

Moodle 2.8 で検証.

Moodleレポジトリとは

Moodleオープンソースのコース管理システム(LMS).

Moodleにおけるレポジトリとは, LMSにローカルファイルシステムからファイルをアップロードするかわりに, Dropbox のようなストレージから(いったんダウンロードすることなしに) ファイルを直接送ったりリンクしたりする仕組み. 操作としては, File Picker に様々なレポジトリが並んでいるのを目にするだろう. ローカルストレージのない(または扱いにくい)タブレットなどからの利用では特に有用.

(個人向け) Microsoft OneDrive の使用

Microsoft OneDriveは, Windows Live アカウントで使用できる無料のオンラインストレージ(旧SkyDrive).

この個人向け Microsoft OneDrive をMoodleレポジトリとして使うには, Moodle, OneDrive どちらも一般ユーザ権限だけあればよい. 手順 OneDrive repository - MoodleDocs にしたがえば簡単に設定できる.

Microsoft OneDrive for Business の使用

Microsoft OneDrive for Businessは, Microsoft SharePoint をバックエンドとするチーム用ストレージで, 有料のOffice365の一部として提供される.

安易な試みと遭難

組織でOffice365が利用可能であり, Microsoft OneDrive for Business のほうが容量が大きいので, これもレポジトリに追加しよう, という安易なのりで, 試みた. プラグインMoodle plugins directory: OneDrive for Businessが必要なので, Moodle側では管理者権限が必要であることがわかる. さらに, 依存性から, Microsoft の提供するOffice365プラグインセットに含まれる, プラグイン auth_oidc, local_office365, local_o365 も要求される.

よく見ると Microsoft Azure Subscription が必要と書いてあるのを見落としてこれらのプラグインのインストールを進めたところ, 途中で進めなくなった*1. インストール過程をアボートしたところ, フォーラム投稿で,

まずアプリケーション証明書をauth_oidcで設定してください。
Please set application credentials in auth_oidc first.

erroracpauthoidcnotconfig

と言われるようになった. repository_office365 をアンインストールするが, このエラーメッセージは local_o365 が出している. local_o365 プラグインをアンインストールしようとするが, local_o365 は auth_oidc が設定されていないとアンインストールできない, auth_oidc は local_o365 が依存しているのでアンインストールできない, というデッドロックに陥った.

リカバリーミッション

プラグインのソースを手で編集して, 一方の依存性チェックを一時的に無効化して, 1個ずつアンインストールした.

Moodle と Office365 の深い統合

本来, Office365プラグインセットはOffice365とMoodleの深い統合をめざすもの. これについて, 大学での利用の報告として, MoodleとOffice 365の連携における学習支援環境がある.

*1:auth_oidcは本来はMoodleの認証をOffice365で行うためのもの. これらのインストールを完了するには, Moodleの認証方式の変更とOffce365側の管理者権限が必要なのではないかと疑っているが確認できていない.

LINE@アプリでの端末/OS固有絵文字の入力と表示

コミュニケーションアプリLINEにおいて, LINE絵文字はアプリのバージョンがあっていれば問題なく送受信できるが, 環境(端末/OS)固有の絵文字は, 他の環境での表示はサポートされないそう. Unicode への収録が進んだとはいえ…

LINE@においては, LINE@ Web managerではLINE絵文字(の一部)が入力できるが, LINE@アプリでは入力できない.

LINE@アプリ(1.4.0 on iOS9.2)で環境依存固有絵文字を入力して送信したところ, LINE@アプリのメッセージ一覧では正常であるものの, LINE@アプリのホーム, LINE@ Web manager, 同端末/OSの受信側LINEアプリ(5.9.0)などでは絵文字が×印になって表示されない状態になった.

Firewall 内の Dropbox on Linux の proxy 設定は dropbox.py proxy で

Dropbox on Linux のプロキシ設定は, 以前は, 環境変数 http_proxy 経由でやっていた. Dropbox APIv2のリリースと関係あるのかないのか, 2015-10-16 ごろ release の Version 3.10.8 では, この環境変数が効かないようだ. かわりに(?) dropbox.py スクリプト(2015.10.28)の, 以前はなかった proxy サブコマンドを使うようになっている.

dropbox.py proxy manual http proxy.example.jp port user password

説明は

dropbox.py
dropbox.py proxy

で得られる. proxy の情報がどこ(ファイル?データベース?メモリ?)に保存されるのか調べられていない.

Dropbox のバイナリは自動更新されるので, Linux を次回に再起動したときに初めてこのことに気づくユーザもいるだろう(含自分).

Debian GNU/Linux 8.2 で検証.

www.dropbox.com

set proxy via "dropbox.py proxy" for Dropbox on Linux inside a firewall

The environment variable "http_proxy" does not seem to work for Dropbox 3.10.8 released on around 2015-10-16. Use "proxy" subcommand for the dropbox.py script newer than 2015.10.28

dropbox.py proxy manual http proxy.example.jp port user password

Mahara 15.10.0にアップグレードしようとしたけど git 版では theme の CSS を自分で生成する必要 → make css するかzip版からもらってくる

使用しているオープンソースの eポートフォリオ Mahara を 15.10.0にアップデート. 今回は, Bootstrap ベースになるなど, theme まわりが大幅に変更になっている.
https://github.com/MaharaProject/maharaで配布しているgit版を使う場合, CSSは含まれていなくて, 自分で生成するようになっている. 少なくとも raw theme の CSS がないとアップグレードできないエラーになる. raw だけいれても, 他のthemeを選んだときには CSSのない白背景, レイアウトなしの状態になってしまう.

CSSを生成するには, node.js npm が必要. これが面倒な場合, zip 版には生成済み CSS も含まれているので, zip 版をもらってきて, zshなら

for theme in raw primaryschool ocean default modern subthemestarter ;
    do cp -pr mahara-15.10.0-from-zip/htdocs/theme/$theme/style mahara/htdocs/theme/$theme/; 
done

のようにすればとりあえずはよさそう. しかし, これはthemeの変更を含むマイナーアップグレードのたびに必要になるだろう.

github.com

OS X 10.11 El Capitan ではヒラギノのOTF形式のフォントがなくなった

Mac 用の OS X 10.11 El Capitan がリリースされた.

OS X El Capitan

OS X El Capitan

  • Apple
  • ユーティリティ
  • 無料

El Capitan にアップグレードすると, MacPortsmigrateする(実質的に El Capitan 対応版を reinstall する)必要があるのだそう. それでもいくつかのパッケージは壊れている.

ElCapitanProblems – MacPorts

インストール済みの MacPorts やその他のソフトウェアをだましだまし使っていく*1場合*2, 影響の大きい変更は, ヒラギノフォント群が /Library/Fonts/ヒラギノ角ゴ Pro W?.otf から /System/Library/Fonts/ヒラギノ角ゴシック W?.ttc になったことかも(ファイルは1対1対応ではない). 特に, Macのフォント管理機構を経由せず, これらのフォントファイルを直接使用するソフトウェアの場合に影響があると思われる. 例えば, MacPorts の TeXLive 版の dvipdfmx で, ヒラギノの OTF(Opentype Font)形式フォントを texmf tree 下の HiraMinPro-W3.otf などに symbolic link してフォント埋め込みに使用していた場合,

dvipdfmx:warning: Could not locate a virtual/physical font for TFM "rml".
dvipdfmx:warning: >> This font is mapped to a physical font "HiraMinPro-W3.otf".
dvipdfmx:warning: >> Please check if kpathsea library can find this font: HiraMinPro-W3.otf
dvipdfmx:fatal: Cannot proceed without .vf or "physical" font for PDF output...

などと言われてPDFに変換できない. 日本のメンテナの中には, この変化をBetaのときから認識して, 対応を進めていた方もいらっしゃるようで頭が下がる.

このヒラギノOTF形式フォント問題への対症療法としては, ライセンス的にグレイだが, Yosemite 以前の /Library/Fonts/*.otf をバックアップ-リストアする(.ttc共存させる)と, 一時しのぎにはなるかもしれない.

*1:hig3の環境下では, YosemiteMacPorts の TeXLiveは, 下の dvipdfmx の問題を除いて, El Capitan で正常に動いているように見える

*2:OSをアップグレードする勇気と時間があっても, MacPortsをアップグレードする勇気と時間のない場合. MacPortsのアップグレードの際には多くのコンパイルが発生するので時間がかかる

Microsoft Office for Mac 2016の AutoRecovery files, Backup files 自動保存ファイル バックアップファイル の探し方

Microsoft Office for Mac のアプリ(Word, Excel, PowerPoint)がクラッシュしたとき, 編集中の未保存のファイルが自動保存ファイルとして保存されたり, 次回アプリを起動したときに, 「このファイルを開きますか」ときいてきたりすることがある.

Office for Mac 2011 の場合

Office for Mac 2011 では, 自動保存ファイルは /Users/username/Library/Application Support/Microsoft/Office/Office 2011 Autorecovery に置かれていたので, アプリがきいてこなかったら, 自分でこのフォルダを探しにいけばいい. 隠しフォルダ…な事情もあるが, ターミナルで

open /Users/username/Library/Application\ Support/Microsoft/Office/Office\ 2011\ Autorecovery

とすればFinderの新規ウィンドウが開くはず. バックアップファイルもここに作られるという記述があったが検証できていない.

Office for Mac 2016 の場合

Office for Mac 2016 では, (たとえばPowerPointで, filename.pptx を編集していた場合なら)

/Users/username/Library/Containers/com.microsoft.Powerpoint/Data/Library/Preferences/AutoRecovery/filename_autorecover (拡張子なし)

というファイルに保存された. この仕様変更は, クラッシュ時点のファイルのみでなく環境(デスクトップの状態など)まで自動保存しようという目的のようだ.

このフォルダの位置は公式文書では発見できなかったが,

answers.microsoft.com

で言及されていた.

自動保存ファイルを開くには

以下は Office for Mac 2016 の場合の, 自動保存ファイルを見つけてからの試行錯誤の報告.

この, filename_autorecover という拡張子のないファイルは, アプリとの対応付けがされていないので, ダブルクリックで開くようなことはできない. また, filename.pptx と rename しても, PowerPoint アプリが, 「形式が違う」のようなエラーメッセージを出して開くことはできなかった. メタデータが足りないみたいな話か? PowerPoint.app から filename_autorecover を[ファイル>開く]で選ぶと正常に開けた. あとは [ファイル>名前をつけて保存]でfilename.pptx として保存すれば, 以後は正常な .pptx ファイルとしてふるまった.

自動保存ファイルを開くには 2016-01-04 Mon, 14:43:57

今回は自動保存ファイルは AutoSave to filename.xlsx というファイル名になっていた. いったん afo.zip にcpした後, open -a "Microsoft Excel.app" afo.zip で開けた.

Office 2016 for Macマスターブック (Mac Fan Books)

Office 2016 for Macマスターブック (Mac Fan Books)