New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Builds AUR packages properly, then tries to install the wrong architecture #844

Open
brianclemens opened this Issue Dec 22, 2018 · 3 comments

Comments

Projects
None yet
2 participants
@brianclemens
Copy link

brianclemens commented Dec 22, 2018

Affected Version

yay v9.0.1 - libalpm v11.0.1

Issue

On attempting to install any AUR package, yay will build the package properly (unless that package has dependencies that are themselves AUR packages). At completion, I will get a package (of the wrong architecture) not found error along the lines of error: 'telegraf-bin-1.9.1-1-armv7h': could not find or read package even though telegraf-bin-1.9.1-1-x86_64.pkg.tar.gz was built and installable via pacman -U. Interestingly, the wrong architecture is not always the same (though it is always wrong). The same configuration works on another system.

Steps to reproduce

  1. yay -S telegraf-bin (or any other AUR package)
  2. bada bing
  3. bada boom

Output

 oda@maiko  ~  yay -S telegraf-bin                                                                                                                                            
:: Checking for conflicts...                                                                                                                                                    
:: Checking for inner conflicts...                                                                                                                                              
[Aur: 1]  telegraf-bin-1.9.1-1                                                                                                                                                  
                                                                                                                                                                                
  1 telegraf-bin                     (Installed) (Build Files Exist)                                                                                                            
==> Packages to cleanBuild?                                                                                                                                                     
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)                                                                                                         
==>                                                                                                                                                                             
:: PKGBUILD up to date, Skipping (1/1): telegraf-bin                                                                                                                            
  1 telegraf-bin                     (Installed) (Build Files Exist)                                                                                                            
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)                                                                                                         
==> Diffs to show?                                                                                                                                                              
==>                                                                                                                                                                             
:: Parsing SRCINFO (1/1): telegraf-bin                                                                                                                                          
==> Making package: telegraf-bin 1.9.1-1 (Sat Dec 22 09:11:16 JST 2018)                                                                                                         
==> Retrieving sources...                                                                                                                                                       
  -> Found telegraf.sysusers                                                                                                                                                    
  -> Found telegraf.tmpfiles                                                                                                                                                    
  -> Found LICENSE                                                                                                                                                              
  -> Found telegraf-1.9.1.tar.gz                                                                                                                                                
==> Validating source files with md5sums...                                                                                                                                     
    telegraf.sysusers ... Passed                                                                                                                                                
    telegraf.tmpfiles ... Passed                                                                                                                                                
    LICENSE ... Passed                                                                                                                                                          
==> Validating source_x86_64 files with md5sums...                                                                                                                              
    telegraf-1.9.1.tar.gz ... Passed                                                                                                                                            
==> Cleaning up...                                                                                                                                                              
==> Making package: telegraf-bin 1.9.1-1 (Sat Dec 22 09:11:17 JST 2018)                                                                                                         
==> Checking runtime dependencies...                                                                                                                                            
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found telegraf.sysusers
  -> Found telegraf.tmpfiles
  -> Found LICENSE
  -> Found telegraf-1.9.1.tar.gz
==> Validating source files with md5sums...
    telegraf.sysusers ... Passed
    telegraf.tmpfiles ... Passed
    LICENSE ... Passed
==> Validating source_x86_64 files with md5sums...
    telegraf-1.9.1.tar.gz ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Extracting telegraf-1.9.1.tar.gz with bsdtar
==> Sources are ready.
==> Making package: telegraf-bin 1.9.1-1 (Sat Dec 22 09:11:19 JST 2018)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Entering fakeroot environment...
==> Starting package()...
==> Tidying install...
  -> Purging unwanted files...
  -> Stripping unneeded symbols from binaries and libraries...
  -> Compressing man and info pages...
==> Checking for packaging issue...
==> Creating package "telegraf-bin"...
  -> Generating .PKGINFO file...
  -> Generating .BUILDINFO file...
  -> Adding install file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: telegraf-bin 1.9.1-1 (Sat Dec 22 09:11:23 JST 2018)
==> Cleaning up...
loading packages...
error: 'telegraf-bin-1.9.1-1-armv7h': could not find or read package

/etc/pacman.conf

[options]
CacheDir    = /media/takama/cache/pacman/pkg
HoldPkg     = pacman glibc
XferCommand = /usr/bin/axel -n 2 -v -a -o %o %u
Architecture = auto

Color
TotalDownload
CheckSpace
VerbosePkgLists

SigLevel    = Required DatabaseOptional
LocalFileSigLevel = Optional

[core]
Include = /etc/pacman.d/mirrorlist

[extra]
Include = /etc/pacman.d/mirrorlist

[community]
Include = /etc/pacman.d/mirrorlist

/etc/makepkg.conf

# SOURCE ACQUISITION
DLAGENTS=('file::/usr/bin/curl -gqC - -o %o %u'
          'ftp::/usr/bin/curl -gqfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
          'http::/usr/bin/curl -gqb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'https::/usr/bin/curl -gqb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'rsync::/usr/bin/rsync --no-motd -z %u %o'
          'scp::/usr/bin/scp -C %u %o')

VCSCLIENTS=('bzr::bzr'
            'git::git'
            'hg::mercurial'
            'svn::subversion')

# ARCHITECTURE, COMPILE FLAGS
CARCH="x86_64"
CHOST="x86_64-pc-linux-gnu"

#-- Compiler and Linker Flags
CPPFLAGS="-D_FORTIFY_SOURCE=2"
CFLAGS="-march=native -O2 -pipe -fstack-protector-strong -fno-plt -ftree-vectorize"
CXXFLAGS="-march=native -O2 -pipe -fstack-protector-strong -fno-plt -ftree-vectorize"
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
#-- Make Flags: change this for DistCC/SMP systems
MAKEFLAGS="-j12"
#-- Debugging flags
DEBUG_CFLAGS="-g -fvar-tracking-assignments"
DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"

# BUILD ENVIRONMENT
#  A negated environment option will do the opposite of the comments below.
#
#-- distcc:   Use the Distributed C/C++/ObjC compiler
#-- color:    Colorize output messages
#-- ccache:   Use ccache to cache compilation
#-- check:    Run the check() function if present in the PKGBUILD
#-- sign:     Generate PGP signature file
#
BUILDENV=(!distcc color !ccache check !sign)
#
#-- Specify a directory for package building.
BUILDDIR=/tmp/makepkg

# GLOBAL PACKAGE OPTIONS
# Default: OPTIONS=(!strip docs libtool staticlibs emptydirs !zipman !purge !debug)
#  A negated option will do the opposite of the comments below.
#
#-- strip:      Strip symbols from binaries/libraries
#-- docs:       Save doc directories specified by DOC_DIRS
#-- libtool:    Leave libtool (.la) files in packages
#-- staticlibs: Leave static library (.a) files in packages
#-- emptydirs:  Leave empty directories in packages
#-- zipman:     Compress manual (man and info) pages in MAN_DIRS with gzip
#-- purge:      Remove files specified by PURGE_TARGETS
#-- debug:      Add debugging flags as specified in DEBUG_* variables
#
OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug)

#-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
INTEGRITY_CHECK=(md5)
#-- Options to be used when stripping binaries. See `man strip' for details.
STRIP_BINARIES="--strip-all"
#-- Options to be used when stripping shared libraries. See `man strip' for details.
STRIP_SHARED="--strip-unneeded"
#-- Options to be used when stripping static libraries. See `man strip' for details.
STRIP_STATIC="--strip-debug"
#-- Manual (man and info) directories to compress (if zipman is specified)
MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
#-- Doc directories to remove (if !docs is specified)
DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
#-- Files to be removed from all packages (if purge is specified)
PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
#-- Directory to store source code in for debug packages
DBGSRCDIR="/usr/src/debug"

# COMPRESSION DEFAULTS
COMPRESSGZ=(gzip -c -f -n)
COMPRESSBZ2=(bzip2 -c -f)
COMPRESSXZ=(xz -c -z - --threads=0)
COMPRESSLRZ=(lrzip -q)
COMPRESSLZO=(lzop -q)
COMPRESSZ=(compress -c -f)


# EXTENSION DEFAULTS
PKGEXT='.pkg.tar.xz'
SRCEXT='.src.tar.gz'

yay -Pg

{
        "aururl": "https://aur.archlinux.org",
        "buildDir": "/home/oda/.cache/yay",
        "editor": "",
        "editorflags": "",
        "makepkgbin": "makepkg",
        "makepkgconf": "",
        "pacmanbin": "pacman",
        "pacmanconf": "/etc/pacman.conf",
        "tarbin": "bsdtar",
        "redownload": "no",
        "rebuild": "no",
        "answerclean": "",
        "answerdiff": "",
        "answeredit": "",
        "answerupgrade": "",
        "gitbin": "git",
        "gpgbin": "gpg",
        "gpgflags": "",
        "mflags": "",
        "sortby": "votes",
        "gitflags": "",
        "removemake": "ask",
        "requestsplitn": 150,
        "sortmode": 0,
        "completionrefreshtime": 7,
        "sudoloop": false,
        "timeupdate": false,
        "devel": false,
        "cleanAfter": false,
        "gitclone": true,
        "provides": true,
        "pgpfetch": true,
        "upgrademenu": true,
        "cleanmenu": true,
        "diffmenu": true,
        "editmenu": false,
        "combinedupgrade": false,
        "useask": false
}
@Jguer

This comment has been minimized.

Copy link
Owner

Jguer commented Dec 27, 2018

I'm still thinking what could cause this behavior, does this happen without yay? just git cloning and makepkg?

git clone https://aur.archlinux.org/telegraf-bin.git 
cd telegraf-bin
makepkg -i

?

@brianclemens

This comment has been minimized.

Copy link
Author

brianclemens commented Dec 28, 2018

@Jguer it is puzzling. It does not happen without yay. Using makepkg -i alone works without error.

@Jguer

This comment has been minimized.

Copy link
Owner

Jguer commented Dec 28, 2018

It's very hard to replicate this one, I would still try yay -S telegraf-bin --config=/etc/pacman.conf --makepkgconf=/etc/makepkg.conf just to make sure it's not a problem sourcing the files

@Jguer Jguer added the bug label Dec 31, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment