Help us understand the problem. What is going on with this article?

Archlinux で fcitx-mozc と mozc を個別に入れる

More than 3 years have passed since last update.

Archlinux の fcitx-mozc パッケージは mozc_server を含んでいて、
AUR にある mozc パッケージと衝突する。

mozcmozc で入れて、fcitx-mozc は mozc アドオンのみ入れるようにしたので、手順を残しておく。

mozc の導入

mozc から snapshot を取得して PKGBUILD を以下のように編集する。

$ cd ~/builds
$ tar xf ~/downloads/mozc.tar.gz

emacs-mozc パッケージを入れる。ibus-mozc はいらない子。

@@ -1,10 +1,10 @@
 # Maintainer: ponsfoot <cabezon dot hashimoto at gmail dot com>

 ## If you will be using mozc.el on Emacs, uncomment below.
-#_emacs_mozc="yes"
+_emacs_mozc="yes"

 ## If you will not be using ibus (only use uim), comment out below.
-_ibus_mozc="yes"
+#_ibus_mozc="yes"

 ## If you do not want to add Japanese zip code into dictionary,
 ## comment out below.

ibus-mozc の依存は消す。

@@ -183,4 +183,4 @@ package_emacs-mozc() {

 # Global pkgdesc and depends are here so that they will be picked up by AUR
 pkgdesc="A Japanese Input Method for Chromium OS, Windows, Mac and Linux (the Open Source Edition of Google Japanese Input)"
-depends=('qt5-base' 'ibus>=1.4.1' 'zinnia')
+depends=('qt5-base' 'zinnia')

あとは、単純に makepkg -simozcemacs-mozc を入れる。

fcitx-mozc の導入

ABSfcitx-mozc をカスタムコンパイル。

$ sudo abs community/fcitx-mozc
$ cp -r /var/abs/community/fcitx-mozc ~/builds
$ cd ~/builds/fcitx-mozc
$ ln -s ~/builds/mozc/mozc .

mozc との衝突は削除し、依存に入れる。
上記でシンボリックリンクしたものを使うため、mozc 本体のソース取得や third_party の取得はごっそり削除。

@@ -6,10 +6,6 @@
 ## Mozc compile option
 _bldtype=Release

-_mozc_rev=280e38fe3d9db4df52f0713acf2ca65898cd697a
-_japanese_usage_dictionary_rev=e5b3425575734c323e1d947009dd74709437b684
-_gyp_rev=920ee58c3d3109dea3cd37d88054014891a93db7
-_protobuf_rev=a428e42072765993ff674fda72863c9f1aa2d268
 _zipcode_rel=201611

 _pkgbase=mozc
@@ -21,23 +17,15 @@ pkgrel=1
 arch=('i686' 'x86_64')
 url="https://github.com/google/mozc"
 license=('custom')
-depends=('qt5-base' 'fcitx' 'zinnia')
+depends=('qt5-base' 'fcitx' 'zinnia' 'mozc')
 makedepends=('pkg-config' 'python2' 'curl' 'gtk2' 'mesa' 'subversion' 'ninja' 'git' 'clang')
 replaces=('mozc-fcitx')
-conflicts=('mozc' 'mozc-server' 'mozc-utils-gui' 'mozc-fcitx')
-source=(git+https://github.com/google/mozc.git#commit=${_mozc_rev}
-        japanese_usage_dictionary::git+https://github.com/hiroyuki-komatsu/japanese-usage-dictionary.git#commit=${_japanese_usage_dictionary_rev}
-        git+https://chromium.googlesource.com/external/gyp#commit=${_gyp_rev}
-        git+https://github.com/google/protobuf.git#commit=${_protobuf_rev}
-        http://downloads.sourceforge.net/pnsft-aur/x-ken-all-${_zipcode_rel}.zip
+conflicts=('mozc-fcitx')
+source=(http://downloads.sourceforge.net/pnsft-aur/x-ken-all-${_zipcode_rel}.zip
         http://downloads.sourceforge.net/pnsft-aur/jigyosyo-${_zipcode_rel}.zip
         http://download.fcitx-im.org/fcitx-mozc/fcitx-mozc-${_fcitx_patchver}.patch
         http://download.fcitx-im.org/fcitx-mozc/fcitx-mozc-icon.tar.gz)
-sha512sums=('SKIP'
-            'SKIP'
-            'SKIP'
-            'SKIP'
-            'c48a4ac3237a367672009e67ccc34416cbbd5373f8ce7e47d28e5be85dddbb216d3eb27d2439cde4fdcf826df92ad13694e113761cb927def77944f14757aab1'
+sha512sums=('c48a4ac3237a367672009e67ccc34416cbbd5373f8ce7e47d28e5be85dddbb216d3eb27d2439cde4fdcf826df92ad13694e113761cb927def77944f14757aab1'
             'a6c328ebf4805a38ed17f782d70179d37072a0d4c6dd50fef0aeefff0e073acd606a006c261c6a79d381038e3928533f76104362d5bd443d93794ecffe45d923'
             '725c464727f230707b90975705ef1565f1178f9144e66c5a688696a4ef520a6fec1d11f7aa68ee05f82aa9417060b1cccf49a155e30734871a525eaa4c76addb'
             '5507c637e5a65c44ccf6e32118b6d16647ece865171b9a77dd3c78e6790fbd97e6b219e68d2e27750e22074eb536bccf8d553c295d939066b72994b86b2f251a')
@@ -57,13 +45,6 @@ prepare() {
   msg "Generating zip code seed..."
   PYTHONPATH="$PWD:$PYTHONPATH" python2 dictionary/gen_zip_code_seed.py --zip_code="${srcdir}/x-ken-all.csv" --jigyosyo="${srcdir}/JIGYOSYO.CSV" >> data/dictionary_oss/dictionary09.txt
   msg "Done."
-
-  # Copy third party deps
-  cd "$srcdir"
-  for dep in gyp protobuf japanese_usage_dictionary
-  do
-    cp -a $dep mozc/src/third_party/
-  done
 }

 build() {

mozc_server はインストールしない。

@@ -73,7 +57,7 @@ build() {

   cd mozc/src

-  _targets="server/server.gyp:mozc_server gui/gui.gyp:mozc_tool unix/fcitx/fcitx.gyp:fcitx-mozc"
+  _targets="unix/fcitx/fcitx.gyp:fcitx-mozc"

   QTDIR=/usr GYP_DEFINES="document_dir=/usr/share/licenses/$pkgname use_libzinnia=1" python2 build_mozc.py gyp
   python2 build_mozc.py build -c $_bldtype $_targets
@@ -84,9 +68,6 @@ build() {

 package() {
   cd mozc/src
-  install -D -m 755 out_linux/${_bldtype}/mozc_server "${pkgdir}/usr/lib/mozc/mozc_server"
-  install    -m 755 out_linux/${_bldtype}/mozc_tool   "${pkgdir}/usr/lib/mozc/mozc_tool"
-
   install -d "${pkgdir}/usr/share/licenses/$pkgname/"
   install -m 644 LICENSE data/installer/*.html "${pkgdir}/usr/share/licenses/${pkgname}/"

あとは、単純に makepkg -si で OK。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away