File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -211,10 +211,11 @@ save_package_state() {
211211 print_step " Saving current package state..."
212212 local pkg_state_file=" $HOME /.draphyOS-packages-before"
213213
214- # Save list of currently installed packages (just package names, no versions)
215- dnf list installed 2> /dev/null | tail -n +2 | awk ' {print $1}' | cut -d' .' -f1 | sort -u > " $pkg_state_file "
214+ # Use rpm -qa for reliable package listing (works across DNF4/DNF5)
215+ # Output just package names without version/arch
216+ rpm -qa --qf ' %{NAME}\n' 2> /dev/null | sort -u > " $pkg_state_file "
216217
217- if [ -f " $pkg_state_file " ]; then
218+ if [ -f " $pkg_state_file " ] && [ -s " $pkg_state_file " ] ; then
218219 local count
219220 count=$( wc -l < " $pkg_state_file " )
220221 print_success " Package state saved ($count packages)"
Original file line number Diff line number Diff line change @@ -221,10 +221,10 @@ remove_packages() {
221221 if [[ " $response " =~ ^[Yy]$ ]]; then
222222 print_step " Calculating packages to remove..."
223223
224- # Get current installed packages
224+ # Get current installed packages (using rpm for consistency with install)
225225 local current_pkgs
226226 current_pkgs=$( mktemp)
227- dnf list installed 2> /dev/null | tail -n +2 | awk ' {print $1} ' | cut -d ' . ' -f1 | sort -u > " $current_pkgs "
227+ rpm -qa --qf ' %{NAME}\n ' 2> /dev/null | sort -u > " $current_pkgs "
228228
229229 # Find packages that were added (in current but not in before)
230230 local pkgs_to_remove
You can’t perform that action at this time.
0 commit comments