This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The official devtools repository". The branch, master has been updated via 086ff8b9e7cc5a5cb57d230039a28354fe3f62f8 (commit) via 041afb5f0740ca5ecc96daa48681b2272f8e8e90 (commit) via 3efa4b7bf550e87ade5f484e2f086e164292a51f (commit) via a9dab9533498577cd0196939bd9346310a7552e0 (commit) via a396a6908110a860a89a1e640153bac1e0da2a57 (commit) via 78fabcfa0694ae8c81e1d5ec0e5dacaed533545e (commit) via 3f72579b2813bd93c586aec80c48472f41c60d78 (commit) via 430e1265fbe5c752217195aebdb5949416f0bb7a (commit) via 56cace32b29e427e2f33754cf7f50bf691b619ce (commit) via 2fdd1654b5dbfa508b15e258b51af1a000402459 (commit) via 007d6fc15feb9e4ba8b0e7eedf83d14eb4d54441 (commit) via 4f23609d4e4a9a8be837b6d426442de1cd68c653 (commit) via 31a800fd8821396f6a17a2e38e04c792c7f61b3e (commit) via 6d1992909cc46e293027ff488ae2632047603e66 (commit) via 928744cbc457b9b7e89e4b80c136ccbfd1164fb2 (commit) via 2a9b30ed3594c2dc8c5012fc845572b8d452a9b0 (commit) from c9b1fc08b5f63c9f6bb1a992431c661129ab2db1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 086ff8b9e7cc5a5cb57d230039a28354fe3f62f8 Author: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> Date: Wed Jul 5 18:35:16 2017 +0200 archrelease: Whitespace adjustment commit 041afb5f0740ca5ecc96daa48681b2272f8e8e90 Author: Laurent Carlier via arch-projects <arch-projects@archlinux.org> Date: Mon Jun 19 17:55:10 2017 +0200 archrelease: sync the repos directory before commiting changes commit 3efa4b7bf550e87ade5f484e2f086e164292a51f Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 12 19:57:05 2017 -0400 makechrootpkg: Fix broken symlinks because of chroot SRCPKGDEST /srcpkgdest Commit 58968cf fixed symlinks for package products in $startdir in light of the simplified chroot setup. However, a similar change needs to be made for source-package products. This was an easy omission to make because makechrootpkg does not produce source-pakcages by default. commit a9dab9533498577cd0196939bd9346310a7552e0 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:10 2017 -0400 Add `# shellcheck` directives to quiet shellcheck, add PKGBUILD.proto The added PKGBUILD.proto file is so that shellcheck can know know what to expect that a PKGBUILD sets. commit a396a6908110a860a89a1e640153bac1e0da2a57 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:09 2017 -0400 Make slightly more involved changes to make shellcheck happy. - Use `read -r` instead of other forms of read or looping - Use arrays instead of strings with whitespaces. - In one instance, use ${var%%.*} instead of $(echo $var|cut -f. -d1) commit 78fabcfa0694ae8c81e1d5ec0e5dacaed533545e Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:08 2017 -0400 Quote strings that shellcheck warns about. These changes are all strictly "slap some double-quotes in there". Anything more than that is not included in this commit. commit 3f72579b2813bd93c586aec80c48472f41c60d78 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:07 2017 -0400 Make purely stylistic changes to make shellcheck happier. These are purely stylistic changes that make shellcheck complain less. This does NOT include things like quoting currently unquoted variables. commit 430e1265fbe5c752217195aebdb5949416f0bb7a Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:06 2017 -0400 Makefile: Add a simple 'check' target that runs shellcheck commit 56cace32b29e427e2f33754cf7f50bf691b619ce Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:05 2017 -0400 makechrootpkg: Add a comment warning about a bug in "sudo -i" The bug isn't currently triggered, but I accidentally did trigger when I was trying to modify the command a bit. I figure a "caution" sign would be helpful to any future developers. commit 2fdd1654b5dbfa508b15e258b51af1a000402459 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:04 2017 -0400 Makefile: m4_changequote([[[, ]]]) to avoid accidental quoting. The default m4 quote characters: `QUOTE' are troublesome, because ` is fairly likely to pop up in a shell script (if not for a subshell, because it is a useful character in comments and user-facing messages). So, this changes it to [[[QUOTE]]], as it is unlikely to see three braces together like that, let alone in unbalanced sets. commit 007d6fc15feb9e4ba8b0e7eedf83d14eb4d54441 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:03 2017 -0400 Makefile: add .DELETE_ON_ERROR: The absence of it was allowing an (m4-produced) syntax error in in a change I had made to be masked. commit 4f23609d4e4a9a8be837b6d426442de1cd68c653 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:02 2017 -0400 makechroot: download_sources: Accept makepkg_owner as an argument What this is really doing is fixing a conflict that I had incorrectly resolved when rebasing what became 2fd5931 onto cda9cf4. Of course, because of dynamic scoping, everything worked out, and everything worked as intended. Before cda9cf4, it was appropriate for download_sources to take src_owner as an argument, but after cda9cf4, it is now appropriate to take makepkg_user as an argument. However, it still takes src_owner as an argument, but pays 0 attention to it; instead looking at makepkg_user which it happily inherited because of dynamic scoping. So change it to take makepkg_user as the argument. commit 31a800fd8821396f6a17a2e38e04c792c7f61b3e Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:01 2017 -0400 lib/archroot.sh: subvolume_delete_recursive: support arbitrary recursion The `-xdev` flag to `find` makes it not recurse over subvolumes; so it only supports recursion with depth=1. Fix this by having the function recursively call itself. commit 6d1992909cc46e293027ff488ae2632047603e66 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:41:00 2017 -0400 makechrootpkg: sync_chroot: Make more general. This is inspired by the thought that went in to the delete_chroot is_subvolume commit. sync_chroot($chrootdir, $copydir) copies `$chrootdir/root` to `$copydir`. That seems a little silly; why do we care about "$chrootdir"? Have it just be sync_chroot(source, destination) like every other sync/copy command. Where this becomes tricky is check to decide if we are going to use btrfs subvolumes or not. We don't care if "$source/.." is on btrfs; the root could be a directly-mounted subvolume, but and the destination could be another subvolume of the same btrfs mounted somewhere else. The things we do care about are: - The source is a btrfs subvolume (so that we can snapshot it) - The source is on the same filesystem as the directory that the copy will be created in. - If the destination exists: * that it is not a mountpoint (so that we can delete and recreate it) * that it is a btrfs subvolume (so that we can quickly delete it) On the last point, it isn't necessary for creating the new snapshot, just for quick deletion. That can be a separate check, where we use regular `rm` for deleting the existing copy, but use subvolume snapshots for creating the new one. commit 928744cbc457b9b7e89e4b80c136ccbfd1164fb2 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:40:59 2017 -0400 makechrootpkg: sync_chroot: make usage easier to understand. Also, shorten the "Synchronizing" message to only include the full path to the copy if it was specified. The capslocked variable names in the Usage comment were references to things in Parabola's tools, that didn't make much sense here out of context. commit 2a9b30ed3594c2dc8c5012fc845572b8d452a9b0 Author: Luke Shumaker <lukeshu@parabola.nu> Date: Fri May 5 18:40:58 2017 -0400 makechrootpkg: delete_chroot: Fix the is-btrfs-subvolume check. First of all, it ran `is_btrfs "$chrootdir"` to decide if it was on btrfs, but $chrootdir wasn't defined locally; it just happens to work because $chrootdir was defined in main(). (I noticed this because in Parabola, it is called differently, so $chrootdir was empty). So I was tempted to just change it to `is_btrfs "$copydir"`, but if $copydir is just a regular directory on a btrfs filesystem, then it It would leave much of $copydir intact. What we really care about is if $copydir is a btrfs subvolume; which we can check by combining the is_btrfs check with inspecting the inum of the directory. I put this combined check in lib/archroot.sh:is_subvolume. https://lists.archlinux.org/pipermail/arch-projects/2013-September/003901.ht... ----------------------------------------------------------------------- Summary of changes: Makefile | 7 +++-- PKGBUILD.proto | 48 ++++++++++++++++++++++++++++++ arch-nspawn.in | 22 +++++++------- archrelease.in | 9 ++++-- archrm.in | 2 +- bash_completion.in | 6 ++-- checkpkg.in | 13 ++++---- commitpkg.in | 41 ++++++++++++++------------ crossrepomove.in | 14 +++++---- find-libdeps.in | 8 ++--- finddeps.in | 11 +++---- lddd.in | 20 ++++++------- lib/archroot.sh | 30 ++++++++++++++++--- lib/common.sh | 42 ++++++++++++++++---------- lib/valid-tags.sh | 3 ++ makechrootpkg.in | 85 ++++++++++++++++++++++++++++++----------------------- makepkg-i686.conf | 3 ++ makepkg-x86_64.conf | 3 ++ mkarchroot.in | 6 ++-- rebuildpkgs.in | 12 +++++--- 20 files changed, 256 insertions(+), 129 deletions(-) create mode 100644 PKGBUILD.proto hooks/post-receive -- The official devtools repository