You are not logged in.

#1 2021-12-01 20:18:08

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Dependency hell with AUR

Mint is/was my daily driver but want to make the move over to Arch. Just got up and running this weekend on my dev box for a test run.  A few hiccups with the install but nothing I couldn't figure out.

Having always run a deb based distro, pacman and AUR is new to me and I'm doing my best to get acclimated with a new package manager.  Although I like the CLI I still wanted to install 'pamac' for a GUI.

In order to get pamac installed I had to install 6 other AUR packages individually (gtk2, libpamac-full, flatpak, snapd, snapd-glib, archlinux-appstream-data-pamac)

Is this normal or am I making this more difficult than it needs to be?

(Side note, I did have an actual problem with conflicting dependencies that brought me here, but after typing out the steps and visually seeing the workflow helped me understand the issue and correct it)

Thank you,
Ryan

Offline

#2 2021-12-01 20:39:34

loqs
Member
Registered: 2014-03-06
Posts: 14,462

Re: Dependency hell with AUR

I think you could have minimized the dependencies in AUR by using pamac-aur which only needs libpamac-aur from AUR.
What packaged required gtk2?

Offline

#3 2021-12-01 20:46:03

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Re: Dependency hell with AUR

pamac-all is the one that requested gtk2

Interesting that you mentioned pamac-aur because that is the original problem I had.   pamac-aur required libpamac-aur and libpamac-aur conflicted with libpamac-all so I had to remove pamac-aur.

I cant remember why but I couldnt get pamac-aur properly installed so I went to pamac-all

Offline

#4 2021-12-01 20:55:18

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 26,194
Website

Re: Dependency hell with AUR

Rayhem wrote:

Is this normal or am I making this more difficult than it needs to be?

It is normal that one would have to manually install any AUR-dependencies of AUR packages.  Pacman will automagically handle all dependencies of an AUR package if those dependencies are in the main repos.

It is perhaps less common for an AUR package to have many AUR-only dependencies.  I've been using arch for well over a decade and while I know at some point I have installed AUR packages that I had to build AUR-dependencies for, I couldn't tell you when it was.

Of course this depends a bit on many factors: I deliberately avoid AUR packages with their own AUR dependencies unless they are really really important to me.

There are ways to streamline this process, and this is one of the main (and perhaps the only valid) reasons to use an AUR helper.  Of course there is some irony in that the only thing you'd really need the AUR helper for would be to install your AUR helper ... that should be a hint that it may not be the way to go.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#5 2021-12-01 21:09:02

loqs
Member
Registered: 2014-03-06
Posts: 14,462

Re: Dependency hell with AUR

Rayhem wrote:

pamac-all is the one that requested gtk2

I could not reproduce that in a clean chroot build the following packages were required:

adobe-source-code-pro-fonts-2.038ro+1.058it+1.018var-1 adwaita-icon-theme-41.0-1 alsa-card-profiles-1:0.3.40-1 alsa-lib-1.2.5.1-3 alsa-topology-conf-1.2.5.1-1 alsa-ucm-conf-1.2.5.1-1 apparmor-3.0.3-1 appstream-glib-0.7.18-2 argon2-20190702-3 at-spi2-atk-2.38.0-1 at-spi2-core-2.42.0-1 atk-2.36.0-1 avahi-0.8+22+gfd482a7-1 bluez-libs-5.62-1 bubblewrap-0.5.0-1 cairo-1.17.4-5 cantarell-fonts-1:0.303-1 cryptsetup-2.4.2-1 dbus-1.12.20-1 dconf-0.40.0-1 desktop-file-utils-0.26-1 device-mapper-2.03.14-2 flac-1.3.3-3 flatpak-1.12.2-1 fontconfig-2:2.13.94-1 freetype2-2.11.0-4 fribidi-1.0.11-1 fuse-common-3.10.5-1 fuse2-2.9.9-4 gcab-1.4-1 gdk-pixbuf2-2.42.6-2 geoclue-2.5.7-4 geocode-glib-3.26.2-1 glib-networking-1:2.70.0-1 gobject-introspection-1.70.0-2 gobject-introspection-runtime-1.70.0-2 graphite-1:1.3.14-1 gsettings-desktop-schemas-41.0-1 gtk-update-icon-cache-1:4.4.1-1 gtk3-1:3.24.30+90+g20be04f7ac-1 harfbuzz-3.1.2-1 hicolor-icon-theme-0.17-2 hwids-20210613-1 iptables-1:1.8.7-1 iso-codes-4.8.0-1 js78-78.15.0-1 json-c-0.15-2 json-glib-1.6.6-1 kbd-2.4.0-2 kmod-29-1 lcms2-2.12-1 libasyncns-0.8+3+g68cd5af-3 libcanberra-0.30+2+gc0620e4-5 libcloudproviders-0.3.1-2 libcolord-1.4.5-4 libcups-1:2.3.3op2-4 libdaemon-0.14-5 libdatrie-0.2.13-1 libdrm-2.4.109-1 libedit-20210910_3.1-1 libepoxy-1.5.9-1 libfdk-aac-2.0.2-1 libfreeaptx-0.1.1-1 libglvnd-1.3.4-1 libice-1.0.10-3 libjpeg-turbo-2.1.2-1 libldac-2.0.2.3-1 libmm-glib-1.18.4-1 libmnl-1.0.4-3 libnetfilter_conntrack-1.0.8-1 libnfnetlink-1.0.1-4 libnftnl-1.2.1-1 libnl-3.5.0-3 libnsl-2.0.0-1 libogg-1.3.5-1 libomxil-bellagio-0.9.3-3 libpcap-1.10.1-1 libpciaccess-0.16-2 libpng-1.6.37-3 libproxy-0.4.17-3 libpulse-15.0-1 librsvg-2:2.52.4-1 libsm-1.2.3-2 libsndfile-1.0.31-1 libsodium-1.0.18-2 libsoup-2.74.2-1 libsoup3-3.0.3-1 libstemmer-2.2.0-1 libthai-0.1.28-2 libtiff-4.3.0-1 libunwind-1.5.0-1 libusb-1.0.24-2 libvorbis-1.3.7-2 libx11-1.7.2-1 libxau-1.0.9-3 libxcb-1.14-1 libxcomposite-0.4.5-3 libxcursor-1.2.0-2 libxdamage-1.1.5-3 libxdmcp-1.1.3-3 libxext-1.3.4-3 libxfixes-6.0.0-1 libxft-2.3.4-1 libxi-1.8-1 libxinerama-1.1.4-3 libxkbcommon-1.3.1-1 libxrandr-1.5.2-3 libxrender-0.9.10-4 libxshmfence-1.3-2 libxtst-1.2.3-4 libxxf86vm-1.1.4-4 libyaml-0.2.5-1 llvm-libs-13.0.0-3 lm_sensors-1:3.6.0.r41.g31d1f125-1 lzo-2.10-3 mesa-21.2.5-1 opus-1.3.1-2 ostree-2021.6-1 pango-1:1.48.10-1 pipewire-1:0.3.40-1 pixman-0.40.0-1 polkit-0.120-2 popt-1.18-1 python-3.9.9-1 python-appdirs-1.4.4-3 python-beaker-1.11.0-6 python-importlib-metadata-4.8.1-1 python-mako-1.1.6-1 python-markdown-3.3.6-1 python-markupsafe-2.0.1-1 python-more-itertools-8.10.0-1 python-ordered-set-4.0.2-3 python-packaging-20.9-2 python-pyparsing-2.4.7-3 python-setuptools-1:57.4.0-2 python-six-1.16.0-1 python-zipp-3.6.0-1 rest-0.8.1-3 rtkit-0.13-1 sbc-1.5-2 shared-mime-info-2.0+115+gd74a913-1 sound-theme-freedesktop-0.8-4 speex-1.2.0-3 speexdsp-1.2.0-2 squashfs-tools-4.5-1 systemd-249.7-2 tdb-1.4.5-1 tracker3-3.2.1-2 vulkan-icd-loader-1.2.199-2 wayland-1.19.0-2 webrtc-audio-processing-0.3.1-3 xcb-proto-1.14.1-3 xdg-dbus-proxy-0.1.2-3 xdg-desktop-portal-1.10.1-1 xkeyboard-config-2.34-1 xorgproto-2021.5-1 archlinux-appstream-data-pamac-1:20211122-1 libpamac-full-1:11.2.0-1 snapd-2.53.2-2 snapd-glib-1.59-1 ttf-dejavu-2.37+18+g9b5d1b2f-3 xdg-desktop-portal-gtk-1.10.0-3

Offline

#6 2021-12-01 21:09:29

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Re: Dependency hell with AUR

Thank you, it is reassuring to know that installing this number of AUR dependencies is not commonplace.  Although I do like knowing what (and why) things are installed, I dont want to waste hours doing it for each application.

Offline

#7 2021-12-01 22:12:11

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 10,577
Website

Re: Dependency hell with AUR

Mod note: moving to AUR Issues


Sakura:-
Mobo: MSI MEG B550 UNIFY // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Offline

#8 2021-12-01 23:26:16

robson75
Member
From: Poland
Registered: 2020-06-28
Posts: 72

Re: Dependency hell with AUR

Pamac-classic doesn't need all those dependencies.

Last edited by robson75 (2021-12-01 23:30:57)


Arch Linux Xfce+compiz - 64Bit Linux User #621110

Offline

#9 2021-12-02 00:07:17

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Re: Dependency hell with AUR

pamac-classic doesn't have support for AUR, snap, or flatpack which was the whole reason for installing it.

Offline

#10 2021-12-02 00:13:52

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 29,821
Website

Re: Dependency hell with AUR

Rayhem wrote:

pamac-classic doesn't have support for AUR...

pamac-classic page wrote:

Complete AUR support:
Multiple words search capability
Enable/Disable check updates from AUR
Build and update AUR packages


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#11 2021-12-02 00:31:41

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Re: Dependency hell with AUR

Then I stand corrected and would need to ask a few more questions.  First, why wouldnt the repository reflect this when it does for the pamac-aur and pamac-all?  Second, then whats the difference between classic and all?

Last edited by Rayhem (2021-12-02 00:36:33)

Offline

#12 2021-12-02 00:40:21

loqs
Member
Registered: 2014-03-06
Posts: 14,462

Re: Dependency hell with AUR

Rayhem wrote:

First, why wouldnt the repository reflect this when it does for the pamac-aur and pamac-all?

What is 'the repository' referring to?
Edit:
Do note whichever edition you choose they all appear to come with a versioned dependency on pacman which will prevent pacman updating itself at some point in the future.

Last edited by loqs (2021-12-02 00:48:26)

Offline

#13 2021-12-02 01:47:03

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Offline

#14 2021-12-02 01:51:57

loqs
Member
Registered: 2014-03-06
Posts: 14,462

Re: Dependency hell with AUR

You could ask the maintainer to consider adding AUR to the PKGBUILD description.

Offline

#15 2021-12-02 04:58:05

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Re: Dependency hell with AUR

I assume that post is for jason since I obviously dont know the difference between these packages or what they actually contain.

Offline

#16 2021-12-02 13:07:25

robson75
Member
From: Poland
Registered: 2020-06-28
Posts: 72

Re: Dependency hell with AUR

Rayhem wrote:

First, why wouldnt the repository reflect this when it does for the pamac-aur and pamac-all?  Second, then whats the difference between classic and all?

I don't know if you know, but pamac is a creation of Manjaro team, and created exclusively for this system.
What is the difference between pamac-aur and pamac-classic, practically none, only that pamac-classic runs much more stable on Arch Linux.


Arch Linux Xfce+compiz - 64Bit Linux User #621110

Offline

#17 2021-12-02 13:09:13

Rayhem
Member
Registered: 2021-12-01
Posts: 15

Re: Dependency hell with AUR

robson75 wrote:

What is the difference between pamac-aur and pamac-classic, practically none, only that pamac-classic runs much more stable on Arch Linux.

Good stuff, thank you!

Last edited by Rayhem (2021-12-02 13:10:13)

Offline

#18 2021-12-06 15:41:45

daniel_shub
Member
Registered: 2012-06-21
Posts: 65

Re: Dependency hell with AUR

Trilby wrote:
Rayhem wrote:

Is this normal or am I making this more difficult than it needs to be?

It is normal that one would have to manually install any AUR-dependencies of AUR packages.  Pacman will automagically handle all dependencies of an AUR package if those dependencies are in the main repos.

It is perhaps less common for an AUR package to have many AUR-only dependencies.  I've been using arch for well over a decade and while I know at some point I have installed AUR packages that I had to build AUR-dependencies for, I couldn't tell you when it was.

Of course this depends a bit on many factors: I deliberately avoid AUR packages with their own AUR dependencies unless they are really really important to me.

There are ways to streamline this process, and this is one of the main (and perhaps the only valid) reasons to use an AUR helper.  Of course there is some irony in that the only thing you'd really need the AUR helper for would be to install your AUR helper ... that should be a hint that it may not be the way to go.


I have been using Arch for well over 10 years also. I needed r-testthat a while back and the dependency hell drove me to install my first AUR helper. I went with aurutils because it has a nice function that figures out the AUR dependencies without doing any of the package building

Offline

Board footer

Powered by FluxBB