Theppitak's blog

My personal blog.

15 มีนาคม 2550

Fun

วันสองวันมานี้ สนุกดีแฮะ ได้ตัดเรื่องอื่น ๆ ออกไปแล้วติดต่อ upstream ลูกเดียว ก็ไม่เชิง upstream จริง ๆ ทั้งหมดหรอก แต่เป็น debian และ ubuntu น่ะ

สรุปความคืบหน้า

  • Alexander Sack ซึ่งเป็น firefox maintainer ของ ubuntu ได้ช่วยประสานงานต่าง ๆ ให้ จนได้รับอนุญาตให้ sync แพกเกจไทยต่าง ๆ จาก debian แม้จะอยู่ในช่วง feisty freeze ได้แก่ thaifonts-scalable และ libdatrie จาก sid, libthai จาก experimental นอกจากนั้น ก็ได้อัปเดตแพตช์ใน firefox จากแพตช์รุ่นลายครามตั้งแต่ครั้ง Localisation Sprint มาเป็นรุ่นล่าสุด

    ถ้าทุกอย่างเรียบร้อย น่าจะคาดหวังได้ว่า firefox ใน feisty จะได้ใช้ libthai ตัวใหม่ ซึ่งจะมีปัญหาน้อยลง (แปลว่ายังไงก็คงจะยังมีปัญหาอยู่) กับเว็บภาษาไทยที่มีย่อหน้ายาว ๆ รวมทั้งใช้ thaifonts-scalable ตัวใหม่ ที่แก้ปัญหาฟอนต์กระโดดแล้ว

  • สืบเนื่องจากแผนการ build pango ตัวใหม่โดยลิงก์กับ libthai ใน debian ของ Loic Minier ทำให้ผมตัดสินใจติดตั้งแพกเกจ GNOME ต่าง ๆ จาก experimental เพื่อติดตามงาน จากเดิมที่คิดว่าจะลงแค่ toolkit อย่าง GTK+ แต่สุดท้ายก็ลามไปเรื่อย ๆ จนในที่สุดก็เป็น GNOME ทั้งตัว ก็ได้ GNOME 2.16.3 ซึ่งเป็น stable release ล่าสุด พร้อม xorg 7.2 อีกต่างหาก โอ้.. ฉันทำอะไรลงไปนี่ ^_^'

    ปัญหาแรกที่เจอ คือ Debian Bug #414698 คือ immodule ไทย-ลาว ตัวใหม่ใน upstream GTK+ ไม่ทำงาน debug ไปมา พบว่าเป็นเพราะแพตช์หนึ่งที่ดึงมาจาก trunk ทำให้มีการส่งพารามิเตอร์เพี้ยนมายัง IM แต่พอจะ debug หาสาเหตุที่เพี้ยน bug กลับหายไปซะงั้น เบื่อ heinsenbug จริง ๆ เล้ย

    แต่ก็ทำให้ Debian maintainer แก้ปัญหานี้ด้วยการ drop patch นั้นไปซะ

  • เตรียม บันทึกออกรุ่น GNOME 2.18 โดยได้เพื่อน ๆ ในทีมแปลช่วยวิจารณ์ขัดเกลา แล้วก็มาจับ screenshot ตามทีหลัง

    ออกแล้วนะครับ GNOME 2.18 เตรียมพบได้ที่ distro ใกล้บ้าน :-)

ยังมีเรื่องต้องทำต่ออีก ไว้ค่อย blog ทีหลัง

ป้ายกำกับ: , ,

6 ความเห็น:

  • 15 มีนาคม 2550 17:49 , Blogger fat dog father แถลง…

    เรื่อง SuDoKu ครับ มันไม่ใช่ปริศนาอักษรไขว้ของญี่ปุ่น
    แน่ ๆ ครับ (ในภาษาอังกฤษก็เขียนอย่างนี้)

    เกมส์นี้มันเกิดในอเมริกา แล้วโตในญี่ปุ่น ตอนนี้ฮิตทั่วโลก
    แม้แต่เมืองไทยมีลูกหลานมากมาย

    http://www.americanscientist.org/template/AssetDetail/assetid/48550?&print=yes#48706

    แต่ตัวผมชื่อว่า Euler เป็นคนคิด
    http://puzzles.about.com/od/sudokupuzzles/p/leonardeuler.htm

     
  • 15 มีนาคม 2550 18:38 , Blogger Thep แถลง…

    ความรู้ใหม่ ขอบคุณครับ :-)

    เดี๋ยวโพสต์ทักท้วงใน mailing list ดีกว่า?

     
  • 16 มีนาคม 2550 12:09 , Blogger Taniya แถลง…

    libthai win32 installer เสร็จแล้วครับผมเอาไฟล์ไปฝากไว้ที่

    http://www.uploadtoday.com/download.php?f6683b33ae9f7550a375210c671909d1

    สร้าง​จาก​ NSIS ​ประกอบ​ด้วย​ libdatrie.v0.1.1.exe,libthai.v0.1.8.exe ​พร้อม​ nsis-script

    คงต้องให้คนมี windows ลองใช้ดูนะครับ ไม่ถูกใจจะได้แก้ไข

     
  • 16 มีนาคม 2550 14:45 , Blogger Thep แถลง…

    Taniya,

    ขอบคุณมากครับ ขอคำสั่งที่ใช้ build installer ด้วยครับ เดี๋ยวจะรวมเข้าใน Makefile

     
  • 16 มีนาคม 2550 19:03 , Blogger Taniya แถลง…

    ผมขอแก้ไข nsis script นิดหน่อยนะครับดาวน์โหลดใหม่ที่

    http://www.uploadtoday.com/download.php?a9a8095d6f1211719f73506c8733b947

    การเตรียมก็ตามลำดับข้างล่างนี้ครับ

    Build libthai for mingw
    ==============

    Testbed:
    1. Windows XP pro SP2
    2. MinGW with Msys

    เริ่มโดย run MSYS shell

    libdatrie
    ******
    $ ./configure --prefix=/c/GNU/libdatrie --exec-prefix=/c/GNU/libdatrie
    $ make
    $ make install
    $ mkdir -p /c/GNU/libdatrie/doc
    $ cp AUTHORS /c/GNU/libdatrie/doc/AUTHORS.txt
    $ cp COPYING /c/GNU/libdatrie/doc/COPYING.txt
    $ cp INSTALL /c/GNU/libdatrie/doc/INSTALL.txt
    $ cp NEWS /c/GNU/libdatrie/doc/NEWS.txt
    $ cp README /c/GNU/libdatrie/doc/README.txt
    $ unix2dos /c/GNU/libdatrie/doc/*

    ต่อไปต้องแก้ไข /c/GNU/libdatrie/lib/libdatrie.la
    $ vi /c/GNU/libdatrie/lib/libdatrie.la
    แก้จาก
    library_names=''
    เป็น
    library_names='libdatrie.a'
    ถ้าไม่แก้เวลา link กับ libthai จะไม่ผ่านครับ ไม่ทราบมีวิธีที่ดีกว่านี้มั้ย
    จากนั้น copy nsis-script ที่เตรียมไว้มาที่ directory ที่เหนือขึ้นไป 1 ขั้น แล้วสร้าง installer ด้วยคำสั่ง makensis.exe

    $ cp libdatrie-nsis.nsi /c/GNU
    $ cd /c/GNU
    $ export MAKENSISDIR="/c/Program Files/NSIS"
    $ export PATH=$PATH:$MAKENSISDIR
    $ makensis /X"SetCompressor /SOLID /FINAL lzma" libdatrie-nsis.nsi


    libthai
    *****
    $ export PATH=$PATH:/c/GNU/libdatrie/bin
    $ ./configure DATRIE_CFLAGS="-I/c/GNU/libdatrie/include" DATRIE_LIBS="-L/c/GNU/libdatrie/lib -ldatrie" --prefix=/c/GNU/libthai --exec-prefix=/c/GNU/libthai
    $ make
    $ make check
    $ make install
    $ mkdir -p /c/GNU/libthai/doc
    $ cp AUTHORS /c/GNU/libthai/doc/AUTHORS.txt
    $ cp COPYING /c/GNU/libthai/doc/COPYING.txt
    $ cp INSTALL /c/GNU/libthai/doc/INSTALL.txt
    $ cp NEWS /c/GNU/libthai/doc/NEWS.txt
    $ cp README /c/GNU/libthai/doc/README.txt
    $ unix2dos /c/GNU/libthai/doc/*
    $ cp libthai-nsis.nsi /c/GNU
    $ cd /c/GNU
    $ export MAKENSISDIR="/c/Program Files/NSIS"
    $ export PATH=$PATH:$MAKENSISDIR
    $ makensis /X"SetCompressor /SOLID /FINAL lzma" libthai-nsis.nsi

    ไม่รู้ว่าได้อย่างที่ต้องการรึเปล่าครับ

     
  • 17 มีนาคม 2550 12:50 , Blogger Thep แถลง…

    ผมพยายามไล่ตามอยู่นะครับ ไม่แน่ใจว่า การติดตั้ง library พร้อม development file ต่าง ๆ ลงที่ C:\Program Files\${PROGNAME} นี่ เป็นวิธีปกติของการติดตั้ง DLL ใน Windows หรือเปล่า หรือเขาติดตั้งใน C:\Windows กัน? แล้วพวกที่ติดตั้งที่ C:\Windows เขาติดตั้ง header file ไว้ที่ไหน? ความที่ไม่ได้จับ Windows มานาน ความจำชักลางเลือนเหมือนกันครับ

    อีกประเด็นหนึ่งคือ แบบนี้แล้ว pkg-config จะช่วยอะไรได้หรือเปล่า สำหรับโปรแกรมที่จะ link กับ library เรา เช่น จะสั่งทำนอง 'pkg-config --libs datrie' ใน configure script แล้วได้ link flag มาเลยหรือเปล่า (สำหรับ mingw/cygwin) หรือถ้าเป็นการติดตั้งแบบ Windows native จะต้องใช้วิธีถึก ๆ แบบ MSVC ที่ไปเซ็ต INCLUDE, LIBS ด้วยมือเอา?

    ต้องศึกษา Windows อีกเหมือนกันแฮะผม

     

แสดงความเห็น (มีการกลั่นกรองสำหรับ blog ที่เก่ากว่า 14 วัน)

<< กลับหน้าแรก

hacker emblem