Archive for the ‘Note for Self’ tag

Portfile Patchfile Patching   3 comments

Posted at 7:14 am in Wired

ช่วงนี้กำลังนั่งเล่นกับ Apache CouchDB สำหรับใช้ในโปรเจคถัดไป อ่านวิธีการทำงานของมันแล้วรู้สึกค่อนข้างชอบพอสมควร ถึงแม้ในขณะนี้มันยัง “ไม่สมบูรณ์” และ “ไม่มีการ optimize ใดๆ” แต่การใช้งานโดยทั่วไปน่าจะเรียกได้ว่าเร็วพอควร แต่เอนทรี่นี้ไม่ได้มาสาธยาย CouchDB …

ปัญหามันมีอยู่ว่า หลังจากลง CouchDB ผ่านทาง MacPorts เรียบร้อยแล้ว ก็พบว่าไม่สามารถเข้าไปยัง Futon ที่เป็น Web Interface สำหรับดูแลข้อมูลในฐานข้อมูลได้ ก็เลยลองโพสถามใน couchdb-user ดู แล้วก็ได้คำตอบว่าเป็นเพราะบั๊กตัวหนึ่งของ Erlang (ภาษาที่ CouchDB ใช้เขียน)

บั๊กตัวนี้มีอยู่ว่า (เดาเอา เขียน Erlang ไม่เป็น) คำสั่ง calendar:localtime_to_universaltime จะไปเรียก mktime() โดยมีค่า is_dst เป็น True ซึ่งพออยู่ในเขตที่ไม่มี DST แล้ว mktime() จะคืนค่าออกมาเป็น -1 ทำให้ calendar:local_time_to_universal_time_dst ที่รับค่าจาก localtime_to_universaltime อีกต่อ จะได้ {{1969, 12, 31}, {23, 59, 59}} ไป ซึ่งเป็นเวลาก่อน Epoch บน Mac OS X และ UNIX-like อื่นๆ 1 วินาที และแน่นอนว่ามันต้อง error

วิธีการแก้ก็เพียงแค่ใช้ แพทช์ ที่ Paul Guyot โพสไว้ตอนแจ้งบั๊ก นำมาแพทช์เข้ากับซอร์สของ Erlang และคอมไพล์ใหม่ … อ๊ะ แล้วถ้าหากไม่อยากจะคอมไพล์ใหม่เอง แต่อยากใช้ MacPorts เหมือนเดิมล่ะ จะทำยังไง?

ต้องขอขอบคุณที่ MacPorts นั้นใช้การแพทช์ซอร์สเป็นปกติอยู่แล้ว ดังนั้นเราสามารถเพิ่มแพทช์นี้เข้าไปในรายการนั้นได้ผ่านทางไฟล์ Portfile ซึ่งปกติจะอยู่ใน /opt/local/var/macports/sources/rsync.macports.org/release/ports/ (สำหรับ Erlang ต้องเข้าไปใน lang/erlang อีกต่อ) โดยการย้ายไฟล์แพทช์ที่โหลดมาไปไว้ใน files/ และแก้ไข Portfile เพิ่มชื่อไฟล์ที่ย้ายมาลงไปยังบรรทัด patchfiles

หลังจากแก้ไข Portfile เรียบร้อยแล้ว ก็แค่สั่งลง Erlang ใหม่ เมื่อเปิด CouchDB ขึ้นมาอีกรอบ ก็จะไม่มีปัญหาในการเข้าไปยัง Futon แล้ว แต่ตอนนี้สงสัยว่าแพทช์นี้มีมาตั้งแต่ R12B-4 แล้วตอนนี้มันออก R12B-5 มาแล้ว มันจะได้ commit เร็วๆ นี้หรือเปล่า?

Written by Sirn on November 26th, 2008

Tagged with , , ,

Hello, Ubuntu   2 comments

Posted at 1:26 am in Wired

วันนี้ได้มีโอกาสลง Ubuntu อีกครั้งหลังจากใช้อย่างจริงๆ จังๆ ครั้งล่าสุดเมื่อประมาณปีก่อน และเปลี่ยนกลับไปใช้ Windows Vista ด้วยเหตุผลอะไรบางอย่าง ที่นึกไม่ออกแล้วว่าเป็นอะไร แต่น่าจะเกี่ยวกับเรื่องโปรแกรมที่ใช้ กับไดรเวอร์อีกเล็กน้อย

ลองนับดูแล้ว จริงๆ อยากจะลองมาใช้ดูอีกครั้งตั้งแต่ช่วงที่ Ubuntu 8.04 Hardy Heron ออกใหม่ๆ แต่ก็มีเหตุสำคัญที่ไม่สามารถใช้งานได้ในตอนนั้น ก็คือเรื่องการ์ดเสียง ก่อนหน้านี้การ์ดเสียงที่ผมใช้เป็นหลักก็คือ Creative X-Fi ส่วนหนึ่งก็เพราะจะเล่นเกม อีกส่วนก็เพราะนิสัย “อยากได้ของดีที่สุดเท่าที่ซื้อได้” ของตัวเองเล็กน้อย (ว่ากันตามตรงแล้วก็ไม่ใช่สิ่งที่ดีซักเท่าไหร่) ซึ่ง ALSA ไม่ซัพพอร์ต และแทบไม่มีทีท่าว่าจะซัพพอร์ต

Read the rest of this entry »

Written by Sirn on July 26th, 2008

Tagged with ,