aura icon indicating copy to clipboard operation
aura copied to clipboard

Cannot force remove package

Open emekoi opened this issue 3 years ago • 6 comments

whenever i try to force remove a package via aura -Rdd <package> it fails the dependency check when using aura, but works fine with pacman. is this intentional?

emekoi avatar Jun 09 '22 05:06 emekoi

Almost certainly not intentional - thanks for reporting this.

fosskers avatar Jun 09 '22 20:06 fosskers

Aura doesn't skip dependency checks with -Rdd Skipping dependency checks when removing a package with -Rdd works fine with pacman but doesn't seem to work with aura for me as well

AURA Version 3.2.9

$ sudo pacman -R pipewire
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing pipewire breaks dependency 'pipewire' required by easyeffects
:: removing pipewire breaks dependency 'pipewire' required by gst-plugin-pipewire
:: removing pipewire breaks dependency 'pipewire' required by helvum
:: removing pipewire breaks dependency 'pipewire' required by obs-studio
:: removing pipewire breaks dependency 'pipewire' required by pipewire-alsa
:: removing pipewire breaks dependency 'pipewire' required by pipewire-audio
:: removing pipewire breaks dependency 'pipewire' required by pipewire-jack
:: removing pipewire breaks dependency 'pipewire' required by pipewire-pulse
:: removing pipewire breaks dependency 'pipewire' required by qpwgraph
:: removing pipewire breaks dependency 'pipewire' required by wireplumber


$ sudo pacman -Rdd pipewire

Packages (1) pipewire-1:0.3.66-2

Total Removed Size:  3.07 MiB

:: Do you want to remove these packages? [Y/n] ^C
Interrupt signal received


$ sudo aura -Rdd pipewire
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing pipewire breaks dependency 'pipewire' required by easyeffects
:: removing pipewire breaks dependency 'pipewire' required by gst-plugin-pipewire
:: removing pipewire breaks dependency 'pipewire' required by helvum
:: removing pipewire breaks dependency 'pipewire' required by obs-studio
:: removing pipewire breaks dependency 'pipewire' required by pipewire-alsa
:: removing pipewire breaks dependency 'pipewire' required by pipewire-audio
:: removing pipewire breaks dependency 'pipewire' required by pipewire-jack
:: removing pipewire breaks dependency 'pipewire' required by pipewire-pulse
:: removing pipewire breaks dependency 'pipewire' required by qpwgraph
:: removing pipewire breaks dependency 'pipewire' required by wireplumber

ghost avatar Feb 27 '23 19:02 ghost

It seems that this is not fixed in Aura 4 either. Thank you for reporting.

Note also that this has been mentioned before in a discussion of Aura's direction:

Should Aura ban certain frowned-upon pacman commands like -Rdd and -Su?

Thoughts?

fosskers avatar Feb 28 '23 04:02 fosskers

For me personally, aura has always been a tool that provides useful AUR helper capabilities, but additionally fully wraps around pacman so I can always type aura for whatever pacman transaction I need. Quoting the man-page:

Aura allows all pacman operations and provides new custom ones for dealing with AUR packages

This has indeed been my expectation from using aura so far, so I perceived -Rdd being skipped as a bug. I'd have likely perceived it as a bug even if it had been intentional.

I believe aura is used by slightly more advanced users, i.e. users who have a high-level understanding of how pacman and Arch work in terms of package managing. So the target audience may benefit from having pacman fully wrapped.

For comparison, running yay without any options leads to a full system upgrade including all official and AUR packages. yay will ask to import a PGP key for you when one is missing, and in general it gives a feeling that it's made for absolutely everyone, even if the user doesn't fully grasp what's happening.

Aura gave me a feeling of being slightly more advanced, and it works great for my workflow with viewing PKGBUILD, hotedit capabilities, --noconfirm when needed etc. I love how -A options are neatly integrated into the overall pacman syntax and how seamlessly it is using aura for everything package-management. To that end I often find myself typing sudo aura -S <pkg> on new systems, only to remind myself to use pacman, the integration is that seamless.

For the sake of consistency and ease of use, I'd love for aura to wrap pacman fully. I understand that -Rdd may break a system for some users when used incorrectly, but is it aura's responsibility to protect from that?

If the community decides it's worth "banning" -Rdd and -Su, I think it's very important to clearly indicate that such a command exists but is not allowed. Perhaps it could have a similar flow as when curl calls are found in a PKGBUILD.

To sum it up, I am of a strong opinion that aura should allow everything that pacman allows as is, and add other functionality on top of that. Having -Rdd not working takes away from the pacman experience, and I'm wondering how many users will actually benefit from this vs how many users' workflow will be thrown off a little by that.

ghost avatar Mar 01 '23 16:03 ghost

Thank you for your detailed writeup! I'm glad Aura has been useful for you. I have a similar experience; I have manually typed pacman into a terminal perhaps 10 times over the past 10 years. aura is pacman to me. So in that sense, you may be right that it's not Aura's place to decide what users can and cannot do.

Which means that -Rdd being missing is a bug. I will fix this in Aura 4.

fosskers avatar Mar 02 '23 01:03 fosskers

Thank you so much for your work on aura! I'll try to contribute more in the future!

ghost avatar Mar 02 '23 15:03 ghost