1 คะแนน โดย GN⁺ 2 시간 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Tailscale สำหรับ Kindle ที่เจลเบรกแล้วเพิ่ม Tailscale SSH พื้นฐาน, พร็อกซีรายแอป และโหมด TUN สำหรับอุปกรณ์บางรุ่น
  • บน Kindle ทั่วไป KOReader ไม่สามารถเชื่อมต่อโดยตรงไปยังที่อยู่ tailnet เช่น 100.x.y.z ได้ เนื่องจากข้อจำกัดของ โหมด userspace
  • โหมดพร็อกซีใหม่ให้ tailscaled รับคำขอ SOCKS5·HTTP CONNECT บนพอร์ตภายในเครื่อง แล้วส่งต่อไปยังโหนด tailnet อื่น เช่น Calibre, Wallabag
  • ปลั๊กอิน KOReader แยกต่างหากจะสร้างอินเทอร์เฟซพร็อกซีที่จำเป็นสำหรับการเข้าถึงเซิร์ฟเวอร์คอนเทนต์โดยอัตโนมัติ ไม่เฉพาะบน Kindle แต่รวมถึง Kobo และ PocketBook ด้วย
  • เนื่องจากเป็นโค้ดชุมชนสำหรับสภาพแวดล้อมเจลเบรกที่ไม่เป็นทางการ จึงมี ความแตกต่างด้านความเข้ากันได้ตามอุปกรณ์ และต้องติดตั้งกับตั้งค่าด้วยตนเอง

วิธีเชื่อมต่อใหม่ของ Tailscale บน KUAL

  • ไคลเอนต์เดิมก็สามารถลงทะเบียน Kindle เข้า tailnet เพื่อเข้าถึงผ่าน Tailscale IP หรือเชื่อมต่อด้วย SSH ได้ แต่ไม่สามารถ route ทราฟฟิกทั้งหมดของอุปกรณ์ผ่าน tailnet ได้
  • บน Kindle ที่เจลเบรกแล้ว โดยทั่วไปจะใช้ userspace networking ทำให้ไม่สามารถใช้ โหมด TUN ซึ่งเป็นชั้น routing เครือข่ายของตัวอุปกรณ์เองได้
    • แม้ KOReader จะร้องขอการเชื่อมต่อไปยัง 100.x.y.z แต่ Kindle OS ไม่มีเส้นทางไปยัง Tailscale IP นั้น การเชื่อมต่อจึงหลุด
  • อัปเดตแอป KUAL ของ greywolf1499 เพิ่มหลายโหมดเพื่อหลีกเลี่ยงข้อจำกัดนี้
    • เริ่ม Tailscale ในโหมดพร็อกซี แล้วตั้งค่าที่อยู่พร็อกซีของ KOReader เป็นต้น เป็น 127.0.0.1:1055
    • tailscaled ที่รออยู่บนพอร์ต 1055 จะรับคำขอแล้วส่งต่อไปยังอุปกรณ์ tailnet เครื่องอื่น
    • รองรับทั้ง SOCKS5 และ HTTP CONNECT จึงเลือกวิธีที่เหมาะกับแอปได้
  • Tailscale SSH ถูกเปิดใช้เป็นค่าเริ่มต้น จึงไม่จำเป็นต้องเปิด USBnetworking SSH แยกต่างหากที่ใช้ชื่อผู้ใช้และรหัสผ่านเริ่มต้นซึ่งเดาได้ชัดเจน
  • Kindle บางรุ่นสามารถใช้ โหมด TUN เต็มรูปแบบ เพื่อใช้งาน Tailscale networking ในระดับอุปกรณ์ได้
  • เมื่อใช้พร็อกซี สามารถทำงานต่อไปนี้ได้
    • เชื่อมต่อกับเซิร์ฟเวอร์ Calibre หรือ Wallabag
    • เข้าถึง Audiobookshelf จาก KOReader
    • ซิงค์ความคืบหน้าการอ่านระหว่างอุปกรณ์ด้วย Readest
    • เชื่อมต่อ RSS reader ของ KOReader กับ เซิร์ฟเวอร์ฟีดที่โฮสต์เอง
    • เข้าถึงแดชบอร์ดและเว็บเพจแบบเรียบง่ายจากเบราว์เซอร์ Kindle
    • SSH เข้าอุปกรณ์ใน tailnet ด้วยคีย์บอร์ด Bluetooth และ kterm

ปลั๊กอินเฉพาะสำหรับ KOReader

  • ปลั๊กอิน Tailscale KOReader เป็นทางเลือกสำหรับผู้ใช้ที่ไม่ต้องการฟีเจอร์ Tailscale นอก KOReader
    • ต่างจากแอป KUAL ตรงที่ไม่ได้ทำให้อุปกรณ์เองสามารถถูกเข้าถึงจาก tailnet ได้
    • แต่จะสร้าง อินเทอร์เฟซพร็อกซี ที่จำเป็นให้ KOReader เชื่อมต่อกับเซิร์ฟเวอร์คอนเทนต์โดยอัตโนมัติ
    • ทดสอบแล้วบน Kindle PW5·PW6, Kobo และ PocketBook
  • Kindle รุ่นปกติรุ่นที่ 11 ขณะนี้มี ปัญหาความเข้ากันได้ จึงยังไม่ได้ยืนยันว่าทำงานได้ตามปกติ
  • การติดตั้งและตั้งค่าดำเนินการตามลำดับดังนี้
    • คัดลอกปลั๊กอินไปยังไดเรกทอรีปลั๊กอินของ KOReader
    • เรียกใช้ Install/Update Tailscale จากเมนู KOReader
    • คัดลอก คีย์ยืนยันตัวตนของ Tailscale ไปยังไดเรกทอรีที่กำหนด แล้วเปิดใช้ Tailscale จากเมนู
    • ตั้งค่าพร็อกซีของ KOReader เป็น 127.0.0.1:1055 สำหรับ SOCKS5 หรือ 127.0.0.1:1056 สำหรับ HTTP CONNECT
    • ใส่ Tailscale IP ของเซิร์ฟเวอร์ที่จะเชื่อมต่อในปลั๊กอินอื่น
  • ปลั๊กอินนี้ยังสามารถใช้ร่วมกับ ปลั๊กอิน SyncThing สำหรับ KOReader ได้

1 ความคิดเห็น

 
GN⁺ 2 시간 전
ความคิดเห็นจาก Hacker News
  • KOReader เป็นอินเทอร์เฟซโอเพนซอร์สที่ยอดเยี่ยมซึ่งติดตั้งได้บนเครื่องอ่านอีบุ๊กส่วนใหญ่ ตอนแรกกังวลว่าแบตเตอรี่ Kobo จะหมดเร็ว แต่ก็ไม่มีปัญหาอะไร และปรับแต่งได้ไม่รู้จบตามต้องการ จนรู้สึกเหมือนมาถึงจุดสูงสุดของความสะดวกในการอ่านแล้ว
    ถ้าใช้เครื่องอ่านอีบุ๊กอยู่ ขอแนะนำอย่างยิ่ง และขอบคุณคนที่พัฒนาและดูแลโดยไม่ได้รับค่าตอบแทน

    • อาจดีสำหรับคนที่อยากปรับทุกอย่างอย่างละเอียด แต่สำหรับผม โครงสร้างการตั้งค่ายากเกินไป ไม่รู้ว่าการตั้งค่าฟอนต์ ระยะขอบ การตัดคำด้วยยัติภังค์ อยู่ตรงไหนระหว่างไอคอนเฟือง เอกสาร ประแจ หรือการตั้งค่าหนังสือแบบกดค้าง แล้วต้องไปต่อที่ typography, หน้าจอ, สไตล์, ข้อความ หรืออื่น ๆ อีกที
      ผมลองใช้ระหว่างเที่ยวบินไกลเพื่อแก้ปัญหาการแสดงผลของหนังสือจาก Project Gutenberg แต่แค่หาเมนูปิดการตัดคำด้วยยัติภังค์ก็ใช้ไปราว 10 นาทีแล้ว และแม้เข้าเมนูที่ถูกก็ยังมีตัวเลือกเป็นสิบ ๆ รายการกระจายอยู่ 1–3 หน้า ในขณะที่ตัวอ่านพื้นฐานของ Kobo รวมการตั้งค่าที่ต้องใช้ไว้ในตำแหน่งแรกที่คาดเดาได้
      เป็นรสนิยมส่วนตัว แต่ผมชอบรูปแบบไลบรารีแบบหน้าหลักของ Kobo หรือ Kindle มากกว่า หน้าจอ file explorer
    • การใช้ KOReader ร่วมกับ BookOrbit เป็นชุดที่ยอดเยี่ยม และจะใช้เครื่องมือที่ชอบอย่าง Calibre ร่วมด้วยก็ได้ การตั้งค่ายุ่งยาก แต่พอปรับเข้าที่แล้วจะได้สภาพแวดล้อมการอ่านที่ดีที่สุด
      หน้าหลักใช้ BookShelf, การตั้งค่าส่วนหัวและท้ายหน้าใช้ BookEnds และยังใช้ KOAssistant ที่ส่งข้อความที่เลือกไปยังโมเดลภาษาขนาดใหญ่เพื่อให้อธิบาย แปล หรือทำคำสั่งที่กำหนดเองอยู่ด้วย เวลาเลือกสำนวนเก่า ๆ หรือศัพท์เดินเรือที่ไม่คุ้นในชุด Horatio Hornblower แล้วกด Explain ก็ได้คำตอบบน Kindle ภายในไม่กี่วินาที ใช้เหมือนพจนานุกรมได้
      ผมใช้ BookOrbit จัดการความคืบหน้าการอ่าน หมายเหตุ และอีบุ๊ก และใช้ Claude ตั้งค่าหน้าจอ e-ink ที่ใช้ ESP32 ให้สลับแสดงข้อความที่ไฮไลต์ใน KOReader นี่คือจุดสูงสุดของ สภาพแวดล้อมการอ่านแบบกำหนดเองที่โฮสต์เอง และขอบคุณเพื่อนร่วมงานที่ชี้ทางนี้ให้
    • ที่ไม่ได้รับเงินคือ เฉพาะเมื่อเราเลือกที่จะไม่สนับสนุนเท่านั้น
      https://liberapay.com/KOReader
    • ซอฟต์แวร์พื้นฐานไม่ได้มีปัญหาอะไรเป็นพิเศษ เลยยังไม่รู้สึกว่าต้องติดตั้ง KOReader แต่สงสัยว่าฟีเจอร์ไหนที่ดีขนาดนั้น ฟีเจอร์ที่เคยคิดว่าน่าจะมีก็ประมาณ ซิงก์ความคืบหน้าการอ่านกับ TheStoryGraph
    • ผมก็พอใจคล้าย ๆ กันบน Kobo เคยเสียดายหน้าหลักแบบ Kobo ที่แสดงหนังสือได้ทั้งหมดแม้อยู่ในโฟลเดอร์ซ้อนลึก ๆ แต่มีปลั๊กอินสำหรับเรื่องนี้: https://github.com/AndyHazz/bookshelf.koplugin
      ตอนนี้ที่เหลือคือฟีเจอร์อย่าง สไตล์ชีตที่เว้นระยะขอบเนื้อหา เพื่อให้อุปกรณ์เปลี่ยนหน้าภายนอกสำหรับอ่านแบบไม่ต้องใช้มือไม่บังตัวอักษรตรงขอบขวา ถ้ามีใครรู้วิธีช่วยบอกด้วย
  • สัปดาห์นี้ผม เจลเบรก Kindle Paperwhite รุ่นที่ 7 แล้ว สิ่งที่ไม่พอใจที่สุดคือไม่มีดาร์กโหมด แต่กลายเป็นว่าไม่ใช่ว่าทำไม่ได้ แค่ Amazon เลือกไม่ให้มาเท่านั้น KOReader รองรับดาร์กโหมดได้ไม่มีปัญหา และเร็วกว่า ตอบสนองทันใจกว่าซอฟต์แวร์พื้นฐานของ Kindle มาก
    ลูกชายกับภรรยาผมใช้ Paperwhite รุ่นที่ 10 ทั้งคู่ แต่แม้เป็นเครื่องรุ่นเดียวกัน เครื่องของภรรยาเท่านั้นที่มีดาร์กโหมดเพราะความต่างของซอฟต์แวร์ตามช่วงเวลาที่ซื้อ
    อีกอย่าง KOReader จัดการ DRM ผ่านปลั๊กอินได้ ทำให้ในที่สุดผมก็ยืมอีบุ๊กจากห้องสมุดได้ อุปกรณ์ อายุ 10 ปี ก็ยังทำงานได้ดีมาก แค่มีซอฟต์แวร์ที่เหมาะสม โดยไม่ต้องซื้อเครื่องใหม่

    • สงสัยว่าอัปเดตเป็นเฟิร์มแวร์ล่าสุดไม่ได้หรือ
      https://www.amazon.com/gp/help/customer/display.html?nodeId=...
    • สงสัยว่ารองรับ DRM แบบไหน ถ้าซื้อและอ่านหนังสือ Amazon ได้ ก็อยากรู้ด้วยว่าปลั๊กอิน DRM นั้น Amazon เป็นผู้ให้มาหรือเปล่า
  • ถึงจุดนี้ก็เกินเกณฑ์แล้ว ถึงเวลา เจลเบรก Kindle แล้วล่ะ วันที่ไม่ได้ทำ vibe coding หรือทำน้อย ผมรู้สึกเหมือนขาดโดพามีนจนใช้เวลากับการดูโพสต์ไร้สาระบน X หรือหาอะไรสักอย่างมากระตุ้นประสาทมากเกินไป
    เอาเวลานั้นไปอ่าน รายการ RSS ที่ค้างไว้คงดีกว่า

  • มีอย่างใดอย่างหนึ่งใน KOReader, SSH, Tailscale ที่ทำให้ อายุแบตเตอรี่ของ Kindle Oasis พังเละเทะ และทำให้รีบูตกับแครชบ่อย ๆ เรื่องนี้เกิดกับการใช้งานเวอร์ชันเก่า ตอนนี้อาจดีขึ้นแล้วก็ได้

    • ตัวที่น่าสงสัยที่สุดคือ Tailscale บน iOS ก็ใช้แบตเตอรี่ค่อนข้างมาก และบน Android ก็เหมือนกัน
  • แม้เฟิร์มแวร์เก่าของ Kindle จะไม่มี kernel extension ที่ Tailscale ต้องใช้เพื่อสร้างอินเทอร์เฟซเครือข่ายแบบ TUN แต่ก็ทำให้ทำงานได้ระดับหนึ่งในโหมด userspace networking ด้วย -tun -userspace-networking
    จากที่การตั้งค่า Calibre ของ KOReader ชี้ไปที่ localhost:8081 ดูเหมือนจะเคยใช้พร็อกซีด้วย ตั้งค่าไว้นานแล้ว แต่ทำได้จริง

  • พูดถึง RSS แล้ว อยากได้คำแนะนำ ฟีดที่เหมาะกับเครื่องอ่านอีบุ๊ก นึกถึงคอนเทนต์แนว r/longreads

  • ตอนรัน tailscaled ในสคริปต์นี้ ควรเพิ่ม --no-logs-no-support ด้วย แม้ชื่อจะฟังดูชวนตกใจอยู่บ้าง: https://github.com/victoria-riley-barnett/koreader-tailscale...
    ไม่อย่างนั้น Tailscale จะเก็บ เมทาดาทาเชิงพฤติกรรม เช่น โฮสต์และพอร์ตที่เชื่อมต่อทุกครั้งที่ใช้ Kindle รวมถึงเวลาเริ่มและสิ้นสุดการเชื่อมต่อ: https://tailscale.com/docs/features/logging#opt-out-of-clien...
    เนื้อหาการเชื่อมต่อถูกเข้ารหัสก็จริง แต่แค่เมทาดาทาก็บอกอะไรเกี่ยวกับตัวบุคคลได้มากทีเดียว: https://kieranhealy.org/blog/archives/2013/06/09/using-metad...

    • ถ้ากังวลเรื่องการบันทึกเมทาดาทา ก็สามารถ โฮสต์เซิร์ฟเวอร์ควบคุมเองด้วย Headscale ได้ แทนที่จะพึ่งสัญญาว่าจะไม่เก็บข้อมูล ก็ถอด Tailscale ออกจากเส้นทางไปเลย
  • ผมใช้ Kindle เครื่องแรกมาเกือบ 10 ปีจนแบตเตอรี่บวม เลยซื้อ Kindle มือสองมาและก็พอใจอยู่ ใช้งานดี และพอแชร์หนังสือจากแอปมือถือก็ซิงก์เข้า Kindle ได้ เลยยังไม่อยากเจลเบรก
    แต่ผมชอบ Tailscale ดังนั้นอาจต้องซื้อ เครื่องอ่านอีบุ๊กโอเพนซอร์สเต็มรูปแบบ ที่ติดตั้งมันได้แทน

  • น่าจะมีประโยชน์ถ้า เปรียบเทียบกับเครื่องมือ formal methods ที่มีอยู่ เพื่อให้นักพัฒนาระบุตำแหน่งของ Imiron ได้เร็วขึ้น

  • ถ้ามีวิธี รัน WireGuard บน Kindle หรือ Kobo ได้ก็คงดี