mirror of
https://github.com/TECHNOFAB11/disko.git
synced 2025-12-12 16:10:03 +01:00
types/lvm_vg: create 100% size lvs last
This commit is contained in:
parent
af27d7917d
commit
e1d5b132d1
1 changed files with 19 additions and 15 deletions
|
|
@ -53,21 +53,25 @@
|
|||
};
|
||||
_create = diskoLib.mkCreateOption {
|
||||
inherit config options;
|
||||
default = _: ''
|
||||
readarray -t lvm_devices < <(cat "$disko_devices_dir"/lvm_${config.name})
|
||||
vgcreate ${config.name} \
|
||||
"''${lvm_devices[@]}"
|
||||
${lib.concatMapStrings (lv: ''
|
||||
lvcreate \
|
||||
--yes \
|
||||
${if lib.hasInfix "%" lv.size then "-l" else "-L"} ${lv.size} \
|
||||
-n ${lv.name} \
|
||||
${lib.optionalString (lv.lvm_type != null) "--type=${lv.lvm_type}"} \
|
||||
${toString lv.extraArgs} \
|
||||
${config.name}
|
||||
${lib.optionalString (lv.content != null) (lv.content._create {dev = "/dev/${config.name}/${lv.name}";})}
|
||||
'') (lib.attrValues config.lvs)}
|
||||
'';
|
||||
default = _:
|
||||
let
|
||||
sortedLvs = lib.sort (a: _: !lib.hasInfix "100%" a.size) (lib.attrValues config.lvs);
|
||||
in
|
||||
''
|
||||
readarray -t lvm_devices < <(cat "$disko_devices_dir"/lvm_${config.name})
|
||||
vgcreate ${config.name} \
|
||||
"''${lvm_devices[@]}"
|
||||
${lib.concatMapStrings (lv: ''
|
||||
lvcreate \
|
||||
--yes \
|
||||
${if lib.hasInfix "%" lv.size then "-l" else "-L"} ${lv.size} \
|
||||
-n ${lv.name} \
|
||||
${lib.optionalString (lv.lvm_type != null) "--type=${lv.lvm_type}"} \
|
||||
${toString lv.extraArgs} \
|
||||
${config.name}
|
||||
${lib.optionalString (lv.content != null) (lv.content._create {dev = "/dev/${config.name}/${lv.name}";})}
|
||||
'') sortedLvs}
|
||||
'';
|
||||
};
|
||||
_mount = diskoLib.mkMountOption {
|
||||
inherit config options;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue