wiki:ArchLinuxArmInstallation

Version 1 (modified by igor, at 2013-05-03T05:00:04Z) (diff)

--

This is a history of my attempts at running tahoe-lafs in a fresh pogoplug v4 with archlinuxarm:

Preparation:

# #Can't go straight to building v1.10 from source without gcc, so go for the AUR-based package to get dependencies installed 
# #Install an AUR helper, python and build tools
# pacman -S yaourt python2 gcc patch
.. snip ..
# #Make 'python2' available as 'python'
# ln -s /usr/bin/python2 /usr/local/bin/python

Installation:

# yaourt -S tahoe-lafs

This is the first list:

==> tahoe-lafs dependencies:
 - net-tools (already installed)
 - python2 (already installed)
 - python2-zope-interface>=3.6.5 (package found)
 - twisted (package found)
 - python2-pyasn1 (package found)
 - python2-crypto (package found)
 - pycryptopp (building from AUR)
 - nevow (building from AUR)
 - python2-foolscap (package found)
 - python2-simplejson (package found)
 - zfec (building from AUR)
 - python2-pyopenssl (package found)
 - pyutil (building from AUR)
 - python2-argparse (building from AUR)
 - zbase32 (building from AUR)
 - python2-mock>=0.6.0 (building from AUR)

Arch will then try to install each of these. Some packages do not list 'arm' as a valid/supported architecture, so you will have to manually edit the PKGBUILD file:

==> Continue building python2-mock ? [Y/n]
==> --------------------------------------
==> 
==> Building and installing package
==> WARNING: Building package as root is dangerous.
 Please run yaourt as a non-privileged user.
==> ERROR: python2-mock is not available for the 'arm' architecture.
    Note that many packages may need a line added to their PKGBUILD
    such as arch=('arm').
==> ERROR: Makepkg was unable to build python2-mock.
==> Restart building python2-mock ? [y/N]
==> -------------------------------------
==> y
==> Edit PKGBUILD ? [Y/n] ("A" to abort)
==> ------------------------------------
==> y

Please add $EDITOR to your environment variables
for example:
export EDITOR="vim" (in ~/.bashrc)
(replace vim with your favorite editor)

==> Edit PKGBUILD with:  vim

.. [edited PKGBUILD and manually added 'arm' to the architectures] ..

The same happened to the following packages:

pycryptopp
zbase32
zfec

Eventually, all the dependencies will be installed. But my tahoe-lafs installation fails to complete because of some error:

==> Continue building tahoe-lafs ? [Y/n]
==> ------------------------------------
==> 
.. snip ..
==> Tidying install...
  -> Purging unwanted files...
  -> Compressing man and info pages...
  -> Stripping unneeded symbols from binaries and libraries...
==> Creating package "tahoe-lafs"...
  -> Generating .PKGINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
/usr/bin/makepkg: line 1893:  5902 Killed                  ${COMPRESSXZ[@]:-xz -c -z -}
bsdtar: Write error
==> ERROR: Failed to create package file.
==> ERROR: Makepkg was unable to build tahoe-lafs.
==> Restart building tahoe-lafs ? [y/N]
==> -----------------------------------
==> 

And, as normal user:

.. snip ..
==> Tidying install...
  -> Purging unwanted files...
  -> Compressing man and info pages...
  -> Stripping unneeded symbols from binaries and libraries...
==> Creating package "tahoe-lafs"...
  -> Generating .PKGINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
xz: (stdin): Cannot allocate memory
bsdtar: Write error
==> ERROR: Failed to create package file.
==> ERROR: Makepkg was unable to build tahoe-lafs.
==> Restart building tahoe-lafs ? [y/N]
==> -----------------------------------
==> 

Will try in an arm virtual machine with more memory. Stay tuned.