1 điểm bởi GN⁺ 2025-05-05 | 1 bình luận | Chia sẻ qua WhatsApp
  • Gorgeous-GRUB là một bộ sưu tập tập hợp những chủ đề GRUB do cộng đồng tạo ra đáng chú ý vốn đang nằm rải rác trên nhiều trang web
  • Pling được giới thiệu là nơi hiện lưu trữ nhiều chủ đề GRUB nhất, nhưng vấn đề là nhiều chủ đề là sản phẩm đầu tư ít công sức, nên khó tìm được chủ đề tốt
  • README cung cấp nhiều liên kết chủ đề và ảnh xem trước như Minegrub, SteamOS, Persona 5 Royal, Catppuccin, Cyberpunk 2077, Dark Matter, Elegant dưới dạng bảng
  • Tài liệu cài đặt, tài liệu đóng góp, GRUB-Tweaks, GRUB2 Theme Preview, Background Cycler, Theme Installer do cộng đồng tạo cũng như các công cụ và hướng dẫn hỗ trợ cũng được giới thiệu kèm theo
  • Trong môi trường Secure Boot, phông chữ tùy chỉnh có thể không được áp dụng hoặc không hiển thị, và một bài viết trên diễn đàn Arch Linux về cách ký tệp phông chữ được liên kết làm tài liệu tham khảo

Mục đích của dự án

  • Gorgeous-GRUB là kho lưu trữ tập hợp các chủ đề do cộng đồng tạo ra để trang trí màn hình bootloader GRUB xuất hiện trước khi khởi động
  • Các chủ đề GRUB đang phân tán trên nhiều trang web, và việc tìm chủ đề tốt khá khó khăn, nên dự án được tổ chức để có thể xem chúng trên một trang duy nhất
  • Pling được giới thiệu là nơi hiện lưu trữ nhiều chủ đề GRUB nhất, nhưng vì nhiều chủ đề đơn điệu hoặc là sản phẩm đầu tư ít công sức nên việc khám phá có thể khá phiền phức
  • Kho lưu trữ này được tạo ra để dần dần làm nổi bật những chủ đề hay được tìm thấy trên Internet theo thời gian

Công cụ hữu ích và liên kết tham khảo

  • GitZip: có thể tải xuống từng thư mục và tệp riêng lẻ mà không cần tải toàn bộ kho GitHub
    • Dù có yêu cầu token, công cụ này được giới thiệu là vẫn hoạt động tốt ngay cả khi không có token
  • GRUB-Tweaks: cung cấp nhiều tinh chỉnh và hướng dẫn cấu hình bổ sung để tùy biến sâu hơn hoặc khôi phục cài đặt GRUB
  • Theme Tutorial / Theme References: thông tin liên quan đến việc tạo chủ đề GRUB2, được giới thiệu là tài liệu tốt nhất đã tìm thấy cho đến nay dù khá phức tạp
    • Có thể sẽ dễ hơn nếu lấy một chủ đề có sẵn rồi tự chỉnh sửa, thay vì tạo từ đầu
  • GRUB2 Theme Preview: phần mềm cho phép xem trước chủ đề GRUB mà không cần khởi động lại toàn bộ hệ thống
    • Vì chạy cả một VM hoàn chỉnh nên có khá nhiều phụ thuộc
    • Lệnh đơn giản để cài các phụ thuộc cần thiết có trong kho GRUB-Tweaks
  • Background Cycler: script thay đổi nền của chủ đề mỗi khi hệ thống khởi động lại
  • Theme Installer (Community Made): script do FLEXIY0 tạo ra, có thể tự động tải xuống và cài đặt nhiều chủ đề
    • Có thể phát sinh lỗi trong một số trường hợp biên

Cài đặt và đóng góp

Cách duyệt chủ đề

  • Danh sách chủ đề được tổ chức dưới dạng bảng có ảnh xem trước và liên kết
  • Nếu thấy chủ đề mình thích, dự án khuyến khích bạn để lại đánh giá trên Pling hoặc gắn sao cho kho GitHub
    • Trên Pling, rất ít người để lại đánh giá, và điều này được giới thiệu là một trong những lý do khiến việc tìm chủ đề tốt trở nên khó khăn
    • Điều đó cũng giúp tác giả biết rằng mọi người đang yêu thích những gì họ tạo ra

Ví dụ về các chủ đề có trong bộ sưu tập

Lưu ý về Secure Boot

  • Trên các hệ thống đã bật Secure Boot, phông chữ tùy chỉnh có thể không được áp dụng hoặc thậm chí không hiển thị
  • Bài viết trên diễn đàn Arch Linux trình bày cách ký tệp phông chữ để chúng hiển thị trở lại

1 bình luận

 
GN⁺ 2025-05-05
Ý kiến trên Hacker News
  • Tôi rất thích tùy biến, nhưng cá nhân tôi thì càng ít phải nhìn thấy hoặc nghĩ đến GRUB càng tốt

    • Đúng vậy. Thường thì mỗi năm chỉ thấy vài giây. Nếu bạn thấy nó thường xuyên đến mức phải bận tâm về theme, có lẽ tốt hơn là dùng thời gian đó để sửa nguyên nhân vì sao bạn lại thấy nó thường xuyên như vậy
  • "Grand Theft Gentoo": https://raw.githubusercontent.com/Jacksaur/Gorgeous-GRUB/ref...

    • Trời ơi, cái này đúng là một viên ngọc. Linus giận dữ ở góc trên bên phải, Ballmer phía dưới vừa đắc thắng vừa bối rối, rồi cả ảnh chụp tội phạm của Gates nữa — hoàn hảo
  • Thứ tôi thật sự muốn là mô phỏng màn hình khởi động SGI ngày xưa. Bao gồm cả âm thanh khởi động và một bản phân phối siêu nhỏ để cấu hình hệ điều hành
    Ngày nay đã có filesystem snapshot, nên có vẻ việc đó không quá khó. Trong đời tôi đã vài lần phải chroot để sửa hệ thống, và thật khó tin là việc tự động hóa chuyện này lại khó đến vậy

    • Các mảnh ghép kiểu này vốn đã tồn tại dưới dạng nào đó, nên sẽ tốt nếu có thêm công sức để trau chuốt tổng thể. Chỉ có điều vấn đề là dường như mỗi người lại làm hơi khác nhau
      NixOS có thể boot vào thế hệ trước, nhưng đó là cách lật ngược toàn bộ filesystem; OpenSUSE hỗ trợ snapshot nhưng dựa trên BTRFS nên các distro khác khó dùng cùng cách triển khai; ZFS thì tuyệt vời nhưng trên Linux giấy phép luôn gây va chạm. Ubuntu đã làm quá trình boot rất mượt bằng Plymouth, nhưng lại rất kiểu Ubuntu
      Dù sao, nếu bạn ở môi trường có thể dùng ZFS trên Linux thì tôi muốn khuyên dùng 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.

    • Trong NixOS, mỗi lần “deploy”, dù là sang host khác hay local, đều tạo một mục menu GRUB mới. Cả hai đều nhận được mục GRUB mới
      Tất nhiên bạn vẫn có thể tự bắn vào chân mình bằng cách làm hỏng cấu hình SSH khiến không thể truy cập từ xa. Cũng có giải pháp deploy-rs cho việc này, với tính năng magic rollback sẽ hoàn nguyên hệ thống nếu không kết nối lại được từ máy đã khởi chạy deploy https://github.com/serokell/deploy-rs?tab=readme-ov-file#mag...
      Tôi đã dùng các tính năng này vài năm rồi và có thể tự tin giới thiệu
      Không hoàn toàn liên quan đến câu hỏi ban đầu, nhưng tôi đang chạy build hệ thống trong CI và cũng làm các bài test Playwright ngày càng bao quát hơn. Nhờ vậy tôi khá tự tin rằng có thể phát hiện vấn đề sớm hoặc rollback
    • Trên Arch, có vẻ có thể cài một Arch Linux “dự phòng” thứ hai vào phân vùng khôi phục mà firmware bo mạch chủ có thể boot trực tiếp, rồi dùng arch-chroot để khôi phục hệ điều hành chính. Các distro khác chắc cũng có cách tương tự
    • macOS đại khái có cả hai tính năng đó
      Âm khởi động của máy SGI khác nhau tùy mẫu. Ý là Indy và Onyx khác nhau. Chiếc PC đầu tiên của tôi, 80286, cũng có âm thanh mang tính biểu tượng khi bật lên, và tôi không thể quên được
      Bản phân phối siêu nhỏ tương ứng với hệ điều hành khôi phục. Cả 3 hệ điều hành desktop lớn đều có tính năng như vậy, hoặc có tổ hợp phím để bật nó. Theo tôi biết Android có hai phân vùng khôi phục, trong đó tính dự phòng là điểm cốt lõi
      Nếu bạn thích sức mạnh của snapshot, các filesystem copy-on-write (CoW) như ZFS có thể hiển thị danh sách trong lúc boot. Các hệ điều hành như NixOS thậm chí không cần loại filesystem đó. Ngay cả trên Ext4FS, menu boot có snapshot, chức năng rollback, v.v. vẫn hoạt động tốt
    • Với mục đích này, có lẽ bootloader dựa trên kexec là phù hợp nhất. Vì khi đó nó là một môi trường Linux “thật”, nơi bạn có thể đưa vào các công cụ mình muốn, chứ không phải một môi trường đặc biệt
      Ví dụ: https://github.com/kexecboot/kexecboot
  • Những thứ như thế này khiến tôi yêu Linux. Ở đây có rất nhiều sự sáng tạo đáng kinh ngạc. Nó khiến tôi muốn dual boot với thứ gì đó chỉ để có cớ nhìn GRUB

    • Cái này, cửa sổ lắc lư, hiệu ứng mưa và những thứ tương tự. Giờ chắc tôi sẽ không dùng nữa, nhưng vào thời việc tùy biến Windows ngày càng phiền phức qua từng phiên bản, chúng thật sự đã cuốn hút tôi
  • Dù rất đẹp, nhưng nói thật tôi muốn GRUB chỉ hiện ra khi tôi giữ phím trong lúc boot. Việc chờ 5 giây cho nó biến mất rồi mới boot vào hệ điều hành mặc định thật sự là không cần thiết

    • Có lẽ chỉ cần đặt GRUB_TIMEOUT_STYLE=hiddenGRUB_TIMEOUT=0. Khi đó menu GRUB chỉ hiện nếu giữ Shift, còn không thì boot ngay vào mục mặc định
    • Vì sao bạn thật sự muốn vậy? Theo tôi thì chuyện này quá nhỏ nhặt, nên việc muốn ẩn nó đi khiến tôi thấy khá lạ
    • Chắc chắn có tùy chọn như vậy. Nếu giữ Shift thì menu sẽ hiện ra
    • Nếu không nhớ phím cần nhấn thì sao?
  • Tất cả những ai phàn nàn về GRUB đều đã quên lilo

    • Ngày xưa tôi từng nghĩ: “Gì cơ? GRUB là hậu duệ của LiLo và tốt hơn nhiều mà!” Không biết thời gian đã trôi kiểu gì nữa
      Hồi đó tôi có một theme tự làm rất ngầu theo Ghost in the Shell, và vẫn nhớ việc chuyển mấy ảnh jpeg tìm được trên mạng sang một định dạng ảnh cực kỳ khó hiểu. Tôi đã dành thật sự rất nhiều thời gian để tùy biến môi trường Linux. Máy tính lúc ấy giống như một con thú cưng được chăm chút kỹ lưỡng, có desktop hình khối lập phương chứa cá và những thứ như hiệu ứng phản chiếu
    • Ôi, tự nhiên bị kéo ngược về năm 2003
    • Rót một ly vì Linux loader
  • Những ảnh nền đó được co giãn thế nào trên các màn hình và độ phân giải khác nhau?
    Nhân tiện, GRUB biết phải vẽ giao diện ở độ phân giải nào bằng cách nào?

    • Nhìn vài repository thì câu trả lời có vẻ gần như là “không biết”. Có vẻ phải tự chọn ảnh có đúng độ phân giải
    • Có thể đặt độ phân giải một cách tường minh; nếu không thì nó render ở độ phân giải mà UEFI đã dùng khi bắt đầu boot
  • Cuối cùng thì tôi cũng có thể làm máy tính của mình trông như máy tính trong phim Hackers. Tuyệt

    • Vừa nhìn theme, ý nghĩ đầu tiên của tôi là “ồ, giống hệt trong phim”
      Dạo này vừa làm việc vừa nghe soundtrack, nên chắc tôi sắp xem lại phim đó
  • GRUB giống như một cục mắc kẹt trong bồn cầu không xả trôi được. Từ vài năm trước nó đã hoàn toàn không cần thiết, quá phức tạp, gần như không dùng nổi với cái shell mang lối diễn đạt kiểu năm 1995, trong khi có những lựa chọn thay thế nhẹ hơn và hữu dụng hơn nhiều như extlinux
    Ngày nay còn có thể boot kernel trực tiếp bằng EFI stub, vậy mà nó vẫn cứ được cài vào và cố biện minh cho sự tồn tại của mình

    • Tôi từng nghĩ khi UEFI xuất hiện thì GRUB cuối cùng cũng sẽ biến mất
      Tệ hơn nữa là trong dual boot, nếu mỗi hệ điều hành cài GRUB riêng của nó, có thể xảy ra tình huống kỳ quặc là GRUB chainload sang một GRUB khác rồi mới boot hệ điều hành
      Tôi chỉ nghĩ cứ nhấn một phím như F12 để xem menu tất cả tùy chọn boot do UEFI cung cấp là được không phải sao. Trước khi các trình cài đặt nhảy vào phá hỏng, mọi thứ nằm trong đó khá gọn gàng. Windows thì dường như lúc nào cũng chen vào, làm hỏng cái có sẵn và đẩy chính nó lên đầu
    • shim + grub cũng chẳng hay ho gì, nhưng nói chung EFI thuần còn tệ hơn nhiều. Các hãng làm nền tảng EFI cho người dùng phổ thông nhiều khi rất không bình thường
      Dù bo mạch chủ có cổng serial, họ cũng không cung cấp chuyển hướng console UEFI, và cũng không đưa ra cho người dùng các thiết lập Secure Boot hay quản lý tùy chọn boot. Vì thế các bootloader dựa trên EFI thuần như systemd-boot hay rEFInd có vẻ vẫn là lựa chọn ít phiền nhất
    • Không hiểu sao lại ghét nó đến vậy. Với tôi thì nó luôn hoạt động ổn. Tôi cũng đang dùng dual boot, có cả mã hóa. Trong bức tranh tổng thể thì nó thật sự chỉ là một phần rất nhỏ
      Cứ thử so với việc boot trên ARM mà xem
    • Tôi có một laptop chạy Windows, Haiku và Linux. Cấu hình GRUB 2 để thực sự khởi động được Haiku khá kỳ quặc. Nếu muốn thay GRUB thì chính xác nên cài gì là tốt nhất?
      Hoặc tôi cũng có một PC chỉ chạy Void Linux. Chế độ UEFI không hoạt động nên đang boot ở chế độ tương thích, nhưng không rõ vì sao. Không biết là vấn đề Secure Boot, MBR so với GPT, hay vì cũng không có phân vùng EFI. Ở đây thì cái gì có thể thay thế GRUB?
    • Điều tôi không hiểu là tại sao mỗi lần thêm kernel hay hệ điều hành lại cần tái tạo GRUB
      Bootloader chỉ cần đủ thông minh để đọc filesystem bên dưới và tìm kernel là được. rEFInd làm như vậy. Cắm USB boot được vào, hoặc cài Windows trên SSD thứ hai, là nó tự xuất hiện trong menu dù không yêu cầu rõ ràng
      Có thể vẫn cần ràng buộc kiểu “/boot phải là một trong n loại filesystem được hỗ trợ tốt”, nhưng một cách làm phù hợp với đa số là đủ rồi. Chỉ những người chạy kiểu gộp 128 ổ USB floppy trên RAID6 trên ZFS mới cần phụ thuộc vào thứ như GRUB
  • Tôi vẫn đang chờ một bootloader hiện ngay trên màn hình ngoài từ đầu, như combo desktop và màn hình CRT 20 năm trước
    systemd-boot đi kèm Pop!_OS không làm vậy, nên mỗi khi muốn đổi tùy chọn boot tôi phải lấy laptop ThinkPad X1 Extreme ra khỏi giá đỡ rồi mở nắp. Tôi tò mò trải nghiệm của người khác với GRUB ở điểm này ra sao

    • Hãy thử kiểm tra thiết lập màn hình mặc định trong BIOS. Nếu có thể hiển thị màn hình BIOS trên màn hình ngoài, thì bootloader xuất hiện sau đó nhiều khả năng cũng sẽ dùng màn hình đó
      Trên bộ ThinkPad + dock của tôi thì hoạt động tốt
    • Trong thiết lập firmware của ThinkPad, cần kiểm tra xem màn hình ngoài hoặc GPU của dock có được đặt làm màn hình mặc định hợp lệ trong lúc boot không
      Tuy nhiên trên một số PC, nếu đặt như vậy thì màn hình tích hợp của laptop có thể không hiện gì trong lúc boot, và đôi khi ngay cả khi dùng laptop độc lập cũng vậy. Nếu Initial Graphics Device được đặt là "Auto" thay vì một thiết bị cụ thể thì có thể ổn, nhưng cũng có thể chẳng khác hiện tại
      Màn hình ngoài cũng có thể có nhiều ngõ vào như VGA, DVI, HDMI; nếu nó được đặt quét "Auto" để tìm ngõ vào đang hoạt động thì đôi khi thời gian phát hiện còn lâu hơn thời gian boot. Nếu vậy, trong tùy chọn input của màn hình, đặt ngõ vào ưa thích làm duy nhất hoặc mặc định có thể giúp bạn thấy được gì đó trong khoảng thời gian hiện đang chỉ là màn hình trống
    • Đây chắc chắn là vấn đề phía người dùng. Nó hoạt động tốt trên màn hình nối qua dock. Trước đây tôi cũng từng dùng Pop!_OS và chắc chắn là nó đã hoạt động
    • Tôi nghĩ điều này có thể phụ thuộc vào màn hình, chứ không phải bootloader. Một số màn hình có độ trễ bật lên lâu hơn
      Màn hình 4K nối qua DisplayPort thì không có vấn đề, nhưng màn VGA/DVI cũ tôi dùng để cứu hộ homelab thì không kịp bật đủ nhanh