Kernel Hacking

อั้นไว้หลายวัน วันนี้ sync แพ็กเกจเข้าเซิร์ฟเวอร์ไปสิบกว่าตัว รวมถึงแพ็กเกจบางตัวก็ย้ายเข้า testing ไปแล้ว เช่น beep music player, mplayer 1.0pre4, libdv 0.102, และ gflashplayer-installer ตัวท้ายนี่เป็น official stand-alone flashplayer ที่ Macromedia Inc. แจกให้ใช้ฟรีสำหรับลินุกซ์ แต่ห้าม redistribute เช่น เดียวกับ flash plugin ผมเลยทำเป็น installer แทน (ไอเดีย installer นี่ debian เขาใช้กันอยู่ พี่เทพแนะนำมาอีกที) installer ตัวนี้ช่วยติดตั้งและถอดโปรแกรม gflashplayer ออกจากระบบอัตโนมัติ แต่ไฟล์ที่ติดตั้งไปจะไม่อยู่ในสารบบของ rpm ทำให้ไม่สามารถตรวจสอบ conflict ได้ ผลก็คือ rpm อาจติดตั้งไฟล์ทับ gflashplayer หรือลบไฟล์ของ gflashplayer หรือแพ็กเกจที่ conflict ออกไปโดยไม่รู้ตัว .. โอกาสเกิดเหตุแบบนี้มีน้อยมากๆๆๆๆๆๆ ครับ ถ้ายังไม่ไว้ใจก็ยังไม่ต้องลงก็ได้ ผมจะหาทางแก้ปัญหาดูอีกที

ระหว่าง sync แพ็กเกจ เผลอลบไฟล์ในเซิร์ฟเวอร์ไป 1 GB เลยเสียเวลา sync ไฟล์ไปซะหลายชั่วโมง เฮ่อ ..

สายๆ นั่งแฮ็กเคอร์เนลแก้ IRQ routing ของ CardBus ในโน้ตบุคที่ใช้อยู่ (Acer TravelMate 361Evi, CardBus controller ของ O2Micro OZ6933) .. ปัญหามันก็คือ IRQ table ทั้งของ BIOS และ ACPI มันผิด มันกำหนดให้ CardBus ใช้ IRQ 11 ทั้งที่จริงๆ มันควรจะเป็น IRQ 9 หรือ 10 พอมัน route ไป IRQ 11 ซึ่งไม่ได้เชื่อมอยู่จริงๆ ก็ Oops ! กระจาย ไม่ก็ freeze ไปเลย .. ทางแก้ทำไปแล้วตั้งแต่ต้นๆ เดือน แดเนียล ริตซ์ เขาช่วยดูให้ วิธีการคือฮาร์ดโค้ดใน arch/i386/pci/irq.c (2.6 branch) เช็คว่าถ้าเป็น BIOS ของ TravelMate 360 series และมี pmask เป็น 0x63 (pmask ของ OZ6933) จะสั่ง route ไปที่ IRQ 10 เสมอ .. สำเร็จครับ CardBus ทำงานได้แจ๋วเลย .. แดเนียลเมลมาถามให้ทดสอบว่าทุกอย่างใช้งานได้ปกติแล้วหรือเปล่า ผมเช็คแล้วทุกอย่างดูดีก็เลยบอกเขาว่าแพตช์น่าจะใช้ได้ จึง reply all กลับไปให้ แดเนียล, แอนดรูว์ มอร์ตัน (co-maintainer 2.6 กับ ลินุส ทอร์วาลด์), มาร์เซลโล โทซัตติ (maintener 2.4), และ เลน บราวน์ (Linux ACPI) .. ไม่กี่ชั่วโมงต่อมาแอนดรูว์รีลีสแพตช์ 2.6.5-mm4 ผมอ่าน ChangeLog เห็นมีแพตช์ของแดเนียลรวมเข้าไปแล้ว .. เร็วโคตร .. ดูๆ ไปวิธีฮาร์ดโค้ดแบบนี้ออกจะดุไปสักหน่อย เลน บราวน์ เองก็ไม่ค่อยชอบ เขาอยากหาต้นเหตุของปัญหานี้มากกว่า อีกอย่างคือวิธีฮาร์ดโค้ดแบบนี้แม้จะตรงไปตรงมาแต่ไม่ใช่วิธีที่ดีนัก เพราะมันไม่สเกล .. ทำไงได้ เท่าที่ผมทดสอบและให้ข้อมูลไป ก็ไม่มีวิธีแก้ทางอื่นเลย ข้อมูล IRQ table มันผิดตั้งแต่แรก

เวลาล่วงเลยไปหลายสัปดาห์ จนผมเปลี่ยนมาใช้ 2.6.5-mm6 .. วันนี้เพิ่งได้เสียบ HandyDrive (USB Storage) ใช้งาน ปรากฏว่าทำงานตะกุกตะกักมาก แถมมี error message ขึ้นมาเป็นระยะๆ ผมก็เริ่มเอะใจว่าจะเป็นที่แพตช์ของแดเนียลหรือเปล่า เพราะเขาก็เคยบอกนัยๆ ว่ามันอาจจะมีปัญหากับ USB แต่ในเวลานั้นผมทดสอบกับวานิลลา 2.6.5 ละเอียดแล้ว ทดลองใช้งานดูก็ปกติดี .. อย่างไรก็ตามสาเหตุเรื่องนี้น่าจะเป็นเพราะหนึ่งใน USB controller ใช้ pmask เป็น 0x63 เหมือน CardBus ก็เลยโดน route ไปที่ IRQ 10 ด้วย (ปกติควรอยู่ที่ IRQ 11) .. งานนี้จะกวนแดเนียลอีกก็กระไร อีกอย่างผมอยากทดสอบเองก่อนจะให้ข้อมูลเขา ก็เลยแฮ็กเคอร์เนลเอง เพิ่มโค้ดให้เช็ค vendor id และ device id ไปเลย จะได้ชัวร์ๆ ว่า re-route IRQ ไม่ผิดตัว (โค้ดก็เลยฮาร์ดหนักเข้าไปใหญ่ทีนี้) .. หลังแฮ็กแล้วก็ดูเหมือนจะดีขึ้น ไม่มี error message แล้ว การทำงานของ HandyDrive ลื่นเป็นปกติดี น่าจะใช้ได้แล้วล่ะ ผมส่งโค้ดกลับไปให้แดเนียลดูแล้ว พรุ่งนี้อาจจะรู้ว่าเขาคิดยังไงกับโค้ดที่แก้ไป :)

บ่ายๆ ออกไปจ่ายเบี้ยประกัน (กรมธรรม์แบบสะสมตังค์) แรกๆ ก็รู้สึกว่าเงินหายไปเยอะ แต่คิดอีกทีก็เหมือนโอนเงินจากธนาคารนึงไปฝากอีกธนาคารนึง ได้ดอกเยอะกว่าด้วย อืมคิดแบบนี้ค่อยสบายใจ กินซิซซ์เลอร์ เป็นมื้อเย็น อิ่มโคตร น้องๆ ที่ไปด้วยกันบอกว่าผมกินไม่คุ้ม (- -‘)

Mplayer / Kiki’s Delivery Service

ไม่ได้รีลีสเวอร์ชันใหม่มาสี่เดือน วันนี้ Mplayer 1.0pre4 ออกแล้ว พร้อมกับเตรียม deprecate 0.9 branch .. ต่อจากนี้หวังว่าการพัฒนา Mplayer จะกลับเข้าร่องเข้ารอยเสียทีหลังวุ่นวายกับ KISS เรื่องสัญญาอนุญาตอยู่นาน .. สำหรับ 1.0 branch ผมทำแพ็กเกจใส่ไว้ใน Kitty Extras นานแล้ว ที่ไมเอาเข้าทะเลตั้งแต่แรกเพราะ 0.9 branch ในทะเลเสถียรมากกว่าเลยกั๊ก 1.0 ไว้ก่อน .. ตอนนี้ทะเลมี testing repository แล้ว ผมย้าย Mplayer 1.0pre4 เข้า testing น่าจะดีกว่าแฮะ :) .. อ่อ นอกจากรีลีส pre4 แล้ว Mplayer มีอัปเดต codecs อีก 2-3 ด้วย .. ทะเล 5.5 apt-get ได้เช่นเคยครับ

ได้ Kiki’s Delivery Service มาแล้ว ดูแล้วนึกถึงเรื่อง Spirited Away แฮะ .. ใครที่ชอบ Spirited Away เรื่องนี้ไม่ควรพลาด รวมถึง Princess Mononoke และ Laputa – Castle in the Sky ด้วย .. ทั้งหมดเป็นผลงานจาก Studio Ghibli น่าเก็บทั้งสี่เรื่องครับ .. เอาไปห้าดาว

2-3 วันที่ผ่านมานี้ขี้เกียจมาก ดูแต่การ์ตูน อ่านแต่นิยาย (สถาบันสถาปนาเล่ม 10) .. งานไม่เดินเลย :P

Cabin crew door slides arm

Build flightgear ผ่านแล้ว เมื่อวานที่ไม่ผ่านเพราะ สั่ง build ผิดตัว ดันไป build 0.93 ที่ใช้กับ simgear เวอร์ชันเก่า ต๊องจริง .. ยังไงก็ได้เล่นแล้วล่ะครับ .. นักบินเป็นอาชีพที่ผมอยากเป็นมาก แต่ไม่มีโอกาสได้เลือกเรียนด้านการบิน เลยหันมาเล่น flight sim ของ Microsoft แทน :P .. เล่นมาตั้งกะเครื่อง Apple II โน่น โคตรชอบครับ ซื้อของแท้มาเล่นแล้ว หนังสือคู่มือดีมาก .. พอมาใช้ลินุกซ์เลยพยายามหา flight sim มาเล่นบนลินุกซ์จนมาเจอ Flight Gear … โดยรวม ยังสู้ MS Flight Sim. ไม่ได้นะ แต่ก็ดีมากแล้วล่ะครับ ตัวเต็มมีสนามบินทั่วโลก แผ่นติดตั้งเกือบ 10 แผ่น โมเดลเครื่องบินเพียบ วันนี้เลยบิน 747 ไป ซะรอบนึง บินๆ ไปก็นึกประโยคขึ้นมาได้หนึ่งประโยค จะได้ยินบ่อยๆ บนเครื่องบินก่อนจะ take off กัปตันจะบ่นอู้อี้ๆ อยู่คนเดียว เป็นที่น่าสงสัย แต่พอจับความได้ว่า “cabin crew door slides arm” หรือบางทีจะได้ยิน “cabin crew arm slides” และเมื่อลงจอดสนิทแล้วก็จะประกาศเป็น “cable crew door slides disarm” .. เจ้า “door slide” ก็คือสไลด์ยาง/แพยางที่ติดกับประตูเครื่องบินนั่นเอง พอกัปตันสั่ง slide arm ก็หมายถึงให้ arm (จะแปลเป็น ‘ขึ้นลำ’ เหมือนที่ใช้กับอาวุธก็กระไรอยู่ ขอทับศัพท์ละกัน) door slide เข้ากับตัวล๊อคประตูเผื่อต้องเปิดประตูทางออกฉุกเฉิน door slide จะได้พองลมออกพร้อมให้ผู้โดยสารเผ่นออกนอกเครื่อง และเมื่อจอดสนิทเรียบร้อยเตรียมเทียบท่า (ที่เรียกกันว่า “งวง”) หรือเทียบบันได ก็จะสั่ง disarm เพื่อปลด door slide ออก เวลาเปิดประตูจะได้ไม่พองลม .. หายสงสัยกันยัง :)

มีรุ่นน้องที่ผมยัดเยียด blog ผมให้มันอ่าน อุ๊บ! ขออภัย ให้อ่าน ถามมาว่า “ทำไมไม่ใส่รูป (ลูกหยี) อ่ะ ?” ผมตอบไปว่า ไม่มีรูป (แต่จริงๆ คือ ขี้เกียจหา) .. คุยไปคุยมา เลยสนองพระเดชพระคุณซะอัปเดตห้องภาพเพิ่่มขึ้นมาอีกหนึ่ง รูปลูกๆ ของผมเอง :)

เย็นๆ ไปเดินฟิวเจอร์พาร์ค กับ พี่ดุล มาร์ท เสี่ยต้น และ MrChoke .. ได้แผ่น CD-RW มาแล้ว Princo CD-RW 700MB 4X-12X แผ่นละ 40 บาท พร้อมกล่อง โฮ่ๆๆ ต่อไปก็ไม่กลัว beta release กับ gentoo แล้ว จะเปลี่ยนบ่อยแค่ไหนก็เผาๆ ลบๆ ได้สบายละ .. อ่อ .. เดี๋ยวเล่าเรื่องราคา CD-R หน่อย .. ที่ฟิวเจอร์แต่ก่อน Princo Budget ราคาหลอด (50 แผ่น) ละ 350 ยืนราคานี้หลายเดือนแล้ว ต่อจนเสียงแห้งก็ไม่ลด คนขายบอกของมาแพงได้กำไรหลอดละห้าบาทเองพี่ .. ไม่นานนี้มี CD-R ของ Easy Write ราคา 330 บาทออกมาตัดหน้า คนขายบอกว่า Easy Write แผ่นเกรด A เทียบเท่า Princo สี (ดีกว่า Princo Budget ซึ่งเขาบอกว่าเป็นเกรด B) .. Easy Write เขียนเจ๊งเอาแผ่นมาเปลี่ยนได้เลย .. ผมเห็นมันถูกกว่าเลยลองซื้อมาใช้ ว่าแล้วก็อัดสปีด 40X ไปเล้ย เฮ้ย เขียนลื่นดี ลองอ่านจากไดรว์หลายๆ ตัวก็ลื่นดีไม่สะดุดเลย คิดว่าต่อไปใช้ Easy Write ดีกว่าแฮะ …. สองวันต่อมาไปฟิวเจอร์อีกแล้ว Princo Budget เหลือ 320 ตัดราคา Easy Write ไป 10 บาท (จำได้เป่า ตั้งราคา 350 กำไรห้าบาทมาเป็นเดือนๆ แค่สองวันลดราคาลง 10 บาทได้ไงอะ .. แง่งงง).. สัปดาห์ถัดมา Easy Write ลดเหลือ 320 Princo Budget 310 .. ล่าสุดวันนี้ Easy Write ยืนราคาเดิม 320 Princo Budget เหลือ 300 แล้วครับ .. จะว่าล็อตใหม่ต้นทุนลดลง มันก็ลดได้เหมาะเจาะโพดเด้อ … แล้วเมื่อสองอาทิตย์ก่อนขาย 350 ต่อให้ตายก็ไม่ลด กำไรไม่โคตรๆ เลยเหรอครับเนี่ยะ .. เคืองๆๆ .. ตอนนี้ผมก็ยังใช้ Easy Write อยู่เหมือนเดิมนะ เผาที่ 40X ไปสองร้อยกว่าแผ่นแล้ว ยังไม่เสียซักแผ่นเลย (overburn ด้วย .. md5 ผ่านฉลุย) .. เห็นโฆษณาว่าโรงงานผลิต Easy Write อยู่ในไทย เครื่องผลิตของ Pioneer น้ำยาของ Ciba ซึ่งดีที่สุดในโลก (จิงอะ ?) .. ดีจริงหรือเปล่าก็ไม่รู้ ต้องพิสูจน์กันเอาเองครับ :)

ถ้ามีเรื่องบ่นล่ะก็ยาวอย่างนี้ล่ะ :P

Mahoromatic !

เมื่อวานเขียนถึงลูกหยี มีคนอ่านแล้วส่ง im มาให้กำลังใจ ขอบคุณทุกคนครับ

แวะเวียนไปเยี่ยม blog พี่เทพ bact’ และ mk เห็นทำลิงค์หากันด้วย นี่ถ้าเป็นกลุ่มก้อนใหญ่กว่านี้อาจจะได้ทำหน้ารวม blog :)

ข่าววันนี้ พี่เทพอัพเดต developer’s wishlist ไว้ที่ LTN แล้ว เข้าไปอ่านคงเห็นภาพกว้างๆ ของการสนับสนุนภาษาไทยในลินุกซ์ครับ อีกเรื่องที่ลืมไม่ได้คือ TLE LiveCD Released เรียบร้อย .. MrChoke ให้ผมทดสอบเบต้า ไม่กี่สิบชั่วโมงออกรีลีสแล้ว ฮ่วย แบบนี้แผ่นเบต้าผมก็หมดค่าไปแล้วสิเนี่ยะ ต้องเบิกๆ

Flight Gear ออกเวอร์ชันใหม่แล้ว วันนี้อัพเดตแพ็กเกจก้อนโตทีเดียว plib, metakit, simgear, และ flightgear รวมเฉียดร้อยเม็ก .. build จนถึง flightgear ปรากฏว่าแป๊ก build ไม่ผ่าน ยังแก้ไม่ได้เลย ไร้สามารถยิ่งนัก อดเล่นจ้อย

.. ระยะหลังผมลงลินุกซ์ไว้สองพาร์ติชัน ติดตั้งทะเลสำหรับทำงานของตัวเองหนึ่ง และติดตั้งทะเลสะอาดๆ สำหรับ build แพ็กเกจอีกหนึ่ง ปกติจะบูตเข้าพาร์ติชันทำงาน พอจะ build แพ็กเกจที่ก็ chroot เข้าไปทะเลสะอาด วิธีนี้ทำให้ได้ dependency ที่แน่นอนกว่า ไม่เจอ dependency ไม่พึงประสงค์ เช่น libGL ของ NVIDIA (โดนประจำ) เข้าไปรวมอยู่ด้วย … ทำ chroot แบบนี้เกิดอาการสองจิตสองใจอีกแล้ว จะเปลี่ยนเป็น gentoo ซักอันดีมั้ยน้อ .. คิดเรื่องนี้ทีไรก็โยงไปถึง rpmmerge ซะทุกที .. ก็ gentoo ยังมี epm ได้ ทำไมทะเลจะมี rpmmerge มั่งไม่ได้ :D

ปิดท้าย .. วันนี้ดูการ์ตูนเรื่อง mahoromatic จบทั้งสองภาคแล้ว (26 ตอน 5.9 GB การ์ตูน M) .. แฮปปี้เอ็นดิ้งแบบเหงาๆ ชอบกล แต่เอาไปเลยห้าดาว ให้เป็นการ์ตูน top10 ของผมเลยเอ้า .. ใครชอบการ์ตูนคอมเมดี้ โรแมนติกนิดๆ ติดเรตหน่อยๆ (ecchi .. ไม่ใช่ hentai นะ) ไม่ผิดหวังครับ :)

ปิดท้ายจริงๆ .. ขออนญาตตัดเนื้อหาบันทึกวันที่ 21 ออกบางส่วน เพราะเป็นเรื่องที่ไม่ควรเปิดเผยครับ (- -‘)

ก็แค่หมาตัวนึง

หลายปีก่อนบ้านเราได้ลูกหมาเทอร์เรียขนสีดำมาตัวนึง ขนมันยาวปรกหน้าจนมองไม่เห็นลูกตา ตัวป้อมๆ ขาสั้นๆ ที่บ้านตั้งชื่อมันว่า “ลูกหยี” .. ลูกหยีเป็นหมาที่เชื่องที่สุดในบ้าน เรียกง่าย เลี้ยงก็ง่าย กินเก่ง ไม่นานมันก็หนักสิบกว่าโล ผมชอบเล่นกับลูกหยีมากที่สุดในบรรดาหมา 13 ตัวที่บ้าน (ในตอนนั้น) ด้วยความที่มันเชื่อง แล้วก็น่ารัก .. ทุกๆ เช้า กินข้าวเสร็จแล้วลูกหยีจะไปนั่งเฝ้าประตูหน้าบ้าน แล้วก็เห่าคนเดินผ่านไปผ่านมา ใครเห็นมันเห่าก็ต้องยิ้ม สิ่งที่ลูกหยีชอบที่สุดคือเกาพุง ไม่ก็เกาหลัง หยุดเกาเมื่อไหร่มันจะเอาหัวมาถูมือ เป็นการอ้อนให้เกาอีก (จนกว่ามันจะหลับ) ..

.. ห้าปีที่ผ่านมา ผมมาอยู่กรุงเทพฯ .. เดือนนึงจะกลับบ้านสักหน .. ทุกครั้งที่กลับถึงบ้าน ลูกหยีจะวิ่งมารับถึงที่ประตูรถ กระดิกหางวิ่งวนไปวนมาจนหอบ .. หมามันก็ดีใจเป็นเหมือนกัน .. ผมจะลูบหัว เกาพุง นั่งเล่นกับลูกหยี แล้วก็ตัวอื่นๆ ก่อนจะขึ้นห้องเอาสัมภาระไปเก็บ .. ลูกหยีอายุสิบกว่าปีแล้ว แต่ยังแข็งแรง วิ่งได้ทั่วบ้าน ทำตัวเป็นลูกหมาเหมือนเดิม

หลายเดือนก่อน ขณะนั่งทำงานอยู่ที่แล็บตอนบ่ายๆ คุณแม่ก็ผมก็โทรมาบอกว่า “ไอ้หยีตายแล้วนะลูก” .. ผมใจหาย .. ลูกหยีช็อคตายอยู่ที่ร้านหมอ คุณแม่เล่าว่าพาลูกหยีกับเฉาก๊วยไปอาบน้ำตัดขนที่ร้านหมอ ปกติลูกหยีจะชอบไปอาบน้ำตัดขนที่ร้านหมอมากชนิดที่ไปแล้วไม่อยากกลับมาบ้านก็เคยมาแล้ว แต่วันนี้มันไม่อยากไป คุณแม่บอกว่าเรียกเท่าไหร่ก็ไม่มาหาทั้งที่ปกติมันเรียกง่าย ไปถึงร้านหมออยู่ๆ ลูกหยีก็ตัวสั่น ตอนแรกก็ไม่ได้คิดอะไรจนกระทั่งมันช็อคแล้วก็นิ่งไป หมอรีบตรวจแล้วก็รีบปั๊มหัวใจอยู่พักนึง แต่มันก็ไม่ฟื้น มันไม่กลับมา .. คุณแม่เอามันไปฝังที่วัด กลับมาถึงบ้าน เฉาก๊วยมันวิ่งวนทั้งบ้าน เหมือนจะหาว่าลูกหยีหายไปไหน ..

ลูกหยีจากไปหลายเดือนแล้ว แต่ผมก็ยังอดคิดถึงมันไม่ได้ .. ก็แค่หมาตัวนึง .. เปล่า .. หนึ่งในเพื่อนที่ดีที่สุด จากผมไป แล้วทำไมผมจะไม่เสียใจ ?

บางทีเพราะมันเป็นแค่หมา ก็เลยเสแสร้งไม่เป็นเหมือนคน ..

บางทีเพราะมันเป็นแค่หมา ก็เลยเข้าใจมันได้ง่ายกว่าคน ..

บางทีเพราะมันเป็นแค่หมา ก็เลยไม่เรียกร้องมากมายเหมือนคน ..

บางทีเพราะเหตุผลพวกนี้ เป็นแค่หมาก็ยังเป็นเพื่อนได้ดีกว่าคนเหมือนกัน ..

ถ้ามันเป็น “แค่หมาตัวนึง” .. แล้วคนล่ะ ?

LinuxTLE LiveCD !

วางแผนทำ TLE LiveCD มาตั้งนาน แต่เพราะผมขี้เกียจตัวเป็นขน เลยไม่ทำออกมาซะที MrChoke ก็เลยตัดหน้าไปซะแล้ว 555 .. ดีเหมือนกัน วันนี้ MrChoke เอา iso แผ่น beta มาให้ลอง ก็เลยเผาแผ่นมาลองดูสักหน่อย เด่นๆ คงเป็น GNOME 2.6 ภาพรวมเหมือนใช้ทะเลธรรมดาๆ เลย การตอบสนองก็อยู่ในขั้นดี (ทดสอบบน AthlonXP 2000+, RAM 384 MB, GeForce4 MX440 64MB) .. แต่ก็ยังมีขาดๆ เกินๆ อยู่บ้าง สรุปเบต้าแรกนี้ถือว่าดีทีเดียว ตัวจริงน่าจะดีขึ้นอีก ออกเมื่อไหร่จะได้เอามาทำเป็นต้นฉบับใช้เองมั่ง เหตุที่จะทำเอง คือ ไม่ชอบการจัด default desktop ของ TLE บวกกับ apps บางตัวผมก็ไม่ได้ใช้แต่ใส่มาเป็น default และบางตัวผมต้องใช้แต่ไม่มีให้ใช้ ตรงนี้ไม่ได้ comment ว่า TLE ดีหรือไม่ดี ภายใต้เงื่อนไขการทำดิสโตรอย่างทะเล และภายใต้หน่วยงานที่ทำ ก็คงต้องเป็นอย่างที่เห็นนั่นล่ะเหมาะแล้ว .. ส่วน LiveCD มันไม่ได้ทำยากทำเย็นอะไรนักหนา ยิ่งมีฐานดีๆ อย่าง Knoppix หรือ Fedora LiveCD หรือ TLE LiveCD อยู่แล้ว จะเอามาทำเองยิ่งสะดวก .. ไว้ผมทำได้แล้วจะเขียนวิธีสร้าง LiveCD ไว้ให้อ่าน :)

blog code updated / gaim 0.77

วันนี้เพิ่ม code ในหน้า blog ให้สร้างและจัดการเรื่องปฏิทิน ก็ได้อาศัย code ทำปฏิทินจาก zend บวกกับเชื่อมการแสดงผลกับ mysql และทำให้แสดงเป็นภาษาไทย ผลที่ได้ก็อย่างที่เห็นนี่ล่ะครับ :)

gaim รีลีสเวอร์ชัน 0.77 แล้ว system log ที่หายไปนาน เวอร์ชันนี้กลับมาแล้ว .. วันนี้เลยนั่งทดสอบและทำแพ็กเกจ gaim 0.77 ให้ทะเล 5.5 .. gaim ยังคงมีปัญหากับ sim อยู่เหมือนเดิม .. ส่วนภาษาไทย ต้องทำแพตช์กันใหม่เพราะแพตช์ตัวเดิมใช้กับ 0.77 ไม่ได้ .. TLE 5.5 สั่ง apt-get update ตามด้วย apt-get upgrade ครับ

Tip of the day: ลินุกซ์อัพเดต atime (access timestamp) ของไฟล์ตลอดเวลา ฮาร์ดดิสก์จึงมีการเขียนข้อมูลตลอดเวลา .. ปกติแล้ว atime ไม่ใช่ attribute ที่สำคัญนักสำหรับเครื่องที่ทำงานแบบเดสก์ท็อป เราสามารถยกเลิก atime ได้โดยแก้ไฟล์ /etc/fstab ใส่ option noatime เพิ่มเข้าไป เช่น

/dev/hda2   /   ext3  defaults,noatime 1 1

จากนั้นก็รีบูต เป็นอันเรียบร้อย

Ogg-ize my CDs

เรื่องของเรื่องก็คือวันนี้ อยากฟังเพลง Praise ของ T-Square (ชุด Gravity) ก็เลยตั้งใจว่าจะเอาแผ่น CD มา rip + encode เป็น ogg .. แต่ไหนๆ ก็ไหนๆ ยก CD มาทั้งลังโลด .. ว่าแล้วก็นั่งเอา grip มา rip + encode ไปหลายสิบแผ่น ไล่จาก A ยัน Z ขาดไปไม่กี่ตัว ก็มี

  • Al Jarreau
  • Boy Thai
  • Casiopea
  • Dave Grusin
  • Dave Koz
  • David Foster
  • Earl Klugh
  • Fourplay
  • George Benson
  • George Winston
  • Larry Carlton
  • Lee Ritenour
  • Mile Davis
  • Shakatak
  • Steve Vai
  • T-SQUARE
  • Thom Rotella Band
  • Tommy Emmanuel
  • Zard

.. พื้นที่ฮาร์ดดิสก์หายไปเป็นกิ๊กๆ .. :P

gaim v.s. sim

เปล่าๆๆ ไม่ใช่จะเปรียบเทียบข้อดีข้อเสีย แต่ที่เขียนถึงเพราะมันมีปัญหาต่ะหาก เรื่องของเรื่องก็คือ sim ส่ง instant message เป็น HTML มาให้ gaim ซึ่งเดิม gaim < 0.76 แสดงผลได้ไม่มีปัญหา เพราะ parse HTML ให้ด้วย แต่มาถึงเวอร์ชัน 0.76 ทีมพัฒนาพิจารณาแล้วว่าโพรโตคอล Oscar ICQ มันไม่ได้ออกแบบให้สนับสนุน HTML มาตั้งแต่แรก ก็เลยตัดส่วน parse HTML ออกไป ทำให้ message ของ sim แสดงเป็น HTML tag อันไม่พึงประสงค์ขึ้นมาด้วย .. วันนี้ผมเลยทำ workaround patch เติมเข้าไปใน gaim 0.76 แล้ว build package สำหรับ TLE 5.5 .. patch นี้คงไม่ submit เข้าต้นน้ำเพราะไม่ใช่วิธีแก้ปัญหาจริงๆ (ซึ่งทาง gaim บอกว่าต้่องให้ sim เป็นคนแก้ .. ไม่รู้ทีมพัฒนาของ sim จะว่ายังไง :P)

kitty.in.th ขึ้นปีที่สามแล้ว

ที่รู้ก็เพราะ …. มีใบทวงค่าโดเมนเนมมาน่ะสิ (T_T)

ปีละ 800 + VAT 7%

.. ไม่มาก ไม่น้อย .. ใครจะบริจาคเพื่อช่วยเหลือไซต์กิ๊กก๊อกแห่งนี้ ติดต่อ kitty (a) kitty · in · th ได้ตลอดเวลาครับ :P