1 คะแนน โดย GN⁺ 2025-05-05 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Gorgeous-GRUB เป็นคอลเลกชันที่รวบรวม ธีม GRUB ที่ชุมชนสร้างขึ้น ซึ่งน่าสนใจจากหลายเว็บไซต์ที่กระจัดกระจายอยู่ มาไว้ในที่เดียว
  • Pling ถูกแนะนำว่าเป็นแหล่งที่โฮสต์ธีม GRUB มากที่สุดในปัจจุบัน แต่มีปัญหาว่าธีมจำนวนมากเป็น ผลงานที่ใช้ความพยายามต่ำ ทำให้หาธีมดีๆ ได้ยาก
  • README แสดง ลิงก์ธีมและภาพพรีวิว หลากหลาย เช่น Minegrub, SteamOS, Persona 5 Royal, Catppuccin, Cyberpunk 2077, Dark Matter, Elegant ในรูปแบบตาราง
  • ยังแนะนำ เครื่องมือและคู่มือเสริม เช่น เอกสารการติดตั้ง, เอกสารการมีส่วนร่วม, GRUB-Tweaks, GRUB2 Theme Preview, Background Cycler และ Theme Installer ที่ชุมชนสร้างขึ้น
  • ในสภาพแวดล้อม Secure Boot ฟอนต์แบบกำหนดเองอาจไม่ถูกนำไปใช้หรือไม่แสดงผล และมีลิงก์ไปยัง โพสต์ในฟอรัม Arch Linux ที่อธิบายวิธีเซ็นไฟล์ฟอนต์เป็นข้อมูลอ้างอิง

วัตถุประสงค์ของโปรเจกต์

  • Gorgeous-GRUB เป็น repository ที่รวบรวมธีมที่ชุมชนสร้างขึ้นสำหรับตกแต่งหน้าจอ GRUB bootloader ที่ปรากฏก่อนบูต
  • ธีม GRUB กระจัดกระจายอยู่ในหลายเว็บไซต์ และการหาธีมดีๆ ทำได้ยาก จึงจัดทำให้สามารถดูได้จากหน้าเดียว
  • Pling ถูกแนะนำว่าเป็นแหล่งที่โฮสต์ธีม GRUB มากที่สุดในปัจจุบัน แต่ธีมจำนวนมากอาจเรียบง่ายหรือเป็นผลงานที่ใช้ความพยายามต่ำ ทำให้การค้นหาค่อนข้างยุ่งยาก
  • repository นี้ถูกสร้างขึ้นเพื่อชี้ให้เห็นธีมดีๆ ที่พบได้บนอินเทอร์เน็ตเมื่อเวลาผ่านไป

เครื่องมือที่มีประโยชน์และลิงก์อ้างอิง

  • GitZip: สามารถดาวน์โหลด โฟลเดอร์และไฟล์แต่ละรายการ ได้โดยไม่ต้องดาวน์โหลด GitHub repository ทั้งหมด
    • มีการขอโทเคน แต่แนะนำว่าสามารถใช้งานได้ดีแม้ไม่มีโทเคน
  • GRUB-Tweaks: มี คู่มือการปรับแต่งและการตั้งค่าเพิ่มเติม หลายอย่างสำหรับปรับแต่งหรือกู้คืนการติดตั้ง GRUB
  • Theme Tutorial / Theme References: ข้อมูลเกี่ยวกับการสร้างธีม GRUB2 ซึ่งซับซ้อน แต่ถูกแนะนำว่าเป็นแหล่งข้อมูลที่ดีที่สุดเท่าที่พบจนถึงตอนนี้
    • การนำธีมเดิมมาปรับแก้เองอาจง่ายกว่าการสร้างใหม่ตั้งแต่ต้น
  • GRUB2 Theme Preview: ซอฟต์แวร์ที่สามารถ พรีวิวธีม GRUB ได้โดยไม่ต้องรีบูตทั้งระบบ
    • เนื่องจากเรียกใช้ VM ทั้งเครื่อง จึงมี dependency จำนวนมาก
    • คำสั่งง่ายๆ สำหรับติดตั้ง dependency ที่จำเป็นอยู่ใน repository GRUB-Tweaks
  • Background Cycler: สคริปต์ที่เปลี่ยนพื้นหลังของธีมทุกครั้งที่รีบูตระบบ
  • Theme Installer (Community Made): สคริปต์ที่ FLEXIY0 สร้างขึ้น ซึ่งสามารถดาวน์โหลดและติดตั้งธีมจำนวนมากได้โดยอัตโนมัติ
    • อาจเกิดข้อผิดพลาดได้ใน edge case บางกรณี

การติดตั้งและการมีส่วนร่วม

  • Installing a theme: ลิงก์ไปยังเอกสารการติดตั้งธีม
  • How to contribute: ลิงก์ไปยังวิธีมีส่วนร่วมกับคอลเลกชันธีม

วิธีสำรวจธีม

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

ตัวอย่างธีมที่รวมอยู่

ข้อควรระวังเกี่ยวกับ Secure Boot

  • ในระบบที่เปิดใช้ Secure Boot ฟอนต์แบบกำหนดเองอาจไม่ถูกนำไปใช้ หรืออาจไม่แสดงผลเลย
  • โพสต์ในฟอรัม Arch Linux อธิบายวิธีเซ็นไฟล์ฟอนต์เพื่อให้กลับมาแสดงผลได้

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

 
GN⁺ 2025-05-05
ความคิดเห็นจาก Hacker News
  • ผมชอบการปรับแต่งมาก แต่โดยส่วนตัวแล้ว ยิ่งไม่ต้องเห็นหรือคิดถึง GRUB เลยก็ยิ่งดี

    • ใช่ ปกติผมเห็นมันแค่ไม่กี่วินาทีต่อปี ถ้าต้องเห็นบ่อยพอจนต้องใส่ใจเรื่องธีม ก็คงดีกว่าถ้าเอาเวลาไปแก้สาเหตุว่าทำไมถึงต้องเห็นมันบ่อยขนาดนั้น
  • "Grand Theft Gentoo": https://raw.githubusercontent.com/Jacksaur/Gorgeous-GRUB/ref...

    • โอ้โห อันนี้เป็นเพชรเม็ดงามจริง ๆ Linus หน้าบึ้งที่มุมขวาบน, Ballmer ด้านล่างที่ดูทั้งลำพองใจและสับสน แถมยังมี mugshot ของ Gates อีก สมบูรณ์แบบ
  • สิ่งที่อยากได้จริง ๆ คือการเลียนแบบ หน้าจอเริ่มต้นของ SGI แบบเก่า รวมถึงเสียงบูตและไมโครดิสโทรสำหรับตั้งค่าระบบปฏิบัติการด้วย
    สมัยนี้มี filesystem แบบ snapshot แล้ว น่าจะไม่ยากขนาดนั้น ชีวิตนี้เคยต้อง chroot เพื่อซ่อมระบบอยู่ไม่กี่ครั้ง แต่ไม่น่าเชื่อว่าการทำให้มันเป็นอัตโนมัติจะยากขนาดนี้

    • ชิ้นส่วนพวกนี้มีอยู่แล้วในรูปแบบใดรูปแบบหนึ่ง เลยอยากให้มีความพยายามขัดเกลาให้ทั้งภาพรวมดีขึ้น ปัญหาคงอยู่ที่ทุกคนใช้วิธีต่างกันไปนิดหน่อย
      NixOS บูตกลับไปยัง generation ก่อนหน้าได้ แต่เป็นแนวทางที่พลิกทั้ง filesystem ส่วน OpenSUSE รองรับ snapshot แต่ใช้ BTRFS เป็นฐาน ทำให้ดิสโทรอื่นใช้ implementation เดียวกันได้ยาก และ ZFS ก็ยอดเยี่ยม แต่บน Linux เรื่องไลเซนส์มักก่อแรงเสียดทานเสมอ Ubuntu ทำให้การบูตลื่นไหลมากด้วย Plymouth แต่ก็มีความเป็น Ubuntu มาก
      อย่างไรก็ดี ถ้าอยู่ในสภาพแวดล้อมที่ใช้ ZFS บน Linux ได้ ก็อยากแนะนำ zfsbootmenu

      ZFSBootMenu leverages the features of modern OpenZFS to allow users to choose among multiple "boot environments" (which may represent different versions of a Linux distribution, earlier snapshots of a common root, or entirely different distributions), manipulate snapshots in a pre-boot environment and, for the adventurous user, even bootstrap a system installation via zfs recv.

    • ใน NixOS ทุกครั้งที่ “deploy” ไม่ว่าจะไปยังโฮสต์อื่นหรือเครื่อง local จะมีรายการเมนู GRUB ใหม่เพิ่มขึ้นหนึ่งรายการ ทั้งสองกรณีจะได้รายการ GRUB ใหม่
      แน่นอนว่ายังยิงเท้าตัวเองได้ด้วยการทำให้การเข้าถึงระยะไกลใช้ไม่ได้ เช่น ทำค่า SSH พัง สำหรับเรื่องนี้ก็มีทางออกชื่อ deploy-rs พร้อมฟีเจอร์ magic rollback ที่จะย้อนระบบกลับหากเชื่อมต่อกลับจากคอมพิวเตอร์ที่เริ่มการ deploy ไม่ได้ https://github.com/serokell/deploy-rs?tab=readme-ov-file#mag...
      ผมใช้ฟีเจอร์เหล่านี้มาหลายปีแล้ว และแนะนำได้อย่างมั่นใจ
      แม้จะไม่เกี่ยวกับคำถามเดิมตรง ๆ แต่ตอนนี้ให้ CI รันการ build ระบบ และทำให้การทดสอบด้วย Playwright ครอบคลุมมากขึ้นเรื่อย ๆ ทำให้ค่อนข้างมั่นใจว่าจะพบปัญหาได้เร็ว หรือย้อนกลับได้
    • บน Arch น่าจะติดตั้ง Arch Linux “สำรอง” ชุดที่สองไว้ในพาร์ทิชันกู้คืนที่ firmware ของเมนบอร์ดบูตได้โดยตรง แล้วใช้ arch-chroot กู้ระบบปฏิบัติการหลักได้ ดิสโทรอื่นก็น่าจะมีวิธีคล้ายกัน
    • macOS มีทั้งสองฟีเจอร์นั้นอยู่คร่าว ๆ
      เสียงเริ่มต้นของเครื่อง SGI ต่างกันไปตามรุ่น หมายถึง Indy กับ Onyx มีเสียงไม่เหมือนกัน พีซีเครื่องแรกของผมที่เป็น 80286 ก็มีเสียงตอนเปิดเครื่องที่เป็นเอกลักษณ์ และผมลืมไม่ลง
      ไมโครดิสโทรก็คือระบบปฏิบัติการกู้คืน ระบบปฏิบัติการเดสก์ท็อปหลักทั้ง 3 ตัวล้วนมีฟีเจอร์แบบนั้น หรือมีคีย์ลัดสำหรับเปิดใช้ เท่าที่รู้ Android มีพาร์ทิชันกู้คืนสองชุด ซึ่งหัวใจคือความซ้ำซ้อนเพื่อความทนทาน
      ถ้าชอบพลังของ snapshot, filesystem แบบ copy-on-write (CoW) อย่าง ZFS สามารถแสดงรายการระหว่างบูตได้ ระบบปฏิบัติการอย่าง NixOS ไม่ต้องใช้ filesystem แบบนั้นด้วยซ้ำ บน Ext4FS เมนูบูตที่มี snapshot, ฟีเจอร์ rollback และอื่น ๆ ก็ทำงานได้ดี
    • สำหรับเป้าหมายนี้ ผมคิดว่า bootloader ที่ใช้ kexec น่าจะดีที่สุด เพราะมันจะกลายเป็นสภาพแวดล้อม Linux “จริง” ที่ใส่เครื่องมือที่ต้องการได้ ไม่ใช่สภาพแวดล้อมพิเศษ
      ตัวอย่าง: https://github.com/kexecboot/kexecboot
  • เรื่องแบบนี้ทำให้ผมรัก Linux ที่นี่มีความคิดสร้างสรรค์น่าทึ่งมาก ถึงขั้นทำให้อยาก dual boot กับอะไรสักอย่าง เพื่อจะได้มีข้ออ้างให้เห็น GRUB

    • อันนี้ รวมถึงหน้าต่างเด้งดึ๋ง ๆ เอฟเฟกต์ฝน และอะไรทำนองนั้น ตอนนี้คงไม่ใช้ของพวกนั้นแล้ว แต่ช่วงที่การปรับแต่ง Windows ยุ่งยากขึ้นทุกเวอร์ชัน ผมหลงใหลมันมากจริง ๆ
  • เท่ก็จริง แต่พูดตรง ๆ ผมอยากให้ GRUB โผล่มาเฉพาะตอนกดปุ่มค้างระหว่างบูตเท่านั้น การรอ 5 วินาทีให้มันหายไปแล้วค่อยบูตเข้าระบบปฏิบัติการเริ่มต้นนี่ไม่จำเป็นเลยจริง ๆ

    • น่าจะตั้ง GRUB_TIMEOUT_STYLE=hidden กับ GRUB_TIMEOUT=0 ได้ แบบนั้นเมนู GRUB จะปรากฏเฉพาะตอนกด Shift ค้างไว้ ไม่อย่างนั้นก็จะบูตเข้ารายการเริ่มต้นทันที
    • ทำไมถึงอยากได้แบบนั้นจริง ๆ ล่ะ สำหรับผมมันเป็นเรื่องเล็กน้อยมาก จนรู้สึกแปลกพอสมควรที่อยากซ่อนอะไรแบบนี้
    • ต้องมีตัวเลือกแบบนั้นแน่นอน ถ้ากด Shift ค้างไว้ เมนูก็จะปรากฏ
    • แล้วถ้าจำไม่ได้ว่าต้องกดปุ่มไหนล่ะ?
  • ทุกคนที่บ่นเรื่อง GRUB ลืม lilo กันไปหมดแล้ว

    • เมื่อก่อนเคยคิดว่า “อะไรนะ? GRUB เป็นผู้สืบทอดของ LiLo และดีกว่ามากไม่ใช่เหรอ!” ไม่รู้ว่าเวลามันผ่านไปยังไง
      ตอนนั้นมีธีมเจ๋ง ๆ ที่ทำเองจาก Ghost in the Shell และยังจำได้ว่าเคยแปลง jpeg ที่หาเจอออนไลน์ให้เป็นฟอร์แมตรูปภาพที่เข้าใจยากมาก ๆ ใช้เวลาไปเยอะจริง ๆ กับการแต่งสภาพแวดล้อม Linux คอมพิวเตอร์เหมือนสัตว์เลี้ยงที่ขัดเกลามาอย่างดีจริง ๆ มีทั้งเดสก์ท็อปทรงลูกบาศก์ที่มีปลาอยู่ข้างใน กับเอฟเฟกต์สะท้อนแสงอะไรพวกนั้น
    • อ๊ะ โดนส่งกลับไปปี 2003 ซะแล้ว
    • ขอรินสักแก้วให้ Linux loader
  • ภาพพื้นหลังพวกนั้นปรับขนาดอย่างไรบนมอนิเตอร์และความละเอียดที่ต่างกัน?
    ว่าแต่ GRUB รู้ได้อย่างไรว่าควรวาดอินเทอร์เฟซด้วยความละเอียดเท่าไร?

    • ดูจากบาง repo แล้ว คำตอบดูจะใกล้เคียงกับ “ไม่ได้ทำ” ต้องเลือกรูปที่มีความละเอียดถูกต้องเองด้วยมือ
    • สามารถตั้งค่าความละเอียดแบบชัดเจนได้ และถ้าไม่ตั้ง ก็จะเรนเดอร์ด้วยความละเอียดที่ UEFI ใช้ตอนเริ่มบูต
  • ในที่สุดก็น่าจะทำให้คอมพิวเตอร์ของฉันดูเหมือนคอมพิวเตอร์ในหนัง Hackers ได้แล้ว เท่ดี

    • ความคิดแรกทันทีที่เห็นธีมคือ “ว้าว เหมือนในหนังเป๊ะเลย”
      ช่วงนี้ฟังซาวด์แทร็กตอนทำงานอยู่ด้วย อาจจะได้กลับไปดูซ้ำเร็ว ๆ นี้
  • GRUB เหมือนก้อนอะไรสักอย่างในชักโครกที่กดไม่ลง มันไม่จำเป็นเลยมาตั้งหลายปีแล้ว ซับซ้อนเกินไป เชลล์ที่ใช้สำนวนแบบปี 1995 ก็แทบใช้ไม่ได้ และยังมีทางเลือกที่เบากว่าและมีประโยชน์กว่าเยอะอย่าง extlinux
    สมัยนี้ยังบูตเคอร์เนลโดยตรงด้วย EFI stub ได้แล้วด้วยซ้ำ แต่ก็ยังถูกติดตั้งต่อไปพร้อมพยายามหาเหตุผลรองรับการมีอยู่ของตัวเอง

    • เคยคิดว่าพอ UEFI มาแล้ว GRUB จะหายไปในที่สุด
      ที่แย่กว่านั้นคือ ในระบบดูอัลบูต ถ้าแต่ละระบบปฏิบัติการติดตั้ง GRUB ของตัวเอง ก็อาจเกิดสถานการณ์แปลก ๆ ที่ GRUB chainload ไปยัง GRUB อีกตัว แล้วค่อยบูตระบบปฏิบัติการ
      รู้สึกว่าแค่กดปุ่มอย่าง F12 แล้วดูเมนูตัวเลือกบูตทั้งหมดที่ UEFI ให้มาก็พอไม่ใช่หรือไง ก่อนที่ตัวติดตั้งจะเข้ามาทำพัง ทุกอย่างก็อยู่ตรงนั้นอย่างเป็นระเบียบอยู่แล้ว Windows ดูเหมือนจะชอบเข้ามาแทรก ทำของเดิมพัง แล้วดันตัวเองขึ้นไปอยู่บนสุดเสมอ
    • shim + grub ก็ไม่ค่อยดี แต่โดยทั่วไปแล้ว EFI ล้วน แย่กว่านั้นมาก เวนเดอร์ที่ทำแพลตฟอร์ม EFI สำหรับผู้บริโภคมักไม่ค่อยปกติกันเท่าไร
      ต่อให้เมนบอร์ดมีพอร์ตอนุกรม ก็ไม่ให้ UEFI console redirection และไม่เปิดเผยการตั้งค่า secure boot หรือการจัดการตัวเลือกบูตให้ผู้ใช้เห็น ดังนั้นบูตโหลดเดอร์ที่อิงกับ EFI ล้วนอย่าง systemd-boot หรือ rEFInd จึงดูเป็นตัวเลือกที่น่ารำคาญน้อยที่สุดแล้ว
    • ไม่เข้าใจว่าทำไมถึงเกลียดกันขนาดนี้ สำหรับผมมันก็ทำงานได้ดีมาตลอด ใช้ดูอัลบูตรวมถึงการเข้ารหัสด้วย มันเป็นส่วนเล็กมากในภาพรวม
      ลองเทียบกับการบูตบน ARM ดูก็ได้
    • มีแล็ปท็อปเครื่องหนึ่งที่มี Windows, Haiku, Linux อยู่ การตั้งค่า GRUB 2 ที่ทำให้ Haiku เริ่มทำงานได้จริงนั้นแปลกมาก ถ้าจะมาแทน GRUB ควรติดตั้งอะไรดีที่สุดกันแน่?
      หรือมีพีซีอีกเครื่องที่มีแค่ Void Linux โหมด UEFI ใช้งานไม่ได้เลยบูตด้วยโหมด compatibility อยู่ แต่ไม่รู้สาเหตุ เป็นปัญหา secure boot หรือโหมด MBR เทียบกับ GPT กันแน่ แล้วก็ไม่มีพาร์ทิชัน EFI ด้วย ที่นี่อะไรจะมาแทน GRUB ได้บ้าง?
    • สิ่งที่ไม่เข้าใจคือ ทำไมทุกครั้งที่เพิ่มเคอร์เนลหรือระบบปฏิบัติการ ต้อง สร้าง GRUB ใหม่ ด้วย
      บูตโหลดเดอร์ควรฉลาดพอที่จะอ่านไฟล์ซิสเต็มข้างล่างแล้วหาเคอร์เนลเองได้ rEFInd ทำแบบนั้น ถ้าเสียบ USB ที่บูตได้ หรือไปติดตั้ง Windows บน SSD ลูกที่สอง มันก็แสดงขึ้นมาในเมนูเองโดยไม่ต้องสั่งอย่างชัดเจน
      อาจต้องมีข้อจำกัดประมาณว่า “/boot ต้องเป็นหนึ่งในไฟล์ซิสเต็ม n แบบที่รองรับดี” แต่ถ้าเป็นวิธีที่พอดีกับคนส่วนใหญ่ก็น่าจะพอแล้ว ส่วนคนที่รันอะไรอย่างการรวมไดรฟ์ USB floppy 128 ตัวบน RAID6 บน ZFS ค่อยพึ่งของอย่าง GRUB ก็ได้
  • ยังรอบูตโหลดเดอร์ที่แสดงบน มอนิเตอร์ภายนอก ได้ทันทีตั้งแต่แรก เหมือนเดสก์ท็อปกับจอ CRT เมื่อ 20 ปีก่อน
    systemd-boot ที่มากับ Pop!_OS ไม่ทำแบบนั้น ดังนั้นถ้าจะเปลี่ยนตัวเลือกบูต ต้องเอาแล็ปท็อป ThinkPad X1 Extreme ออกจากแท่นแล้วเปิดฝา อยากรู้ประสบการณ์ของคนอื่นว่า GRUB เป็นอย่างไรในจุดนี้

    • ลองตรวจการตั้งค่า จอแสดงผลหลัก ใน BIOS ดู ถ้าสามารถแสดงหน้าจอ BIOS บนจอภายนอกได้ บูตโหลดเดอร์ที่ตามมาก็มีแนวโน้มจะใช้จอนั้นด้วย
      ชุด ThinkPad+Dock ของผมทำงานได้ดี
    • ต้องตรวจในการตั้งค่าเฟิร์มแวร์ของ ThinkPad ว่ามอนิเตอร์ภายนอกหรือ GPU ของด็อกถูกตั้งเป็น จอแสดงผลหลัก ที่ใช้ได้ระหว่างบูตหรือไม่
      แต่ในพีซีบางเครื่อง ถ้าตั้งแบบนั้น ระหว่างบูตจอของแล็ปท็อปเองอาจไม่แสดงอะไรเลย และบางครั้งแม้ใช้แล็ปท็อปเดี่ยว ๆ ก็อาจเป็นแบบนั้นด้วย ถ้า Initial Graphics Device ตั้งเป็น "Auto" แทนที่จะเป็นอุปกรณ์เฉพาะ ก็อาจใช้ได้ แต่ก็อาจไม่ต่างจากตอนนี้
      มอนิเตอร์ภายนอกเองก็อาจมีหลายอินพุตอย่าง VGA, DVI, HDMI และถ้าตั้งให้สแกน "Auto" เพื่อหาอินพุตที่ใช้งานอยู่ บางครั้งเวลาตรวจจับอาจนานกว่าเวลาบูต ถ้าเป็นอย่างนั้น การตั้งอินพุตที่ต้องการให้เป็นอินพุตเดียวหรือค่าเริ่มต้นในตัวเลือกของมอนิเตอร์ อาจทำให้เห็นอะไรบางอย่างในช่วงที่ตอนนี้ดูเหมือนจอดำ
    • นี่เป็นปัญหาฝั่งผู้ใช้อย่างชัดเจน ใช้งานได้ดีบนมอนิเตอร์ที่ต่อผ่านด็อก เมื่อก่อนเคยใช้ Pop!_OS ด้วย และจำได้ชัดว่ามันใช้งานได้
    • ผมคิดว่าอาจขึ้นกับ มอนิเตอร์ ไม่ใช่บูตโหลดเดอร์ มอนิเตอร์บางตัวมีดีเลย์ตอนเปิดนานกว่า
      มอนิเตอร์ 4K ที่ต่อผ่าน DisplayPort ไม่มีปัญหา แต่จอ VGA/DVI เก่า ๆ ที่ใช้สำหรับกู้ระบบในโฮมแล็บ เปิดไม่เร็วพอ