Sha256: a972f12ebe317dbebb8bcb52d327b4532862ccb6fad0aef68deeaaf02e128b03
Contents?: true
Size: 1.87 KB
Versions: 4
Compression:
Stored size: 1.87 KB
Contents
module Getch module FileSystem class Partition def initialize @log = Getch::Log.new end def gpt(dev) return if ! dev disk = disk_name(dev) part = dev.match(/[0-9]/) exec("sgdisk -n#{part}:1MiB:+1MiB -t#{part}:EF02 #{disk}") end def boot(dev) return if ! dev disk = disk_name(dev) part = dev.match(/[0-9]/) if DEFAULT_OPTIONS[:fs] == "zfs" exec("sgdisk -n#{part}:0:+2G -t#{part}:BE00 #{disk}") else exec("sgdisk -n#{part}:0:+128MiB -t#{part}:8300 #{disk}") end end def efi(dev) return if ! dev disk = disk_name(dev) part = dev.match(/[0-9]/) exec("sgdisk -n#{part}:1M:+260M -t#{part}:EF00 #{disk}") end def swap(dev) return if ! dev disk = disk_name(dev) part = dev.match(/[0-9]/) if DEFAULT_OPTIONS[:cache_disk] exec("sgdisk -n#{part}:0:0 -t#{part}:8200 #{disk}") else mem=`awk '/MemTotal/ {print $2}' /proc/meminfo`.chomp + 'K' exec("sgdisk -n#{part}:0:+#{mem} -t#{part}:8200 #{disk}") end end def root(dev, code) return if ! dev disk = disk_name(dev) part = dev.match(/[0-9]/) exec("sgdisk -n#{part}:0:0 -t#{part}:#{code} #{disk}") end def home(dev, code) return if ! dev disk = disk_name(dev) part = dev.match(/[0-9]/) if DEFAULT_OPTIONS[:home_disk] exec("sgdisk -n#{part}:0:0 -t#{part}:#{code} #{disk}") end end private def disk_name(dev) dev.match(/[^0-9]+/) end def exec(cmd) @log.debug "Partition disk with #{cmd}" if DEFAULT_OPTIONS[:encrypt] Helpers::sys(cmd) else Getch::Command.new(cmd).run! end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
getch-0.1.5 | lib/getch/filesystem/partition.rb |
getch-0.1.3 | lib/getch/filesystem/partition.rb |
getch-0.1.2 | lib/getch/filesystem/partition.rb |
getch-0.1.1 | lib/getch/filesystem/partition.rb |