#!/bin/bash
-set -axP
+set -x
+
+set -aP
ORIG_PATH="$PATH"
PATH="$PWD/zygo:$ORIG_PATH"
+# Batch mode scheduling
+schedtool -v -B $$
+
# Rename the kernel directory
rename-kernel -zb64
cd .
PATH="$PWD/zygo:$ORIG_PATH"
+# Reset kernel sources to git HEAD
+reset-kernel
trash debian
+# Reset module sources from Debian
new-kernel
-make oldconfig
+# Long ago it was "make oldconfig && make install"
+KCONFIG_NOTIMESTAMP=1 make oldconfig
yes '' | fakeroot make-kernel "$@"
+# Move all products to the same directory for pickup
mv -vi ../modules/*.deb ../
#!/bin/sh
-
set -x
-git clean -dfx
+
+git clean -qdfx
git stash
git cherry-pick --quit
-hashes="$(git log --date-order ^HEAD --no-merges --format=%h --reverse "$@")"
+hashes="$(git log --date-order ^HEAD --no-merges --format=%h --reverse "$@" | tr '\n' ' ')"
+tips="$( git log --date-order ^HEAD --no-merges --format=%h --no-walk "$@" | tr '\n' ' ')"
+
+pickList=''
for x in $hashes; do
if git cherry-pick -x "$x"; then
- echo -n '++++ ' >&9
+ prefixString='++++'
else
git cherry-pick --abort
- echo -n '---- ' >&9
+ prefixString='----'
fi
- git log --oneline --no-walk "$x" >&9
-done 9> PICK-LIST
-
-git merge -s ours "$x" -m"zygo: cherry-picked up to $x (extra args $*)
+ pickList="$pickList
+$prefixString $(git log --oneline --no-walk "$x")"
+done
-Commits included:
+if [ -n "$pickList" ]; then
+ git merge -s ours $hashes -m"zygo: cherry-picked up to $*
-$(cat PICK-LIST)"
+Commits included (++++) and excluded (----):
+$pickList"
+fi
--- /dev/null
+#!/bin/sh
+set -x
+set -a
+ORIG_PATH="$PATH"
+PATH="$PWD/zygo:$ORIG_PATH"
+
+# Mine unmerged btrfs commits from upstreams
+# ...but don't pick up the ancient ones from 2009
+pick-kernel \
+ linus/master \
+ --remotes=btrfs-next/\* \
+ --remotes=mason/\* \
+ --after='now - 90 days' \
+ -- \
+ fs/btrfs \
+
+KCONFIG_NOTIMESTAMP=1 make oldconfig prepare modules_prepare -j
+make SUBDIRS=fs/btrfs -j
--- /dev/null
+#!/bin/sh
+set -x
+git clean -qdfx
+git reset --hard