summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2013-11-01common: implement find_cached_packageDave Reisner3-31/+76
This function (currently) searches through $PWD and $PKGDEST looking for a tarball matching the requested package name, architecture, and pkgver. If found, it writes the full path to the located package to stdout and returns 0, else 1. If more than 1 match is found, it's treated as an error and the user will need to figure out what to do. Use this in checkpkg and commitpkg, which previously implemented their own less complete logic, to locate the build artifacts they rely on. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-11-01commitpkg: check all files at once for version controlDave Reisner1-9/+13
Instead of dying at the first sight of an unversioned file, this lets commitpkg dump all known unversioned files at once. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-11-01makechrootpkg: Look harder for -R argumentDave Reisner1-5/+7
We shouldn't be in the business of reparsing makepkg's arguments, but since we have to treat the case of repackaging separately, do a better job of trying to find signs of it happening. This change lets you pass the longopt, --repackage, or multiple shortopts such as -RA, and still get the intended effect. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-11-01checkpkg: Only match .so at end of filenames for soname checkEric Bélanger1-1/+1
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-10-27checkpkg: Fix soname checkEric Bélanger1-2/+2
The bsdtar options were in the incorrect order and objdump couldn't find the files. Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-10-27checkpkg: Create symlinks to old packages in $TEMPDIR instead of $PWDEric Bélanger1-4/+4
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-10-20prepare release20131020Pierre Schmitz1-1/+1
2013-10-20Remove libtool files by defaultPierre Schmitz2-4/+4
2013-10-19Make !staticlibs the default in makepkg.confAllan McRae2-4/+4
Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-19makechrootpkg: add generic support for additional bind mountsDave Reisner1-3/+15
Piggyback on systemd-nspawn's --bind and --bind-ro flags to allow arbitrary mount points to be added to the build container. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-18checkpkg: avoid using PKGEXT to guess tarball nameDave Reisner1-14/+16
We can't rely on PKGEXT since it's not sourced from a controlled location. Case in point, if a user sets PKGEXT=.pkg.tar.gz, checkpkg fails and offers no easy workaround. Instead, use glob expansion to resolve the name of the tarball, bailing if it can't be found definitively. This involves some refactoring to avoid modifying PWD (which is advisable regardless). Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-18ensure that PKGBUILDs aren't sourced via PATHDave Reisner2-2/+2
Fixes FS#36378. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-18arch-nspawn: allow oddly named directoriesDave Reisner1-8/+8
This fixes various errors one might encounter when trying to use a build root or cachedir with whitespace in it. Note that the cachedir fix is not a complete one, as pacman's output is unreliable (and not meant for parsing here). Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-18arch-nspawn: avoid escaping mount_argsDave Reisner1-7/+3
eval is no longer involved in the execution of systemd-nspawn, so we no longer need a layer of escaping on the arguments. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-08Prepare release20130808Pierre Schmitz1-1/+1
2013-08-08Update makepkg.conf from pacman 4.1.2Pierre Schmitz2-0/+4
2013-08-08Makefile: validate generated files as part of buildDave Reisner1-0/+1
For example... $ make GEN checkpkg GEN commitpkg GEN archco archco: line 179: unexpected EOF while looking for matching `"' archco: line 181: syntax error: unexpected end of file make: *** [archco] Error 2 Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-08avoid injecting code into the format stringDave Reisner9-24/+24
Now that die() properly forwards arguments to error(), we can expect that the first arg is a format string and not the entirety of the output. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-08common: Properly forward arguments from die to errorDave Reisner1-1/+1
Also allow this function to be called without arguments, in which case, don't call error at all. Some uses of this function wrongly assumed that this was already allowed. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-08-08arch-nspawn: remove leading - from the machine name/hostnameFlorian Pritz1-1/+4
Signed-off-by: Florian Pritz <bluewind@xinu.at> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-05-25prepare new release20130525Pierre Schmitz1-1/+1
2013-05-25Move all scripts from sbin to bin directoriesPierre Schmitz1-8/+3
2013-05-25Update .gitignoreJan Alexander Steffens (heftig)1-0/+1
2013-05-25crossrepomove: copy packages locallyJan Alexander Steffens (heftig)1-5/+2
Nymeria's HTTP mirror is now password-protected and crossrepomove broke.
2013-05-25makechrootpkg: Add hack for svn sources and makepkg 4.1.1Jan Alexander Steffens (heftig)1-0/+11
2013-05-11makechrootpkg: Update comments to point out the bad hacksJan Alexander Steffens (heftig)1-3/+4
2013-05-11archbuild: Correct makechrootpkg argument orderJan Alexander Steffens (heftig)1-1/+1
The user-passed makechrootpkg_args may contain a "--" to pass arguments to makepkg. In this case, the order is wrong.
2013-05-11arch-nspawn: Quiet systemd-nspawn againJan Alexander Steffens (heftig)1-1/+1
systemd-nspawn always outputs some debug messages over stderr. Both stdout and stderr from inside the chroot are sent through a pty to stdout.
2013-05-11makechrootpkg: Split out chrootbuild into a functionJan Alexander Steffens (heftig)1-28/+42
Now syntax highlighting works properly! :D
2013-05-06makechrootpkg: Ensure we have a writable PKGBUILDJan Alexander Steffens (heftig)1-0/+5
For pkgver updates.
2013-05-06arch-nspawn: setarch to CARCHJan Alexander Steffens (heftig)2-3/+9
Allows calling makechrootpkg without worrying about the architecture
2013-05-03makechrootpkg: Avoid parsing PKGBUILD and support VCS sourcesJan Alexander Steffens (heftig)1-148/+173
- Ensure sources are available before entering chroot - Bind STARTDIR and SRCDEST into the chroot read-only - Refactor makechrootpkg and introduce meaningful functions Avoids copying stuff from/to the chroot as much as possible. With VCS sources these copies can get quite expensive.
2013-05-03makechrootpkg: Remove add_to_db featureJan Alexander Steffens (heftig)3-14/+2
I don't think this is much use in our common workflow. Our pacman configs don't even make a reference to /repo.
2013-05-03lib/common.sh: Introduce locking helper functionsJan Alexander Steffens (heftig)4-37/+29
Reduces code duplication. With makechrootpkg not calling mkarchroot anymore, the lock handover protocol is unneeded. arch-nspawn does not do any locking, so add protection to archbuild.
2013-05-03arch-nspawn: Set machine nameJan Alexander Steffens (heftig)1-1/+1
Recent changes to systemd-nspawn have it take the machine name from the chroot dir name, which isn't unique enough for our setup.
2013-05-02mkarchroot: Refactor chroot running into a new scriptJan Alexander Steffens (heftig)7-128/+159
Separates the two features of mkarchroot. Provides users of the new arch-nspawn with the full feature set of systemd-nspawn. For example, this can be used to bind custom directories into the chroot.
2013-04-08Prepare release20130408Pierre Schmitz1-1/+1
2013-04-08makechrootpkg: Add option to build in temp chrootSébastien Luttringer1-8/+25
Add option -T to build in a temporary chroot. This apply to any kind of filesytem and allow to easily parrallelize builds. This patch also simplify how $default_copy and $copy are defined. Signed-off-by: Sébastien Luttringer <seblu@seblu.net> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-04-07mkarchroot: Fix creation of btrfs snapshot and remove force optionPierre Schmitz3-15/+8
2013-04-06Prepare release20130406Pierre Schmitz1-1/+1
2013-04-06Bump the chroot version as we changed the default package setPierre Schmitz1-1/+1
2013-04-06Only try to use btrfs snapshots if chroots are on a btrfs partitionPierre Schmitz2-3/+7
2013-04-06Sync pacman.conf and makepkg.conf with pacman 4.1Pierre Schmitz10-111/+100
2013-04-06Simplify update call as pacman does no longer support SyncFirstPierre Schmitz1-2/+2
2013-04-06mkarchroot: code cleanupPierre Schmitz1-14/+6
2013-04-06mkarchroot: Create working directory if neededPierre Schmitz1-0/+4
2013-04-06use nspawn to bind mount needed directoriesDave Reisner1-38/+17
systemd-nspawn is capable of doing this as of systemd-198. Doing this means we can remove all of our home grown chroot mount/umount logic, as it's all performed by pacstrap or systemd-nspawn. Signed-off-by: Dave Reisner <dreisner@archlinux.org> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-03-17makechrootpkg: Stat chrootdir type after existancySébastien Luttringer1-3/+3
Move detection of chrootdir type after have check if the directory exists. This avoid the following messages when -r is not given stat: cannot read file system information for '': No such file or directory Signed-off-by: Sébastien Luttringer <seblu@seblu.net> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-03-17archbuild: only use base-devel to new chrootSébastien Luttringer2-3/+3
Since TODO [1] which state: It would be good for base-devel to install everything needed for a build chroot we can remove base and sudo [1] https://www.archlinux.org/todo/add-more-to-base-devel/ Signed-off-by: Sébastien Luttringer <seblu@seblu.net> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2013-03-10makechrootpkg: use var instead of file in $copydirSébastien Luttringer1-7/+4
Signed-off-by: Sébastien Luttringer <seblu@seblu.net> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>