讓 gcin 徹底 debianization,超簡單步驟

常言道:『飲水思源』,在 Open Source 的世界裡,我們常常需要別人的幫助,但是在您有所心得的時候請記得分享給大家,『幫助人是快樂的喔』。歡迎您在使用 debian 的過程中的任何心得分享給大家。

讓 gcin 徹底 debianization,超簡單步驟

文章訪客 » 週五 5月 27, 2005 9:05 am

1. 首先安裝下列套件:
代碼: 選擇全部
apt-get install dpkg-dev gcc debhelper libgtk2.0-dev libatk1.0-dev libpango1.0-dev libxtst-dev imagemagick fakeroot lintian

# imagemagick 只是用來建立 debian 風格的 icon,不會影響套件完成後的相依性
# fakeroot lintian 不一定要裝沒關係

2. 下載 gcin 原始碼GcinDebianization.diff.gz 6.6 KB

3. 將 gcin-0.9.6.tar.bz2 和 GcinDebianization.diff.gz 放在同一個目錄下,執行:
代碼: 選擇全部
#!/bin/sh
tar jxvf gcin-0.9.6.tar.bz2
gunzip GcinDebianization.diff.gz
cd gcin-0.9.6
patch -p1 <../GcinDebianization.diff
patch -p1 <debian/PatchToDebianStyle.diff
chmod 755 debian/rules
dpkg-buildpackage -rfakeroot

如果沒有安裝 fakeroot,必需改用 root 權限執行 dpkg-buildpackage

4. 已經完成啦!保證超乎想像的快!

現在可以用 lintian 檢查一下剛出爐的 deb。如果剛剛沒有任何修改,那錯誤訊息只有底下五行。如果還是看不慣,就把所有的 root <root@unknown> 改掉吧!
代碼: 選擇全部
W: gcin: readme-debian-contains-debmake-default-email-address
E: gcin: sharedobject-in-library-directory-not-actually-a-shlib usr/lib/libgcin-im-client.so
E: gcin: debian-changelog-file-contains-debmake-default-email-address root@unknown
W: gcin: maintainer-not-full-name root
E: gcin: maintainer-address-malformed root <root@unknown>

新 deb 的 檔案/目錄 結構,純 Debian 風格。

/usr/bin: gcin tsd2a tsa2d phoa2d phod2a tslearn gcin-setup gcin2tab

/usr/share/pixmaps: gcin.png gcin.xpm
/usr/share/pixmaps/gcin: pin-fixed24.png pin-float16.png

/usr/share/gcin/table:
pho.tab tsin.idx cj.gtab ar30.gtab dayi3.gtab pinyin.gtab jyutping.gtab cj5.gtab et.kbm et-asdf.kbm et26.kbm et26-asdf.kbm zo.kbm zo-asdf.kbm ibm.kbm tsin hsu.kbm pho-huge.tab simplex.gtab symbol-table gtab.list phrase.table

/usr/share/gcin/script:
gcin-user-setup gcin-utf8-setup utf8-edit

/usr/share/doc/gcin: changelog.gz README.zh_TW README.Debian copyright changelog.Debian.gz
使用 gcin-setup 的「求助(H)」時會呼叫 README.zh_TW

/usr/share/man/man1: gcin.1.gz gcin2tab.1.gz gcin-setup.1.gz phoa2d.1.gz phod2a.1.gz tsa2d.1.gz tsd2a.1.gz tslearn.1.gz

/usr/lib: libgcin-im-client.so
/usr/lib/gtk-2.0/2.4.0/immodules: im-gcin.so
/usr/lib/menu: gcin(兩檔合一,內含 gcin-setup)
/usr/include: gcin-im-client.h

另外也同時建立了 postinst 和 postrm,自動更新 menu 和 gtk.immodules

postinst 的內容:
代碼: 選擇全部
#!/bin/sh

set -e

if [ "$1" = "configure" ]; then
/usr/sbin/update-gtk-immodules
fi

# Automatically added by dh_installmenu
if [ "$1" = "configure" ] && [ -x "`which update-menus 2>/dev/null`" ]; then
update-menus
fi
# End automatically added section

exit 0

postrm 的內容:
代碼: 選擇全部
#!/bin/sh

set -e

# Automatically added by dh_installmenu
if [ -x "`which update-menus 2>/dev/null`" ]; then update-menus ; fi
# End automatically added section

if [ "$1" = "remove" ]; then
/usr/sbin/update-gtk-immodules
fi

exit 0
訪客
 

文章訪客 » 週五 5月 27, 2005 9:13 am

PatchToDebianStyle.diff 的全部內容
代碼: 選擇全部
--- gcin-0.9.6.orig/configure
+++ gcin-0.9.6/configure
@@ -78,11 +78,11 @@
 echo "GCIN_SCRIPT_DIR=\$(datadir_r)/gcin/script" >> config.mak
 echo "GCIN_SCRIPT_DIR_i=\$(datadir)/gcin/script" >> config.mak
 echo "OPTFLAGS=$OPTFLAGS" >> config.mak
-echo "DOC_DIR=\$(datadir_r)/doc/gcin-$GCIN_VERSION" >> config.mak
-echo "DOC_DIR_i=\$(datadir)/doc/gcin-$GCIN_VERSION" >> config.mak
-echo "GCIN_ICON_DIR=\$(datadir_r)/icons/gcin" >> config.mak
-echo "SYS_ICON_DIR=\$(datadir_r)/icons" >> config.mak
-echo "GCIN_ICON_DIR_i=\$(datadir)/icons/gcin" >> config.mak
+echo "DOC_DIR=\$(datadir_r)/doc/gcin" >> config.mak
+echo "DOC_DIR_i=\$(datadir)/doc/gcin" >> config.mak
+echo "GCIN_ICON_DIR=\$(datadir_r)/pixmaps/gcin" >> config.mak
+echo "SYS_ICON_DIR=\$(datadir_r)/pixmaps" >> config.mak
+echo "GCIN_ICON_DIR_i=\$(datadir)/pixmaps/gcin" >> config.mak
 echo "GCIN_BIN_DIR=\$(bindir_r)" >> config.mak
 echo "FREEBSD=$FREEBSD" >> config.mak
 
--- gcin-0.9.6.orig/Makefile
+++ gcin-0.9.6/Makefile
@@ -80,8 +80,8 @@
       install $(PROGS) $(bindir)
 
 install:
-   install -d $(datadir)/icons
-   install gcin.png $(datadir)/icons
+   install -d $(datadir)/pixmaps
+   install -m 644 gcin.png $(datadir)/pixmaps
    install -d $(GCIN_ICON_DIR_i)
    install -m 644 icons/* $(GCIN_ICON_DIR_i)
    install -d $(bindir)
@@ -95,7 +95,7 @@
       install $(PROGS) $(bindir); \
    else \
       install -d $(DOC_DIR_i); \
-      install -m 644 README Changelog $(DOC_DIR_i); \
+      install -m 644 README.zh_TW $(DOC_DIR_i); \
       install -s $(PROGS) $(bindir); \
    fi
    $(MAKE) -C scripts install
--- gcin-0.9.6.orig/gcin-setup.c
+++ gcin-0.9.6/gcin-setup.c
@@ -195,7 +195,7 @@
 
 static void cb_help()
 {
-  utf8_editor(DOC_DIR"/README");
+  utf8_editor(DOC_DIR"/README.zh_TW");
 }
 
 struct {
--- gcin-0.9.6.orig/scripts/Makefile
+++ gcin-0.9.6/scripts/Makefile
@@ -1,6 +1,6 @@
 include ../config.mak
 
-SCRIPTS=gcin-user-setup gcin-utf8-setup modify-XIM utf8-edit
+SCRIPTS=gcin-user-setup gcin-utf8-setup utf8-edit
 
 all:   $(SCRIPTS)
 
--- gcin-0.9.6.orig/im-client/Makefile
+++ gcin-0.9.6/im-client/Makefile
@@ -17,14 +17,14 @@
 
 install:
    install -d $(libdir)
-   install -m 755 libgcin-im-client.so $(libdir)
+   install -m 644 libgcin-im-client.so $(libdir)
    if [ $(prefix) = /usr/local ]; then \
      grep /usr/local/lib /etc/ld.so.conf > /dev/null 2>&1 || \
      echo /usr/local/lib >> /etc/ld.so.conf; \
      PATH=/sbin:/usr/sbin:$(PATH); ldconfig; \
    fi; \
    install -d $(includedir); \
-   install -m 444 gcin-im-client.h $(includedir)
+   install -m 644 gcin-im-client.h $(includedir)
 
 gcin-conf.o: ../gcin-conf.c
    $(CC) -c -fpic $(CFLAGS) -o $@ $<
--- gcin-0.9.6.orig/gtk-im/Makefile
+++ gcin-0.9.6/gtk-im/Makefile
@@ -1,7 +1,7 @@
 include ../config.mak
 
 OBJS = imgcin.o gtkimcontextgcin.o
-GTK2IM=gtk-2.0/immodules
+GTK2IM=gtk-2.0/2.4.0/immodules
 IMMODULES=$(libdir)/$(GTK2IM)
 IMMODULES_LOCAL=/usr/lib/$(GTK2IM)
 
@@ -24,7 +24,7 @@
       install -m 755 im-gcin.so $(IMMODULES_LOCAL); \
    else \
       install -d $(IMMODULES); \
-      install -m 755 im-gcin.so $(IMMODULES); \
+      install -m 644 im-gcin.so $(IMMODULES); \
    fi
 
 .depend:
訪客
 

文章訪客 » 週五 5月 27, 2005 9:17 am

希望大家能多回饋一些意見…

如果成效不錯的話,看看可不可以附在 gcin 原始碼裡面,

這樣以後官方 tar ball 解開就可以直接包成 deb,

要推入 Debian 官方套件就更輕鬆囉~
訪客
 

文章Tetralet » 週五 5月 27, 2005 4:50 pm

Anonymous 寫:如果成效不錯的話,看看可不可以附在 gcin 原始碼裡面,

這樣以後官方 tar ball 解開就可以直接包成 deb

您的意見很不錯耶,
怎麼當初沒想到?

不過其中還是有不少是針對 GCIN 原始碼的 Patch,
就看 Edward Liu 兄會不會接受這些 Patch 了。

Anonymous 寫:要推入 Debian 官方套件就更輕鬆囉~

嗯,期待 GCIN 能早日進入 Debian 之中!
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

文章Tetralet » 週五 5月 27, 2005 4:51 pm

小問題回報:

 GCIN 是以 LGPL 授權的哦!
 而不是 GPL 授權。
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

文章antonyshen » 週五 5月 27, 2005 4:59 pm

Anonymous 寫:希望大家能多回饋一些意見…

如果成效不錯的話,看看可不可以附在 gcin 原始碼裡面,

這樣以後官方 tar ball 解開就可以直接包成 deb,

要推入 Debian 官方套件就更輕鬆囉~


Really Great!! It works for me. Hope upstream can accept this patch, or include it in the source. :finger1:
antonyshen
可愛的小學生
可愛的小學生
 
文章: 23
註冊時間: 週五 1月 23, 2004 11:07 am

文章訪客 » 週五 5月 27, 2005 5:32 pm

Tetralet 寫:不過其中還是有不少是針對 GCIN 原始碼的 Patch,
就看 Edward Liu 兄會不會接受這些 Patch 了。

GCIN 是以 LGPL 授權的哦!
而不是 GPL 授權。

因為考慮到 patch 的問題,所以我故意 patch 得很少,而且是放在 debian 目錄,要不要 patch 由 user 或 package maintainer 自己決定…

不 patch 也可以直接包成 deb,步驟和上面幾乎一樣,不過請改執行底下的指令:
代碼: 選擇全部
#!/bin/sh
tar jxvf gcin-0.9.6.tar.bz2
gunzip GcinDebianization.diff.gz
cd gcin-0.9.6

# 這只是產生 debian 目錄和必要的包裝資訊,沒有改到任何一行原始碼
patch -p1 <../GcinDebianization.diff

# 修正誤植 LGPL 為 GPL 的問題
sed -e 's/GPL/LGPL/' debian/copyright > debian/tmp
cp debian/tmp debian/copyright

# 不用 patch 的話這裡要改一下…
sed -e 's/gcin\/README.zh_TW/gcin-0.9.6\/README/' debian/rules > debian/tmp
mv debian/tmp debian/rules

chmod 755 debian/rules
dpkg-buildpackage -rfakeroot

大功告成!就是這麼簡單!
訪客
 

文章訪客 » 週五 5月 27, 2005 5:57 pm

Anonymous 寫:不 patch 也可以直接包成 deb

抱歉抱歉,不 patch 的話還要加上一兩行,不然安裝會有問題…
代碼: 選擇全部
# 把 gcin.xpm 改放到 icons 底下
sed -e 's/pixmaps/icons/' debian/rules > debian/tmp
mv debian/tmp debian/rules

另外 postinst 和 postrm 就必須改用 gtk-query-immodules-2.0,不能用 Debian 建議的 update-gtk-immodules

不 patch 和 patch 的檔案位置差異:

/usr/share/icons
/usr/share/pixmaps

/usr/share/gcin/script/modify-XIM
/usr/share/doc/gcin-0.9.6/*

/usr/lib/gtk-2.0/immodules
/usr/lib/gtk-2.0/2.4.0/immodules
訪客
 

文章訪客 » 週六 5月 28, 2005 1:15 am

新版本推出!

完全不用 patch 也可以包出相當符合 Debian 風格的套件,

而如果要完全符合 Debian 風格,只改了三個檔案,總共七行原始碼而已…

一樣把 gcin 原始碼GcinDebianization2.diff.gz 放在同一個目錄,執行:
代碼: 選擇全部
#!/bin/sh
tar jxvf gcin-0.9.6.tar.bz2
gunzip GcinDebianization2.diff.gz
cd gcin-0.9.6
patch -p1 <../GcinDebianization2.diff
patch -p1 <debian/PatchToDebianStyle2.diff
chmod 755 debian/rules
dpkg-buildpackage -rfakeroot

如果不使用 PatchToDebianStyle2.diff 也沒關係,
包出來的套件會用 soft link 把該連結的東西連好,
而且絕對使用 Debian 官方建議的 /usr/sbin/update-gtk-immodules
訪客
 

文章訪客 » 週六 5月 28, 2005 1:24 am

PatchToDebianStyle2.diff 的全部內容,
只改了 configure 5 行, gcin-setup.c 1 行, gtk-im/Makefile 1 行,總共 5 + 1 + 1 = 7 行原始碼
代碼: 選擇全部
--- gcin-0.9.6.orig/configure
+++ gcin-0.9.6/configure
@@ -78,11 +78,11 @@
 echo "GCIN_SCRIPT_DIR=\$(datadir_r)/gcin/script" >> config.mak
 echo "GCIN_SCRIPT_DIR_i=\$(datadir)/gcin/script" >> config.mak
 echo "OPTFLAGS=$OPTFLAGS" >> config.mak
-echo "DOC_DIR=\$(datadir_r)/doc/gcin-$GCIN_VERSION" >> config.mak
-echo "DOC_DIR_i=\$(datadir)/doc/gcin-$GCIN_VERSION" >> config.mak
-echo "GCIN_ICON_DIR=\$(datadir_r)/icons/gcin" >> config.mak
-echo "SYS_ICON_DIR=\$(datadir_r)/icons" >> config.mak
-echo "GCIN_ICON_DIR_i=\$(datadir)/icons/gcin" >> config.mak
+echo "DOC_DIR=\$(datadir_r)/doc/gcin" >> config.mak
+echo "DOC_DIR_i=\$(datadir)/doc/gcin" >> config.mak
+echo "GCIN_ICON_DIR=\$(datadir_r)/pixmaps/gcin" >> config.mak
+echo "SYS_ICON_DIR=\$(datadir_r)/pixmaps" >> config.mak
+echo "GCIN_ICON_DIR_i=\$(datadir)/pixmaps/gcin" >> config.mak
 echo "GCIN_BIN_DIR=\$(bindir_r)" >> config.mak
 echo "FREEBSD=$FREEBSD" >> config.mak
 
--- gcin-0.9.6.orig/gcin-setup.c
+++ gcin-0.9.6/gcin-setup.c
@@ -195,7 +195,7 @@
 
 static void cb_help()
 {
-  utf8_editor(DOC_DIR"/README");
+  utf8_editor(DOC_DIR"/README.zh_TW");
 }
 
 struct {
--- gcin-0.9.6.orig/gtk-im/Makefile
+++ gcin-0.9.6/gtk-im/Makefile
@@ -1,7 +1,7 @@
 include ../config.mak
 
 OBJS = imgcin.o gtkimcontextgcin.o
-GTK2IM=gtk-2.0/immodules
+GTK2IM=gtk-2.0/2.4.0/immodules
 IMMODULES=$(libdir)/$(GTK2IM)
 IMMODULES_LOCAL=/usr/lib/$(GTK2IM)
 
--- gcin-0.9.6.orig/debian/rules
+++ gcin-0.9.6/debian/rules
@@ -70,16 +70,16 @@
    rm -f debian/gcin/usr/share/gcin/script/modify-XIM
 
    # IF YOU DID NOT PATCH SOURCE, THEN THESE MUST BE EXECUTED
-   install -d debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules
-   ln -s ../../immodules/im-gcin.so debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules/im-gcin.so
+   # install -d debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules
+   # ln -s ../../immodules/im-gcin.so debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules/im-gcin.so
 
    convert -size 32x32 gcin.png -resize 32x32 gcin.xpm
    install -d debian/gcin/usr/share/pixmaps
    install -m 644 gcin.xpm debian/gcin/usr/share/pixmaps
 
    # IF YOU PATCHED SOURCE, THEN YOU WILL RUN THESE
-   # mv debian/gcin/usr/share/icons/gcin.png debian/gcin/usr/share/pixmaps
-   # rmdir debian/gcin/usr/share/icons
+   mv debian/gcin/usr/share/icons/gcin.png debian/gcin/usr/share/pixmaps
+   rmdir debian/gcin/usr/share/icons
 
    rm -f debian/gcin/usr/lib/menu/gcin*
    install -d debian/gcin/usr/share/man/man1
@@ -122,12 +122,12 @@
    gunzip debian/gcin/usr/share/doc/*/README.gz
 
    # IF YOU PATCHED SOURCE, THEN YOU WILL RUN THESE
-   # mv debian/gcin/usr/share/doc/gcin/README debian/gcin/usr/share/doc/gcin/README.zh_TW
-   # rm -f debian/gcin/usr/share/doc/gcin/Changelog.gz
+   mv debian/gcin/usr/share/doc/gcin/README debian/gcin/usr/share/doc/gcin/README.zh_TW
+   rm -f debian/gcin/usr/share/doc/gcin/Changelog.gz
 
    # IF YOU DID NOT PATCH SOURCE, THEN THESE MUST BE EXECUTED
-   rm -f debian/gcin/usr/share/doc/gcin-*/Changelog.gz
-   ln -s ../gcin-*/README debian/gcin/usr/share/doc/gcin/README.zh_TW
+   # rm -f debian/gcin/usr/share/doc/gcin-*/Changelog.gz
+   # ln -s ../gcin-*/README debian/gcin/usr/share/doc/gcin/README.zh_TW
 
    dh_fixperms
 #   dh_perl
訪客
 

文章antonyshen » 週六 5月 28, 2005 11:31 am

做得很好喔!請大家幫忙,讓這個patch進到gcin,然後push進sid…
antonyshen
可愛的小學生
可愛的小學生
 
文章: 23
註冊時間: 週五 1月 23, 2004 11:07 am

文章訪客 » 週六 5月 28, 2005 11:19 pm

更新:同時支援傳統 gcin 和 4 bytes Unicode,一次包裝兩個 deb 套件

同時包出 gcin 和 gcin-extb。(gcin-extb provides gcin, and conflicts gcin)
若需要輸入 4 bytes Unicode,就安裝 gcin-extb

一樣不用 patch 也可以包出相當符合 Debian 風格的套件,
而如果要完全符合 Debian 風格,只改了三個檔案,總共行原始碼而已…

一樣把 gcin 原始碼GcinDebianization3.diff.gz 放在同一個目錄,執行:
代碼: 選擇全部
#!/bin/sh
tar jxvf gcin-0.9.6.tar.bz2
gunzip GcinDebianization3.diff.gz
cd gcin-0.9.6
patch -p1 < ../GcinDebianization3.diff
patch -p1 < debian/PatchToDebianStyle3.diff
chmod 755 debian/rules
dpkg-buildpackage -rfakeroot

如果不使用 PatchToDebianStyle3.diff 也沒關係,
包出來的套件會用 soft link 把該連結的東西連好,
而且絕對使用 Debian 官方建議的 /usr/sbin/update-gtk-immodules

如果大家測試沒問題,就推這個 patch 進入 gcin 吧~ :)
訪客
 

文章訪客 » 週六 5月 28, 2005 11:24 pm

PatchToDebianStyle3.diff 的全部內容,
只改了 configure 3 行, gcin-setup.c 1 行, gtk-im/Makefile 1 行,總共 3 + 1 + 1 = 5 行原始碼
代碼: 選擇全部
--- gcin-0.9.6.orig/configure
+++ gcin-0.9.6/configure
@@ -80,9 +80,9 @@
 echo "OPTFLAGS=$OPTFLAGS" >> config.mak
 echo "DOC_DIR=\$(datadir_r)/doc/gcin-$GCIN_VERSION" >> config.mak
 echo "DOC_DIR_i=\$(datadir)/doc/gcin-$GCIN_VERSION" >> config.mak
-echo "GCIN_ICON_DIR=\$(datadir_r)/icons/gcin" >> config.mak
-echo "SYS_ICON_DIR=\$(datadir_r)/icons" >> config.mak
-echo "GCIN_ICON_DIR_i=\$(datadir)/icons/gcin" >> config.mak
+echo "GCIN_ICON_DIR=\$(datadir_r)/pixmaps/gcin" >> config.mak
+echo "SYS_ICON_DIR=\$(datadir_r)/pixmaps" >> config.mak
+echo "GCIN_ICON_DIR_i=\$(datadir)/pixmaps/gcin" >> config.mak
 echo "GCIN_BIN_DIR=\$(bindir_r)" >> config.mak

 echo "FREEBSD=$FREEBSD" >> config.mak
 
--- gcin-0.9.6.orig/gcin-setup.c
+++ gcin-0.9.6/gcin-setup.c
@@ -195,7 +195,7 @@
 
 static void cb_help()
 {
-  utf8_editor(DOC_DIR"/README");
+  utf8_editor("/usr/share/doc/gcin/README.zh_TW");
 }
 
 struct {
--- gcin-0.9.6.orig/gtk-im/Makefile
+++ gcin-0.9.6/gtk-im/Makefile
@@ -1,7 +1,7 @@
 include ../config.mak
 
 OBJS = imgcin.o gtkimcontextgcin.o
-GTK2IM=gtk-2.0/immodules
+GTK2IM=gtk-2.0/2.4.0/immodules
 IMMODULES=$(libdir)/$(GTK2IM)
 IMMODULES_LOCAL=/usr/lib/$(GTK2IM)
 
--- gcin-0.9.6.orig/debian/rules
+++ gcin-0.9.6/debian/rules
@@ -85,12 +85,12 @@
    ln -s gcin2tab.1.gz debian/gcin/usr/share/man/man1/tslearn.1.gz
 
    # IF YOU DID NOT PATCH SOURCE, THEN THESE CODES MUST BE EXECUTED
-   install -d debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules
-   ln -s ../../immodules/im-gcin.so debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules/im-gcin.so
+   # install -d debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules
+   # ln -s ../../immodules/im-gcin.so debian/gcin/usr/lib/gtk-2.0/2.4.0/immodules/im-gcin.so
 
    # IF YOU HAVE PATCHED SOURCE, THEN YOU WILL NEED THESE
-   # mv debian/gcin/usr/share/icons/gcin.png debian/gcin/usr/share/pixmaps
-   # rmdir debian/gcin/usr/share/icons
+   mv debian/gcin/usr/share/icons/gcin.png debian/gcin/usr/share/pixmaps
+   rmdir debian/gcin/usr/share/icons
 
 
 # Build architecture-independent files here.
@@ -129,11 +129,11 @@
    rm -f debian/gcin/usr/share/doc/gcin-*/Changelog.gz
 
    # IF YOU DID NOT PATCH SOURCE, THEN THIS CODE MUST BE EXECUTED
-   ln -s ../gcin-*/README debian/gcin/usr/share/doc/gcin/README.zh_TW
+   # ln -s ../gcin-*/README debian/gcin/usr/share/doc/gcin/README.zh_TW
 
    # IF YOU HAVE PATCHED SOURCE, THEN YOU WILL NEED THESE
-   # mv debian/gcin/usr/share/doc/gcin-*/README debian/gcin/usr/share/doc/gcin/README.zh_TW
-   # rmdir debian/gcin/usr/share/doc/gcin-*
+   mv debian/gcin/usr/share/doc/gcin-*/README debian/gcin/usr/share/doc/gcin/README.zh_TW
+   rmdir debian/gcin/usr/share/doc/gcin-*
 
    rm -fr debian/gcin-extb/usr
    cp -r debian/gcin/usr debian/gcin-extb
訪客
 

文章訪客 » 週二 5月 31, 2005 7:27 pm

gcin 0.9.7 出了,這個 debianization patch 完全不用修改可以直接使用。
不過 0.9.7 官方原始碼已經納入 manpage 了, 所以 patch 裡面的 manpage 可以拿掉了…(內容是一樣的,使用時拿不拿都沒關係)

代碼: 選擇全部
changelog of gcin 0.9.7:

- 嘸蝦米用 wildcard (*?) 符合的字超過10個沒有辦法顯示的問題。
- 新增 ctrl-alt-G 重複送出的字串。
- 找到 input focus 錯亂的原因,如果 mozilla/firefox 裏面有 Macromedia flash plugin,會 open root style 的 XIM,這邊 concurrent 處理有問題。雖然情況有改善,flash plugin 仍然有問題。如果你正在用某個程式用 gcin 輸入,然後 firefox 剛好開了一個 新的flash,會造成 gcin 的 window 不見,這是 flash 第一次開啟時亂送 focus-in 的問題,必須把 flash 的 bug 解掉。
- 如果候選字超過10個,就不使用嘸蝦米的空白鍵方式,以免無法選字。
- gtab 輸入區的字型大小現在最小可以設定成 0。
- 許氏注音鍵盤無法輸入 「hwf好  hnf很  hid還」 的問題。
- 新增 files of man page gcin.1 gcin2tab.1, 由某位熱心人士提供。
訪客
 

文章訪客 » 週二 5月 31, 2005 10:17 pm

更新:拿掉 patch 裡面的 manpages

1. 拿掉 patch 裡面的 gcin.1 和 gcin2tab.1
2. 拿掉 debian/rules 裡面安裝 manpages 的部份,四行 codes
3. 修改 PatchToDebianStyle?.diff,這樣在 patch 0.9.7 source 的時候就不會看到 Hunk 訊息(不改也沒關係,完全沒差)
4. README.Debian 文件補強
5. debian/changelog 裡面的版本號更新為 0.9.7
6. debian/gcin.menu 排版改得順眼一點

一樣把 gcin 原始碼GcinDebianization4.diff.gz 放在同一個目錄,執行:
代碼: 選擇全部
#!/bin/sh
tar jxvf gcin-0.9.7.tar.bz2
gunzip GcinDebianization4.diff.gz
cd gcin-0.9.7
patch -p1 < ../GcinDebianization4.diff
patch -p1 < debian/PatchToDebianStyle4.diff
chmod 755 debian/rules
dpkg-buildpackage -rfakeroot
訪客
 

下一頁

回到 share

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客