class Freydis::Options
Attributes
options[R]
Public Class Methods
new(args, data_file)
click to toggle source
# File lib/freydis/options.rb, line 7 def initialize(args, data_file) data = Data.new(data_file) data.load! @options = data.options parse(args) end
Private Instance Methods
parse(argv)
click to toggle source
# File lib/freydis/options.rb, line 17 def parse(argv) OptionParser.new do |opts| opts.banner = "Usage: freydis.rb [options]" opts.version = VERSION opts.on("-i", "--init", "Create a config file.") do @options[:init] = true end opts.on("-b", "--backup", "Perform a backup.") do @options[:backup] = true end opts.on("-r", "--restore", "Restore saved datas on your system.") do @options[:restore] = true end opts.on("-e", "--encrypt", "Encrypt your device.") do @options[:encrypt] = true end opts.on("-o", "--open", "Open and mount encrypted device at /mnt/freydis.") do @options[:open] = true end opts.on("-c", "--close", "Umount & close encrypted device.") do @options[:close] = true end opts.on("-d NAME", "--disk NAME", /^sd[a-z]$/, "To use the disk NAME (e.g: sda, sdb).") do |disk| @options[:disk] = Freydis::Guard.disk(disk) end opts.on("-L", "--path-list", "List all paths from your list.") do puts puts @options[:paths] exit end opts.on("-p PATH", "--path-add PATH", String, "Add absolute path PATH to the backup list") do |p| Freydis::Guard.path? p @options[:paths] << p if !@options[:paths].include? p end opts.on("-d PATH", "--path-del PATH", String, "Remove absolute path PATH from the backup list.") do |p| Freydis::Guard.path? p @options[:paths].delete p if @options[:paths].include? p end opts.on("-s", "--save", "Save currents arguments in a config file.") do @options[:save] = true end begin opts.parse!(argv) rescue OptionParser::ParseError => e STDERR.puts e.message, "\n", opts exit 1 end end end