You are not logged in.

#1 2014-02-06 19:48:29

Corey Goettsch
Member
Registered: 2011-10-11
Posts: 16

Problems with Yaourt and makepkg.conf

Hi all,

So, I've recently switched all the way over to Arch Linux after playing around with it for some time.  And it's been great!  I am very glad I did it. 

I've been using yaourt to install all of my humble indie bundle games, and it's been going well until I tried to install mark of the ninja. 

Every time I try to install ANYTHING on yaourt now, I get these types of error messages:

[nicholas@nicholas ~]$ yaourt -s markoftheninja-hib
1 aur/markoftheninja-hib 1.38+h20131002-1 (4)
    Mark of the Ninja, a side-scrolling stealth game (Humble Bundle version)
==> Enter n° of packages to be installed (ex: 1 2 3 or 1-3)
==> -------------------------------------------------------
==> 1

/etc/makepkg.conf: line 89: for: command not found

==> Downloading markoftheninja-hib PKGBUILD from AUR...
x markoftheninja-hib.desktop
x PKGBUILD
markoftheninja-hib 1.38+h20131002-1  (Wed Sep 11 20:25:29 EDT 2013)
( Unsupported package: Potentially dangerous ! )
==> Edit PKGBUILD ? [Y/n] ("A" to abort)
==> ------------------------------------
==> n

/etc/makepkg.conf: line 89: for: command not found
==> WARNING: Running makepkg as an unprivileged user will result in non-root
ownership of the packaged files. Try using the fakeroot environment by
placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
==> markoftheninja-hib dependencies:
- sdl (already installed)
- libgl (already installed)
- gcc-libs (already installed)
- xdg-utils (already installed)


==> Continue building markoftheninja-hib ? [Y/n]
==> --------------------------------------------
==>
==> Building and installing package
/etc/makepkg.conf: line 89: for: command not found
==> WARNING: Running makepkg as an unprivileged user will result in non-root
ownership of the packaged files. Try using the fakeroot environment by
placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
==> ERROR: markoftheninja-hib is not available for the '' architecture.
    Note that many packages may need a line added to their PKGBUILD
    such as arch=('').
==> ERROR: Makepkg was unable to build markoftheninja-hib.
==> Restart building markoftheninja-hib ? [y/N]
==> -------------------------------------------
==>
[nicholas@nicholas ~]$ sudo gedit /etc/makepkg.conf



So, I already have fakeroot properly activated IN makepkg.conf.  This is my makepkg.conf setup:



#
# /etc/makepkg.conf
#

#########################################################################
# SOURCE ACQUISITION
#########################################################################
#
#-- The download utilities that makepkg should use to acquire sources
#  Format: 'protocol::agent'
DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
          'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'https::/usr/bin/curl -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'
          'hib::/usr/bin/find /home/nicholas/Downloads -name $(echo %u | cut -c 7-) -exec ln -s \{\} %o \; -quit')'
)

# Other common tools:
# /usr/bin/snarf
# /usr/bin/lftpget -c
# /usr/bin/wget

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

#-- Compiler and Linker Flags
# -march (or -mcpu) builds exclusively for an architecture
# -mtune optimizes for an architecture, but builds for whole processor family
CPPFLAGS="-D_FORTIFY_SOURCE=2"
CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro"
#-- Make Flags: change this for DistCC/SMP systems
#MAKEFLAGS="-j2"
#-- Debugging flags
DEBUG_CFLAGS="-g -fvar-tracking-assignments"
DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"

#########################################################################
# BUILD ENVIRONMENT
#########################################################################
#
# Defaults: BUILDENV=(fakeroot !distcc color !ccache check !sign)
#  A negated environment option will do the opposite of the comments below.
#
#-- fakeroot: Allow building packages as a non-root user
#-- 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=(fakeroot !distcc color !ccache check !sign)
#
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
#-- specify a space-delimited list of hosts running in the DistCC cluster.
#DISTCC_HOSTS=""
#
#-- Specify a directory for package building.
#BUILDDIR=/tmp/makepkg

#########################################################################
# GLOBAL PACKAGE OPTIONS
#   These are default values for the options=() settings
#########################################################################
#
# Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !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
#-- upx:        Compress binary executable files using UPX
#-- debug:      Add debugging flags as specified in DEBUG_* variables
#
OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !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)

#########################################################################
# PACKAGE OUTPUT
#########################################################################
#
# Default: put built package and cached source in build directory
#
#-- Destination: specify a fixed directory where all packages will be placed
#PKGDEST=/home/packages
#-- Source cache: specify a fixed directory where source files will be cached
#SRCDEST=/home/sources
#-- Source packages: specify a fixed directory where all src packages will be placed
#SRCPKGDEST=/home/srcpackages
#-- Log files: specify a fixed directory where all log files will be placed
#LOGDEST=/home/makepkglogs
#-- Packager: name/email of the person or organization building packages
#PACKAGER="John Doe <john@doe.com>"
#-- Specify a key to use for package signing
#GPGKEY=""

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

#########################################################################
# EXTENSION DEFAULTS
#########################################################################
#
# WARNING: Do NOT modify these variables unless you know what you are
#          doing.
#
PKGEXT='.pkg.tar.xz'
SRCEXT='.src.tar.gz'

# vim: set ft=sh ts=2 sw=2 et:


Here is line 89, which is the one that yaourt flags:

- Options to be used when stripping binaries. See `man strip' for 

It's almost as if it is treating "for" as a command.  This is very strange. 

Also, I do have the architecture specified in the makepkg.  It doesn't matter which package I try to install: it does the same thing. 

Does anyone have any ideas?  I'd really appreciate your help.

Thank you.

Sincerely,

Corey Goettsch

Offline

#2 2014-02-06 20:03:51

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: Problems with Yaourt and makepkg.conf

Please edit your post.
When posting configs, code or command output, please use [ code ] tags https://bbs.archlinux.org/help.php#bbcode

like this

It makes the code more readable and - in case of longer listings - more convenient to scroll through.

Offline

#3 2014-02-06 20:16:23

Corey Goettsch
Member
Registered: 2011-10-11
Posts: 16

Re: Problems with Yaourt and makepkg.conf

Karol,

Thank you for the suggestion.  Here are the code outputs

 [nicholas@nicholas ~]$ yaourt -S markoftheninja-hib
/etc/makepkg.conf: line 89: for: command not found

==> Downloading markoftheninja-hib PKGBUILD from AUR...
x markoftheninja-hib.desktop
x PKGBUILD
markoftheninja-hib 1.38+h20131002-1  (Wed Sep 11 20:25:29 EDT 2013)
( Unsupported package: Potentially dangerous ! )
==> Edit PKGBUILD ? [Y/n] ("A" to abort)
==> ------------------------------------
==> n

/etc/makepkg.conf: line 89: for: command not found
==> WARNING: Running makepkg as an unprivileged user will result in non-root
ownership of the packaged files. Try using the fakeroot environment by
placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
==> markoftheninja-hib dependencies:
 - sdl (already installed)
 - libgl (already installed)
 - gcc-libs (already installed)
 - xdg-utils (already installed)


==> Continue building markoftheninja-hib ? [Y/n]
==> --------------------------------------------
==> 
==> Building and installing package
/etc/makepkg.conf: line 89: for: command not found
==> WARNING: Running makepkg as an unprivileged user will result in non-root
ownership of the packaged files. Try using the fakeroot environment by
placing 'fakeroot' in the BUILDENV array in /etc/makepkg.conf.
==> ERROR: markoftheninja-hib is not available for the '' architecture.
    Note that many packages may need a line added to their PKGBUILD
    such as arch=('').
==> ERROR: Makepkg was unable to build markoftheninja-hib.
==> Restart building markoftheninja-hib ? [y/N]
==> -------------------------------------------
==> 
[nicholas@nicholas ~]$ sudo gedit /etc/makepkg.conf
[sudo] password for nicholas: 

(gedit:2211): Gtk-WARNING **: Theme parsing error: notebook.css:6:13: Theming engine 'unico' not found

(gedit:2211): Gtk-WARNING **: Theme parsing error: nemo.css:90:13: Theming engine 'unico' not found 

And this is my makepkg.conf:

 #
# /etc/makepkg.conf
#

#########################################################################
# SOURCE ACQUISITION
#########################################################################
#
#-- The download utilities that makepkg should use to acquire sources
#  Format: 'protocol::agent'
DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
          'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'
          'https::/usr/bin/curl -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'
          'hib::/usr/bin/find /home/nicholas/Downloads -name $(echo %u | cut -c 7-) -exec ln -s \{\} %o \; -quit')'
)

# Other common tools:
# /usr/bin/snarf
# /usr/bin/lftpget -c
# /usr/bin/wget

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

#-- Compiler and Linker Flags
# -march (or -mcpu) builds exclusively for an architecture
# -mtune optimizes for an architecture, but builds for whole processor family
CPPFLAGS="-D_FORTIFY_SOURCE=2"
CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4"
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro"
#-- Make Flags: change this for DistCC/SMP systems
#MAKEFLAGS="-j2"
#-- Debugging flags
DEBUG_CFLAGS="-g -fvar-tracking-assignments"
DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"

#########################################################################
# BUILD ENVIRONMENT
#########################################################################
#
# Defaults: BUILDENV=(fakeroot !distcc color !ccache check !sign)
#  A negated environment option will do the opposite of the comments below.
#
#-- fakeroot: Allow building packages as a non-root user
#-- 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=(fakeroot !distcc color !ccache check !sign)
#
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
#-- specify a space-delimited list of hosts running in the DistCC cluster.
#DISTCC_HOSTS=""
#
#-- Specify a directory for package building.
#BUILDDIR=/tmp/makepkg

#########################################################################
# GLOBAL PACKAGE OPTIONS
#   These are default values for the options=() settings
#########################################################################
#
# Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !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
#-- upx:        Compress binary executable files using UPX
#-- debug:      Add debugging flags as specified in DEBUG_* variables
#
OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !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)

#########################################################################
# PACKAGE OUTPUT
#########################################################################
#
# Default: put built package and cached source in build directory
#
#-- Destination: specify a fixed directory where all packages will be placed
#PKGDEST=/home/packages
#-- Source cache: specify a fixed directory where source files will be cached
#SRCDEST=/home/sources
#-- Source packages: specify a fixed directory where all src packages will be placed
#SRCPKGDEST=/home/srcpackages
#-- Log files: specify a fixed directory where all log files will be placed
#LOGDEST=/home/makepkglogs
#-- Packager: name/email of the person or organization building packages
#PACKAGER="John Doe <john@doe.com>"
#-- Specify a key to use for package signing
#GPGKEY=""

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

#########################################################################
# EXTENSION DEFAULTS
#########################################################################
#
# WARNING: Do NOT modify these variables unless you know what you are
#          doing.
#
PKGEXT='.pkg.tar.xz'
SRCEXT='.src.tar.gz'

# vim: set ft=sh ts=2 sw=2 et: 

And, last, here is the output from line 89:

 #-- Options to be used when stripping binaries. See `man strip' for details. 

So, the problem is that "for" in line 89 is being treated like a command.  Which is very strange.  Also, I already have fakeroot set up in makepkg.conf.  And, last, I also have the architecture specified in the PKGBUILD.  So, I'm a bit at a loss here.  I would really appreciate any help.

Offline

#4 2014-02-06 22:04:32

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,729

Re: Problems with Yaourt and makepkg.conf

You've got an extra single quote in line 16 that's screwing everything up.

Offline

#5 2014-02-06 22:08:47

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: Problems with Yaourt and makepkg.conf

You can remove the closing parenthesis on line 17 too.

Offline

#6 2014-02-06 22:39:49

Corey Goettsch
Member
Registered: 2011-10-11
Posts: 16

Re: Problems with Yaourt and makepkg.conf

Yup.  That's exactly what it was: I was fiddling with makepkg.conf while I was trying to install that game and made a few sloppy errors.

Thank you very much for pointing out my dumb mistake!  I missed that entirely. 

I really appreciate your help!

Offline

#7 2014-02-06 22:40:48

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: Problems with Yaourt and makepkg.conf

It is easy to spot in an editor that supports syntax highlighting.

Offline

#8 2014-02-06 22:43:54

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,729

Re: Problems with Yaourt and makepkg.conf

Yep, that's exactly what I did. C&P into VIM and it was pretty obvious.

Offline

#9 2014-02-06 22:46:31

Awebb
Member
Registered: 2010-05-06
Posts: 6,688

Re: Problems with Yaourt and makepkg.conf

May I suggest you first learn how to install software without yaourt, before you stop yourself from gaining knowledge with lazy tools? I suggest a simple downloader like cower, that helps you search and download the tarballs. You might end up writing your own short update script.

Offline

Board footer

Powered by FluxBB