From e2537840ee784cfbbc70c8379bd5d15184357871 Mon Sep 17 00:00:00 2001 From: Vladislav Nepogodin Date: Mon, 29 Jul 2024 01:28:14 +0400 Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=B9=20tui:=20refactor=20btrfs=20subvol?= =?UTF-8?q?umes=20on=20ROOT?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/tui.cpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/tui.cpp b/src/tui.cpp index b807663..05db358 100644 --- a/src/tui.cpp +++ b/src/tui.cpp @@ -1704,8 +1704,7 @@ auto mount_root_partition(std::vector& partitions) noexcept /* clang-format on */ } const auto& root_part = std::get(config_data["ROOT_PART"]); - const auto& part = std::get(config_data["PARTITION"]); - spdlog::info("partition: {}", part); + spdlog::info("root partition: {}", root_part); // Reset the mountpoint variable, in case this is the second time through this menu and old state is still around config_data["MOUNT"] = ""; @@ -1736,12 +1735,9 @@ auto mount_root_partition(std::vector& partitions) noexcept // If the root partition is btrfs, offer to create subvolumes if (part_fs == "btrfs"sv) { // Check if there are subvolumes already on the btrfs partition - const auto& subvolumes = fmt::format(FMT_COMPILE("btrfs subvolume list '{}' 2>/dev/null"), mountpoint_info); - const auto& subvolumes_count = gucc::utils::exec(fmt::format(FMT_COMPILE("{} | wc -l"), subvolumes)); - const auto& lines_count = utils::to_int(subvolumes_count); - if (lines_count > 1) { - const auto& subvolumes_formated = gucc::utils::exec(fmt::format(FMT_COMPILE("{} | cut -d' ' -f9"), subvolumes)); - const auto& existing_subvolumes = detail::yesno_widget(fmt::format(FMT_COMPILE("\nFound subvolumes {}\n \nWould you like to mount them?\n "), subvolumes_formated), size(HEIGHT, LESS_THAN, 15) | size(WIDTH, LESS_THAN, 75)); + const auto& subvolumes = fmt::format(FMT_COMPILE("btrfs subvolume list '{}' 2>/dev/null | cut -d' ' -f9"), mountpoint_info); + if (!subvolumes.empty()) { + const auto& existing_subvolumes = detail::yesno_widget(fmt::format(FMT_COMPILE("\nFound subvolumes {}\n \nWould you like to mount them?\n "), subvolumes), size(HEIGHT, LESS_THAN, 15) | size(WIDTH, LESS_THAN, 75)); // Pre-existing subvolumes and user wants to mount them /* clang-format off */ if (existing_subvolumes) { utils::mount_existing_subvols(partitions); }