So many AUR packages fail at dependency check

I’ve been having problems installing so many different AUR packages recently. Here are some examples:

Preparing...
Checking pyenv-virtualenv dependencies...
Failed to prepare transaction:
Failed to check pyenv-virtualenv dependencies


Preparing...
Checking expressvpn dependencies...
Failed to prepare transaction:
Failed to check expressvpn dependencies


Preparing...
Checking oh-my-zsh-git dependencies...
Failed to prepare transaction:
Failed to check oh-my-zsh-git dependencies

I’m not sure if I should provide any more information, but here’s some:

$ uname -a
Linux tiny-beast 6.1.12-1-MANJARO #1 SMP PREEMPT_DYNAMIC Tue Feb 14 21:59:10 UTC 2023 x86_64 GNU/Linux

Are AUR packages at fault or I’m missing some config?

Very unlikely.

also not a probable cause.

Make sure your mirror list is up to date
Make sure your base system is up to date
before you try to (re)build AUR packages.

AUR PKGBUILDs refer to/depend on an up to date Arch installation.

Manjaro stable branch may be a couple of weeks behind that.

If problems remain:
provide full output of (failing) commands
… what did you issue that then in the end resulted in a failure?

What command/tool are you using?

Those prompts are from pamac 10.4.3-3.

Just now, I used yay and it worked!

$ yay -S pyenv-virtualenv 

What does this mean? Why pamac is failing while yay works?

Perhaps this is how these two tools work but even though I’ve installed the pyenv-virtualenv using yay, pamac still shows it as not installed. Which is a bummer since I usually use pamac.

BTW, I’ve already make sure that my machine is up to date:

$ sudo pacman-mirrors --fasttrack 20 && sudo pacman -Syyu

Also, this is a brand-new installation.

… AUR helpers are … not created equally :grinning:
some of them do better with certain tasks than others

yay is my favourite - if that doesn’t work/can’t figure out how to successfully build a package
I switch to what is intended to be used with AUR:
makepkg
(now you have to take care of the dependencies …)

There’s no way to answer that without knowing what command you used. You’ve already been asked yet you have not responded. Switching to Yay doesn’t help solve the initial issue you had. If there actually is an issue with Pamac that needs to be addressed, ignoring it and using something else does not help improve it.

Thanks but I told you the command I’ve used:

And as for the pamac, I’ve just typed in the same exact package name (pyenv-virtualenv) and click on its icon and then “apply” to install it. Please let me know if more information is needed.

Also, about your statement:

I cannot agree more. I want pamac to work.

Does any error show from the CLI?

pamac build pyenv-virtualenv

I uninstalled the package using yay:

$ yay -R pyenv-virtualenv

Then tried the GUI version of the pamac, and it failed (like before):

Preparing...
Checking pyenv-virtualenv dependencies...
Failed to prepare transaction:
Failed to check pyenv-virtualenv dependencies

Then tried the command line version of the pamac:

$ sudo pamac build pyenv-virtualenv
Warning: Building packages as dynamic user
Warning: Setting build directory to /var/cache/pamac
Preparing...
Checking pyenv-virtualenv dependencies...
Resolving dependencies...
Checking inter-conflicts...

To build (1):
  pyenv-virtualenv  1:1.2.1-1    AUR


Edit build files : [e] 
Apply transaction ? [e/y/N] y

Cloning pyenv-virtualenv build files...
Running as unit: run-u273.service
Finished with result: success
Main processes terminated with: code=exited/status=0
Service runtime: 1.164s
CPU time consumed: 96ms
Generating pyenv-virtualenv information...
Running as unit: run-u274.service
Finished with result: success
Main processes terminated with: code=exited/status=0
Service runtime: 1.976s
CPU time consumed: 2.219s

Building pyenv-virtualenv...
Running as unit: run-u275.service
Press ^] three times within 1s to disconnect TTY.
==> Making package: pyenv-virtualenv 1:1.2.1-1 (Thu 09 Mar 2023 02:21:42 PM)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Downloading v1.2.1.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 28331    0 28331    0     0  40961      0 --:--:-- --:--:-- --:--:-- 40961
==> Validating source files with md5sums...
    v1.2.1.tar.gz ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Extracting v1.2.1.tar.gz with bsdtar
==> Entering fakeroot environment...
==> Starting package()...
==> Tidying install...
  -> Removing libtool files...
  -> Purging unwanted files...
  -> Removing static library files...
  -> Stripping unneeded symbols from binaries and libraries...
  -> Compressing man and info pages...
==> Checking for packaging issues...
==> Creating package "pyenv-virtualenv"...
  -> Generating .PKGINFO file...
  -> Generating .BUILDINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: pyenv-virtualenv 1:1.2.1-1 (Thu 09 Mar 2023 02:21:45 PM)
==> Cleaning up...
Finished with result: success
Main processes terminated with: code=exited/status=0
Service runtime: 4.673s
CPU time consumed: 4.431s
Running as unit: run-u276.service
Finished with result: success
Main processes terminated with: code=exited/status=0
Service runtime: 1.838s
CPU time consumed: 2.067s

Checking keyring...                                                                                           [1/1]
Checking integrity...                                                                                         [1/1]
Loading packages files...                                                                                     [1/1]
Checking file conflicts...                                                                                    [1/1]
Checking available disk space...                                                                              [1/1]
Installing pyenv-virtualenv (1:1.2.1-1)...                                                                    [1/1]
Transaction successfully finished.

:person_shrugging:


Don’t sudo pamac, you will be asked for your password like yay does.

Funny thing that you said that. I did this prior to sudo pamac:

$ pamac build pyenv-virtualenv                                                                 ✔  6s  
Preparing...
Checking pyenv-virtualenv dependencies...
Error: Failed to prepare transaction: Failed to check pyenv-virtualenv dependencies

One clue that I just remembered to share. For some personal reasons, I had to change my user’s ID:

$ usermod -u 3000 foo
$ groupmod -g 3000 foo
$ find / -group 3000 -exec chgrp -h foo {} \;
$ find / -user 3000 -exec chown -h foo {} \;

I’m not sure if it has anything to do with these problems, but I thought I should share.

That’s likely the reason: Pamac-manager won't ask for sudo password and fails to install AUR packages - #4 by Obelisk79
Check whether you are still the owner of the build directory:

ls -ld /var/tmp/pamac-build-foo
1 Like

It must be it:

$ ls -ld /var/tmp/pamac-build-foo
drwxr-xr-x 5 1000 foo 4096 Mar  9 07:48 /var/tmp/pamac-build-foo

1000 was my old user/group ID. But I don’t know why, I cannot change the group owner of that folder!

$ sudo chgrp -h foo /var/tmp/pamac-build-foo
$ ls -ld /var/tmp/pamac-build-foo
drwxr-xr-x 5 1000 foo 4096 Mar  9 07:48 /var/tmp/pamac-build-foo

For the sake of completeness:

id -g foo
3000

And I don’t know why. Any help is appreciated.

For directories you should use --recursive or -R flag:

sudo chgrp -h -R foo /var/tmp/pamac-build-foo

Nope. It didn’t work:

$ sudo chgrp -h -R foo /var/tmp/pamac-build-foo
$ ls -ld /var/tmp/pamac-build-foo
drwxr-xr-x 5 1000 foo 4096 Mar  9 07:48 /var/tmp/pamac-build-foo

Works. Group is foo as you requested. chgrp command change only file owner group, nothing more. If you want change owner use chown command, which can also change group. For change only user:

sudo chown -R foo /var/tmp/pamac-build-foo

For both user and group:

sudo chown -R foo:foo /var/tmp/pamac-build-foo
1 Like

Thanks @Tomek . I don’t know why I confused the placement of the user and the group!

$ sudo chown -R foo /var/tmp/pamac-build-foo
$ ls -ld /var/tmp/pamac-build-foo
drwxr-xr-x 5 foo foo 4096 Mar  9 07:48 /var/tmp/pamac-build-foo

So now ownership of those files and folders is as it should be. But going back to the original problem, I still get:

$ pamac build pyenv-virtualenv
Preparing...
Checking pyenv-virtualenv dependencies...
Error: Failed to prepare transaction: Failed to check pyenv-virtualenv dependencies

Are the user IDs and group IDs mentioned anywhere else?

Maybe there is still something messed in this directory. You can safely remove /var/tmp/pamac-build-foo, pamac will recreate it if needed.

Looking at the rest of files and folders in /var/tmp/*, I realized that there’s another folder with the wrong owner: /var/tmp/pamac. Changing that folder’s owner fixed the problem.

Thanks everyone for helping.