diff options
author | maz-1 | 2015-12-03 09:29:36 +0800 |
---|---|---|
committer | maz-1 | 2015-12-03 09:29:36 +0800 |
commit | 228fd6e2ea376bc2d7c5d276485dcfaffbce2682 (patch) | |
tree | 92b3fccbfb911111a477def592dd04d26b1c79c3 | |
download | aur-228fd6e2ea376bc2d7c5d276485dcfaffbce2682.tar.gz |
init
-rw-r--r-- | .SRCINFO | 29 | ||||
-rw-r--r-- | PKGBUILD | 50 | ||||
-rw-r--r-- | imchooser-helper.service | 12 | ||||
-rw-r--r-- | imchooser-helper.sh | 15 | ||||
-rw-r--r-- | kcm-imchooser.install | 13 | ||||
-rw-r--r-- | port_to_kf5.patch | 155 |
6 files changed, 274 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..eb921622573d --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,29 @@ +pkgbase = kcm-imchooser-frameworks + pkgdesc = A input method starter and configure tool. It can help you set annoying system environment variable. Unofficial KF5 port. + pkgver = 0.1 + pkgrel = 1 + url = http://kde-apps.org/content/show.php/kcm+imchooser?content=146776 + install = kcm-imchooser.install + arch = i686 + arch = x86_64 + groups = plasma + license = GPL + makedepends = extra-cmake-modules + makedepends = git + makedepends = kdoctools + depends = qt5-base + depends = kio + depends = kdelibs4support + provides = kcm-imchooser + conflicts = kcm-imchooser + source = http://kde-apps.org/CONTENT/content-files/146776-kcm_imchooser-0.1.tar.bz2 + source = port_to_kf5.patch + source = imchooser-helper.sh + source = imchooser-helper.service + md5sums = 3015a7e5fb2e28bcf9bb413d6c004ab0 + md5sums = SKIP + md5sums = SKIP + md5sums = SKIP + +pkgname = kcm-imchooser-frameworks + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..d5a2642e99c2 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,50 @@ +# Mantainer maz-1 < ohmygod19993 at gmail dot com > +pkgname=kcm-imchooser-frameworks +pkgver=0.1 +pkgrel=1 +pkgdesc="A input method starter and configure tool. It can help you set annoying system environment variable. Unofficial KF5 port." +arch=('i686' 'x86_64') +url='http://kde-apps.org/content/show.php/kcm+imchooser?content=146776' +license=('GPL') +provides=kcm-imchooser +conflicts=kcm-imchooser +install=kcm-imchooser.install +depends=('qt5-base' + 'kio' 'kdelibs4support') +makedepends=('extra-cmake-modules' 'git' 'kdoctools') +source=("http://kde-apps.org/CONTENT/content-files/146776-kcm_imchooser-${pkgver}.tar.bz2" + "port_to_kf5.patch" + "imchooser-helper.sh" + "imchooser-helper.service") +groups=('plasma') +md5sums=('3015a7e5fb2e28bcf9bb413d6c004ab0' + 'SKIP' + 'SKIP' + 'SKIP') + + +prepare() { + rm -rf build + mkdir -p build + cd kcm_imchooser-$pkgver + patch -p1 -i "$srcdir/port_to_kf5.patch" +} + +build() { + cd build + cmake ../kcm_imchooser-$pkgver \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIB_INSTALL_DIR=lib \ + -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ + -DSYSCONF_INSTALL_DIR=/etc \ + -DBUILD_TESTING=OFF + make +} + +package() { + cd build + make DESTDIR="$pkgdir" install + install -Dm755 "$srcdir/imchooser-helper.sh" "$pkgdir/usr/share/imchooser/imchooser-helper" + install -Dm755 "$srcdir/imchooser-helper.service" "$pkgdir/usr/lib/systemd/system/imchooser-helper.service" +} diff --git a/imchooser-helper.service b/imchooser-helper.service new file mode 100644 index 000000000000..31cea209a9cf --- /dev/null +++ b/imchooser-helper.service @@ -0,0 +1,12 @@ +[Unit] +Description=Disable IME Autostart +After=network.target + +[Service] +Type=simple +User=root +ExecStart=/usr/share/imchooser/imchooser-helper disable + +[Install] +WantedBy=multi-user.target + diff --git a/imchooser-helper.sh b/imchooser-helper.sh new file mode 100644 index 000000000000..7abad7e21b66 --- /dev/null +++ b/imchooser-helper.sh @@ -0,0 +1,15 @@ +#!/bin/sh +case $1 in +disable) + sed -i 's:^Exec=fcitx-autostart$:Exec=/usr/share/imchooser/imchooser-helper fcitx:g' /etc/xdg/autostart/fcitx-autostart.desktop +;; +enable) + sed -i 's:^Exec=/usr/share/imchooser/imchooser-helper fcitx:Exec=fcitx-autostart:g' /etc/xdg/autostart/fcitx-autostart.desktop +;; +fcitx) + [[ "$XDG_SESSION_DESKTOP" == "KDE" ]] || /usr/bin/fcitx-autostart +;; +*) + true +;; +esac
\ No newline at end of file diff --git a/kcm-imchooser.install b/kcm-imchooser.install new file mode 100644 index 000000000000..2f62c59535d4 --- /dev/null +++ b/kcm-imchooser.install @@ -0,0 +1,13 @@ +post_install() { + systemctl enable imchooser-helper + /usr/share/imchooser/imchooser-helper disable +} + +post_upgrade() { + post_install +} + +post_remove() { + systemctl disable imchooser-helper + /usr/share/imchooser/imchooser-helper enable +} diff --git a/port_to_kf5.patch b/port_to_kf5.patch new file mode 100644 index 000000000000..46675d9eab47 --- /dev/null +++ b/port_to_kf5.patch @@ -0,0 +1,155 @@ +diff -Naur a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2011-11-13 21:55:57.000000000 +0800 ++++ b/CMakeLists.txt 2015-12-03 08:51:27.892172082 +0800 +@@ -1,4 +1,4 @@ +-cmake_minimum_required (VERSION 2.6) ++cmake_minimum_required (VERSION 2.8) + project(kcm_imchooser) + set(MAJOR_VERSION "0") + set(MINOR_VERSION "1") +@@ -12,8 +12,16 @@ + set(VERSION_STRING_FULL "${VERSION_STRING}-${SUFFIX_VERSION}") + endif(NOT SUFFIX_VERSION) + +-find_package(KDE4 REQUIRED) +-include(KDE4Defaults) ++find_package(ECM 0.0.11 REQUIRED NO_MODULE) ++set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) ++ ++include(KDEInstallDirs) ++include(KDECMakeSettings) ++include(KDECompilerSettings) ++include(FeatureSummary) ++ ++find_package(Qt5 REQUIRED COMPONENTS Widgets) ++find_package(KF5 REQUIRED COMPONENTS KDELibs4Support KIO DBusAddons) + + set(CMAKE_C_FLAGS "-Wall -Wextra -Wno-sign-compare -Wno-unused-parameter -fvisibility=hidden ${CMAKE_C_FLAGS}") + set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-sign-compare -Wno-unused-parameter -fvisibility=hidden ${CMAKE_CXX_FLAGS}") +diff -Naur a/src/kcontrol/CMakeLists.txt b/src/kcontrol/CMakeLists.txt +--- a/src/kcontrol/CMakeLists.txt 2011-11-13 21:55:57.000000000 +0800 ++++ b/src/kcontrol/CMakeLists.txt 2015-12-03 08:51:27.895505493 +0800 +@@ -1,6 +1,3 @@ +-add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS}) +-include_directories(${KDE4_INCLUDES} ${QT_INCLUDES}) +- + set(kcm_SRCS + main.cpp + module.cpp +@@ -11,13 +8,12 @@ + + find_package(Gettext REQUIRED) + +-kde4_add_ui_files(kcm_SRCS module.ui) ++ki18n_wrap_ui(kcm_SRCS module.ui) + +-kde4_add_plugin(kcm_imchooser ${kcm_SRCS}) ++add_library(kcm_imchooser MODULE ${kcm_SRCS}) + + target_link_libraries(kcm_imchooser +- ${KDE4_KDEUI_LIBRARY} +- ${KDE4_KIO_LIBRARY} ++ KF5::KDELibs4Support + ) + + install(TARGETS kcm_imchooser DESTINATION ${PLUGIN_INSTALL_DIR}) +diff -Naur a/src/kcontrol/kcm_imchooser.desktop b/src/kcontrol/kcm_imchooser.desktop +--- a/src/kcontrol/kcm_imchooser.desktop 2011-11-13 21:55:57.000000000 +0800 ++++ b/src/kcontrol/kcm_imchooser.desktop 2015-12-03 08:51:27.895505493 +0800 +@@ -1,13 +1,15 @@ + [Desktop Entry] +-Exec=kcmshell4 kcm_imchooser ++Exec=kcmshell5 kcm_imchooser + Icon=draw-freehand + Type=Service + X-KDE-ServiceTypes=KCModule + X-KDE-Library=kcm_imchooser + X-KDE-ParentApp=kcontrol + +-X-KDE-System-Settings-Parent-Category=locale ++X-KDE-System-Settings-Parent-Category=regionalsettings + Name=Input Method Chooser ++Name[zh_CN]=输入法选择器 + Comment=Choose your input method ++Comment[zh_CN]=选择你的输入法 + + Categories=Qt;KDE;X-KDE-settings-components; +diff -Naur a/src/kcontrol/main.cpp b/src/kcontrol/main.cpp +--- a/src/kcontrol/main.cpp 2011-11-13 21:55:57.000000000 +0800 ++++ b/src/kcontrol/main.cpp 2015-12-03 09:06:36.926300550 +0800 +@@ -26,3 +26,4 @@ + registerPlugin<IMChooser::Module>();) + K_EXPORT_PLUGIN(KcmIMChooserFactory("kcm_imchooser")) + ++#include <main.moc> +\ No newline at end of file +diff -Naur a/src/kcontrol/module.cpp b/src/kcontrol/module.cpp +--- a/src/kcontrol/module.cpp 2011-11-13 21:55:57.000000000 +0800 ++++ b/src/kcontrol/module.cpp 2015-12-03 09:06:59.976677775 +0800 +@@ -29,6 +29,16 @@ + #include <KMessageBox> + #include <KIconButton> + #include <KFileDialog> ++//kdelibs4support ++#include <KGlobal> ++#include <KIcon> ++#include <KDialog> ++#include <KUrl> ++ ++#include <QStandardPaths> ++ ++#define TRANSLATION_DOMAIN "kcm_imchooser" ++#include <klocalizedstring.h> + + #include "ui_module.h" + #include "module.h" +@@ -41,7 +51,7 @@ + namespace IMChooser + { + Module::Module(QWidget *parent, const QVariantList &args) : +- KCModule(KcmIMChooserFactory::componentData(), parent, args), ++ KCModule(parent, args), + ui(new Ui::Module), + m_model(new IMProfileModel(this)), + m_listView(0), +@@ -111,11 +121,11 @@ + saveProfile(profile); + } + +- QDir kdedir(KGlobal::mainComponent().dirs()->localkdedir()); ++ QDir kdedir(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/plasma-workspace"); + if (!kdedir.exists("env")) + kdedir.mkpath("env"); + +- QFile envScript(KGlobal::mainComponent().dirs()->localkdedir() + "env/" + "imchooser-env.sh"); ++ QFile envScript(kdedir.path() + "/env/imchooser-env.sh"); + if (!envScript.open(QIODevice::WriteOnly | QIODevice::Text)) + return; + +diff -Naur a/src/kded/CMakeLists.txt b/src/kded/CMakeLists.txt +--- a/src/kded/CMakeLists.txt 2011-11-13 21:55:57.000000000 +0800 ++++ b/src/kded/CMakeLists.txt 2015-12-03 08:51:27.895505493 +0800 +@@ -3,9 +3,9 @@ + + set(kded_imchooserstarter_PART_SRCS imchooserstarter.cpp ) + +-kde4_add_plugin(kded_imchooserstarter ${kded_imchooserstarter_PART_SRCS}) ++add_library(kded_imchooserstarter MODULE ${kded_imchooserstarter_PART_SRCS}) + +-target_link_libraries(kded_imchooserstarter ${KDE4_KIO_LIBS}) ++target_link_libraries(kded_imchooserstarter KF5::KDELibs4Support KF5::DBusAddons) + + install(TARGETS kded_imchooserstarter DESTINATION ${PLUGIN_INSTALL_DIR} ) + install( FILES imchooserstarter.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kded ) +\ No newline at end of file +diff -Naur a/src/kded/imchooserstarter.cpp b/src/kded/imchooserstarter.cpp +--- a/src/kded/imchooserstarter.cpp 2011-11-13 21:55:57.000000000 +0800 ++++ b/src/kded/imchooserstarter.cpp 2015-12-03 08:51:27.895505493 +0800 +@@ -29,6 +29,7 @@ + K_PLUGIN_FACTORY(IMChooserFactory, registerPlugin<IMChooserStarter>();) + K_EXPORT_PLUGIN(IMChooserFactory("kded_imchooserstarter")) + ++#include "imchooserstarter.moc" + + IMChooserStarter::IMChooserStarter(QObject *parent, const QList<QVariant> &) + : KDEDModule(parent) |