From 8f17f26fea3b0337cfa3a98f0421ece3855a2aff8b1cfdc402b0eb6b4b296ea0 Mon Sep 17 00:00:00 2001 From: OBS User autobuild Date: Fri, 26 Mar 2010 17:05:03 +0000 Subject: [PATCH] Accepting request 35858 from M17N Copy from M17N/ibus based on submit request 35858 from user tiwai OBS-URL: https://build.opensuse.org/request/show/35858 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/ibus?expand=0&rev=1 --- .gitattributes | 23 +++++ .gitignore | 1 + ibus-1.2.0.20100111.tar.gz | 3 + ibus-README.suse | 62 ++++++++++++ ibus-python-install-dir.patch | 26 +++++ ibus.changes | 22 ++++ ibus.spec | 184 ++++++++++++++++++++++++++++++++++ xim.d-ibus | 70 +++++++++++++ xim.ibus.suse.template | 26 +++++ 9 files changed, 417 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 ibus-1.2.0.20100111.tar.gz create mode 100644 ibus-README.suse create mode 100644 ibus-python-install-dir.patch create mode 100644 ibus.changes create mode 100644 ibus.spec create mode 100644 xim.d-ibus create mode 100644 xim.ibus.suse.template diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/ibus-1.2.0.20100111.tar.gz b/ibus-1.2.0.20100111.tar.gz new file mode 100644 index 0000000..9aecedc --- /dev/null +++ b/ibus-1.2.0.20100111.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41f23f1f8bf2746366e2faa57c8bec985098f5770a52c3d56899d33fc5f38384 +size 1291877 diff --git a/ibus-README.suse b/ibus-README.suse new file mode 100644 index 0000000..17df0fa --- /dev/null +++ b/ibus-README.suse @@ -0,0 +1,62 @@ +ibus README for SuSE +How to start using ibus + +In poor English: +0:Note: ibus don't support QT3 immodule, +If you use qt3-base applications, modify your /etc/X11/xim.d/ibus to +export QT_IM_MODULE=xim + +1.SuSE can start ibus automatically when your locale is set to en, zh_TW, zh_CN, zh_HK, zh_SG, ko_KR and ja_JP. +The setup script is a link in /etc/X11/xim.d/YOUR-LOCALE/15-ibus which link to /etc/X11/xim.d/ibus. +The number "15" makes ibus have priority over other input-method (e.g 50-scim or 90-xcin ). +If you prefer not using ibus, mv 15-ibus to 80-ibus (for example). Or see 2. + +2.If for some reason can't start ibus when login Xwindow +(1)maybe you are using root to login X, +(2)your /etc/X11/xim was modified, +(3)you are using a locale other than 1. +(4)there is another input-method who has higher priority then ibus (e.g 10-oxim) +You can edit ~/.xim, see ~/.xim.template for more informations. +Or edit ~/.profile, add +export INPUT_METHOD="ibus" +After installing ibus, there's a template for ibus: /usr/share/doc/packages/ibus/xim.ibus.suse.template +copy this file to ~/.xim, then you can use ibus next login X. + +3.You want to use your own input-method other than system setting, see 2. + +4.Notice:ibus will try to stop skim(a front-end of scim in kde) auto-start when login kde. + +5.Bug report or any suggestion to +http://code.google.com/p/ibus/ + + +In Chinese: +0:注意:ibus 不支援 QT3 immodule, +若您使用 qt3-based 應用程式,請修改 /etc/X11/xim.d/ibus 設定 +export QT_IM_MODULE=xim + +1.當您使用的語系是en 或zh_*時,SuSE 會自動啟動ibus +啟動的script是/etc/X11/xim.d/YOUR-LOCALE/15-ibus,這是一個到上層目錄ibus的連結 +"15"這個數字使他的優先順序高於90-xcin及50-scim +如果您不喜歡這個順序,修改連結的名稱為(例如:80-ibus),或參考2. + +2.重新登入X後,如果不能用ibus...可能是: +(1)您用root登入X, +(2)您的/etc/X11/xim被更改過了, +或普通使用者無法想使用自己的設定, +(3)您使用非1.中指定的語系 +(4)有別的輸入法的優先順序高於ibus(例如:10-oxim) +您可以編輯~/.xim,請參考~/.xim.template +安裝ibus後,會有一個範本:/usr/share/doc/packages/ibus/xim.ibus.suse.template +將這個檔案複製到您的~/.xim,當您下次登入X時就可以使用ibus了 +或編輯~/.profile,加入 +export INPUT_METHOD="ibus" + +3.如果您想要自己選擇輸入法而非使用系統設定,請參考2. + +4.注意:ibus會取消skim(scim的kde前端程式)的auto-start + +5.臭蟲回報或建議請至 +http://code.google.com/p/ibus/ + + diff --git a/ibus-python-install-dir.patch b/ibus-python-install-dir.patch new file mode 100644 index 0000000..b983759 --- /dev/null +++ b/ibus-python-install-dir.patch @@ -0,0 +1,26 @@ +diff --git a/ibus/Makefile.am b/ibus/Makefile.am +index d1cd750..9910f54 100644 +--- a/ibus/Makefile.am ++++ b/ibus/Makefile.am +@@ -56,7 +56,7 @@ nodist_ibus_PYTHON = \ + _config.py \ + $(NULL) + +-ibusdir = @pkgpythondir@ ++ibusdir = @pyexecdir@/ibus + + EXTRA_DIST = \ + _config.py.in \ +diff --git a/ibus/interface/Makefile.am b/ibus/interface/Makefile.am +index 49871ed..1fa37e5 100644 +--- a/ibus/interface/Makefile.am ++++ b/ibus/interface/Makefile.am +@@ -31,7 +31,7 @@ ibus_interface_PYTHON = \ + __init__.py \ + $(NULL) + +-ibus_interfacedir = @pkgpythondir@/interface ++ibus_interfacedir = @pyexecdir@/ibus/interface + + CLEANFILES = \ + *.pyc \ diff --git a/ibus.changes b/ibus.changes new file mode 100644 index 0000000..231cf4f --- /dev/null +++ b/ibus.changes @@ -0,0 +1,22 @@ +------------------------------------------------------------------- +Fri Mar 26 17:18:38 CET 2010 - tiwai@suse.de + +- move post scriptlets to install + +------------------------------------------------------------------- +Wed Mar 24 12:35:15 CET 2010 - tiwai@suse.de + +- Split libibus1 subpackage +- Misc clean-ups in spec file, avoid unnecessary workarounds + +------------------------------------------------------------------- +Thu Jan 28 10:36:38 UTC 2010 - mxwu@novell.com + +- Add ibus-python-install-dir.patch + - Fix the installing path on X86_64 + +------------------------------------------------------------------- +Thu Jan 28 07:41:08 UTC 2010 - mxwu@novell.com + +- Initial import + diff --git a/ibus.spec b/ibus.spec new file mode 100644 index 0000000..7a664cd --- /dev/null +++ b/ibus.spec @@ -0,0 +1,184 @@ +# +# spec file for package ibus (Version 1.2.0.20100111) +# +# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + + +Name: ibus +Version: 1.2.0.20100111 +Release: 1 +License: LGPL V2+ +Url: http://code.google.com/p/ibus/ +Source0: http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz +Source1: xim.d-ibus +Source2: ibus-README.suse +Source3: xim.ibus.suse.template +Patch0: ibus-python-install-dir.patch +Group: System/I18n/Chinese +Summary: Intelligent Input Bus for Linux OS +BuildRoot: %{_tmppath}/%{name}-%{version}-build +PreReq: /usr/bin/touch +#Provides: locale(ja;ko;zh) +Recommends: ibus-gtk ibus-qt + +BuildRequires: gettext-devel gtk-doc libtool python +BuildRequires: dbus-1-devel dbus-1-glib-devel dbus-1-python-devel gtk2-devel +BuildRequires: gconf2-devel python-gobject2-devel update-desktop-files +BuildRequires: fdupes intltool iso-codes-devel +%if %suse_version >= 1100 +BuildRequires: pcre-devel +%endif +Requires: glib2 python-gtk dbus-1-python notification-daemon iso-codes gconf2 python-xdg python-notify +%gconf_schemas_prereq + +%define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)") +%define gtk_binary_version %(pkg-config --variable=gtk_binary_version gtk+-2.0) + +%description +IBus means Intelligent Input Bus. It is a new input framework for Linux OS. It provides +full featured and user friendly input method user interface. It also may help +developers to develop input method easily. + +%package -n libibus1 +License: LGPL V2+ +Summary: IBus libraries +Group: System Environment/Libraries + +%description -n libibus1 +This package contains the libraries for IBus + +%package gtk +License: LGPL V2+ +Summary: IBus im module for gtk2 +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} + +%description gtk +This package contains ibus im module for gtk2 + +%package devel +License: LGPL V2+ +Summary: Development tools for ibus +Group: Development/Libraries +Requires: libibus1 = %{version}-%{release} +Requires: glib2-devel +Requires: dbus-1-devel +Requires: gtk-doc + +%description devel +The ibus-devel package contains the header files and developer +docs for ibus. + + +%prep +%setup -q +%patch0 -p1 + +%build +autoreconf -fi +intltoolize -f +%configure --disable-static \ + --disable-iso-codes-check \ + --enable-gtk-doc \ + --disable-qt4-immodule \ + --libexecdir=%{_prefix}/%{_lib}/ibus +make %{?jobs:-j %jobs} + +%install +%makeinstall +mkdir -p $RPM_BUILD_ROOT/etc/X11/xim.d/ +install -m 644 $RPM_SOURCE_DIR/xim.d-ibus $RPM_BUILD_ROOT/etc/X11/xim.d/ibus +sed -i 1i"SYS_LIB=%{_lib}" $RPM_BUILD_ROOT/etc/X11/xim.d/ibus + + pushd $RPM_BUILD_ROOT/etc/X11/xim.d/ + for lang in en zh_TW zh_HK zh_CN zh_SG ko_KR ja_JP ; do + mkdir $lang + pushd $lang + ln -s ../ibus 10-ibus + popd + done + popd + +rm -f $RPM_BUILD_ROOT/%{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.*a +rm -f $RPM_BUILD_ROOT/%{_libdir}/libibus.*a + +rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/xdg/autostart/ibus.desktop + +ln -sf %{_datadir}/icons/hicolor/48x48/apps/ibus-keyboard.png \ + $RPM_BUILD_ROOT%{_datadir}/pixmaps/ibus-keyboard.png + +%suse_update_desktop_file %name Utility DesktopUtility +%suse_update_desktop_file ibus-setup System SystemSetup + +%find_lang %{name} +%find_gconf_schemas +cat %{name}.schemas_list %{name}.lang > %{name}.lst +%fdupes -s $RPM_BUILD_ROOT + +%clean +rm -rf %buildroot + +%pre -f %{name}.schemas_pre + +%post gtk +touch var/adm/SuSEconfig/run-gtk +/sbin/SuSEconfig --module gtk2 + +%preun -f %{name}.schemas_preun + +%posttrans -f %{name}.schemas_posttrans + +%postun gtk +touch var/adm/SuSEconfig/run-gtk +/sbin/SuSEconfig --module gtk2 + +%post -n libibus1 -p /sbin/ldconfig + +%postun -n libibus1 -p /sbin/ldconfig + +%files -f %{name}.lst +%defattr(-,root,root,-) +%doc AUTHORS COPYING README +%doc $RPM_SOURCE_DIR/xim.ibus.suse.template +%doc $RPM_SOURCE_DIR/ibus-README.suse +%dir /etc/X11/xim.d +/etc/X11/xim.d/* +%{python_sitelib}/ibus +%dir %{_datadir}/ibus/ +%{_bindir}/ibus-daemon +%{_bindir}/ibus-setup +%{_datadir}/ibus/* +%{_datadir}/applications/* +%{_datadir}/icons/hicolor/*/apps/* +%{_datadir}/pixmaps/* +%{_prefix}/%{_lib}/ibus + +%files -n libibus1 +%defattr(-,root,root,-) +%{_libdir}/lib*.so.* + +%files gtk +%defattr(-,root,root,-) +%{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.so + +%files devel +%defattr(-,root,root,-) +%{_libdir}/lib*.so +%{_includedir}/* +%{_datadir}/gtk-doc/html/* +%{_libdir}/pkgconfig/* + +%changelog diff --git a/xim.d-ibus b/xim.d-ibus new file mode 100644 index 0000000..cf9c29f --- /dev/null +++ b/xim.d-ibus @@ -0,0 +1,70 @@ +OLD_PATH=$PATH +PATH=/usr/bin:/usr/X11R6/bin:/opt/kde3/bin:$PATH + +if ! type -p ibus-daemon > /dev/null 2>&1 ; then + echo "ibus is not available." + PATH=$OLD_PATH + return 1 +fi + +#when skim installed, Autostart must be "false". +#here we move $HOME/.kde/share/config/skimrc to skimrc.orig.ibus +case "$WINDOWMANAGER" in + *kde*) + if type -p skim > /dev/null 2>&1 \ + && ! grep -i -q "^[[:space:]]*Autostart.*=.*false" $HOME/.kde/share/config/skimrc + then + if [ -f $HOME/.kde/share/config/skimrc.orig.ibus ] ; then + mv -f $HOME/.kde/share/config/skimrc $HOME/.kde/share/config/skimrc.orig.ibus + chmod 777 $HOME/.kde/share/config/skimrc.orig.ibus + fi + cat > $HOME/.kde/share/config/skimrc << __END +[General] +Autostart=false +__END + chmod 777 $HOME/.kde/share/config/skimrc + else + # do nothing + : + fi + ;; + *) + # do nothing + ;; +esac + +# Determine the LC_CTYPE locale category setting +#tmplang=${LC_ALL-${LC_CTYPE-${LANG-en_US}}} + + export LC_CTYPE=$LANG + export XMODIFIERS="@im=ibus" + export GTK_IM_MODULE=ibus + export QT_IM_SWITCHER=imsw-multi + if [ -e /usr/$SYS_LIB/qt4/plugins/inputmethods/libqtim-ibus.so ]; then + export QT_IM_MODULE=ibus + else + export QT_IM_MODULE=xim + fi +## test if use kimpanel +## make sure your ibus panel for kimpanel is /usr/libexec/panel.py +## or you can specify it below +#export KIMPANEL_IBUS=/usr/libexec/panel.py +## but there's some problems to startup ibus-panel for kimpanel +## use ~/.kde4/Autostart/kimpanel-ibus instead + if [ -e /usr/libexec/panel.py ]; then +# ibus-daemon --panel=$KIMPANEL_IBUS --xim -d + if [ ! -e ~/.kde4/Autostart/kimpanel-ibus ]; then + cp /usr/$SYS_LIB/ibus/dbus/kimpanel-ibus \ + ~/.kde4/Autostart/kimpanel-ibus + fi + else + if [ -e ~/.kde4/Autostart/kimpanel-ibus ]; then + rm ~/.kde4/Autostart/kimpanel-ibus + fi + ibus-daemon --xim -d + fi + +PATH=$OLD_PATH + +# success: +return 0 diff --git a/xim.ibus.suse.template b/xim.ibus.suse.template new file mode 100644 index 0000000..247bee3 --- /dev/null +++ b/xim.ibus.suse.template @@ -0,0 +1,26 @@ +#~/.xim template for users to set ibus as default input method +#copy this file to ~/.xim +#logout and login again, that's all +#for more infomations, see ~/.xim.template + +#if any program can't input Chinese, try export #LC_CTYPE=zh_TW.UTF-8, e.g + +export LC_CTYPE=$LANG +export XMODIFIERS="@im=ibus" +export GTK_IM_MODULE=ibus +export QT_IM_SWITCHER=imsw-multi +os_type=`uname -i` +if [ $os_type = "x86_64" ]; then + if [ -e /usr/lib64/qt4/plugins/inputmethods/libqtim-ibus.so ]; then + export QT_IM_MODULE=ibus + else + export QT_IM_MODULE=xim + fi +else + if [ -e /usr/lib/qt4/plugins/inputmethods/libqtim-ibus.so ]; then + export QT_IM_MODULE=ibus + else + export QT_IM_MODULE=xim + fi +fi +ibus-daemon --xim &