[arch-dev-public] makechrootpkg without aufs2

Aaron Griffin aaronmgriffin at gmail.com
Sat Jan 23 22:59:31 EST 2010


On Sat, Jan 23, 2010 at 7:29 PM, Allan McRae <allan at archlinux.org> wrote:
> On 24/01/10 09:08, Pierre Schmitz wrote:
>>
>> Hi devs,
>> <snip>
>>
>> This can be easily done by changing this in makechrootpkg:
>>
>>     mount -t aufs none -o "dirs=$chrootdir/$LAYER=rw:$chrootdir/root=ro"
>> "$uniondir"
>>
>> to
>>
>>     rsync -a --delete --progress -h -c -W "$chrootdir/root/" "$uniondir"
>>
>> <snip>
>
> You get a +1 from me for the idea.  But looking at the rsync line, I think
> that this will not work if I use makechrootpkg with "-- -i" to install a
> package then use it without "-c" to build on top of that?  I guess we should
> not do the rsync if "-c" is not specified.

I'm fine with this approach. aufs was used originally (well, unionfs)
because it was a cheap way to say "don't break this chroot". Copying
is fine.

BUT (there's always a but), some systems are size restricted. For
instance, slicehost slices have very limited disk space, so copying
the chroot to do this has potential to cause issues. I don't like
special case code for shitty systems, but perhaps we could keep both
aufs and rsync code in there, enabled by a command line switch? (-U
use a union (aufs) to keep chroot clean [DEPRECATED])


More information about the arch-dev-public mailing list