今年の日本でのLibreOfficeイベントを振り返る(2017)
今年も日本でいろいろなLibreOfficeイベントがありました。何をやって、どうだったかを振り返って今後を考えてみます。
2015年に振り返ってみたことがありました。 この記事はだいぶん遅くなりましたが、LibreOffice Advent Calendar 2017の11日目です。
今年のイベントサマリ
日本でのイベント一覧をTDF Wikiからチェックします。 今までで30回、後予定は2つなので32回になりそうです。2015年は46回でしたのでやや控えめでした。
種類 | 内容 | 合計 |
---|---|---|
勉強会 | 浜名湖1回、関西1回 | 2 |
Hackfest | 関東2回、名古屋1回、関西2回(分野別だと、バグハンティング4、いろいろ1) | 5 |
OSSイベントへの出展・セミナー | OSC11回、KOF1回 | 12 |
LibreOfficeの日 | 関西12回 | 12 |
その他 | LibreOffice mini conf 2017 | 1 |
日本でLibreOfficeでイベントに関わるメンバは数名ですので、数としてはそこそこだとは思います。10月にLibreOffice mini conf 2017を開催できたのはよかったです。openSUSE.Asia Summit 2017の中での開催したのですが、LibreOfficeとしても台湾やインドネシアのスピーカーもいて、アジアカンファレンスっぽい形で開催できました。openSUSE.Asia Summitの方のスタッフとしても小笠原さんや近藤さんともに私も参加し、ビザのサポートやスポンサー獲得、ハラルフード対応など今まで未経験だったところの知見も得られました。
OSCやKOFへのブース・セミナーはペースを維持しました。日本語チームメンバーの大森さんが、ブースコンテナを送ってくださるのでありがたいです。他のメンバや他のOSSコミュニティとも交流できるので比較的モチベーションも維持しやすいかなと思っています。
また、LibreOfficeの日は毎月第3水曜日にコワーキング・スペースに集まるだけのスタイルですので、リズムがあって特に負担がない点も大きいです。ただ、参加者はほとんどいないことが多くて、他の参加者にとっては魅力に欠けているのかもしれません。
一方、ユーザーよりのナレッジを貯める勉強会や手を動かすhackfestは減りました。定期開催でないために一度リズムが崩れるとついついできないのが課題です。後半にLibreOffice mini conf 2017で手いっぱいになったり、その後休憩モードに入った影響もあるかと思います。
イベント種類と目的
これも2015年からあまり変わってはいませんが、個人的に以下のように考えています。
- 勉強会/オフラインミーティング
- 平日夜もしくは、休日午後に集まってスピーカーを立てるセミナースタイルが多い。懇親会セットのケースが多い
- 使い方のノウハウや情報の交換
- 公開スライドによる情報の蓄積
- 地域のユーザーコミュニティの形成。そこへ行けば聞ける場所にすること
- Hackfest
- 休日に集まって一緒にコミュニティの作業を行う
- ベータ版やリリース候補をテストするバグハンティングが中心だった
- 新しい人や普段やっていない活動に取り組みたい人をフォローする:ここは新しい参加者を呼び込めていないです
- ノウハウを互いに伝授する
- コミュニケーションの場
- 作業効率アップ、モチベーションの維持:互いにバグを確認し合うなどすると楽
- オープンソースカンファレンスなどOSSイベント
- 各地でのオープンソースイベントへブース出展やセミナーを行う
- 他のOSSコミュニティの人たちと交流する
- OSSに興味ある人たちへLibreOfficeをアピール・情報提供
- LibreOfficeメンバ同士の交流
-
- 毎月第3水曜日にコワーキングスペースに行く日を決めて、集まる場にする
- 出入り自由(各自でコワーキング利用料を負担)でゆるい感じ
- OSMと同日開催のことが多いです。
- 地域のLibreOfficeコミュニティの形成。LibreOfficeに興味がある人が定期的に集まれる場にする
- LibreOfficeについてそこに行けば相談や質問できる場を作る
LibreOffice mini conference/ kaigi
- 日本でのLibreOfficeに興味がある人が集まって交流と情報交換をする
- 小笠原さんからは、mini confをアジアカンファレンス、kaigiを日本のカンファレンスという使い分けをしていこう提案です
今後に向けて
LibreOffice kaigiを来年6月くらいまでにできればとは考えています。 また、新しく関わってくれる人をサポートするためにも、メンタリング中心で手を動かすhackfestのようなものをやってみたいと考えています。定例化できておらず、ついつい後回しになりがちですが..。OSS Gateの大阪でも平日夜にテーマ別にやろうという話があるので(Reactの予定)、私もLibreOfficeネタでもやってみることも考えています。
関西オープンフォーラム2017にLibreOfficeやjusで参加しました
2017年11月10日(金)-11日(土)に大阪南港ATCで開催された関西オープンフォーラム2017に参加しました。毎年11月に関西のオープンソースコミュニティやITコミュニティが集まるイベントです。今年で16回目で、私は1年目からボランティアスタッフ、2006年から実行委員ですが、最近は実行委員としてはあまり動けていません。
最近参加者は減少傾向ですが、それでも2日間で約1200名が集まったそうです。私はLibreOffice日本語チーム、日本UNIXユーザ会、アイクラフトの3つのブースを掛け持ちでした。アイクラフトブースだけはメンバが多ので任せていました。土曜日には4つのセミナーに関わりました。
jusブース番に投入される砂原先生と援軍くださった中野先生
LibreOffice日本語チームブースの近藤さんと、右奥はアイクラフトブース
関わったセミナーについて
アイクラフト:エチオピアでのLibreOffice事情/QA・翻訳方法
アイクラフト枠でLibreOfficeインターンの2名から「エチオピアでのLibreOffice事情/QA・翻訳方法」の発表があり、メンターとして企画や申込、スライドのレビューや日本語翻訳のサポートをしました。エチオピアでのオープンソースの状況などはあまり日本で情報がないので面白かったと思います。QAと翻訳については、情報が整理されてよかったです。
オープンデータ京都実践会:「Wikimania 2017 / State of the Map 2017 参加報告」2大オープンデータコミュニティの国際会議って?
オープンデータ京都実践会枠では、Miya.mさんと瀧口典子さんから「Wikimania 2017 / State of the Map 2017 参加報告」2大オープンデータコミュニティの国際会議って?があり申込などを担当しました。WikimaniaというWikipediaや姉妹プロジェクトを含めた国際会議について、モントリオールやそれ以前のの様子は、懇親会では断片的に伺ってましたが、雰囲気が分かって興味深かったです。OpenStreetMapの国際会議であるSotMについては、今年は会津若松市でしたので私も参加しましたが、マッパーとしてアクティブな立場からのお話で楽しそうでした。
日本UNIXユーザ会:jus研究会大阪大会「ITコミュニティの運営を考える」
日本UNIXユーザ会枠では各地のOSCでも行っているITコミュニティ運営に関するセッションで、法林さんと共に参加者全員とのラウンドテーブルを行いました。10人を2グループに分かれてディスカッションしました。私の参加したグループでは、コミュニティをどうやって探せばよいかはなかなか難しいという話や、コミュニティで上手くやっていくためにはボードゲームのようなものの経験も有効では?、などの話題も出ました。
LibreOffice日本語チーム:Drawをもっと使いこなそう / LibreOffice Conference 2017 Italy 参加報告
LibreOffice枠では、近藤さんと半分ずつの担当で、近藤さんからはDrawをどのように活動していくかについて、私は10月に行われたローマでのLibreOfficeカンファレンスについて写真を中心にお話しました。
ブースやその他感想
LILOや東海道らぐ、Debian、NetBSDなどおなじみなところも多いですが、大阪府警やPulse CMS、アトラシアン株式会社、Gyazo Teamsといった普段なかなかお会いしないところも出展されていました。また学生ブースも大阪情報コンピュータ専門学校ITcreate部なども出されていて面白かったです。 今回もロボットプロレスも行われていて、遠くからでも盛り上がっていそうな雰囲気は感じました。
岡本真さんの「Gov 2.0としてのオープンデータ-民主主義と知識創造の基盤としての文化機関を拓くということ」や、上原哲太郎さんの「ネ申Excelと事務情報化」など面白そうな講演もたくさんあったのですが、余裕がなくて聞けなかったのは残念です。ビデオ公開が予定されているようですので、後で見たいと思います。
ステージの模様などもYoutubeに上がっています。また実行委員の小山さんによるイベント風景の写真もあります。
懇親会や、土曜日の片付けの後の打ち上げも盛り上がりました。個人的にはスライドなどの準備が間に合ってなかったなどはありますが、無事に終わってよかったです。
LibreOffice OnlineをDebian jessieでビルドしてみました。
LibreOffice Online(LOOL)がバージョンアップして良くなってきています。オープンソースカンファレンス2017 Tokyo/Fallのブースでデモをしようと思って、手元のDebian jessieでビルドしてみましたので、メモを残しておきます。
去年8月にも同様の記事(LibreOffice onlineをDebianでビルドしてみました)を書いていますが、手順が一部変わっています。
また、LibreOffice Online導入手順 2017年4月版 - LibrePC from iCRAFTはCentOS版ですが、基本的にDebianと手順は同じでした。
以下のwsdのREADMEに沿って進め、必要に応じてloleafletのREADMEも参照します。
LibreOfficeのビルド
LibreOfficeのソースコードを取得
$ git clone --depth=1 git://anongit.freedesktop.org/libreoffice/core libreoffice
ビルドに必要なパッケージをインストール(前回やっていたので不要)
$ sudo aptitude update $ sudo aptitude safe-upgrade $ sudo aptitude build-dep libreoffice
ビルド
通常手元のレッツノートCF-N10(メモリ12GB,SSDに換装)だと4時間台で終わるのですが、途中他の作業していましたので6時間半くらいかかりました。
$ cd libreoffice $ ./autogen.sh --with-lang="ja" * WARNING : no suitable nasm (Netwide Assembler) found for internal jpeg-turbo $ make
pocoのインストール
/opt/poco以下にmakeしてインストールしてもよいのですが、その場合はwsdの./configureで指定する必要があります。 今回はそのことを忘れていてエラーになったので、パッケージを入れました。
$ sudo vi /etc/apt/sources.list で以下を追記 deb https://www.collaboraoffice.com/apt-poco/ / $ sudo aptitude update $ sudo aptitude install libpoco-dev
LOOLのビルドと設定
作業ユーザのhomeにgit cloneしてきた場合で指定しています
$ git clone git://anongit.freedesktop.org/libreoffice/online $ cd online/ $ libtoolize $ aclocal $ automake --add-missing $ autoreconf $ autoheader $ ./configure --enable-silent-rules --with-lokit-path=/home/ユーザ名/libreoffice/include --with-lo-path=/home/ユーザ名/libreoffice/instdir --enable-debug $ sudo mkdir /etc/loolwsd $ sudo cp etc/* /etc/loolwsd sudo mkdir -p /usr/local/var/cache/loolwsd ↑今回はすでにあったのを削除して再作成しました $ sudo chown eno. /usr/local/var/cache/loolwsd ↑作業ユーザ名. に読み替え $ make run
npm installなどが走るのですが、途中でエラーになりました。
touch node_modules Traceback (most recent call last): File "util/po2json.py", line 9, inimport polib ImportError: No module named polib Makefile:481: recipe for target 'dist/l10n/help-en_AU.json' failed make[2]: *** [dist/l10n/help-en_AU.json] Error 1 make[2]: Leaving directory '/home/eno/2_code/LibreOffice_code/online/loleaflet' Makefile:1720: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/eno/2_code/LibreOffice_code/online' Makefile:732: recipe for target 'all' failed make: *** [all] Error 2
python-polibパッケージをインストールしてみるといけました。
$ sudo aptitude install python-polib $ make run
これでできました。起動したメッセージにしたがってブラウザでアクセスします。/opt/tmp/test.odsにファイルを置いていたので、以下のようにアクセスしました。LOOLの起動も1回目は意外に時間がかかりますが、2回目からは早くなります。
補足
前回の時にLOOLのビルドで必要だった"libtool","libcap-dev", "nodejs", "npm"がインストールが必要かもしれません(今回はインストールされているのでわかりません。)
$ sudo aptitude install libtool libcap-dev nodejs node-jake node-uglify npm $ sudo npm install -g npm $ sudo ln -s /usr/bin/nodejs /usr/bin/node
また、LibreOfficeのビルドですが、git pullしてmakeするとエラーになったので、上記手順のようにソースを取得しなしました。
$ git pull $ ./autogen.sh --with-lang="ja" * WARNING : no suitable nasm (Netwide Assembler) found for internal jpeg-turbo $ make [build LNK] StaticLibrary/libcodemaker_cpp.a /home/eno/2_code/LibreOffice_code/libreoffice/workdir/CxxObject/store/source/store.o: 関数 `store_openDirectory' 内: store.cxx:(.text+0x814): `store::OStoreDirectory_Impl::create(store::OStorePageManager*, _rtl_String*, _rtl_String*, storeAccessMode)' に対する定義されていない参照です /home/eno/2_code/LibreOffice_code/libreoffice/workdir/CxxObject/store/source/store.o: 関数 `store_openStream' 内: store.cxx:(.text+0xd34): `store::OStoreLockBytes::create(store::OStorePageManager*, _rtl_String*, _rtl_String*, storeAccessMode)' に対する定義されていない参照です collect2: error: ld returned 1 exit status /home/eno/2_code/LibreOffice_code/libreoffice/store/Library_store.mk:10: recipe for target '/home/eno/2_code/LibreOffice_code/libreoffice/instdir/program/libstorelo.so' failed make[1]: *** [/home/eno/2_code/LibreOffice_code/libreoffice/instdir/program/libstorelo.so] Error 1 make[1]: *** 未完了のジョブを待っています.... Makefile:266: recipe for target 'build' failed make: *** [build] Error 2 $ make clean $ ./autogen.sh --with-lang="ja" $ make でも再度エラーになりました。
オープンソースカンファレンス2017Kyotoに参加しました
すっかりブログをサボっていましたが、8月4日(金)5日(土)に京都リサーチパークで開催されたオープンソースカンファレンス2017 Kyoto に参加したことを自分の記録用にメモしておきます。
2日間の延べ人数で約750人だったそうです。いつもOSC京都は暑いのですが、今年も暑かったです。ただ、台風が近づいていて逆に少し暑さはマシだったかもしれません。2日目の夕方にはスコールのような雨もきました。
2日間、LibreOffice日本語チームブースだけでなく日本UNIXユーザ会ブースやアイクラフトブースの番もしました。LibreOfficeブースは小笠原さん、近藤さん、jusブースは法林さん、内山さん(土のみ)という編成で、私はjusブースにいる時間が長かったように思います。かずひこさんがひょこっと寄ってくださったり、久しぶりに前田青也さんにお会いしたり、懐かしい方ともお話できてよかったです。
アイクラフトブースなどの様子はLibrePCブログに書きました。
セミナーでは日本UNIXユーザ会ではいつもお馴染みの「ITコミュニティ運営」について参加者のみなさんとグループ・ディスカッションしました。3つのグループに別れて盛り上がりました。LibreOfficeは予定していた方がお仕事で不参加となり、代わりに私が最近のLibreOfficeの状況についてお話しました。
(OSC京都のラスト、LT大会の様子)
今年も2泊ともギークハウスに泊まりました。1日目は大人しく日付がかわる前に寝ましたが、2日目はおしゃべりしていたら2時半くらいになっていたような記憶があります。 1日目の晩御飯はUbuntuの人たちと一緒に、OSC京都恒例のだいこんの花へ行きました。2日目はOSCの懇親会の後、ギークハウスでまったり宴会していました。
(だいこんの花のメニュー)
翌日はopenSUSE Leap 42.3 Release Party Kyoto & もくもく会に参加して夕方に帰りました。今年のLibreOffice mini confはopenSUSE asia summit 2017と一緒に開催するのですが、そのイベントについて相談などをしていました。(まだCfPを出せていないのでブログを書いているより、そちらを出すべきなのですが)
LibreOfficeを組織に導入する時の参考リンク一覧
LibreOfficeを導入する際に参考になる情報はどこにありますか?と聞かれることが時々ありますので、主なものを拾ってみました。 このエントリーはLibreOffice Advent Calendar 2016の2日目のものです(すっかり遅くなりました)。(2016/12/23にFAQとサポートベンダを追記)
LibreOfficeへの移行について
LibreOffice移行ガイド:PDF
- TDFからの公式ドキュメントです。ドイツ・ミュンヘン市やイタリアのウンブリア州などの事例を元に作られたものです。イタリア国防省の12万台の移行もこれに沿って行われているそうです。残念ながら英語版しかありません。私が関わっているアイクラフトで翻訳を途中までしていますので、そのうち公開できればと思います。
移行ガイドの解説スライド:PDF
- LibreOffice Conference 2016でLibreOffice移行ガイドの解説セッションがありましたが、その時のものです。図が入っていて少しわかりやすいです。
TDFのホワイトペーパー(日本語訳)
- 上記の移行ガイドと内容は一部同じですが、小笠原さんによる翻訳があります。
JA福岡市の渡辺さんによるスライド
- JA福岡市がLibreOfficeへ移行した際の方法について、担当された渡辺さんが発表された資料です。
- OSC福岡でのスライドもあります:PDF
会津若松市「リブレオフィス導入までの経過」
- 会津若松市役所ののページです。OpenOffice.org時代から導入、LibreOfficeへ移行し、その情報を公開されています。
ODPG「OSSオフィスソフト導入ガイド2016年度版」
- ODGPは解散していますが2017年9月まではWebサイトは維持されるようです。Microsoft Officeの出来るシリーズをみて、どこまでLibreOfficeで対応しているのかを調査していたり、日本での導入事例も載っています。
パドラック LibreOffice サポートページ
- 湖西市役所でのLibreOfficeサポートで出たFAQが掲載されています。
導入事例
LibreOfficeの導入事例 - The Document Foundation Wiki
- 日本での導入事例の一覧です。公開されていないものや、追いきれていないものもありますので、有名なものしか拾えていません。
海外の導入事例:LibreOffice Migrations - The Document Foundation Wiki
LibreOfficeに関するニュース記事 - The Document Foundation Wiki
- Webで見かけたLibreOffice関連のニュースのリンク集です。(一部しか拾えていません)
操作マニュアル
JA福岡市のマニュアル
- 内部で利用されている様々なマニュアルを公開されています。DrawやBase、マクロについてあるのも特徴的です。
- LibreOffice記事一覧
- Drawマニュアル: http://www.ja-fukuoka.or.jp/libre/3745/
- Baseマニュアル: http://www.ja-fukuoka.or.jp/libre/2332/
- ExceltoCalcマクロ移行マニュアル: http://www.ja-fukuoka.or.jp/libre/9176/
- 活用編マニュアル(Writer/Calc/Draw): http://www.ja-fukuoka.or.jp/libre/770/
- 利用マニュアル(Calc/Writer): http://www.ja-fukuoka.or.jp/libre/768/
公式マニュアル
- 英語マニュアルがあります。Getting Startedや各アプリケーションごとにマニュアルがあります。機能を1つずつ説明されています。
FAQや質問
- 公式の質問サイトです
- https://ask.libreoffice.org/ja/questions/ (日本語)
- https://ask.libreoffice.org/en/questions/ (英語)
- 英語が苦にならない人は英語版ページの方が質問数が多いので、情報が見つかりやすいと思います。Asklibreoffceiについての使い方についてのスライド:少し古いのですが(アップデートせねば)
- http://www.slideshare.net/eno_eno/ask-libreoffice
メーリングリスト
- 日本語のメーリングリストは3つあります。コミュニティでのコミュニケーションの主要な手段がメーリングリストですので、ここをウォッチしておいたり、参加することも役にたちます。
- https://ja.libreoffice.org/get-help/mailing-lists/
- announce@ja.libreoffice.org: 新バージョン情報などのアナウンス用
- discuss@ja.libreoffice.org: コミュニティ運営や様々なディスカッション用
- users@ja.libreoffice.org: ユーザーの情報交換用
- 購読方法:(users@ja.libreoffice.orgの場合)
- users+subscribe@ja.libreoffice.orgへ空メールを投げる
- 確認メールが来るのでそのまま返信する
- 注意点:メーリングリストへの投稿は購読している全員に届くほか、Webサイトで見れる状態で保存されます。個人的なメールや、公にはしたくない情報は投稿しないよう気をつけましょう。
不具合を調べる/報告する
- LibreOfficeは自前で不具合データベースを運用しています。動作がおかしいと感じたときに、検索すると不具合として報告されているかどうかが確認できて便利です。また、不具合を見つけた場合に報告しておくと、修正される可能性があります。
- https://bugs.documentfoundation.org/
- https://wiki.documentfoundation.org/QA/BugReport/ja
セキュリティ勧告
- 公開されいているLibreOfficeの脆弱性情報の一覧です。脆弱性の修正は最新バージョンのみ(最新版、安定版のそれぞれの最新バージョン)ですので、アップデートが必要かを判断する際に便利です。
書籍
書籍はいろいろ出ていますが、気になる書籍を拾ってみます。
-
- コミュニティの知り合い同士で執筆した本です。LibreOffice3系向けですので少し古いですが、使い方自体は使えると思います。
-
- 大学で使われているテキストです。コンパクトにまとまっています。文書の構造化の解説などが丁寧にかかれている印象です。最近アップデートされたため、情報は新しいです。
http://itpro.nikkeibp.co.jp/article/MAG/20140401/547543/
- 雑誌に連載されていたものが1冊にまとまったものだそうです。
-
- この路線の本も出ています。内容はページ数のわりに薄い印象ですが、わかりやすく感じる人もいるかもしれません。
-
- LibreOfficeの本ではありませんが、LibreOffice移行ガイドの解説セッションで出てきたチェンジ・カーブについて書かれた本です。組織変革についての本ですが、LibreOffice導入でも参考にできる部分は多いと感じています。
LibreOfficeサポートベンダ
日本ではLibreOfficeのサポートを行っている企業はあまり多くありません。私の知っている範囲の紹介です
アイクラフト
私がLibreOfficeサポートビジネスに関わっている企業です。不具合解析などのレベル2サポートと操作レベルのレベル1サポートに加え、ソースコードレベルでの対応をするレベル3サポートについてはCollaboraのサービスをリセール&ブリッジしています。
パドラック
湖西市役所のLibreOffice導入をサポートしています。代表の杉本さんはOSC浜松の実行委員長や浜名湖LibreOffice勉強会などもされています。
フジみらい
普段はサポートをされていないようですが、徳島県庁向けにマニュアル作成やサポートをされたことがあります。 徳島LibreOffice勉強会でもその様子をお話いただいたことがあります。
以上、LibreOfficeを組織に導入する際の参考情報として、さまざまなリンクを紹介しました。 これも追加しておいたほうがよいよ、という情報がありました、お知らせください。
LibreOffice onlineをDebianでビルドしてみました
LibreOffice online(LOOL)をDebian jessieでビルドしてみましたので、メモを残しておきます。
ソースコードのREADMEと小笠原さんのオープンソースカンファレンス2016 Gunma群馬での発表資料を参考にビルドしました。
LOOLの構成
- サーバー:loolwsd (C++)
- クライアント:loleaflet (javascript)
- バックエンドにLibreOffice
LibreOfficeのビルド
TDF Wikiの「 Linuxと*BSDシステムにおけるLibreOfficeビルドのヒントとコツ」を参考にLibreOfficeをビルドします。
ビルドに必要なパッケージをインストール
$ sudo aptitude update $ sudo aptitude safe-upgrade $ sudo aptitude build-dep libreoffice
以前にLibreOfficeはこの環境でビルドしたことがありましたので、このステップは不要でした。他にも個別でパッケージをインストールする必要があったかもしれません。
LibreOfficeのソースコードを取得
今回はお試しでビルドするので、履歴情報を取得しない--depth=1オプションを付けています。
$ git clone --depth=1 git://anongit.freedesktop.org/libreoffice/core libreoffice
ビルドは4-5時間ほどがかかったように思います。最初に関連のソースコードのダウンロードが走りますが、それだけで30分ほどかかりました。普段使いのノートPCでビルドさせており、他の作業をしたいときにはCtrl+Cで中断させて(もう1度makeで続き)いました。
$ cd libreOffice $ /autogen.sh --with-lang="ja" $ make
ビルドしたLibreOfficeを起動するには、ソースコードのある"libreOffice"ディレクトリでinstdir/program/soffice &
と実行させます。
pocoのビルド&インストール
小笠原さんのスライドに従って、ライブラリのpocoをインストールします。
$ curl -O http://pocoproject.org/releases/poco-1.7.3/poco-1.7.3-all.tar.gz $ tar zxvf poco-1.7.3-all.tar.gz $ cd poco-1.7.3-all $ ./configure --prefix=/opt/poco $ make $ sudo make install
LOOLのインストール
サーバーloolwsdのビルド
- ソースコードの取得
- LibreOfficeのgitリポジトリか、Githubのミラーからソースコードを取得します。
$ cd ~/LibreOffice_code/ $ git clone https://github.com/LibreOffice/online.git
- ビルドまで
- 手元環境では、libtoolizeコマンドがなかったのでインストールします。
$ sudo aptitude install libtool
$ cd loolwsd $ libtoolize $ aclocal $ automake --add-missing $ autoreconf $ autoheader $ ./configure --enable-silent-rules --with-lokit-path=(LibreOfficeのソースコードツリーのフルパス)/include --with-lo-path=(LibreOfficeのソースコードツリーのフルパス)instdir --with-poco-includes=/opt/poco/include --with-poco-libs=/opt/poco/lib --enable-debug $ make
なお、パッケージが足りないエラーが出たのでlibcap-devをインストールして再度./configureしています。
configure: error: libcap not available? $ sudo aptitude install libcap-dev
クライアント側インストール
- nodejs系のパッケージインストール
$ sudo aptitude install nodejs node-jake node-uglify 以下の新規パッケージがインストールされます: coffeescript{a} libc-ares2{a} libv8-3.14.5{a} node-amdefine{a} node-async{a} node-glob{a} node-inherits{a} node-jake node-lru-cache{a} node-minimatch{a} node-once{a} node-optimist{a} node-sigmund{a} node-source-map{a} node-uglify node-utilities{a} node-wordwrap{a} nodejs 更新: 0 個、新規インストール: 18 個、削除: 0 個、保留: 0 個。
- Debianパッケージでnpmをインストールし、npm自身でアップデートさせます
$ sudo aptitude install npm $ npm -v 1.4.21 $ sudo npm install -g npm $ sudo ln -s /usr/bin/nodejs /usr/bin/node $ npm --v 3.10.6
- makeでJSファイルを生成します。
$ cd ~/LibreOffice_code/online/loleaflet/ $ make
証明書のコピー
$ sudo mkdir /etc/loolwsd $ cd ~/LibreOffice_code/online/loolwsd/etc/ $ sudo cp *pem /etc/loolwsd/
LOOLサーバーの実行
$ sudo mkdir -p /usr/local/var/cache/loolwsd $ sudo chown `ユーザ名` /usr/local/var/cache/loolwsd $ cd ~/LibreOffice_code/online/loolwsd $ make run
ブラウザでアクセスする
test.odsを作成して、/opt/tmp/以下に置いた場合、以下にアクセスします。
https://localhost:9980/loleaflet/dist/loleaflet.html?file_path=file:///opt/tmp/test.ods&host=wss://localhost:9980
テスト用ということでオレオレ証明書ですので、Firefoxの場合、「安全な接続ではありません」と証明書の警告がでます。「エラー内容」->「例外を追加」->「セキュリティ例外を承認」で許可します。
スプレッドシートが見えたら成功です。(相変わらず日本語は1文字しか入力できませんでした)
おまけ:JSファイルの作成でしばらく躓きました
$ cd ~/LibreOffice_code/online/loleaflet/ $ jake build jake aborted. Error: Cannot find module 'browserify' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) (See full trace by running task with --trace)
- そこでDebianパッケージでnode-browserify-liteを入れてみますが、うまく行きません。
$ aptitude search browserify p node-browserify-lite - bundle client-side JavaScript using Node.js-style module syntax $ sudo aptitude install node-browserify-lite 以下の新規パッケージがインストールされます: node-browserify-lite node-pend{a} 更新: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。 ... $ jake build jake aborted. Error: Cannot find module 'browserify' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) (See full trace by running task with --trace)
- Debianパッケージのnpmを入れてみて、npmでbrowserifyを入れてみます
$ sudo aptitude install npm 以下の新規パッケージがインストールされます: gyp{a} libc-ares-dev{a} libjs-node-uuid{a} libv8-3.14-dev{a} node-abbrev{a} node-ansi{a} node-ansi-color-table{a} node-archy{a} node-block-stream{a} node-combined-stream{a} node-cookie-jar{a} node-delayed-stream{a} node-forever-agent{a} node-form-data{a} node-fstream{a} node-fstream-ignore{a} node-github-url-from-git{a} node-graceful-fs{a} node-gyp{a} node-ini{a} node-json-stringify-safe{a} node-lockfile{a} node-mime{a} node-mkdirp{a} node-mute-stream{a} node-node-uuid{a} node-nopt{a} node-normalize-package-data{a} node-npmlog{a} node-osenv{a} node-qs{a} node-read{a} node-read-package-json{a} node-request{a} node-retry{a} node-rimraf{a} node-semver{a} node-sha{a} node-slide{a} node-tar{a} node-tunnel-agent{a} node-underscore{a} node-which{a} nodejs-dev{a} npm 更新: 0 個、新規インストール: 45 個、削除: 0 個、保留: 0 個。 $ npm install browserify npm ERR! notarget No compatible version found: browserify@'./node_shrinkwrap/browserify-13.1.0.tgz'
諦めて、この状態で、サーバーを起動してみますが、Firefoxでアクセスすると画面が真っ白でした。 以下のようなエラーが出ており、bundle.jsが生成できていません。
wsd-07737-03 00:00:09.591516 [ client_req_hdl ] FileServerRequestHandler: File not found: /home/eno/LibreOffice_code/online//loleaflet/dist/bundle.js
そこで「(。ゝω・)ノ*:゚・☆ npmを更新したら動かなくなった」を参考にして、上記の手順のように、npmをnpmでアップデートさせる方法で対応しました。
今年のLibreOfficeイベントを振り返る(2015)
今年も日本でのLibreOfficeイベントはいろいろありました。どんなイベントがあったのかを振り返って、今後の方向を考えてみたいと思います。
この記事は、LibreOfficeアドベントカレンダーの2日目です。1日目は小笠原さんのLibreOffice Conference 2015 Aarhus 裏リポートでした。 (第10回関西LibreOffice勉強会の様子)
今年のイベントサマリ
日本でのLibreOfficeコミュニティ関連イベントの一覧はこちらにありますので集計してみます。今年12月に予定しているものもカウントすると46回でした。意外に多かったです。(Wikiの一覧に記載忘れや計算ミスがあれば教えてください。※12/23に関東オフ、浜名湖と関西のhackfestを1回ずつ追記)
種類 | 内容 | 合計 |
---|---|---|
勉強会 | 浜名湖2回、関西2回、九州1回 | 5 |
オフラインミーティング | 関東2回 | 2 |
Hackfest | 関東3回、名古屋1回、浜名湖1、関西5回(分野別だと、もくもく会1、翻訳1、バグハンティング7、開発1) | 10 |
OSSイベントへの出展・セミナー | OSC12回、KOF1回、姫路1回、和歌山1回 | 15 |
LibreOfficeの日 | 関西12回 | 12 |
その他 | Document Freedom Day 2015 Tokyo、NVDAワールド 2015 東京 | 2 |
- 日本でのミニカンファレンスは今年中に間に合わず、来年1/9(土)に向けて準備中です。
勉強会やオフラインミーティングは、主催側が関東は小笠原さん、浜名湖が杉本さん(+直也さんと石川さんも最近サポートされてます)、関西は私(大釜さんなど、何人かの方が助けてくださってます)といいだしっぺが3人しか動けなかったので、やや少なめだったと思います。
Hackfestは去年ごろから取り組みはじめ、今年は増やす方向で考えていましたが、だいたい狙い通りでした。参加者は少なめですが、作業に直結しているのでLibreOfficeそのものへの貢献度は最も高いイベントです。
オープンソースカンファレンスなどは結構出ていたことがわかります。日本語チームメンバーの大森さんが、ブースコンテナを毎回送ってくださるので、ノートPCだけ持っていけばいいのは非常に助かっています。もう少し各地でイベントに出てくださる方が増えて、負担を分担できればという気もしています。
個人的にはLibreOfficeの日など小さなものも含め主担当22回、ブースなどの参加10回など、合計で34回に参加していたようです。イベントをやりすぎた感もありましたが、効果面を考えると、コミュニティビルディングの種まき段階のものも多くて、まだまだという印象でした。 日程調整しつつも流れてしまった徳島勉強会も来年には復活させたいと考えています。
(LibreOffice Hackfest(翻訳査読スプリント) 2015-07-26 in 東京の様子)
イベントの種類と目的
個人的には、それぞれのイベントの概要と・目的を以下のように考えています。
- 勉強会/オフラインミーティング
- 平日夜もしくは、休日午後に集まってスピーカーを立てるセミナースタイルが多い。懇親会セットのケースが多い
- ノウハウや情報の交換
- 公開スライドによる情報の蓄積
- 地域のユーザーコミュニティの形成。そこへ行けば聞ける場所に
- Hackfest
- 休日に集まって一緒にコミュニティの作業を行う
- ベータ版やリリース候補をテストするバグハンティングが中心だったが、開発向けも初めて挑戦。翻訳査読を一気に片付けるスプリントも実施した
- 新しい人や普段やっていない活動に取り組みたい人をフォローする
- ノウハウを互いに伝授
- コミュニケーションの場
- 作業効率アップ、モチベーションの維持
- オープンソースカンファレンスなどOSSイベント
- 各地でのオープンソースイベントへブース出展やセミナーを行う
- 他のOSSコミュニティの人たちと交流する
- OSSに興味ある人たちへLibreOfficeをアピール・情報提供
- LibreOfficeメンバ同士の交流
- LibreOfficeの日
- 毎月第3水曜日にコワーキングスペースに行く日を決めて、集まる場にする
- 出入り自由(各自でコワーキング利用料を負担)でゆるい感じ
- 地域のLibreOfficeコミュニティの形成。LibreOfficeに興味がある人が定期的に集まれる場にする
- LibreOffice mini conference
- 日本でのLibreOfficeに興味がある人が集まって交流と情報交換をする
振り返り
今年のイベントをKPTで振り返ってみます。コミュニティ全体としてですが、主催としての感想も混ざっています。
Keep(よかったこと、次も続けること)
- かなりの数のイベントができた
- hackfest系は、実際に作業を進める試みはある程度機能した
- 作業するモチベーションにつながったり、やったことない人をフォローできたり、バグ確認など連携してやりやすかった
- 関西のLibreOfficeの日はようやく認知されて、来てくれる人がちらほら出てきた
Problem(課題になったこと)
- コミュニティのアクティビティはそこそこ安定しているものの、活性化にまでは至らなかった
- イベントを主催側を担当する人は増えなかった
- イベントレポートが出来ないことが多かった(私の担当イベントについて)
Try(次に挑戦すること)
- hackfest系を増やす。定期開催化も進める
- イベントの企画から他の人を巻き込んで進める
- イベントレポートは、超簡単なものを当日or翌日に書く
アクティビティとしては確保できた反面、新しくイベントを担ってくれる人を見つけること、イベントの効果を高めることが来年のテーマとして考えています。
来年は、どのくらいのペースで出来るかわかりませんが、ボチボチやっていければと思います。興味を持たれたイベントがあればご参加いただけるとうれしいです。スタッフ側やスピーカー側でのご参加も大歓迎です!
明日のアドベントカレンダーは荒川さんの「CSVを扱うならExcelよりもCalcで」です。よろしくお願いします。
(初の開発向けとなった関西LibreOffice HackFest 2015-08-22の様子) (オープンソースカンファレンス徳島でのLibreOfficeブース)