Mengganti systemd-boot Menjadi GRUB Bootloader di NixOS

Manfaat dan panduan bagaimana cara mengganti systemd-boot bootloader bawaan sistem operasi menjadi GRUB bootloader di NixOS.
linux
terminal
tips
Author
Published

February 20, 2025

Modified

February 20, 2025

Penulis mempertimbangkan untuk beralih menggunakan GNU GRUB (GRand Unified Bootloader) (Dubbs 2021) sebagai bootloader utama bertujuan untuk memudahkan multi boot dengan sistem operasi lainnya. GRUB juga mendukung sistem legacy, meski sistem operasi modern sudah beralih ke dukungan sistem efi saja.

GRUB di sistemd NixOS agak lebih lambat sekian detik, dari pada menggunakan systemd-boot bootloader secara bawaan. Hal ini tidak menjadi masalah. Wajar, karena sistem initnya menggunakan systemd. Akan tetapi, jika GRUB digunakan untuk sistem operasi non systemd, akan terasa lebih cepat performanya.

Jadi, bagaimana mengubah dan mengganti bootloader systemd-boot ke GRUB? Berikut panduannya di NixOS.

1 Unmout partisi boot

Pertama lepaskan kait partisi boot. Sebagai contoh, partisi /boot adalah /dev/sda1.

Terminal
sudo unmount /dev/sda1

2 Mengganti mounpoint partisi efi

Kemudian kaitkan kembali partisi menuju /boot/efi.

Terminal
sudo mkdir -v /boot/efi
sudo mount /dev/sda1 /boot/efi

3 Mengganti filesystems partisi efi

Setelah berhasil memindahkan partisi boot ke /boot/efi, selanjutnya mengganti filesystem untuk fstab agar dikaitkan secara otomaris di setiap booting.

Terminal
sudo nano /etc/nixos/hardware-configuration.nix
hardware-configuration.nix
  fileSystems = {
1    "/boot/efi" = {
      device = "/dev/disk/by-uuid/7442-FC29";
      fsType = "vfat";
      options = [ "fmask=0022" "dmask=0022" ];
    };
  };
1
Ganti dari /boot menjadi /boot/efi.

Kemudian tekan Ctrl-o untuk menyimpan, lalu Enter.

4 Ganti konfigurasi bootloader

Selanjutnya, pastikan untuk menonaktifkan sistemd-boot, dan mengaktifkan GRUB di konfigurasi NixOS.

Terminal
sudo nano /etc/nixos/configuration.nix
configuration.nix
  boot = {
    loader = {
      systemd-boot = {
1        enable = false;
      };
      efi = {
        canTouchEfiVariables = true;
2        efiSysMountPoint = "/boot/efi";
      };
      grub = {
3        enable = true;
4        device = "nodev";
        efiSupport = true;
5        useOSProber = true;
      };
    };
  };
1
Ganti ke false untuk menonaktifkan systemd-boot.
2
Lokasi mountpoint untuk partisi sistme efi, yaitu /boot/efi.
3
Aktifkan grub sebagai alternatif systemd-boot.
4
Device ke nodev untuk menentukan partisi efi secara fleksibel.
5
Opsional, aktifkan useOSProber jika menggunakan dualboot.

Kemudian tekan Ctrl-o untuk menyimpan, lalu Enter.

5 Bangun ulang sistem NixOSnya

Setelah mengatur konfigurasi bootloader NixOS, selanjutnya bangun ulang NixOS agar menerapkan konfigurasi yang sudah ditetapkan. Serta gunakan parameter --install-bootloader untuk memasang GRUB *bootloader yang baru.

Terminal
sudo nixos-rebuild switch --install-bootloader

Jalankan reboot sistem komputernya, kemudian tampilan bootloader akan menjadi GRUB.


Baik, itu saja panduan pemasangan GRUB bootloader di NixOS. Jika Anda mempunyai pertanyaan, saran dan kritikan silahkan kirim ke surel atau telegram atau instagram.

Semoga tulisan ini bermanfaat untuk pembaca semuanya.

References

Dubbs, Bruce. 2021. GNU GRUB - GNU Project - Free Software Foundation (FSF).” August 2021. https://www.gnu.org/software/grub.

Reuse

Citation

BibTeX citation:
@online{qurrotul_ainur2025,
  author = {Qurrotul Ainur, Hervy},
  title = {Mengganti Systemd-Boot {Menjadi} {GRUB} {Bootloader} Di
    {NixOS}},
  date = {2025-02-20},
  url = {https://hervyqa.dev/blog/mengganti-systemd-boot-menjadi-grub-bootloader-di-nixos/},
  langid = {en}
}
For attribution, please cite this work as:
Qurrotul Ainur, Hervy. 2025. “Mengganti Systemd-Boot Menjadi GRUB Bootloader Di NixOS.” February 20, 2025. https://hervyqa.dev/blog/mengganti-systemd-boot-menjadi-grub-bootloader-di-nixos/.