Sha256: ded9797c924f3c90aedf3febf3856a052d4e12b036d12f26e8a670895fa6006c

Contents?: true

Size: 922 Bytes

Versions: 9

Compression:

Stored size: 922 Bytes

Contents

require 'fstab'
require 'dracut'

module Getch
  module FileSystem
    module Zfs
      module Minimal
        class Config
          def initialize
            @mountpoint = OPTIONS[:mountpoint]
            @zfs = OPTIONS[:zfs_name] ||= 'pool'
            @os = OPTIONS[:os]
            x
          end

          private

          def x
            Fstab::Zfs.new(DEVS, OPTIONS).generate
            Dracut::Zfs.new(DEVS, OPTIONS).generate
            grub_broken_root
          end

          # https://wiki.archlinux.org/title/Install_Arch_Linux_on_ZFS#Using_GRUB_for_EFI/BIOS
          def grub_broken_root
            return unless Helpers.grub?

            file = "#{@mountpoint}/etc/default/grub"
            content = "GRUB_CMDLINE_LINUX=\"$GRUB_CMDLINE_LINUX"
            content << " root=ZFS=r#{@zfs}/ROOT/#{@os}\""
            NiTo.echo_a file, content
          end
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
getch-0.11.0 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.7.3 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.7.0 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.5.0 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.3.6 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.3.5 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.3.4 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.3.3 lib/getch/filesystem/zfs/minimal/config.rb
getch-0.3.0 lib/getch/filesystem/zfs/minimal/config.rb