From e532228c30c3bc7a3e3e1e40ea5ee1a553d4bb70 Mon Sep 17 00:00:00 2001 From: Jonas Bernoulli Date: Fri, 22 Dec 2017 21:22:30 +0100 Subject: [PATCH 1/4] Assimilate ghub v1.3.0-33-gb5f8152 --- .gitmodules | 3 +++ lib/ghub | 1 + 2 files changed, 4 insertions(+) create mode 160000 lib/ghub diff --git a/.gitmodules b/.gitmodules index 8600183..c8b1ec5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -24,6 +24,9 @@ [submodule "epkg"] path = lib/epkg url = git@github.com:emacscollective/epkg.git +[submodule "ghub"] + path = lib/ghub + url = git@github.com:tarsius/ghub.git [submodule "git-modes"] path = lib/git-modes url = git@github.com:magit/git-modes.git diff --git a/lib/ghub b/lib/ghub new file mode 160000 index 0000000..b5f8152 --- /dev/null +++ b/lib/ghub @@ -0,0 +1 @@ +Subproject commit b5f81522b0b5b896a62347eb5f238f67b47790b0 From 492ccd5441bbb55f1f62d3cd5a91459e32d1231e Mon Sep 17 00:00:00 2001 From: Jonas Bernoulli Date: Thu, 11 Jan 2018 11:43:27 +0100 Subject: [PATCH 2/4] Emacs.g: Move Makefile and borg-bootstrap into borg package In the borg repository these files are renamed to "borg.mk" and "borg.sh" and modified slightly. Add a new "Makefile" here. It defines one simple target `borg-bootstrap', which is required to make "borg.mk" and "borg.sh" available during bootstrap and sources "borg.mk" for all the other targets it used to define. The target defined here is fairly simple and hopefully won't have to be updated often, but independent configurations still have integrate a copy of this file, because we cannot bootstrap out of thin air and `git submodule' isn't up to the task yet. Update borg to v2.0.0-20-g8399ec8 --- Makefile | 71 ++++----------------------------------- bin/borg-bootstrap | 82 ---------------------------------------------- lib/borg | 2 +- 3 files changed, 7 insertions(+), 148 deletions(-) delete mode 100755 bin/borg-bootstrap diff --git a/Makefile b/Makefile index 1cc4e36..974ffd8 100644 --- a/Makefile +++ b/Makefile @@ -1,66 +1,7 @@ -# Copyright (C) 2016-2017 Jonas Bernoulli -# -# Author: Jonas Bernoulli -# License: GPL v3 +-include lib/borg/borg.mk -EMACS ?= emacs - -.PHONY: all help build build-init quick bootstrap clean -.FORCE: - -all: build - -SILENCIO = --load subr-x -SILENCIO += --eval "(put 'if-let 'byte-obsolete-info nil)" -SILENCIO += --eval "(put 'when-let 'byte-obsolete-info nil)" -SILENCIO += --eval "(fset 'original-message (symbol-function 'message))" -SILENCIO += --eval "(fset 'message\ -(lambda (format &rest args)\ - (unless (equal format \"pcase-memoize: equal first branch, yet different\")\ - (apply 'original-message format args))))" - -help: - $(info ) - $(info make [all|build] = rebuild all drones and init files) - $(info make quick = rebuild most drones and init files) - $(info make lib/DRONE = rebuild DRONE) - $(info make build-init = rebuild init files) - $(info make bootstrap = bootstrap collective or new drones) - $(info make clean = remove all *.elc and *-autoloads.el) - @printf "\n" - -build: - @rm -f init.elc - @$(EMACS) -Q --batch -L lib/borg --load borg $(SILENCIO) \ - --funcall borg-initialize \ - --funcall borg-batch-rebuild 2>&1 - -build-init: - @rm -f init.elc - @$(EMACS) -Q --batch -L lib/borg --load borg \ - --funcall borg-initialize \ - --funcall borg-batch-rebuild-init 2>&1 - -quick: - @rm -f init.elc - @$(EMACS) -Q --batch -L lib/borg --load borg $(SILENCIO) \ - --funcall borg-initialize \ - --eval '(borg-batch-rebuild t)' 2>&1 - -lib/%: .FORCE - @$(EMACS) -Q --batch -L lib/borg --load borg $(SILENCIO) \ - --funcall borg-initialize \ - --eval '(borg-build "$(@F)")' 2>&1 - -bootstrap: - @printf "\n=== Running 'git submodule init' ===\n\n" - @git submodule init - @printf "\n=== Running 'bin/borg-bootstrap' ===\n" - @bin/borg-bootstrap - @printf "\n=== Running 'make build' ===\n\n" - @make build - -clean: - @find lib -name '*-autoloads.el' -exec rm '{}' ';' - @find lib -name '*.elc' -exec rm '{}' ';' - @rm -f init.elc +bootstrap-borg: + @git submodule--helper clone --name borg --path lib/borg \ + --url git@github.com:emacscollective/borg.git + @cd lib/borg; git symbolic-ref HEAD refs/heads/master + @cd lib/borg; git reset --hard HEAD diff --git a/bin/borg-bootstrap b/bin/borg-bootstrap deleted file mode 100755 index a47033b..0000000 --- a/bin/borg-bootstrap +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2016-2017 Jonas Bernoulli -# -# Author: Jonas Bernoulli -# License: GPL v3 - -hive_remote=$(git config -f .gitmodules borg.collective) -push_remote=$(git config -f .gitmodules borg.pushDefault) - -toplevel=$(git rev-parse --show-toplevel) -test -n "$toplevel" || exit 2 -cd "$toplevel" - -git submodule--helper list | -while read mode sha1 stage path -do - if test -e "$path" && ! test -e "$path"/.git - then - name=$(git submodule--helper name "$path") - - echo "\n--- [$name] ---\n" - - git submodule--helper clone \ - --name "$name" \ - --path "$path" \ - --url $(git config -f .gitmodules submodule."$name".url) - - git config -f .gitmodules --get-all submodule."$name".remote | - while read remote remote_url - do - if ! test -e "$path"/.git - then - git submodule--helper clone \ - --name "$name" \ - --path "$path" \ - --url "$remote_url" && - git remote rename origin "$remote" - else - cd "$path" - git remote add "$remote" "$remote_url" - git fetch "$remote" - cd "$toplevel" - fi - - if test -e "$path"/.git - then - cd "$path" - if test "$remote" = "$hive_remote" - then - if test -e "$toplevel/.hive-maint" - then - git config remote.pushDefault "$remote" - else - branch=$(git rev-parse --abbrev-ref HEAD) - test -n "$branch" && - git config branch.master.remote "$remote" - fi - elif test "$remote" = "$push_remote" - then - git config remote.pushDefault "$remote" - fi - cd "$toplevel" - fi - done - - if test -e "$path"/.git - then - cd "$path" - if ! git reset --hard "$sha1" - then - echo >&2 "futile: Checkout of '$sha1' into submodule path '$path' failed" - git reset --hard HEAD - exit 1 - fi - cd "$toplevel" - else - echo >&2 "futile: Clone of any remote into submodule path '$path' failed" - exit 1 - fi - fi -done diff --git a/lib/borg b/lib/borg index 4b908fd..8399ec8 160000 --- a/lib/borg +++ b/lib/borg @@ -1 +1 @@ -Subproject commit 4b908fd5b43dd9e48b3580b87cc77c4b65939f08 +Subproject commit 8399ec8f10204df92d5192823bb9bdeae7a4e3bc From 589754d0581c7d6d266bf436bc8ac9c3ca2b175c Mon Sep 17 00:00:00 2001 From: Jonas Bernoulli Date: Thu, 11 Jan 2018 12:01:00 +0100 Subject: [PATCH 3/4] Update 4 drones Update dash to 2.13.0-61-g528e5a5 Update ghub to v1.3.0-34-g1395d56 Update magit to 2.11.0-389-g260e4afe3 Update use-package to 2.3-335-g05a4033 --- lib/dash | 2 +- lib/ghub | 2 +- lib/magit | 2 +- lib/use-package | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/dash b/lib/dash index 91d8cb0..528e5a5 160000 --- a/lib/dash +++ b/lib/dash @@ -1 +1 @@ -Subproject commit 91d8cb01e62bab0d6267d3d4dbcabd6da6fdea78 +Subproject commit 528e5a51f1af668e3075f2beccd2b39785ccb2ba diff --git a/lib/ghub b/lib/ghub index b5f8152..1395d56 160000 --- a/lib/ghub +++ b/lib/ghub @@ -1 +1 @@ -Subproject commit b5f81522b0b5b896a62347eb5f238f67b47790b0 +Subproject commit 1395d56496c1581dda0c70a091500e2b947b8d35 diff --git a/lib/magit b/lib/magit index 0ee62ee..260e4af 160000 --- a/lib/magit +++ b/lib/magit @@ -1 +1 @@ -Subproject commit 0ee62ee80eca660a5d05dab34bcf4b80a3ee749d +Subproject commit 260e4afe32da63c32188b6a0b8262d3e3a011a2a diff --git a/lib/use-package b/lib/use-package index 865e931..05a4033 160000 --- a/lib/use-package +++ b/lib/use-package @@ -1 +1 @@ -Subproject commit 865e931889f33495f3ce1b9e14b5b3e959887424 +Subproject commit 05a4033b830bf52c596ceedea10b2cbd91f85fdb From 05231107649676d7ee94e0288c3364870047c4a0 Mon Sep 17 00:00:00 2001 From: Jonas Bernoulli Date: Thu, 11 Jan 2018 12:05:03 +0100 Subject: [PATCH 4/4] ghub: Update upstream url --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index c8b1ec5..4f1ffe5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -26,7 +26,7 @@ url = git@github.com:emacscollective/epkg.git [submodule "ghub"] path = lib/ghub - url = git@github.com:tarsius/ghub.git + url = git@github.com:magit/ghub.git [submodule "git-modes"] path = lib/git-modes url = git@github.com:magit/git-modes.git