oshazard / apacman

ArchLinux User Repository (AUR) helper and pacman wrapper
https://aur.archlinux.org/packages/apacman/
GNU General Public License v3.0
70 stars 11 forks source link

Issue building libappindicator-gtk3 #19

Closed ramesh45345 closed 9 years ago

ramesh45345 commented 9 years ago

Seems like apacman has some issue in the process of building libappindicator-gtk3 (more specifically, cannot recognize dependencies needed for building it). In this example, let us assume that AUR targets libindicator-gtk3, libindicator-gtk2, and libdbusmenu-gtk2, as well as pacman target libdbusmenu-gtk3 are missing from the system.

Upon trying to build libdbusmenu-gtk2, the following (abbreviated) output is given:

> apacman -S libappindicator-gtk3

...

=> Finished making: libdbusmenu-gtk2 12.10.2-3 (Wed Jun 10 13:24:38 EDT 2015)
  -> Status     built (2): libindicator-gtk3 libdbusmenu-gtk2
  -> Saved package: libdbusmenu-gtk2-12.10.2-3-x86_64.pkg.tar.xz
loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (1) libdbusmenu-gtk2-12.10.2-3

Total Installed Size:  0.12 MiB

:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring                       [############################] 100%
(1/1) checking package integrity                     [############################] 100%
(1/1) loading package files                          [############################] 100%
(1/1) checking for file conflicts                    [############################] 100%
(1/1) checking available disk space                  [############################] 100%
(1/1) installing libdbusmenu-gtk2                    [############################] 100%
Dependencies for `libappindicator-gtk3' are not met, not building...

In yaourt, a different message appears (this happens when it tries to build libindicator-gtk3, a dependency of libappindicator-gtk3):

> yaourt -S libappindicator-gtk3

...

==> WARNING: This PKGBUILD describes a split package.
==> Specific package options are unknown
==> libindicator dependencies:
 - gtk2 (already installed)
 - gtk3 (already installed)

==> Continue building libindicator-gtk3 ? [Y/n]
==> -------------------------------------------
==> 
==> Building and installing package
==> This PKGBUILD provides " libindicator-gtk2 libindicator-gtk3 "
==> Install only libindicator-gtk3 ? [Y/n]
==> --------------------------------------
==> 

Answering yes to the question causes the libindicator-gtk3 package and eventually the libappindicator-gtk3 package to be built and installed properly.

Can apacman detect that libindicator provides multiple packages which are a dependancy for libappindicator-gtk3? Can apacman handle this case?

oshazard commented 9 years ago

@vinadoros I added support for split packages in apacman v2.0 so in general this behaviour should work as expected.

However, for this particular package it seems to pull in the gtk2 package as well for no apparent reason and the gtk2 one will not build, so the whole thing will fail unless you edit the PKGBUILD to remove the gtk2 deps.

oshazard commented 9 years ago

Okay looks like the package maintainer finally fixed the PKGBUILD for this, so it builds as expected.