Historical bug tracker for the Pacman package manager.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
FS#68506 - Allow -Fy to run without root when --dbpath points to a user-owned directory
|
DetailsSummary and Info:
A regular user could want to look up package names from a filename, in which case they need an up to date files database (-Fy). This operation aborts if pacman isn’t running as root, despite no special permissions being needed if the database path is user-writable. A workaround when pacman is built with glibc is to use fakeroot, but this isn’t available everywhere, for instance when using pacman-static: https://aur.archlinux.org/packages/pacman-static/ Steps to Reproduce: % mkdir ~/db % pacman -Fy --dbpath ~/db |
This task depends upon
[1]: https://www.dotslashplay.it/
The thing is that dbpath will never be user writable except in edge cases where you have a custom script to rig this up. Just like checkupdates. In such cases, fakeroot is practical.
For the -Fy case I recommend invoking it with sudo, and adding a sudoers rule permitting anyone to use it without a password, given only the exact arguments "-Fy".
Perfectly secure, no prompt for passwords, even unprivileged users can update the files database.
I don't think I agree with that. Pacman is a package manager, however it does not necessarily have to manage at the system level.
For example npm and pip can work per user.
I believe the Nintendo hacking group does this. They use pacman to manage and distribute all of their hacking tools using a windows
build of pacman. Where pacman and the packages arre installed just for the user instead of system wide.