Compare commits
1
Commits
main
..
0657950327
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0657950327 |
@@ -1,32 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 检查 TARGETDISK 变量是否已定义
|
||||
if [ -z "$TARGETDISK" ]; then
|
||||
echo "TARGETDISK is not set. Please run the disk selector script first."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 使用 gum confirm 警告:这将删除目标硬盘上的所有数据
|
||||
if ! gum confirm --prompt "Warning: This will erase all data on $TARGETDISK. Proceed?"; then
|
||||
echo "Aborting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 使用 parted 工具创建新的 GPT 分区表
|
||||
parted -s "$TARGETDISK" mklabel gpt
|
||||
|
||||
# 创建 EFI 分区,大小为 512M,后面是系统分区,占据剩余空间
|
||||
parted -s "$TARGETDISK" mkpart primary fat32 1MiB 513MiB
|
||||
parted -s "$TARGETDISK" set 1 esp on
|
||||
|
||||
# 计算起始点,为 513MiB 后的第一个 MiB
|
||||
parted -s "$TARGETDISK" mkpart primary btrfs 513MiB 100%
|
||||
|
||||
# 格式化 EFI 分区为 FAT32
|
||||
mkfs.fat -F32 "${TARGETDISK}1"
|
||||
|
||||
# 格式化系统分区为 Btrfs
|
||||
mkfs.btrfs "${TARGETDISK}2"
|
||||
|
||||
echo "Partitioning and formatting complete."
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 确保安装 gum
|
||||
# pacman -Sy gum
|
||||
|
||||
main_menu() {
|
||||
while true; do
|
||||
clear
|
||||
# 使用 gum 或其他工具显示主菜单
|
||||
option=$(gum choose "分区硬盘" "设置网络" "安装基本系统" "开始安装" "退出安装")
|
||||
|
||||
case $option in
|
||||
"分区硬盘")
|
||||
partition_disk
|
||||
;;
|
||||
"设置网络")
|
||||
setup_network
|
||||
;;
|
||||
"安装基本系统")
|
||||
install_base_system
|
||||
;;
|
||||
"开始安装")
|
||||
start_installation
|
||||
break
|
||||
;;
|
||||
"退出安装")
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
partition_disk() {
|
||||
echo "分区硬盘..."
|
||||
# 这里添加分区逻辑
|
||||
gum confirm "返回主菜单?" && return
|
||||
}
|
||||
|
||||
setup_network() {
|
||||
echo "设置网络..."
|
||||
# 这里添加网络设置逻辑
|
||||
gum confirm "返回主菜单?" && return
|
||||
}
|
||||
|
||||
install_base_system() {
|
||||
echo "安装基本系统..."
|
||||
# 这里添加安装基本系统的逻辑
|
||||
gum confirm "返回主菜单?" && return
|
||||
}
|
||||
|
||||
start_installation() {
|
||||
echo "开始安装..."
|
||||
# 这里添加实际开始安装的逻辑
|
||||
echo "安装完成。"
|
||||
exit 0
|
||||
}
|
||||
|
||||
# 主菜单
|
||||
main_menu
|
||||
|
||||
Reference in New Issue
Block a user