2010年08月24日 Libretto 100 + Cardbus LAN card + kernel 2.6.17.14 = NG
_ Libretto 100 + Cardbus LAN card + kernel 2.6.17.14 = NG
やっぱり安定しなかった。ファイルシステム(ext3)壊れた。
この機械では10BASE-Tのカードで運用しようと決めた。
_ firefox-3.6.8のビルドでsedがループ
した。
以下のステップ
cat ../../browser/locales/en-US/updater/updater.ini | \
          sed -e "s/^InfoText=/Info=/" -e "s/^TitleText=/Title=/" | \
          sed -e "s/%MOZ_APP_DISPLAYNAME%/Namoroka/" > \
          ../../dist/bin/updater.ini
を実行し始めたとたんに、急にシステムが重くなって、実行ステップがその先に一切進まなくなった。
その時のtopの表示が以下で
top - 13:16:16 up 18 min,  7 users,  load average: 1.12, 0.64, 0.42
Tasks: 116 total,   2 running, 114 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.7%us,  0.7%sy, 98.6%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    245632k total,   239056k used,     6576k free,    74084k buffers
Swap:   530104k total,      232k used,   529872k free,    97016k cached
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
16770 m-ito     30  10  3112  956  716 R 98.6  0.4   0:09.66 sed
 1819 root      20   0  145m 9836 3468 S  1.0  4.0   1:21.90 X
    1 root      20   0   772  324  280 S  0.0  0.1   0:02.79 init
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd
    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0
    4 root      20   0     0    0    0 S  0.0  0.0   0:00.02 ksoftirqd/0
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0
    6 root      20   0     0    0    0 S  0.0  0.0   0:00.52 events/0
    7 root      20   0     0    0    0 S  0.0  0.0   0:00.04 khelper
   10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 netns
   13 root      20   0     0    0    0 S  0.0  0.0   0:00.00 async/mgr
sedが頑張っている。
vmstat 3 の表示が以下
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 2 0 232 6716 74148 97100 0 0 281 141 506 306 36 10 50 5 1 0 232 6716 74148 97092 0 0 0 0 958 96 100 0 0 0 1 0 232 6716 74148 97092 0 0 0 0 971 63 100 0 0 0 1 0 232 6716 74148 97092 0 0 0 0 958 27 100 0 0 0 1 0 232 6716 74148 97092 0 0 0 0 976 74 99 1 0 0 1 0 232 6716 74148 97092 0 0 0 0 987 87 99 1 0 0 1 0 232 6716 74148 97092 0 0 0 0 967 41 100 0 0 0 1 0 232 6716 74148 97092 0 0 0 0 964 28 100 0 0 0
IOが一切無くて、CPUはユーザでほとんど100%使い切ってる状況。
browser/locales/en-US/updater/updater.iniに何か原因があるのではと当たりをつけ、とりあえず中身を表示してみると以下のように
$ cat browser/locales/en-US/updater/updater.ini ; This file is in the UTF-8 encoding [Strings] TitleText=%MOZ_APP_DISPLAYNAME% Update InfoText=%MOZ_APP_DISPLAYNAME% is installing your updates and will start in a few moments
特におかしい所は見当たらないような...
同じファイルをvimで開いてみたら
; This file is in the UTF-8 encoding [Strings] TitleText=%MOZ_APP_DISPLAYNAME% Update InfoText=%MOZ_APP_DISPLAYNAME% is installing your updates and will start in a few moments|&
最終行の末尾に「|&」の文字が現れた(@O@;
odで確認すると
$ tail -1 browser/locales/en-US/updater/updater.ini | od -xc
0000000  49  6e  66  6f  54  65  78  74  3d  25  4d  4f  5a  5f  41  50
           6e49    6f66    6554    7478    253d    4f4d    5f5a    5041
          I   n   f   o   T   e   x   t   =   %   M   O   Z   _   A   P
0000020  50  5f  44  49  53  50  4c  41  59  4e  41  4d  45  25  20  69
           5f50    4944    5053    414c    4e59    4d41    2545    6920
          P   _   D   I   S   P   L   A   Y   N   A   M   E   %       i
0000040  73  20  69  6e  73  74  61  6c  6c  69  6e  67  20  79  6f  75
           2073    6e69    7473    6c61    696c    676e    7920    756f
          s       i   n   s   t   a   l   l   i   n   g       y   o   u
0000060  72  20  75  70  64  61  74  65  73  20  61  6e  64  20  77  69
           2072    7075    6164    6574    2073    6e61    2064    6977
          r       u   p   d   a   t   e   s       a   n   d       w   i
0000100  6c  6c  20  73  74  61  72  74  20  69  6e  20  61  20  66  65
           6c6c    7320    6174    7472    6920    206e    2061    6566
          l   l       s   t   a   r   t       i   n       a       f   e
0000120  77  20  6d  6f  6d  65  6e  74  73  e2  80  a6  0a
           2077    6f6d    656d    746e    e273    a680    000a
          w       m   o   m   e   n   t   s 342 200 246  \n
0000135
末尾に「e2 80 a6」のゴミっぽいものが付いている(?)
vimでこのゴミっぽいものを削除してビルドを再開したら、何事も無かったかのようにスルスル完了しましたとさ。
_ Slackware-13.1 + firefox-3.6.8 + kinput2
Slackware-13.1な環境でfirefoxを起動すると、かな漢字変換にSCIMが起動される。それはそれで、昔からのSlackwareユーザとしては
「ほぉ〜すらっくも便利になったもんじゃのぉ〜」
なのだが、やはり使い慣れたkinput2 + Cannaにしがみつきたい。
その場合は、環境変数を以下のように設定し
XMODIFIERS='@im=kinput2'; export XMODIFIERS GTK_IM_MODULE=xim; export GTK_IM_MODULE
kinput2を起動する際にximプロトコルを有効にしてやるとよい。
kinput2 -canna -xim -kinput +ximp &
2016年08月24日 Slackware64-14.2 on NEC VersaPro
_ CPU
$ cat /proc/cpuinfo | egrep "model name" model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz $
_ Memory
$ free -h
              total        used        free      shared  buff/cache   available
Mem:           7.6G        1.7G        835M        163M        5.2G        5.3G
Swap:          8.0G        2.1M        8.0G
$
_ Disk
$ LANG=C LC_ALL=C sudo fdisk -l /dev/sda Disk /dev/sda: 298.1 GiB, 320072933376 bytes, 625142448 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: dos Disk identifier: 0x579556b7 Device Boot Start End Sectors Size Id Type /dev/sda1 2048 16779263 16777216 8G 82 Linux swap /dev/sda2 16779264 625142447 608363184 290.1G 83 Linux $
_ w3m-0.5.3.tar.gz
$ tar xvf w3m-0.5.3.tar.gz
w3m-0.5.3.diff
*** ./istream.h.ORG	2012-11-28 12:23:44.903821617 +0900
--- ./istream.h	2012-11-28 12:24:31.368727065 +0900
***************
*** 20,26 ****
  typedef struct stream_buffer *StreamBuffer;
! struct file_handle {
      FILE *f;
      void (*close) ();
  };
--- 20,26 ----
  typedef struct stream_buffer *StreamBuffer;
! struct File_handle {
      FILE *f;
      void (*close) ();
  };
***************
*** 53,59 ****
  struct file_stream {
      struct stream_buffer stream;
!     struct file_handle *handle;
      char type;
      char iseos;
      int (*read) ();
--- 53,59 ----
  struct file_stream {
      struct stream_buffer stream;
!     struct File_handle *handle;
      char type;
      char iseos;
      int (*read) ();
*** ./istream.c.ORG	2012-11-28 12:23:39.465130387 +0900
--- ./istream.c	2012-11-28 12:24:16.455831711 +0900
***************
*** 22,29 ****
  static void basic_close(int *handle);
  static int basic_read(int *handle, char *buf, int len);
! static void file_close(struct file_handle *handle);
! static int file_read(struct file_handle *handle, char *buf, int len);
  static int str_read(Str handle, char *buf, int len);
--- 22,29 ----
  static void basic_close(int *handle);
  static int basic_read(int *handle, char *buf, int len);
! static void file_close(struct File_handle *handle);
! static int file_read(struct File_handle *handle, char *buf, int len);
  static int str_read(Str handle, char *buf, int len);
***************
*** 114,120 ****
      stream = New(union input_stream);
      init_base_stream(&stream->base, STREAM_BUF_SIZE);
      stream->file.type = IST_FILE;
!     stream->file.handle = New(struct file_handle);
      stream->file.handle->f = f;
      if (closep)
  	stream->file.handle->close = closep;
--- 114,120 ----
      stream = New(union input_stream);
      init_base_stream(&stream->base, STREAM_BUF_SIZE);
      stream->file.type = IST_FILE;
!     stream->file.handle = New(struct File_handle);
      stream->file.handle->f = f;
      if (closep)
  	stream->file.handle->close = closep;
***************
*** 638,650 ****
  }
  static void
! file_close(struct file_handle *handle)
  {
      handle->close(handle->f);
  }
  static int
! file_read(struct file_handle *handle, char *buf, int len)
  {
      return fread(buf, 1, len, handle->f);
  }
--- 638,650 ----
  }
  static void
! file_close(struct File_handle *handle)
  {
      handle->close(handle->f);
  }
  static int
! file_read(struct File_handle *handle, char *buf, int len)
  {
      return fread(buf, 1, len, handle->f);
  }
*** ./main.c.ORG	2016-08-01 21:43:32.714706108 +0900
--- ./main.c	2016-08-01 21:45:27.569705061 +0900
***************
*** 833,839 ****
--- 833,844 ----
      mySignal(SIGPIPE, SigPipe);
  #endif
+ #if 0
      orig_GC_warn_proc = GC_set_warn_proc(wrap_GC_warn_proc);
+ #else
+     orig_GC_warn_proc = GC_get_warn_proc();
+     GC_set_warn_proc(wrap_GC_warn_proc);
+ #endif
      err_msg = Strnew();
      if (load_argc == 0) {
  	/* no URL specified */
$ cd w3m-0.5.3 $ cat ../w3m-0.5.3.diff | patch -p0 $ LIBS=-lX11 ./configure && make $ sudo make install && sudo ldconfig
_ less-382.tar.gz with iso262 patch
$ tar xvf less-382.tar.gz $ chmod -R +w less-382 $ cd less-382 $ zcat ../less-382-iso258.patch.gz | patch -p1 $ zcat ../less-382-iso258-259.patch.gz | patch -p1 $ zcat ../less-382-iso259-260.patch.gz | patch -p1 $ zcat ../less-382-iso260-261.patch.gz | patch -p1 $ zcat ../less-382-iso261-262.patch.gz | patch -p1 $ zcat ../less-382-iso262.ext03.patch.gz | patch -p1 $ ./configure && make $ sudo make install && sudo ldconfig
_ Canna37p3.tar.bz2
$ tar xvf Canna37p3.tar.bz2 $ cd Canna37p3 $ xmkmf $ make canna $ sudo make install $ sudo make install.man
Add some next lines into /etc/rc.d/rc.local to run cannaserver at boot time.
if [ -x /usr/local/canna/sbin/cannaserver ]
then
        rm /tmp/.iroha_unix/IROHA
        /usr/local/canna/sbin/cannaserver -inet -u bin
        echo "Starting cannaserver."
fi
Create /var/log/CANNA0msgs.
$ sudo touch /var/log/CANNA0msgs $ sudo chown bin.bin /var/log/CANNA0msgs
Add next line into /etc/ld.so.conf.
/usr/local/canna/lib
After above, do "sudo ldconfig".
Create ~/.cannax/rkc.conf
$ mkdir ~/.cannax $ touch ~/.cannax/rkc.conf
_ nkf-2.1.2.tar.gz
$ tar xvf nkf-2.1.2.tar.gz $ cd nkf-2.1.2 $ make $ sudo make install $ cd NKF.mod/ $ perl Makefile.PL $ make $ sudo make install
_ SKK-JISYO for Canna
Get SKK-JISYO.* from http://openlab.ring.gr.jp/skk/dic.html
$ LANG=C LC_ALL=C ls -l SKK-JISYO.* -rw-r--r-- 1 m-ito m-ito 14055 May 29 2001 SKK-JISYO.JIS2 -rw-r--r-- 1 m-ito m-ito 2816928 May 29 2001 SKK-JISYO.L -rw-r--r-- 1 m-ito m-ito 520977 May 29 2001 SKK-JISYO.edict -rw-r--r-- 1 m-ito m-ito 1728337 May 29 2001 SKK-JISYO.geo -rw-r--r-- 1 m-ito m-ito 408438 May 29 2001 SKK-JISYO.jinmei -rw-r--r-- 1 m-ito m-ito 406311 May 29 2001 SKK-JISYO.law -rw-r--r-- 1 m-ito m-ito 1513714 May 29 2001 SKK-JISYO.office.zipcode -rw-r--r-- 1 m-ito m-ito 47834 May 29 2001 SKK-JISYO.okinawa -rw-r--r-- 1 m-ito m-ito 3980829 May 29 2001 SKK-JISYO.zipcode $
Convert SKK dic to Canna dic.
$ cat SKK-JISYO.JIS2 |\
nkf -e |\
grep -v '^;' |\
gawk 'BEGIN{
    FS = "/";
}
{
    tango = $0;
    gsub(/^.* \//, "", tango);
    gsub(/\//, " ", tango);
    gsub(/;.* /, " ", tango);
    printf("%-s #T35 %s\n", $1, tango);
}
END{
}' |\
sed -e 's/  */ /g' |\
sort |\
grep -v '^ *$' >skkjis2.t
$ mkbindic skkjis2.t
After above, skkjis2.cbd and skkjis2.cld will be created. Do same convert method for other SKK-JISYO.*.
Install *.cbd and *.cld.
# cp *.cbd /usr/local/canna/share/canna/dic/canna/ # chown bin.bin /usr/local/canna/share/canna/dic/canna/skk*.cbd # chmod 664 /usr/local/canna/share/canna/dic/canna/skk*.cbd # cp *.cld /usr/local/canna/share/canna/dic/canna/ # chown bin.bin /usr/local/canna/share/canna/dic/canna/skk*.cld # chmod 664 /usr/local/canna/share/canna/dic/canna/skk*.cld # cp /usr/local/canna/share/canna/dic/canna/dics.dir /usr/local/canna/share/canna/dic/canna/dics.dir.bak # cat dics.dir >>/usr/local/canna/share/canna/dic/canna/dics.dir
Create(Edit) ~/.canna
;; Copyright 1992 NEC Corporation, Tokyo, Japan. ;; ;; Permission to use, copy, modify, distribute and sell this software ;; and its documentation for any purpose is hereby granted without ;; fee, provided that the above copyright notice appear in all copies ;; and that both that copyright notice and this permission notice ;; appear in supporting documentation, and that the name of NEC ;; Corporation not be used in advertising or publicity pertaining to ;; distribution of the software without specific, written prior ;; permission. NEC Corporation makes no representations about the ;; suitability of this software for any purpose. It is provided "as ;; is" without express or implied warranty. ;; ;; NEC CORPORATION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, ;; INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN ;; NO EVENT SHALL NEC CORPORATION BE LIABLE FOR ANY SPECIAL, INDIRECT OR ;; CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF ;; USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR ;; OTHER TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ;; PERFORMANCE OF THIS SOFTWARE. ;; $Id: default.ca,v 1.3 1992/07/28 13:14:10 kon Exp $ (setq romkana-table "default.cbp") ;(setq romkana-table "kana.cbp") (use-dictionary "iroha" "fuzokugo" "hojomwd" "hojoswd" "keishiki" "skkedict" "skkgeo" "skkname" "skkjis2" "skkl" "skklaw" "skkoki" "skkozip" "skkzip" :bushu "bushu" :user "user" ) ;; 拡張モード表示 (global-set-key "\C-v" 'extend-mode) ;; BackSpaceで削除できるようにする。 (let ((mode 'yomi-mode)) (set-key mode "\C-h" 'delete-previous) (set-key mode "\Delete" 'delete-previous) ) ;; 変換開始終了キー設定 (unbind-key-function 'alpha-mode 'japanese-mode) (set-key 'alpha-mode "\C-o" 'japanese-mode) (set-key 'alpha-mode "\Xfer" 'japanese-mode) (unbind-key-function 'empty-mode 'alpha-mode) (set-key 'empty-mode "\C-o" 'alpha-mode) (set-key 'empty-mode "\Xfer" 'alpha-mode)
_ pefnac-0.5.1.tar.gz
$ tar xvf pefnac-0.5.1.tar.gz $ cd pefnac-0.5.1 $ make $ sudo make install
_ kinput2-v3.1.tar.gz
$ tar xvf kinput2-v3.1.tar.gz $ xmkmf $ make Makefiles $ make depend
Edit Kinput2.conf.
#define UseCanna /* define if you are going to use Canna */ CANNAINSTDIR = /usr/local/canna CANNASRC = $(CANNAINSTDIR)/include CANNALIB = -L$(CANNAINSTDIR)/lib -lcanna16
Build after above.
$ make $ sudo make install $ sudo make install.man
Add "ja_JP.UTF-8" into "*IMProtocol.locales:" in /etc/X11/app-defaults/Kinput2 to use in UTF-8 envronment.
*IMProtocol.locales: ja_JP.UTF-8, ja_JP.SJIS, ja_JP.EUC, ja_JP, japanese, japan, ja
or add "Kinput2*IMProtocol.locales: ja_JP.UTF-8, ...snip... , ja" into ~/Xresources.
Add next line into ~/xinitrc to run kinput2.
kinput2 -kinput +ximp -xim -canna &
_ rxvt-unicode-9.22.tar.gz
$ tar xvf rxvt-unicode-9.22.tar.gz $ cd rxvt-unicode-9.22 $ ./configure --enable-unicode3 --enable-iso14755 && make $ sudo make install && sudo ldconfig
Add entry for urxvt into /etc/termcap.
# cat doc/etc/rxvt-unicode.termcap>>/etc/termcap
_ fvwm1_1.24r.orig.tar.gz
$ tar xvvf fvwm1_1.24r.orig.tar.gz $ cd fvwm1-1.24r.orig/ $ zcat ../fvwm1_1.24r-56.diff.gz | patch -p1 $ patch -p1 <debian/i18n.patch $ cat ../fvwm1_1.24r-56-1.diff | patch -p0
*** modules/FvwmAudio/Imakefile.ORG 2015-12-02 10:46:14.031822333 +0900 --- modules/FvwmAudio/Imakefile 2015-12-02 10:46:34.219569951 +0900 *************** *** 10,17 **** * are correct for your rplay installation. */ #define HAVE_RPLAY ! #ifdef HAVE_RPLAY AUDIO_DEFINES = -DHAVE_RPLAY --- 10,18 ---- * are correct for your rplay installation. */ + #if 0 #define HAVE_RPLAY ! #endif #ifdef HAVE_RPLAY AUDIO_DEFINES = -DHAVE_RPLAY
$ cat ../fvwm1_1.24r-56-2.diff | patch -p0
*** configure.h.ORG 2015-12-02 10:59:17.825023569 +0900 --- configure.h 2015-12-02 10:59:31.210856224 +0900 *************** *** 64,69 **** --- 64,70 ---- * If you want to use i18n feature, specify #define I18N ***************************************************************************/ /* #define I18N */ + #define I18N /*************************************************************************** *#define M4
$ cat ../fvwm1_1.24r-56-3.diff | patch -p0
*** ./modules/FvwmIconBox/FvwmIconBox.c.ORG	2015-12-09 15:24:04.410373438 +0900
--- ./modules/FvwmIconBox/FvwmIconBox.c	2015-12-09 15:24:22.327149447 +0900
***************
*** 1056,1062 ****
    gcv.background = icon_back_pix;
    IconShadowGC = XCreateGC(dpy, Root, gcm, &gcv);
!   gcm = GCForeground|GCBackground|GCFont;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
    gcv.font =  font->fid;
--- 1056,1062 ----
    gcv.background = icon_back_pix;
    IconShadowGC = XCreateGC(dpy, Root, gcm, &gcv);
!   gcm = GCForeground|GCBackground/* |GCFont */;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
    gcv.font =  font->fid;
*** ./modules/FvwmIdent/FvwmIdent.c.ORG	2015-12-09 15:24:32.972016368 +0900
--- ./modules/FvwmIdent/FvwmIdent.c	2015-12-09 15:24:48.383823694 +0900
***************
*** 456,462 ****
    XSelectInput(dpy,main_win,MW_EVENTS);
    change_window_name(&MyName[1]);
!   gcm = GCForeground|GCBackground|GCFont;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
    gcv.font =  font->fid;
--- 456,462 ----
    XSelectInput(dpy,main_win,MW_EVENTS);
    change_window_name(&MyName[1]);
!   gcm = GCForeground|GCBackground/* |GCFont */;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
    gcv.font =  font->fid;
*** ./modules/FvwmPager/x_pager.c.ORG	2015-12-09 15:24:59.594683539 +0900
--- ./modules/FvwmPager/x_pager.c	2015-12-09 15:25:18.115451998 +0900
***************
*** 393,399 ****
      }
    XMapRaised(dpy,Scr.Pager_w);
!   gcm = GCForeground|GCBackground|GCFont;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
--- 393,399 ----
      }
    XMapRaised(dpy,Scr.Pager_w);
!   gcm = GCForeground|GCBackground/* |GCFont */;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
*** ./modules/FvwmWinList/FvwmWinList.c.ORG	2015-12-09 15:25:31.115289477 +0900
--- ./modules/FvwmWinList/FvwmWinList.c	2015-12-09 15:25:45.232112993 +0900
***************
*** 689,695 ****
    gcval.foreground=fore;
    gcval.background=back;
    gcval.font=ButtonFont->fid;
!   gcmask=GCForeground|GCBackground|GCFont;
    graph=XCreateGC(dpy,Root,gcmask,&gcval);
    if(d_depth < 2)
--- 689,695 ----
    gcval.foreground=fore;
    gcval.background=back;
    gcval.font=ButtonFont->fid;
!   gcmask=GCForeground|GCBackground/* |GCFont */;
    graph=XCreateGC(dpy,Root,gcmask,&gcval);
    if(d_depth < 2)
*** ./modules/GoodStuff/GoodStuff.c.ORG	2015-12-09 15:25:57.129964249 +0900
--- ./modules/GoodStuff/GoodStuff.c	2015-12-09 15:26:10.506797016 +0900
***************
*** 834,840 ****
    gcv.background = back_pix;
    ShadowGC = XCreateGC(dpy, Root, gcm, &gcv);
!   gcm = GCForeground|GCBackground|GCFont;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
    gcv.font =  font->fid;
--- 834,840 ----
    gcv.background = back_pix;
    ShadowGC = XCreateGC(dpy, Root, gcm, &gcv);
!   gcm = GCForeground|GCBackground/* |GCFont */;
    gcv.foreground = fore_pix;
    gcv.background = back_pix;
    gcv.font =  font->fid;
*** ./fvwm/configure.c.ORG	2015-12-09 15:21:08.980566612 +0900
--- ./fvwm/configure.c	2015-12-09 15:23:12.215025970 +0900
***************
*** 1833,1839 ****
    Scr.DrawGC = XCreateGC(dpy, Scr.Root, gcm, &gcv);
    gcm = GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
!     GCBackground|GCFont;
    gcv.line_width = 0;
    gcv.function = GXcopy;
    gcv.plane_mask = AllPlanes;
--- 1833,1839 ----
    Scr.DrawGC = XCreateGC(dpy, Scr.Root, gcm, &gcv);
    gcm = GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
!     GCBackground/* |GCFont */;
    gcv.line_width = 0;
    gcv.function = GXcopy;
    gcv.plane_mask = AllPlanes;
***************
*** 1854,1865 ****
    gcv.fill_style = FillStippled;
    gcv.stipple = Scr.gray_bitmap;
    gcm = GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
!     GCBackground|GCFont|GCStipple|GCFillStyle;
    Scr.StippleGC = XCreateGC(dpy, Scr.Root, gcm, &gcv);
    gcm = GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
!     GCBackground|GCFont;
    gcv.foreground = Scr.HiRelief.fore;
    gcv.background = Scr.HiRelief.back;
    gcv.fill_style = FillSolid;
--- 1854,1865 ----
    gcv.fill_style = FillStippled;
    gcv.stipple = Scr.gray_bitmap;
    gcm = GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
!     GCBackground/* |GCFont */|GCStipple|GCFillStyle;
    Scr.StippleGC = XCreateGC(dpy, Scr.Root, gcm, &gcv);
    gcm = GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
!     GCBackground/* |GCFont */;
    gcv.foreground = Scr.HiRelief.fore;
    gcv.background = Scr.HiRelief.back;
    gcv.fill_style = FillSolid;
***************
*** 1877,1887 ****
        gcv.fill_style = FillStippled;
        gcv.stipple = Scr.gray_bitmap;
        gcm=GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
! 	GCBackground|GCFont|GCStipple|GCFillStyle;
        Scr.MenuStippleGC = XCreateGC(dpy, Scr.Root, gcm, &gcv);
        gcm=GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
! 	GCBackground|GCFont;
        gcv.fill_style = FillSolid;
      }
    else
--- 1877,1887 ----
        gcv.fill_style = FillStippled;
        gcv.stipple = Scr.gray_bitmap;
        gcm=GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
! 	GCBackground/* |GCFont */|GCStipple|GCFillStyle;
        Scr.MenuStippleGC = XCreateGC(dpy, Scr.Root, gcm, &gcv);
        gcm=GCFunction|GCPlaneMask|GCGraphicsExposures|GCLineWidth|GCForeground|
! 	GCBackground/* |GCFont */;
        gcv.fill_style = FillSolid;
      }
    else
*** ./fvwm/misc.h.ORG	2015-12-09 15:23:23.833880714 +0900
--- ./fvwm/misc.h	2015-12-09 15:23:50.353549172 +0900
***************
*** 96,102 ****
     Globalgcv.font = newfont;\
     Globalgcv.foreground = color;\
     Globalgcv.background = backcolor;\
!    Globalgcm = GCFont | GCForeground | GCBackground; \
     XChangeGC(dpy,Scr.FontGC,Globalgcm,&Globalgcv); \
  }
  #ifdef I18N
--- 96,102 ----
     Globalgcv.font = newfont;\
     Globalgcv.foreground = color;\
     Globalgcv.background = backcolor;\
!    Globalgcm = /* GCFont | */GCForeground | GCBackground; \
     XChangeGC(dpy,Scr.FontGC,Globalgcm,&Globalgcv); \
  }
  #ifdef I18N
$ cat ../fvwm1_1.24r-56-4.diff | patch -p0
*** ./fvwm/resize.c.ORG	2015-12-10 01:24:12.408041411 +0900
--- ./fvwm/resize.c	2015-12-10 01:25:18.327419423 +0900
***************
*** 457,465 ****
  #undef FONTSET
  #define FONTSET Scr.StdFont.fontset
    XDrawString (dpy, Scr.SizeWindow, Scr.NormalGC,
  	       offset, Scr.StdFont.font->ascent + SIZE_VINDENT, str, 13);
!
  }
  /***********************************************************************
--- 457,469 ----
  #undef FONTSET
  #define FONTSET Scr.StdFont.fontset
+ #if 0
    XDrawString (dpy, Scr.SizeWindow, Scr.NormalGC,
  	       offset, Scr.StdFont.font->ascent + SIZE_VINDENT, str, 13);
! #else
!   XDrawString (dpy, Scr.SizeWindow, Scr.NormalGC,
! 	       offset, Scr.StdFont.y + SIZE_VINDENT, str, 13);
! #endif
  }
  /***********************************************************************
*** ./fvwm/move.c.ORG	2015-12-10 01:20:49.885301811 +0900
--- ./fvwm/move.c	2015-12-10 01:21:05.863332536 +0900
***************
*** 337,346 ****
--- 337,353 ----
  	    - XTextWidth(Scr.StdFont.font,str,strlen(str)))/2;
  #undef FONTSET
  #define FONTSET Scr.StdFont.fontset
+ #if 0
    XDrawString (dpy, Scr.SizeWindow, Scr.NormalGC,
  	       offset,
  	       Scr.StdFont.font->ascent + SIZE_VINDENT,
  	       str, strlen(str));
+ #else
+   XDrawString (dpy, Scr.SizeWindow, Scr.NormalGC,
+ 	       offset,
+ 	       Scr.StdFont.y + SIZE_VINDENT,
+ 	       str, strlen(str));
+ #endif
  }
$ xmkmf $ make Makefiles && make all $ sudo make install $ sudo make install.man $ sudo cp fvwm_icons/*.xpm /usr/include/X11/pixmaps/ $ sudo cp fvwm_icons/*.xbm /usr/include/X11/bitmaps/ $ sudo cp fvwm_icons/*.bitmap /usr/include/X11/bitmaps/ $ sudo cp fvwm_icons/*.icon /usr/include/X11/bitmaps/
_ fonts
IPAfont00303.zip
- ipag.ttf
- ipagp.ttf
- ipam.ttf
- ipamp.ttf
KouzanMouhituFont.zip
$ unzip -x KouzanMouhituFont.zip Archive: KouzanMouhituFont.zip inflating: ?t?R??M?t?H???g.ttf $ ls *.ttf \215t\216R\226M\203t\203H\203\223\203g.ttf $ mv *.ttf kouzanmouhitu.ttf $ ls *ttf kouzanmouhitu.ttf $
kochifont (not provided any more)
- kochi-gothic.ttf
- kochi-mincho.ttf
DynaFonts (non free fonts)
- dfjgyomd.ttf
- dfjkaibd.ttf
- dfjkailt.ttf
- dfjkaimd.ttf
- dfjktrxb.ttf
- dfjleimd.ttf
- dfjmrgbd.ttf
- dfjmrglt.ttf
- dfjmrgmd.ttf
- dfjmrmmd.ttf
- dfjmrmw7.ttf
- dfjmrmw9.ttf
- dfjpop1.ttf
- dfjpopw5.ttf
- dfjpopw9.ttf
How to install fonts
Put all fonts into /usr/share/fonts/TTF/
makefontscale.sh
#! /bin/sh
#
# mfs fontfile fndry fmly cp
#
function mfs_sjis() {
	fontfile="$1"
	fndry="$2"
	fmly="$3"
	cp="$4"
	for i in iso8859-1 jisx0201.1976-0 jisx0208.1983-0 jisx0208.1990-0
	do
		bw=""
		colon=""
		if [ $i = "iso8859-1" -o $i = "jisx0201.1976-0" ]
		then
			bw="bw=0.5"
			colon=":"
		fi
		echo ${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-r-normal--0-0-0-0-${cp}-0-$i
		echo ai=0.4:${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-i-normal--0-0-0-0-${cp}-0-$im
		echo ai=0.2:${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-o-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-r-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:ai=0.4:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-i-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:ai=0.2:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-o-normal--0-0-0-0-${cp}-0-$i
	done
}
#
function mfs_unicode() {
	fontfile="$1"
	fndry="$2"
	fmly="$3"
	cp="$4"
	for i in iso8859-1 jisx0201.1976-0 jisx0208.1983-0 jisx0208.1990-0 jisx0212.1990-0 iso10646-1
	do
		bw=""
		colon=""
		if [ $i = "iso8859-1" -o $i = "jisx0201.1976-0" ]
		then
			bw="bw=0.5"
			colon=":"
		fi
		echo ${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-r-normal--0-0-0-0-${cp}-0-$i
		echo ai=0.4:${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-i-normal--0-0-0-0-${cp}-0-$i
		echo ai=0.2:${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-o-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-r-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:ai=0.4:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-i-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:ai=0.2:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-o-normal--0-0-0-0-${cp}-0-$i
	done
}
mfs_sjis dfjgyomd.ttf dynalab "dfgyosho lt" c
mfs_sjis dfjkaibd.ttf dynalab "dfkaisho xb" c
mfs_sjis dfjkailt.ttf dynalab "dfkaisho lt" c
mfs_sjis dfjkaimd.ttf dynalab "dfkaisho md" c
mfs_sjis dfjktrxb.ttf dynalab "dfkanteiryu xb" c
mfs_sjis dfjleimd.ttf dynalab "dfleisho sb" c
mfs_sjis dfjmrgbd.ttf dynalab "dfmarugothic bd" c
mfs_sjis dfjmrglt.ttf dynalab "dfmarugothic lt" c
mfs_sjis dfjmrgmd.ttf dynalab "dfmarugothic md" c
mfs_sjis dfjmrmmd.ttf dynalab "dfmarumoji sl" c
mfs_sjis dfjmrmw7.ttf dynalab "dfmarumoji w7" c
mfs_sjis dfjmrmw9.ttf dynalab "dfmarumoji w9" c
mfs_sjis dfjpop1.ttf dynalab "dfpop1 sb" c
mfs_sjis dfjpopw5.ttf dynalab "dfpop1 w5" c
mfs_sjis dfjpopw9.ttf dynalab "dfpop1 w9" c
mfs_unicode ipag.ttf misc ipagothic c
mfs_unicode ipagp.ttf misc ipapgothic p
mfs_unicode ipam.ttf misc ipamincho c
mfs_unicode ipamp.ttf misc ipapmincho p
mfs_unicode kochi-gothic.ttf misc "kochi gothic" c
mfs_unicode kochi-mincho.ttf misc "kochi mincho" c
mfs_unicode kouzanmouhitu.ttf misc kouzanbrushfont c
mfs_unicode sazanami-gothic.ttf misc "sazanami gothic" c
mfs_unicode sazanami-mincho.ttf misc "sazanami mincho" c
Update font cache.
# cd /usr/share/fonts/TTF # cp fonts.scale fonts.scale.backup # cp fonts.dir fonts.dir.backup # makefontscale.sh >fonts.add # cat fonts.scale.backup fonts.add | sort | uniq >fonts.scale # wc -l fonts.scale # remember LINE # vim fonts.scale # edit number in first line to (LINE - 1) # mkfontdir -e /usr/share/fonts/encodings -e /usr/share/fonts/encodings/large # cp fonts.dir fonts.scale # fc-cache -f -v
_ mew-6.7.tar.gz
$ tar xvf mew-6.7.tar.gz $ cd mew-6.7 $ ./configure && make $ sudo make install
~/.emacs
(setq load-path (cons "/usr/local/share/emacs/site-lisp/mew/" load-path))
(autoload 'mew "mew" nil t)
(autoload 'mew-send "mew" nil t)
(setq read-mail-command 'mew)
(autoload 'mew-user-agent-compose "mew" nil t)
(if (boundp 'mail-user-agent)
    (setq mail-user-agent 'mew-user-agent))
(if (fboundp 'define-mail-user-agent)
    (define-mail-user-agent
      'mew-user-agent
      'mew-user-agent-compose
      'mew-draft-send-message
      'mew-draft-kill
      'mew-send-hook))
(setq mew-name "Masahiko Ito") ;; (user-full-name)
(setq mew-from-list '("Masahiko Ito <m-ito@myh.no-ip.org>"
                      "Masahiko Ito <m-ito@mbox.kyoto-inet.or.jp>"))
(setq mew-mail-domain-list '("myh.no-ip.org"
                             "mbox.kyoto-inet.or.jp"))
(setq mew-use-smtp-auth nil)
(setq mew-mailbox-type 'mbox)
(setq mew-mbox-command "incm")
(setq mew-mbox-command-arg "-d /var/spool/mail/m-ito")
mew-message-mode-hook
  '(lambda ()
   (define-key mew-message-mode-map [mouse-2] 'browse-url-at-mouse)
   (define-key mew-message-mode-map "\C-cb" 'browse-url-at-point)))
_ emacs-w3m.tar.gz
$ tar xvf emacs-w3m.tar.gz $ cd emacs-w3m $ autoconf $ ./configure && make $ sudo make install
~/.emacs
(setq mew-mime-multipart-alternative-list '("Text/Html" "Text/Plain" "*."))
(condition-case nil
    (require 'mew-w3m)
  (file-error nil))
_ LPRng-3.8.35.tgz
$ tar xvf LPRng-3.8.35.tgz
LPRng-3.8.35.diff
*** Makefile.in.ORG 2012-04-15 21:13:45.000000000 +0900 --- Makefile.in 2012-04-15 21:14:28.000000000 +0900 *************** *** 45,51 **** LPD_CONF_PATH=\"@LPD_CONF_PATH@\" PRINTCAP_PATH=\"@PRINTCAP_PATH@\" LPD_PATH=\"@LPD_DIR@/lpd\" ! SHELL="@SHELL@" LOCKFILE=\"@LOCKFILE@\" CONFIG_SUBDIR="@CONFIG_SUBDIR@" PSHOWALL="@PSHOWALL@" --- 45,51 ---- LPD_CONF_PATH=\"@LPD_CONF_PATH@\" PRINTCAP_PATH=\"@PRINTCAP_PATH@\" LPD_PATH=\"@LPD_DIR@/lpd\" ! SHELL=@SHELL@ LOCKFILE=\"@LOCKFILE@\" CONFIG_SUBDIR="@CONFIG_SUBDIR@" PSHOWALL="@PSHOWALL@"
$ cd LPRng-3.8.35 $ cat ../LPRng-3.8.35.diff | patch -p0 $ ./configure --disable-ssl && make $ sudo make install
/usr/local/etc/printcap
.common: :sd=/var/spool/lpd/%P :sh:mx=0:mc=0 lp:tc=.common:lp=lp@192.168.0.100 lpm:tc=.common:lp=lpm@192.168.0.100 lpfine|lpf:tc=.common:lp=lpfine@192.168.0.100 lpmfine|lpf:tc=.common:lp=lpmfine@192.168.0.100 lpphoto|lpp:tc=.common:lp=lpphoto@192.168.0.100 lpmphoto|lpp:tc=.common:lp=lpmphoto@192.168.0.100 lpd:tc=.common:lp=lpd@192.168.0.100 lpraw|lpr:tc=.common:lp=lpraw@192.168.0.100
$ sudo checkpc -f
/etc/rc.d/rc.lprng
#!/bin/sh
case "$1" in
start)
# Start daemons.
      /usr/bin/echo "Starting lpd"; /usr/local/sbin/lpd; /usr/bin/echo "";
      ;;
stop)
# Stop daemons.
      /usr/bin/printf "Shutting down lpd: "
      pkill lpd
      /usr/bin/echo "done"
      ;;
*)
      echo "Usage: lpd {start|stop}"
      ;;
esac
_ MPlayer-1.3.0.tar.xz
live.2016.07.19.tar.gz
$ tar xvf live.2016.07.19.tar.gz $ cd live/ $ ./genMakefiles linux-64bit $ make $ sudo make install
amrnb-11.0.0.0.tar.bz2
$ tar xvf amrnb-11.0.0.0.tar.bz2 $ cd amrnb-11.0.0.0 $ ./configure && make $ sudo make install && sudo ldconfig
amrwb-11.0.0.0.tar.bz2
$ tar xvf amrwb-11.0.0.0.tar.bz2 $ cd amrwb-11.0.0.0 $ ./configure && make $ sudo make install && sudo ldconfig
opencore-amr-0.1.2.tar.gz
$ tar xvf opencore-amr-0.1.2.tar.gz $ cd opencore-amr-0.1.2 $ ./configure && make $ sudo make install && sudo ldconfig
libdvdcss-1.4.0.tar.bz2
$ tar xvf libdvdcss-1.4.0.tar.bz2 $ cd libdvdcss-1.4.0 $ ./configure && make $ sudo make install && sudo ldconfig
MPlayer-1.3.0.tar.xz
$ tar xvf MPlayer-1.3.0.tar.xz $ ./configure --enable-gui && make $ sudo make install
essential-20071007.tar.bz2
$ sudo mkdir /usr/local/lib/codecs $ tar xvf essential-20071007.tar.bz2 $ cd essential-20071007 $ sudo cp * /usr/local/lib/codecs/
all-20110131.tar.bz2
$ tar xvf all-20110131.tar.bz2 $ cd all-20110131 $ sudo cp * /usr/local/lib/codecs/
Blue-1.8.tar.bz2
# cd /usr/local/share/mplayer/ # mkdir skins # cd skins # tar xvf Blue-1.8.tar.bz2 # ln -s Blue default
font
# cd /usr/local/share/mplayer/ # ln -s /usr/share/fonts/TTF/sazanami-mincho.ttf subfont.ttf
_ prov-2.0.tar.gz
$ tar xvf prov-2.0.tar.gz
$ cd prov-2.0
$ make
$ sudo make install
$ PROV2DIR=~/prov2; export PROV2DIR
$ PATH=${PATH}:${PROV2DIR}/bin; export PATH
_ clamav-0.99.2.tar.gz
$ tar xvf clamav-0.99.2.tar.gz $ cd clamav-0.99.2 $ ./configure && make $ sudo make install && sudo ldconfig
Add user 'clamav` to /etc/passwd and group 'clamav` to /etc/group.
$ sudo mkdir /usr/local/share/clamav $ sudo chown clamav.clamav /usr/local/share/clamav
/usr/local/etc/freshclam.conf
#Example DatabaseDirectory /usr/local/share/clamav DatabaseMirror db.jp.clamav.net HTTPProxyServer 192.168.0.100 HTTPProxyPort 8080
/usr/local/etc/clamd.conf
#Example DatabaseDirectory /usr/local/share/clamav
_ sf-0.6.tar.gz
kakasi-2.3.4.tar.gz
$ tar xvf kakasi-2.3.4.tar.gz $ cd kakasi-2.3.4 $ ./configure && make $ sudo make install && sudo ldconfig
sf-0.6.tar.gz
$ tar xvzf sf-0.6.tar.gz $ cd sf-0.6 $ sudo cp sf-*.sh /usr/local/bin/ $ mkdir ~/.sf
_ cgictrl-0.2.tar.gz
$ tar xvf cgictrl-0.2.tar.gz $ mkdir ~/cgictrl $ mkdir ~/cgictrl/html $ mkdir ~/cgictrl/lock $ mkdir ~/cgictrl/log $ mkdir ~/cgictrl/spa $ mkdir ~/cgictrl/tmp $ chmod 755 ~/cgictrl ~/cgictrl/html $ chmod 2775 ~/cgictrl/lock ~/cgictrl/log ~/cgictrl/spa ~/cgictrl/tmp $ cp cgictrl-0.2/cgi-bin/* ~/public_html/cgi-bin/ $ cp cgictrl-0.2/cgictrl/*.txt ~/cgictrl/ $ cp cgictrl-0.2/cgictrl/html/* ~/cgictrl/html/
~/public_html/cgi-bin/cgictrl_common.rb
@cgictrl_data_dir = "/home/m-ito/cgictrl"
~/cgictrl/resource.txt
RES_ADDR=/home/m-ito/cgictrl/tmp/samp_addr.csv
/etc/group
m-ito:x:503:apache
_ sqlite3-ruby etc
# HTTP_PROXY=http://192.168.0.100:8080/ gem install sqlite3-ruby-1.2.5.gem # HTTP_PROXY=http://192.168.0.100:8080/ gem install sqlite3-ruby # HTTP_PROXY=http://192.168.0.100:8080/ gem install dbi # HTTP_PROXY=http://192.168.0.100:8080/ gem install dbd-sqlite3
_ firefox-48.0.source.tar.xz
autoconf-2.13.tar.gz
$ tar xvf autoconf-2.13.tar.gz $ cd autoconf-2.13 $ ./configure --prefix=/usr/local/autoconf-2.13 $ make $ sudo make install # cd /usr/local/autoconf-2.13/bin/ && ln -s autoconf autoconf-2.13
libpng-1.2.56.tar.gz
$ tar xvf libpng-1.2.56.tar.gz $ cd libpng-1.2.56 $ ./configure && make $ sudo make install && sudo ldconfig
firefox-48.0.source.tar.xz
$ cd /tmp
$ tar xvf firefox-48.0.source.tar.xz
$ cd firefox-48.0
$ LANG=C; export LANG
$ LC_ALL=C; export LC_ALL
$ PATH=${PATH}:/usr/local/autoconf-2.13/bin/; export PATH
.mozconfig
export LDFLAGS="-latomic" . $topsrcdir/browser/config/mozconfig ac_add_options --enable-optimize ac_add_options --enable-default-toolkit=cairo-gtk2 ac_add_options --disable-debug ac_add_options --disable-tests
$ nice make -f client.mk build && cd obj-x86_64-pc-linux-gnu/ && nice make package
# mkdir /usr/local/firefox-48.0 # cd /usr/local/firefox-48.0 # tar xvf /tmp/firefox-48.0/obj-x86_64-pc-linux-gnu/dist/firefox-48.0.en-US.linux-x86_64.tar.bz2 # mkdir /usr/local/gecko-sdk-48.0 # cd /usr/local/gecko-sdk-48.0 # cp -rL /tmp/firefox-48.0/obj-x86_64-pc-linux-gnu/dist/sdk . # cd sdk # cp -rL /tmp/firefox-48.0/obj-x86_64-pc-linux-gnu/dist/idl . # cp -rL /tmp/firefox-48.0/obj-x86_64-pc-linux-gnu/dist/include .
- URI -> about:config -> general.useragent.locale -> ja-JP
- Japanese Language Pack -> firefox-48.0-ja.xpi
_ gecko-mediaplayer-1.0.9.tar.gz
gmtk-1.0.9.tar.gz
$ tar xvf gmtk-1.0.9.tar.gz $ cd gmtk-1.0.9 $ ./configure && make $ sudo make install && sudo ldconfig
gnome-mplayer-1.0.9.tar.gz
$ tar xvf gnome-mplayer-1.0.9.tar.gz $ cd gnome-mplayer-1.0.9 $ ./configure && make $ sudo make install && sudo ldconfig
gecko-mediaplayer-1.0.9.tar.gz
$ tar xvf gecko-mediaplayer-1.0.9.tar.gz $ cd gecko-mediaplayer-1.0.9 $ export XULDEV="/usr/local/gecko-sdk-48.0/sdk" $ export CPPFLAGS="-I/usr/local/gecko-sdk-48.0/sdk/include"
../gecko-mediaplayer-1.0.9.diff
*** ./src/npupp.h.ORG	2016-08-03 01:05:43.867808110 +0900
--- ./src/npupp.h	2016-08-03 01:06:49.968807507 +0900
***************
*** 63,68 ****
--- 63,71 ----
  #include "npruntime.h"
+ #ifndef NP_LOADDS
+ #define NP_LOADDS
+ #endif
  /******************************************************************************************
     plug-in function table macros
$ cat ../gecko-mediaplayer-1.0.9.diff | patch -p0 $ ./configure && make $ sudo make install && sudo ldconfig
_ install_flash_player_11_linux.x86_64.tar.gz
# mkdir /tmp/flashplayer # cd /tmp/flashplayer # tar xvf install_flash_player_11_linux.x86_64.tar.gz # chown -R root.root . # cp libflashplayer.so /usr/lib64/mozilla/plugins/ # cd /usr && (cd /tmp/flashplayer/usr && tar cf - .) | tar xvpif -
~/.profile
MOZ_PLUGIN_PATH=/usr/lib64/mozilla/plugins export MOZ_PLUGIN_PATH
_ ffmpeg-3.1.1.tar.xz
lame-3.99.5.tar.gz
$ tar xvf lame-3.99.5.tar.gz $ cd lame-3.99.5 $ ./configure && make $ sudo make install && sudo ldconfig
faac-1.28.tar.bz2
$ tar xvf faac-1.28.tar.bz2 $ cd faac-1.28
../faac-1.28.diff
*** ./common/mp4v2/mpeg4ip.h.ORG	2013-01-30 11:29:42.771848488 +0900
--- ./common/mp4v2/mpeg4ip.h	2013-01-30 11:36:56.935028393 +0900
***************
*** 123,129 ****
--- 123,131 ----
  #ifdef __cplusplus
  extern "C" {
  #endif
+ #if 0
  char *strcasestr(const char *haystack, const char *needle);
+ #endif
  #ifdef __cplusplus
  }
  #endif
$ cat ../faac-1.28.diff | patch -p0 $ ./configure && make $ sudo make install && sudo ldconfig
x264-snapshot-20160802-2245-stable.tar.bz2
$ tar xvf x264-snapshot-20160802-2245-stable.tar.bz2 $ cd x264-snapshot-20160802-2245-stable $ ./configure --enable-shared && make $ sudo make install-cli install-lib-dev install-lib-static install-lib-shared
x265_1.9.tar.gz
$ tar xvf x265_1.9.tar.gz $ cd x265_1.9/build $ cmake ../source && make $ sudo make install && make ldconfig
openh264-1.5.0.tar.gz
$ tar xvf openh264-1.5.0.tar.gz $ make $ sudo make install && sudo ldconfig
libvpx-1.6.0.tar.gz
$ tar xvf libvpx-1.6.0.tar.gz $ cd libvpx-1.6.0 $ ./configure --enable-shared && make $ sudo make install && sudo ldconfig
ffmpeg-3.1.1.tar.xz
$ tar xvf ffmpeg-3.1.1.tar.xz
$ cd ffmpeg-3.1.1
$ ./configure --enable-shared \
       --enable-libopencore-amrnb \
       --enable-version3 \
       --enable-libopencore-amrwb \
       --enable-libmp3lame \
       --enable-libfaac \
       --enable-nonfree \
       --enable-libx264 \
       --enable-gpl \
       --enable-libvpx \
       --enable-libx265 \
       --enable-libopenh264 \
       --enable-libpulse
$ make
$ sudo make install && sudo ldconfig
_ dvdrtools-0.3.1.tar.gz
$ tar xvf dvdrtools-0.3.1.tar.gz $ cd dvdrtools-0.3.1 $ ./configure && make $ sudo make install && sudo ldconfig
_ dvdauthor-0.7.1.tar.gz
$ tar xvf dvdauthor-0.7.1.tar.gz $ cd dvdauthor-0.7.1
../dvdauthor-0.7.1.diff
*** ./src/dvdvmy.c.ORG 2016-08-03 15:34:21.213333120 +0900 --- ./src/dvdvmy.c 2016-08-03 15:35:33.722332459 +0900 *************** *** 96,101 **** --- 96,102 ---- * USA */ + #include "config.h" #include "compat.h" /* needed for bool */ #include "dvdvm.h" *** ./src/dvdvml.c.ORG 2016-08-03 15:33:59.056333322 +0900 --- ./src/dvdvml.c 2016-08-03 15:35:13.755332641 +0900 *************** *** 626,631 **** --- 626,632 ---- * USA */ + #include "config.h" #include "compat.h" /* needed for bool */ #include "dvdvm.h" #include "dvdvmy.h"
$ cat ../dvdauthor-0.7.1.diff | patch -p0 $ ./configure && make $ sudo make install && sudo ldconfig
_ vcdimager-0.7.24.tar.gz
$ tar xvf vcdimager-0.7.24.tar.gz $ cd vcdimager-0.7.24 $ ./configure && make $ sudo make install && sudo ldconfig
_ youtube-dl-2015.07.07.tar.gz
$ tar xvf youtube-dl-2015.07.07.tar.gz $ cd youtube-dl-2015.07.07 $ make $ sudo cp youtube-dl /ysr/local/bin/
_ DVDStyler-2.9.3.tar.bz2
mjpegtools-2.1.0.tar.gz
$ tar xvf mjpegtools-2.1.0.tar.gz $ cd mjpegtools-2.1.0 $ ./configure && make $ sudo make install && sudo ldconfig
wxWidgets-2.8.12.tar.gz
$ tar xvf wxWidgets-2.8.12.tar.gz $ cd wxWidgets-2.8.12 $ ./configure --enable-unicode --enable-mediactrl && make $ sudo make install && sudo ldconfig
wxsvg-1.5.4.tar.bz2
$ tar xvf wxsvg-1.5.4.tar.bz2 $ cd wxsvg-1.5.4
../wxsvg-1.5.4.diff
*** ./src/mediadec_ffmpeg.cpp.ORG	2016-08-04 12:32:54.507644904 +0900
--- ./src/mediadec_ffmpeg.cpp	2016-08-04 12:33:11.299644751 +0900
***************
*** 271,277 ****
  			avcodec_decode_video2(m_codecCtx, m_frame, &frameFinished, &packet);
  			if (frameFinished) {
  				SwsContext* imgConvertCtx = sws_getContext(m_codecCtx->width, m_codecCtx->height, m_codecCtx->pix_fmt,
! 						m_width, m_height, PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL);
  				if (imgConvertCtx == NULL) {
  					av_free_packet(&packet);
  					return wxImage();
--- 271,277 ----
  			avcodec_decode_video2(m_codecCtx, m_frame, &frameFinished, &packet);
  			if (frameFinished) {
  				SwsContext* imgConvertCtx = sws_getContext(m_codecCtx->width, m_codecCtx->height, m_codecCtx->pix_fmt,
! 						m_width, m_height, AV_PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL);
  				if (imgConvertCtx == NULL) {
  					av_free_packet(&packet);
  					return wxImage();
$ cat ../wxsvg-1.5.4.diff | patch -p0 $ ./configure && make $ sudo make install && sudo ldconfig
DVDStyler-2.9.3.tar.bz2
$ tar xvf DVDStyler-2.9.3.tar.bz2 $ cd DVDStyler-2.9.3
../DVDStyler-2.9.3.diff
*** ./src/mediaenc_ffmpeg.h.ORG	2015-10-04 17:24:36.803442180 +0900
--- ./src/mediaenc_ffmpeg.h	2015-10-04 17:26:43.034485497 +0900
***************
*** 3,9 ****
  // Purpose:     FFMPEG Media Encoder
  // Author:      Alex Thuering
  // Created:     04.08.2007
! // RCS-ID:      $Id: mediaenc_ffmpeg.h,v 1.13 2014/10/20 05:43:34 ntalex Exp $
  // Copyright:   (c) Alex Thuering
  // Licence:     GPL
  /////////////////////////////////////////////////////////////////////////////
--- 3,9 ----
  // Purpose:     FFMPEG Media Encoder
  // Author:      Alex Thuering
  // Created:     04.08.2007
! // RCS-ID:      $Id: mediaenc_ffmpeg.h,v 1.14 2015/09/22 15:14:16 ntalex Exp $
  // Copyright:   (c) Alex Thuering
  // Licence:     GPL
  /////////////////////////////////////////////////////////////////////////////
***************
*** 30,39 ****
--- 30,42 ----
      bool EncodeAudio(double duration, AbstractProgressDialog* progressDialog);
      void EndEncode();
+     void SetGopSize(int gopSize) { m_gopSize = gopSize; }
+
      static wxString GetBackendVersion();
  private:
  	int m_threadCount;
+ 	int m_gopSize;
      AVFormatContext* m_outputCtx;
      AVStream* m_videoStm;
      AVStream* m_audioStm;
*** ./src/mediaenc_ffmpeg.cpp.ORG	2015-10-04 17:24:27.275231193 +0900
--- ./src/mediaenc_ffmpeg.cpp	2015-10-04 17:26:22.936931201 +0900
***************
*** 3,9 ****
  // Purpose:     FFMPEG Media Encoder
  // Author:      Alex Thuering
  // Created:     04.08.2007
! // RCS-ID:      $Id: mediaenc_ffmpeg.cpp,v 1.49 2015/03/21 14:46:55 ntalex Exp $
  // Copyright:   (c) Alex Thuering
  // Licence:     GPL
  /////////////////////////////////////////////////////////////////////////////
--- 3,9 ----
  // Purpose:     FFMPEG Media Encoder
  // Author:      Alex Thuering
  // Created:     04.08.2007
! // RCS-ID:      $Id: mediaenc_ffmpeg.cpp,v 1.51 2015/09/26 12:49:08 ntalex Exp $
  // Copyright:   (c) Alex Thuering
  // Licence:     GPL
  /////////////////////////////////////////////////////////////////////////////
***************
*** 51,56 ****
--- 51,57 ----
  wxFfmpegMediaEncoder::wxFfmpegMediaEncoder(int threadCount) {
  	m_threadCount = threadCount;
+ 	m_gopSize = -1;
  	m_outputCtx = NULL;
  	m_videoStm = NULL;
  	m_audioStm = NULL;
***************
*** 177,183 ****
  	c->height = frameSize.GetHeight();
  	c->time_base.den = isNTSC(videoFormat) ? 30000 : 25;
  	c->time_base.num = isNTSC(videoFormat) ? 1001 : 1;
! 	c->gop_size = isNTSC(videoFormat) ? 15 : 12;
  	c->pix_fmt = PIX_FMT_YUV420P;
  	c->rc_buffer_size = VIDEO_BUF_SIZE;
  	c->rc_max_rate = 9000000;
--- 178,184 ----
  	c->height = frameSize.GetHeight();
  	c->time_base.den = isNTSC(videoFormat) ? 30000 : 25;
  	c->time_base.num = isNTSC(videoFormat) ? 1001 : 1;
! 	c->gop_size = m_gopSize > 0 ? m_gopSize : (isNTSC(videoFormat) ? 15 : 12);
  	c->pix_fmt = PIX_FMT_YUV420P;
  	c->rc_buffer_size = VIDEO_BUF_SIZE;
  	c->rc_max_rate = 9000000;
***************
*** 283,288 ****
--- 284,290 ----
  	AVFrame* frame = av_frame_alloc();
  	if (!frame)
  		return NULL;
+ #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(53, 0, 0)
  	frame->width = width;
  	frame->height = height;
  	frame->format = pix_fmt;
***************
*** 290,295 ****
--- 292,306 ----
  		av_free(frame);
  		return NULL;
  	}
+ #else
+ 	int size = avpicture_get_size(pix_fmt, width, height);
+ 	uint8_t* picture_buf = (uint8_t*) av_malloc(size);
+ 	if (!picture_buf) {
+ 		av_free(frame);
+ 		return NULL;
+ 	}
+ 	avpicture_fill((AVPicture *) frame, picture_buf, pix_fmt, width, height);
+ #endif
  	return frame;
  }
../DVDStyler-2.9.3-2.diff
*** ./src/mediaenc_ffmpeg.cpp.ORG	2016-08-04 12:38:31.471641833 +0900
--- ./src/mediaenc_ffmpeg.cpp	2016-08-04 12:40:04.602640984 +0900
***************
*** 179,185 ****
  	c->time_base.den = isNTSC(videoFormat) ? 30000 : 25;
  	c->time_base.num = isNTSC(videoFormat) ? 1001 : 1;
  	c->gop_size = m_gopSize > 0 ? m_gopSize : (isNTSC(videoFormat) ? 15 : 12);
! 	c->pix_fmt = PIX_FMT_YUV420P;
  	c->rc_buffer_size = VIDEO_BUF_SIZE;
  	c->rc_max_rate = 9000000;
  	c->rc_min_rate = 0;
--- 179,185 ----
  	c->time_base.den = isNTSC(videoFormat) ? 30000 : 25;
  	c->time_base.num = isNTSC(videoFormat) ? 1001 : 1;
  	c->gop_size = m_gopSize > 0 ? m_gopSize : (isNTSC(videoFormat) ? 15 : 12);
! 	c->pix_fmt = AV_PIX_FMT_YUV420P;
  	c->rc_buffer_size = VIDEO_BUF_SIZE;
  	c->rc_max_rate = 9000000;
  	c->rc_min_rate = 0;
***************
*** 280,286 ****
  	m_audioStm = NULL;
  }
! AVFrame* allocPicture(PixelFormat pix_fmt, int width, int height) {
  	AVFrame* frame = av_frame_alloc();
  	if (!frame)
  		return NULL;
--- 280,286 ----
  	m_audioStm = NULL;
  }
! AVFrame* allocPicture(AVPixelFormat pix_fmt, int width, int height) {
  	AVFrame* frame = av_frame_alloc();
  	if (!frame)
  		return NULL;
***************
*** 329,335 ****
  		return false;
  	}
! 	m_imgConvertCtx = sws_getContext(c->width, c->height, PIX_FMT_RGB24, c->width, c->height, c->pix_fmt, SWS_BICUBIC,
  			NULL, NULL, NULL);
  	if (!m_imgConvertCtx) {
  		wxLogError(wxT("Cannot initialize the conversion context"));
--- 329,335 ----
  		return false;
  	}
! 	m_imgConvertCtx = sws_getContext(c->width, c->height, AV_PIX_FMT_RGB24, c->width, c->height, c->pix_fmt, SWS_BICUBIC,
  			NULL, NULL, NULL);
  	if (!m_imgConvertCtx) {
  		wxLogError(wxT("Cannot initialize the conversion context"));
$ cat DVDStyler-2.9.3.diff | patch -p0 $ cat DVDStyler-2.9.3-2.diff | patch -p0 $ ./configure && make $ sudo make install && sudo ldconfig
_ FD-3.00j.tar.gz
$ tar xvf FD-3.00j.tar.gz $ cd FD-3.00j $ make $ sudo make install
~/.fd2rc
LANGUAGE="utf8" DEFKCODE="utf8" INPUTKCODE="utf8" PTYINKCODE="utf8" PTYOUTKCODE="utf8" FNAMEKCODE="utf8" URLKCODE="utf8"
_ TiMidity++-2.14.0.tar.bz2
$ tar xvf TiMidity++-2.14.0.tar.bz2 $ cd TiMidity++-2.14.0 $ ./configure --enable-audio=default,oss,alsa,esd,jack,vorbis,flac,speex --enable-interface=ncurses,vt100,gtk,alsaseq && make $ sudo make install && sudo ldconfig
shominst-0409.zip
# cd /usr/local/share/ # mkdir timidity # cd timidity # unzip /home/m-ito/tmp/shominst-0409.zip
timidity.cfg
dir /usr/local/share/timidity/inst dir /usr/local/share/timidity/inst/GUS dir /usr/local/share/timidity/inst/test
_ jack-1.9.10.tar.bz2
Python-3.3.2.tar.bz2
$ tar xvf Python-3.3.2.tar.bz2 $ cd Python-3.3.2 $ ./configure --with-threads --enable-ipv6 --enable-shared && make $ sudo make install && sudo ldconfig
ladspa_sdk.tgz
$ tar xvf ladspa_sdk.tgz $ cd ladspa_sdk $ sudo cp src/ladspa.h /usr/local/include/
frei0r-plugins-1.4.tar.gz
$ tar xvf frei0r-plugins-1.4.tar.gz $ cd frei0r-plugins-1.4 $ ./configure && make $ sudo make install && sudo ldconfig
goocanvas-2.0.2.tar.xz
$ tar xvf goocanvas-2.0.2.tar.xz $ cd goocanvas-2.0.2 $ ./configure --enable-python=yes && make $ sudo make install && sudo ldconfig
goocanvas-1.0.0.tar.bz2
$ tar xvf goocanvas-1.0.0.tar.bz2 $ cd goocanvas-1.0.0 $ ./configure && make $ sudo make install && sudo ldconfig
pygoocanvas-0.14.1.tar.bz2
$ tar xvf pygoocanvas-0.14.1.tar.bz2 $ cd pygoocanvas-0.14.1 $ ./configure && make $ sudo make install && sudo ldconfig
pyxdg-0.25.tar.gz
$ tar xvf pyxdg-0.25.tar.gz $ cd pyxdg-0.25 $ sudo python setup.py install
jack-1.9.10.tar.bz2
$ tar xvf jack-1.9.10.tar.bz2 $ cd jack-1.9.10
../jack-1.9.10.diff
*** ./common/memops.c.ORG	2016-08-08 14:39:58.277334148 +0900
--- ./common/memops.c	2016-08-08 14:40:11.160334031 +0900
***************
*** 198,204 ****
   */
  static unsigned int seed = 22222;
! inline unsigned int fast_rand() {
  	seed = (seed * 96314165) + 907633515;
  	return seed;
  }
--- 198,204 ----
   */
  static unsigned int seed = 22222;
! static inline unsigned int fast_rand() {
  	seed = (seed * 96314165) + 907633515;
  	return seed;
  }
$ cat ../jack-1.9.10.diff | patch -p0 $ ./waf configure $ ./waf build $ sudo ./waf install
_ openshot-1.4.3.tar.gz
mlt-6.2.0.tar.gz
$ tar xvf mlt-6.2.0.tar.gz $ cd mlt-6.2.0 $ ./configure --enable-gpl --enable-gpl3 --swig-languages="perl php python ruby tcl" $ make
# make install
# cd src/swig/python
# PYTHONSITEPKG=$(python -c "import sys, os; print os.path.join('/usr/lib64${LIBDIRSUFFIX}', 'python%s' % sys.version[:3], 'site-packages')")
# install -m755 mlt.py $PYTHONSITEPKG/
# install -m755 _mlt.so $PYTHONSITEPKG/
# install -m755 mlt_wrap.o $PYTHONSITEPKG/
Add "/usr/local/lib/mlt" into /etc/ld.so.conf and then
# ldconfig
oiio-master-20160807.zip
$ unzip -x oiio-master-20160807.zip $ cd oiio-master $ make
# mkdir /usr/local/openimageio # cd dist/linux64 # tar cf - . | (cd /usr/local/openimageio && tar xvpif -) # chown -R root.root /usr/local/openimageio
Add "/usr/local/openimageio/lib" into /etc/ld.so.conf and then
# ldconfig
openshot-1.4.3.tar.gz
$ tar xvf openshot-1.4.3.tar.gz $ cd openshot-1.4.3 $ sudo python setup.py install
_ LibreOffice_5.2.0_Linux_x86-64_rpm.tar.gz
# tar xvf LibreOffice_5.2.0_Linux_x86-64_rpm.tar.gz # cd LibreOffice_5.2.0.4_Linux_x86-64_rpm/RPMS # for i in *rpm do rpm2tgz $i done # for i in *tgz do installpkg $i done
You should install both of LibreOffice_5.2.0_Linux_x86-64_rpm_langpack_ja.tar.gz and LibreOffice_5.2.0_Linux_x86-64_rpm_helppack_ja.tar.gz by same way.
Tools -> Options -> LibreOffice -> Fonts -> Replacement Table
- Albany -> IPAGothic
- Andale Sans UI -> IPAGothic
- Arial -> IPAGothic
- Century -> IPAMincho
- Cumberland -> IPAGothic
- HG Mincho Light J -> IPAMincho
- HG丸ゴシックM-PRO -> IPAGothic
- MS Pゴシック -> IPAPGothic
- MS P明朝 -> IPAPMincho
- MS ゴシック -> IPAGothic
- MS 明朝 -> IPAMincho
- Thorndale -> IPAMincho
- Times New Roman -> IPAMincho
- Verdana -> IPAGothic
_ tightvnc-1.3.10_unixsrc.tar.bz2
$ tar xvf tightvnc-1.3.10_unixsrc.tar.bz2 $ cd vnc_unixsrc/ $ xmkmf && make World $ cd Xvnc $ ./configure && make $ cd .. $ sudo ./vncinstall /usr/local/bin /usr/local/man $ sudo mkdir -p /usr/local/vnc/classes $ sudo cp classes/* /usr/local/vnc/classes
_ tgif-3.0.18.tar.gz
$ tar xvf ~/INSTALLED/tgif-3.0.18.tar.gz $ chmod -R u+w tgif-3.0.18/ $ cd tgif-3.0.18 $ zcat ../tgif-3.0J0.12-p18-patch.gz | patch -p1
tgif-unoff.patch
*** drawing.c.ORG	Thu Sep 30 00:45:28 1999
--- drawing.c	Thu Sep 30 01:06:59 1999
***************
*** 1393,1398 ****
--- 1393,1399 ----
  {
     if ((state & ControlMask) && (!(state & Mod1Mask))) {
        switch (key_sym&0xff) {
+             case 'o': /*^o*/ /* for canna by m-ito@mbox.kyoto-inet.or.jp */
  	    case ' ': /*^ */
  	    case '\\': /*^ */
  	       if(imProtocol == IM_KINPUT)
***************
*** 1412,1418 ****
--- 1413,1421 ----
        case 'l': /*^l*/ AlignSelObjs(); break;
        case 'm': /*^m*/ return(INVALID);
        case 'n': /*^n*/ NewProc(); break;
+ #if 0 /* sorry, ^o for canna */
        case 'o': /*^o*/ OpenProc(); break;
+ #endif
        case 'p': /*^p*/ Dump(""); break;
        case 'q': /*^q*/ return QuitProc();
        case 'r': /*^r*/ ClearAndRedrawDrawWindow(); break;
*** file.c.ORG	Thu Sep 30 01:09:49 1999
--- file.c	Thu Sep 30 01:11:16 1999
***************
*** 5611,5617 ****
--- 5611,5621 ----
  char * fileMenuStr[] =
        { "New             ^n",
+ #if 0 /* sorry, ^o for canna */
          "Open            ^o",
+ #else
+         "Open              ",
+ #endif
          "Save            ^s",
          "SaveNew        ^#s",
          "Import          #p",
$ cat tgif-unoff.patch |patch $ xmkmf -a $ make $ sudo make install install.man
~/.Xresources
Tgif*NihongoFonts: \
    -misc-sazanami mincho-medium-r-normal--%d-*-*-*-*-*-jisx0208.1990-0,, \
    Ryumin-Light-EUC-H, Ryumin, \
    H, false, all \n\
    -misc-sazanami gothic-medium-r-normal--%d-*-*-*-*-*-jisx0208.1990-0,, \
    GothicBBB-Medium-EUC-H, Gothic, \
    H, false, all \n\
    -dynalab-dfkaisho md-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Tyukaisyo-Medium-EUC-H, Tyukaisyo, \
    H, false, all \n\
    -dynalab-dfmarugothic md-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Tyumarugothic-Medium-EUC-H, Tyumarugothic, \
    H, false, all \n\
    -dynalab-dfgyosho lt-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Gyosyo-Medium-EUC-H, Gyosyo, \
    H, false, all \n\
    -dynalab-dfkanteiryu xb-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Kanteiryu-Medium-EUC-H, Kanteiryu, \
    H, false, all \n\
    -dynalab-dfleisho sb-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Reisyo-Medium-EUC-H, Reisyo, \
    H, false, all \n\
    -dynalab-dfpop1 sb-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Pop1-Medium-EUC-H, Pop1, \
    H, false, all \n\
    -dynalab-dfmarumoji sl-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Marumoji-Medium-EUC-H, Marumoji, \
    H, false, all \n\
    -misc-kouzanbrushfont-medium-r-normal--%d-*-*-*-*-*-jisx0208.1990-0,, \
    Kouzan-Medium-EUC-H, Kouzan, \
    H, false, all \n\
    -misc-sazanami mincho-medium-r-normal--%d-*-*-*-*-*-jisx0208.1990-0,, \
    Ryumin-Light-EUC-V, Ryumin-V, \
    V, false, all \n\
    -misc-sazanami gothic-medium-r-normal--%d-*-*-*-*-*-jisx0208.1990-0,, \
    GothicBBB-Medium-EUC-V, Gothic-V, \
    V, false, all \n\
    -dynalab-dfkaisho md-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Tyukaisyo-Medium-EUC-V, Tyukaisyo-V, \
    V, false, all \n\
    -dynalab-dfmarugothic md-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Tyumarugothic-Medium-EUC-V, Tyumarugothic-V, \
    V, false, all \n\
    -dynalab-dfgyosho lt-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Gyosyo-Medium-EUC-V, Gyosyo-V, \
    V, false, all \n\
    -dynalab-dfkanteiryu xb-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Kanteiryu-Medium-EUC-V, Kanteiryu-V, \
    V, false, all \n\
    -dynalab-dfleisho sb-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Reisyo-Medium-EUC-V, Reisyo-V, \
    V, false, all \n\
    -dynalab-dfpop1 sb-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Pop1-Medium-EUC-V, Pop1-V, \
    V, false, all \n\
    -dynalab-dfmarumoji sl-medium-r-normal--%d-*-*-*-*-*-jisx0208.1983-0,, \
    Marumoji-Medium-EUC-V, Marumoji-V, \
    V, false, all \n\
    -misc-kouzanbrushfont-medium-r-normal--%d-*-*-*-*-*-jisx0208.1990-0,, \
    Kouzan-Medium-EUC-V, Kouzan-V, \
    V, false, all
Tgif*PreeditType:      OverTheSpot
Tgif*ConvSelection:    _JAPANESE_CONVERSION
Tgif*InitialKanjiFont: Ryumin
Tgif*FontSizes:        8 10 11 12 14 17 18 20 24 25 34 42 50 60 72 86 103 123
Tgif*PrintCommand:     lpr
Tgif.MaxImportFilters: 2
Tgif.ImportFilter0: \n\
    JPEG-dithered jpg;jpeg \n\
    djpeg -gif %s | \n\
    giftopnm | ppmdither | ppmtoxpm
Tgif.ImportFilter1: \n\
    GIF-dithered gif \n\
    giftopnm %s | ppmdither | ppmtoxpm
_ tgif-QPL-4.2.5.tar.gz
$ tar xvvf tgif-QPL-4.2.5.tar.gz $ cd tgif-QPL-4.2.5
../tgif-QPL-4.2.5.diff
*** ./drawing.c.ORG	2011-06-28 11:04:57.000000000 +0900
--- ./drawing.c	2012-12-12 13:38:40.450209776 +0900
***************
*** 2043,2049 ****
--- 2043,2053 ----
        case 'l': /*^l*/ AlignSelObjs(); break;
        case 'm': /*^m*/ return(INVALID);
        case 'n': /*^n*/ NewProc(); break;
+ #ifdef CTRL_O_FOR_KANJI_INPUT
+       case ' ': /*^ */
+ #else
        case 'o': /*^o*/
+ #endif
           OpenProc((args==NULL || *args=='\0') ? NULL : args);
           break;
        case 'p': /*^p*/ Dump(""); break;
***************
*** 2063,2069 ****
--- 2067,2077 ----
        case '1': /*^1*/ ScreenCapture(); break;
        case '2': /*^2*/ FullScreenCapture(); break;
+ #ifdef CTRL_O_FOR_KANJI_INPUT
+       case 'o':
+ #else
        case ' ':
+ #endif
        case '\\':
           if (curChoice == DRAWTEXT && textCursorShown &&
                 (canvasFontDoubleByte || gstCopyUTF8Info.double_byte_valid)) {
*** ./shortcut.c.ORG	2011-06-28 11:04:58.000000000 +0900
--- ./shortcut.c	2012-12-12 13:38:40.458210793 +0900
***************
*** 50,56 ****
--- 50,60 ----
     { 'k', CNTRL_ONLY, "Pop()", 0, CMDID_POP },
     { 'l', CNTRL_ONLY, "AlignObjs()", 0, CMDID_ALIGNOBJS },
     { 'n', CNTRL_ONLY, "New()", 0, CMDID_NEW },
+ #ifdef CTRL_O_FOR_KANJI_INPUT
+    { ' ', CNTRL_ONLY, "Open()", 1, CMDID_OPEN },
+ #else
     { 'o', CNTRL_ONLY, "Open()", 1, CMDID_OPEN },
+ #endif
     { 'p', CNTRL_ONLY, "Print()", 0, CMDID_PRINT },
     { 'q', CNTRL_ONLY, "Quit()", 0, CMDID_QUIT },
     { 'r', CNTRL_ONLY, "Redraw()", 0, CMDID_REDRAW },
*** ./Tgif.tmpl.ORG	2012-12-12 13:39:36.596345662 +0900
--- ./Tgif.tmpl	2012-12-12 13:40:24.933489062 +0900
***************
*** 53,59 ****
  		  -DDEFATTRGROUP=\"TANGRAM-II:Declaration:Events:Messages:Rewards:Initialization:Watches\" \@@\
  		  -D_NO_NKF -D_NO_CHINPUT -D_NO_XCIN \@@\
  		  -DUSE_XT_INITIALIZE -DPTHREAD
! MOREDEFINES	=
  XCOMM ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  XCOMM Please see Imakefile for more defines to be added to MOREDEFINES above
--- 53,59 ----
  		  -DDEFATTRGROUP=\"TANGRAM-II:Declaration:Events:Messages:Rewards:Initialization:Watches\" \@@\
  		  -D_NO_NKF -D_NO_CHINPUT -D_NO_XCIN \@@\
  		  -DUSE_XT_INITIALIZE -DPTHREAD
! MOREDEFINES   = -DA4PAPER -DCTRL_O_FOR_KANJI_INPUT
  XCOMM ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  XCOMM Please see Imakefile for more defines to be added to MOREDEFINES above
*** ./file.c.ORG	2011-06-28 11:04:57.000000000 +0900
--- ./file.c	2012-12-12 13:38:40.455210411 +0900
***************
*** 8767,8773 ****
--- 8767,8777 ----
  /* do not translate -- program constants */
  char * fileMenuStr[] =
        { "New             ^n",
+ #ifdef CTRL_O_FOR_KANJI_INPUT
+         "Open            ^ ",
+ #else
          "Open            ^o",
+ #endif
          "Save            ^s",
          "SaveNew        ^#s",
          "Import          #p",
$ cat ../tgif-QPL-4.2.5.diff | patch -p1
../tgif-QPL-4.2.5-2.diff | patch -p1
*** Tgif.tmpl.ORG	2013-12-23 02:25:41.835136487 +0900
--- Tgif.tmpl	2013-12-23 02:29:39.060286581 +0900
***************
*** 34,46 ****
  XCOMM         add -D_XPM3TOPPM to the last MOREDEFINES below.
  XCOMM -----------------------------------------------
! PROGRAMS	= tgif XCOMM prtgif frontend11.o testdrive
! TGIFDIR		= $(LIBDIR)/tgif
  XCOMM CDEBUGFLAGS= -g -Wall
  XCOMM INSTPGMFLAGS= -s
  XCOMM BINDIR	= ${HOME}/bin
  XCOMM MANPATH	= ${HOME}/man
  XCOMM TGIFDIR	= ${HOME}/lib/X11/tgif
  XCOMM MOREDEFINES	= -D_HAS_STREAMS_SUPPORT -DENABLE_NLS -D_TGIF_DBG
  LOCALEDIR	= /usr/share/locale
  DIRDEFINES	= -DTGIF_PATH=\"$(TGIFDIR)\" -DPSFILE_MOD=0664 \@@\
--- 34,49 ----
  XCOMM         add -D_XPM3TOPPM to the last MOREDEFINES below.
  XCOMM -----------------------------------------------
! PROGRAMS	= tgif4 XCOMM prtgif frontend11.o testdrive
! XCOMM TGIFDIR		= $(LIBDIR)/tgif4
  XCOMM CDEBUGFLAGS= -g -Wall
  XCOMM INSTPGMFLAGS= -s
  XCOMM BINDIR	= ${HOME}/bin
  XCOMM MANPATH	= ${HOME}/man
  XCOMM TGIFDIR	= ${HOME}/lib/X11/tgif
+ BINDIR	= /usr/local/bin
+ MANPATH	= /usr/local/man
+ TGIFDIR	= /usr/local/lib/X11/tgif4
  XCOMM MOREDEFINES	= -D_HAS_STREAMS_SUPPORT -DENABLE_NLS -D_TGIF_DBG
  LOCALEDIR	= /usr/share/locale
  DIRDEFINES	= -DTGIF_PATH=\"$(TGIFDIR)\" -DPSFILE_MOD=0664 \@@\
$ cat ../tgif-QPL-4.2.5-2.diff | patch -p1 $ xmkmf && make tgif $ sudo make install $ sudo make install.man $ mv /usr/local/bin/tgif /usr/local/bin/tgif4
~/.Xresources
Tgif.InitialFont: Ryumin
Tgif.SquareDoubleByteFonts: \n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Ryumin-Light-EUC-H\n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Ryumin-Light-EUC-H\n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Ryumin-Light-EUC-H\n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Ryumin-Light-EUC-H\n\
\n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Ryumin-Light-EUC-V\n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Ryumin-Light-EUC-V\n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Ryumin-Light-EUC-V\n\
-misc-sazanami mincho-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Ryumin-Light-EUC-V\n\
\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,GothicBBB-Medium-EUC-H\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,GothicBBB-Medium-EUC-H\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,GothicBBB-Medium-EUC-H\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,GothicBBB-Medium-EUC-H\n\
\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,GothicBBB-Medium-EUC-V\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,GothicBBB-Medium-EUC-V\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,GothicBBB-Medium-EUC-V\n\
-misc-sazanami gothic-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,GothicBBB-Medium-EUC-V\n\
\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyukaisyo-Medium-EUC-H\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyukaisyo-Medium-EUC-H\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyukaisyo-Medium-EUC-H\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyukaisyo-Medium-EUC-H\n\
\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyukaisyo-Medium-EUC-V\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyukaisyo-Medium-EUC-V\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyukaisyo-Medium-EUC-V\n\
-dynalab-dfkaisho md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyukaisyo-Medium-EUC-V\n\
\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyumarugothic-Medium-EUC-H\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyumarugothic-Medium-EUC-H\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyumarugothic-Medium-EUC-H\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Tyumarugothic-Medium-EUC-H\n\
\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyumarugothic-Medium-EUC-V\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyumarugothic-Medium-EUC-V\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyumarugothic-Medium-EUC-V\n\
-dynalab-dfmarugothic md-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Tyumarugothic-Medium-EUC-V\n\
\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Gyosyo-Medium-EUC-H\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Gyosyo-Medium-EUC-H\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Gyosyo-Medium-EUC-H\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Gyosyo-Medium-EUC-H\n\
\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Gyosyo-Medium-EUC-V\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Gyosyo-Medium-EUC-V\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Gyosyo-Medium-EUC-V\n\
-dynalab-dfgyosho lt-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Gyosyo-Medium-EUC-V\n\
\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Kanteiryu-Medium-EUC-H\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Kanteiryu-Medium-EUC-H\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Kanteiryu-Medium-EUC-H\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Kanteiryu-Medium-EUC-H\n\
\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Kanteiryu-Medium-EUC-V\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Kanteiryu-Medium-EUC-V\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Kanteiryu-Medium-EUC-V\n\
-dynalab-dfkanteiryu xb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Kanteiryu-Medium-EUC-V\n\
\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Reisyo-Medium-EUC-H\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Reisyo-Medium-EUC-H\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Reisyo-Medium-EUC-H\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Reisyo-Medium-EUC-H\n\
\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Reisyo-Medium-EUC-V\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Reisyo-Medium-EUC-V\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Reisyo-Medium-EUC-V\n\
-dynalab-dfleisho sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Reisyo-Medium-EUC-V\n\
\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Pop1-Medium-EUC-H\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Pop1-Medium-EUC-H\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Pop1-Medium-EUC-H\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Pop1-Medium-EUC-H\n\
\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Pop1-Medium-EUC-V\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Pop1-Medium-EUC-V\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Pop1-Medium-EUC-V\n\
-dynalab-dfpop1 sb-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Pop1-Medium-EUC-V\n\
\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Marumoji-Medium-EUC-H\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Marumoji-Medium-EUC-H\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Marumoji-Medium-EUC-H\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,H,Marumoji-Medium-EUC-H\n\
\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Marumoji-Medium-EUC-V\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Marumoji-Medium-EUC-V\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Marumoji-Medium-EUC-V\n\
-dynalab-dfmarumoji sl-medium-r-*--%d-*-*-*-*-*-jisx0208.1983-*,V,Marumoji-Medium-EUC-V\n\
\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Kouzan-Medium-EUC-H\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Kouzan-Medium-EUC-H\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Kouzan-Medium-EUC-H\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,H,Kouzan-Medium-EUC-H\n\
\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Kouzan-Medium-EUC-V\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Kouzan-Medium-EUC-V\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Kouzan-Medium-EUC-V\n\
-misc-kouzanbrushfont-medium-r-*--%d-*-*-*-*-*-jisx0208.1990-*,V,Kouzan-Medium-EUC-V\n
Tgif.DoubleByteInputMethod:	kinput2
!Tgif.DoubleByteInputMethod:	xim
Tgif.UseNKF:			true
Tgif.CopyAndPasteJIS:		true
Tgif.PreeditType:		overthespot
Tgif.Lang:			ja_JP.eucJP
Tgif.ConvSelection:		_JAPANESE_CONVERSION
Tgif.FontSizes:        8 10 11 12 14 17 18 20 24 25 34 42 50 60 72 86 103 123
Tgif.PrintCommand:     lpr
Tgif.MaxImportFilters: 3
Tgif.ImportFilter0: \n\
    JPEG jpg;jpeg \n\
    jpegtopnm %s | \n\
    ppmquant 255 | ppmtoxpm
Tgif.ImportFilter1: \n\
    JPEG-dithered jpg;jpeg \n\
    djpeg -gif %s | \n\
    giftopnm | ppmdither | ppmtoxpm
Tgif.ImportFilter2: \n\
    GIF-dithered gif \n\
    giftopnm %s | ppmdither | ppmtoxpm
_ VMware-Player-12.1.1-3770994.x86_64.bundle
# sh VMware-Player-12.1.1-3770994.x86_64.bundle --ignore-errors # cd /etc/rc.d/rc4.d # ln -s /etc/rc.d/init.d/vmware K08vmware # ln -s /etc/rc.d/init.d/vmware-USBArbitrator K08vmware-USBArbitrator # ln -s /etc/rc.d/init.d/vmware S19vmware # ln -s /etc/rc.d/init.d/vmware-USBArbitrator S50vmware-USBArbitrator
You can use /usr/lib/vmware/bin/vmware-netcfg for network setting.
- vmnet0 for Bridge network
- vmnet1 for Hostonly network
- vmnet8 for Nat network
_ firefox-49.0.1.source.tar.xz
$ cd ~m-ito/tmp $ tar xvf firefox-49.0.1.source.tar.xz $ cd firefox-49.0.1
.mozconfig
export LDFLAGS="-latomic" . $topsrcdir/browser/config/mozconfig ac_add_options --enable-optimize ac_add_options --enable-default-toolkit=cairo-gtk2 ac_add_options --disable-debug ac_add_options --disable-tests
Build
$ PATH=${PATH}:/usr/local/autoconf-2.13/bin/; export PATH
$ export LANG=C; export LC_ALL=C
$ nice make -f client.mk build && cd obj-x86_64-pc-linux-gnu/ && nice make package
Install firefox
# mkdir /usr/local/firefox-49.0.1 # cd /usr/local/firefox-49.0.1 # tar xvvf /home/m-ito/tmp/firefox-49.0.1/obj-x86_64-pc-linux-gnu/dist/firefox-49.0.1.en-US.linux-x86_64.tar.bz2
Install gecko-sdk
# mkdir /usr/local/gecko-sdk-49.0.1 # cd /usr/local/gecko-sdk-49.0.1 # cp -rL /home/m-ito/tmp/firefox-49.0.1/obj-x86_64-pc-linux-gnu/dist/sdk . # cd sdk # cp -rL /home/m-ito/tmp/firefox-49.0.1/obj-x86_64-pc-linux-gnu/dist/idl . # cp -rL /home/m-ito/tmp/firefox-49.0.1/obj-x86_64-pc-linux-gnu/dist/include .
Setting locale
- URI -> about:config -> general.useragent.locale -> ja-JP
- URI -> http://releases.mozilla.org/pub/firefox/releases/49.0.1/linux-x86_64/xpi/ja.xpi
_ gtk+-2.24.30.tar.xz
Fix for blackout [あ] of kinput2 with Canna ;)
$ tar xvf gtk+-2.24.30.tar.xz $ cd gtk+-2.24.30
$ cat ../gtk+-2.24.30.diff
*** ./modules/input/gtkimcontextxim.c.ORG	2016-08-07 22:10:22.233875293 +0900
--- ./modules/input/gtkimcontextxim.c	2016-08-07 22:13:37.858873510 +0900
***************
*** 1757,1772 ****
    cr = gdk_cairo_create (widget->window);
!   gdk_cairo_set_source_color (cr, &widget->style->base[GTK_STATE_NORMAL]);
    cairo_rectangle (cr,
                     0, 0,
                     widget->allocation.width, widget->allocation.height);
    cairo_fill (cr);
!   gdk_cairo_set_source_color (cr, &widget->style->text[GTK_STATE_NORMAL]);
    cairo_rectangle (cr,
!                    0, 0,
!                    widget->allocation.width - 1, widget->allocation.height - 1);
    cairo_fill (cr);
    return FALSE;
--- 1757,1772 ----
    cr = gdk_cairo_create (widget->window);
!   gdk_cairo_set_source_color (cr, &widget->style->text[GTK_STATE_NORMAL]);
    cairo_rectangle (cr,
                     0, 0,
                     widget->allocation.width, widget->allocation.height);
    cairo_fill (cr);
!   gdk_cairo_set_source_color (cr, &widget->style->base[GTK_STATE_NORMAL]);
    cairo_rectangle (cr,
!                    0 + 1, 0 + 1,
!                    widget->allocation.width - 1 - 1, widget->allocation.height - 1 - 1);
    cairo_fill (cr);
    return FALSE;
$ patch -p0 <../gtk+-2.24.30.diff
$ ./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/man --with-xinput=yes --enable-xkb --enable-introspection $ make # Ignore error terminate :P $ sudo cp /usr/lib64/gtk-2.0/2.10.0/immodules/im-xim.so /usr/lib64/gtk-2.0/2.10.0/immodules/im-xim.so.ORG $ sudo install -s modules/input/.libs/im-xim.so /usr/lib64/gtk-2.0/2.10.0/immodules/im-xim.so $ sudo ldconfig
_ qjackctl-0.4.2.tar.gz
raptor-1.4.21.tar.gz
$ tar xvf raptor-1.4.21.tar.gz $ cd raptor-1.4.21
../raptor-1.4.21.diff
*** ./src/raptor_internal.h.ORG 2014-06-09 01:19:08.042495010 +0900 --- ./src/raptor_internal.h 2014-06-09 01:19:41.025687001 +0900 *************** *** 852,858 **** --- 852,860 ---- #ifdef RAPTOR_WWW_LIBCURL #include <curl/curl.h> + #if 0 #include <curl/types.h> + #endif #include <curl/easy.h> #endif $ cat ../raptor-1.4.21.diff | patch -p0 $ ./configure && make $ sudo make install && sudo ldconfig
liblrdf-0.4.0.tar.gz
$ tar xvf liblrdf-0.4.0.tar.gz $ cd liblrdf-0.4.0 $ ./configure && make $ sudo make install && sudo ldconfig
lv2-1.8.0.tar.bz2
$ tar xvf lv2-1.8.0.tar.bz2 $ cd lv2-1.8.0 $ ./waf configure $ ./waf $ sudo ./waf install && sudo ldconfig
libdaemon-0.14.tar.gz
$ tar xvf libdaemon-0.14.tar.gz $ cd libdaemon-0.14 $ ./configure && make $ sudo make install && sudo ldconfig
qjackctl-0.4.2.tar.gz
$ tar xvf qjackctl-0.4.2.tar.gz $ cd qjackctl-0.4.2 $ ./configure && make $ sudo make install && sudo ldconfig
_ guitarix2-0.35.1.tar.xz
mono-4.0.5.1.tar.bz2
$ tar xvf mono-4.0.5.1.tar.bz2 $ cd mono-4.0.5.1 $ ./configure && make $ sudo make install && sudo ldconfig
gtk-sharp-2.12.10.tar.gz
$ tar xvf gtk-sharp-2.12.10.tar.gz $ cd gtk-sharp-2.12.10
../gtk-sharp-2.12.10.diff
*** ./glib/glue/thread.c.ORG 2014-06-09 23:06:10.112536849 +0900 --- ./glib/glue/thread.c 2014-06-09 23:06:37.182977360 +0900 *************** *** 20,26 **** --- 20,30 ---- */ + #if 0 #include <glib/gthread.h> + #else + #include <glib.h> + #endif gboolean glibsharp_g_thread_supported (void); *** ./glib/glue/slist.c.ORG 2014-06-09 23:04:47.140991591 +0900 --- ./glib/glue/slist.c 2014-06-09 23:05:29.909427237 +0900 *************** *** 20,26 **** --- 20,30 ---- */ + #if 0 #include <glib/gslist.h> + #else + #include <glib.h> + #endif /* Forward declarations */ gpointer gtksharp_slist_get_data (GSList *l); *** ./glib/glue/list.c.ORG 2014-06-09 22:57:03.357047036 +0900 --- ./glib/glue/list.c 2014-06-09 23:04:14.753875352 +0900 *************** *** 20,26 **** --- 20,30 ---- */ + #if 0 #include <glib/glist.h> + #else + #include <glib.h> + #endif /* Forward declarations */ gpointer gtksharp_list_get_data (GList *l);
$ cat ../gtk-sharp-2.12.10.diff | patch -p0 $ ./configure && make $ sudo make install && sudo ldconfig
avahi-0.6.32.tar.gz
$ tar xvf avahi-0.6.32.tar.gz $ cd avahi-0.6.32 $ ./configure --disable-qt3 && make $ sudo make install && sudo ldconfig
serd-0.22.0.tar.bz2
$ tar xvf serd-0.22.0.tar.bz2 $ cd serd-0.22.0 $ ./waf configure $ ./waf $ sudo ./waf install && sudo ldconfig
sord-0.14.0.tar.bz2
$ tar xvf sord-0.14.0.tar.bz2 $ cd sord-0.14.0 $ ./waf configure $ ./waf $ sudo ./waf install && sudo ldconfig
lv2-1.12.0.tar.bz2
$ tar xvf lv2-1.12.0.tar.bz2 $ cd lv2-1.12.0 $ ./waf configure $ ./waf $ sudo ./waf install && sudo ldconfig
sratom-0.4.6.tar.bz2
$ tar xvf sratom-0.4.6.tar.bz2 $ cd sratom-0.4.6 $ ./waf configure $ ./waf $ sudo ./waf install && sudo ldconfig
lilv-0.22.0.tar.bz2
$ tar xvf lilv-0.22.0.tar.bz2 $ cd lilv-0.22.0 $ ./waf configure $ ./waf $ sudo ./waf install && sudo ldconfig
guitarix2-0.35.1.tar.xz
$ tar xvf guitarix2-0.35.1.tar.xz $ cd guitarix2-0.35.1 $ ./waf configure --install-roboto-font $ ./waf build $ sudo ./waf install && sudo ldconfig