#!/bin/bash

# 패키지 목록이 들어있는 파일
package_file="pak_list.txt"
output_file="not_install_paklist.txt"

# 파일이 존재하는지 확인
if [[ ! -f "$package_file" ]]; then
    echo "$package_file 파일이 존재하지 않습니다. 먼저 패키지 리스트를 만들어주세요."
    exit 1
fi

# 기존 output 파일 초기화
> "$output_file"

# 파일에서 한 줄씩 읽어서 패키지 설치 여부 확인
while IFS= read -r pkg; do
    # 빈 줄은 건너뛰기
    [[ -z "$pkg" ]] && continue

    dnf list --installed "$pkg" &>/dev/null
    if [[ $? -ne 0 ]]; then
        echo "$pkg" >> "$output_file"
    fi
done < "$package_file"

echo "설치 안된 패키지 목록이 $output_file 파일에 저장되었습니다."
echo

# 설치 여부 물어보기
read -p "설치 안된 패키지를 설치하시겠습니까? (Y/n): " answer

if [[ "$answer" == "Y" || "$answer" == "y" ]]; then
    sudo dnf install -y $(cat "$output_file")
else
    echo "설치를 취소했습니다."
fi