lib/getch/gentoo/use_flag.rb in getch-0.1.6 vs lib/getch/gentoo/use_flag.rb in getch-0.1.9

- old
+ new

@@ -1,63 +1,89 @@ -# lib/use_flag.rb +# frozen_string_literal: true -module Getch::Gentoo - class UseFlag - def initialize - @efi = Helpers::efi? - end +module Getch + module Gentoo + class UseFlag + def initialize + @efi = Helpers.efi? + end - def apply - systemd - kmod - grub - zfs - lvm - cryptsetup - end + def apply + systemd + pam + kernel + kmod + grub + zfs + lvm + cryptsetup + end - private + private - def systemd - flags = [] - use = Getch::Gentoo::Use.new('sys-apps/systemd') - flags << 'dns-over-tls' - flags << 'gnuefi' if @efi - use.add(flags) - end + def systemd + flags = [] + use = Getch::Gentoo::Use.new('sys-apps/systemd') + flags << 'dns-over-tls' + flags << 'gnuefi' if @efi + use.add(flags) + end - def kmod - use = Getch::Gentoo::Use.new('sys-apps/kmod') - use.add('zstd', 'lzma') - end + def pam + flags = [] + use = Getch::Gentoo::Use.new('sys-auth/pambase') + flags << '-passwdqc' + flags << 'pwquality' + flags << 'sha512' + use.add(flags) + end - def grub - return if @efi - flags = [] - use = Getch::Gentoo::Use.new('sys-boot/grub') - flags << '-grub_platforms_efi-64' - flags << 'libzfs' if Getch::OPTIONS[:fs] == 'zfs' - flags << 'device-mapper' if Getch::OPTIONS[:fs] == 'lvm' - use.add(flags) - end + def kernel + use = Getch::Gentoo::Use.new('sys-kernel/gentoo-kernel') + use.add('hardened') + end - def zfs - return unless Getch::OPTIONS[:fs] == 'zfs' - use = Getch::Gentoo::Use.new('sys-fs/zfs-kmod') - use.add('rootfs') - use = Getch::Gentoo::Use.new('sys-fs/zfs') - use.add('rootfs') - end + def kmod + use = Getch::Gentoo::Use.new('sys-apps/kmod') + use.add('zstd', 'lzma') + end - def lvm - return unless Getch::OPTIONS[:fs] == 'lvm' - use = Getch::Gentoo::Use.new - use.add_global('lvm', 'device-mapper') - end + def grub + return if @efi - def cryptsetup - return unless Getch::OPTIONS[:encrypt] - use = Getch::Gentoo::Use.new - use.add_global('cryptsetup') + flags = [] + use = Getch::Gentoo::Use.new('sys-boot/grub') + flags << '-grub_platforms_efi-64' + flags << 'libzfs' if Getch::OPTIONS[:fs] == 'zfs' + flags << 'device-mapper' if Getch::OPTIONS[:fs] == 'lvm' + use.add(flags) + end + + def zfs + return unless Getch::OPTIONS[:fs] == 'zfs' + + use = Getch::Gentoo::Use.new('sys-fs/zfs-kmod') + use.add('rootfs') + use = Getch::Gentoo::Use.new('sys-fs/zfs') + use.add('rootfs') + + # https://wiki.gentoo.org/wiki/Project:Distribution_Kernel + use = Getch::Gentoo::Use.new + use.add_global('dist-kernel') + end + + def lvm + return unless Getch::OPTIONS[:fs] == 'lvm' + + use = Getch::Gentoo::Use.new + use.add_global('lvm', 'device-mapper') + end + + def cryptsetup + return unless Getch::OPTIONS[:encrypt] + + use = Getch::Gentoo::Use.new + use.add_global('cryptsetup') + end end end end