You are not logged in.
Pages: 1
Hey everyone,
I've got a rather unique scenario for an arch installation. It's for a low-power NAS I'm building, and I want to custom-compile the whole thing for the Atom it'll be deployed on.
Essentially, what I'm looking for is a method to use ABS/AUR to build the packages I want, and stage install them into a custom root (which will eventually be moved onto the CF drive). Is there any way - script, or otherwise - to do this?
pacman has custom "root" directories, but is there any way to make it use a set of custom-compiled packages (short of establishing my own repo, I guess...)? Can I make ABS build a whole bunch of packages (eg. the base metapackage) at once, and then store those packages somewhere (to put in a custom repo, if it comes to that)?
Cheers in advance for any help
Offline
I don't use yaourt, but I believe "yaourt -r <root> -Sb <group>" may allow you to build everything in a group (base is a group, not a metapackage) from ABS and install it to a custom root. If -Sb doesn't handle groups, then "yaourt -r <root> -Sb $(pacman -Sgq <group>)" should work.
Offline
Hey tavianator, thanks for that. I was about to quick myself for missing something as simple as that, but it appears yaourt -r doesn't work (it has no destroot option).
So, maybe compile the packages using yaourt (and store them somewhere useful), and then pacman -r using a custom repo? That gives me the option of providing updates over time too (by just updating my repo every couple of months).
Offline
Hmm, how about "ExportToLocalRepository <cache>" in your ~/yaourtrc? Then build but don't install the packages, and <cache> will become a package cache. Then use "pacman -r <root> -U <cache>/*.tar.gz". Kind of a hack; there's probably a better way. Does someone with actual yaourt experience have an idea?
Offline
I personally wouldn't use Yaourt, as a lot of people are reporting problems (and its been abandoned). I've switched to Slurpy, which is a lot simpler. Of course, Neither Yaourt nor Slurpy will do what you want if you're compiling packages out of the official repo. A quick `sudo abs` and a loop with makepkg would do what you want, no? That is, if I'm understanding this right...
#!/bin/bash
pkgroot=/path/to/where/pkgbuilds/are
packages=(pkg1 pkg2 pkg3 pkg4 pkg5)
cachedir=/path/to/pkgcache
for pkg in packages; do
cd $pkg
makepkg
cp *.pkg.tar.gz $cachedir
cd $pkgroot
done
Last edited by falconindy (2009-12-02 06:02:49)
Offline
Did something like your desciption of a local repo with a raid0 "cache" of .pkg.tar.gz packages using CF cards. This permitted the upgrading without overwriting such that older packages remained in the cache and upgrades were written to new cells in the CF. Read speeds were 130MB/s so many of the packages could be called with pacman -U and install in a few seconds.
Other arrangements included providing the complete package with depends in a folder which could then be installed with pacman as desired.
This arrangement performed well.
Good luck with yours.............
Prediction...This year will be a very odd year!
Hard work does not kill people but why risk it: Charlie Mccarthy
A man is not complete until he is married..then..he is finished.
When ALL is lost, what can be found? Even bytes get lonely for a little bit! X-ray confirms Iam spineless!
Offline
Yaourt has not been abandoned? That's new to me. Last update was a couple months ago. Source?
Setting Up a Scripting Environment | Proud donor to wikipedia - link
Offline
Pages: 1