Compare commits
554 Commits
b788f4f627
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 87527646fa | |||
| 30af54b750 | |||
| ac0ebb5302 | |||
| 4bf24c2b18 | |||
| 20b396effd | |||
| b3677dad4c | |||
| b181f59f4c | |||
| 5d849384bc | |||
| 5e640711ce | |||
| 44e4605be8 | |||
| 60ba3328fa | |||
| 5a5301fefb | |||
| 4ee7c34161 | |||
| fe1d19a9c7 | |||
| 6d8541f052 | |||
| ba2359f8b9 | |||
| 9ef09754be | |||
| cbe223166e | |||
| fb2785f694 | |||
| f9dcf157a0 | |||
| 83a482de03 | |||
| 208f383925 | |||
| 05f9535a9b | |||
| c18fd9c44e | |||
| 07fa302d43 | |||
| 4a2b27f54a | |||
| ff507ea16a | |||
| 639196f0c9 | |||
| 404cb2d98c | |||
| 665d808660 | |||
| 15027fef29 | |||
| 26ae12f638 | |||
| 56393380b9 | |||
| d51d1a1266 | |||
| af5599ba54 | |||
| ce8017c6d2 | |||
| b64f8ddffa | |||
| e926d562c0 | |||
| 064adbc0b7 | |||
| 4872b95c43 | |||
| 4547dd5681 | |||
| 655ac1404a | |||
| 521d768635 | |||
| f736c46b81 | |||
| f537b99d02 | |||
| ad4b03871e | |||
| 4ef4bbd4ad | |||
| 2e44bfa09a | |||
| 424b4c6971 | |||
| 4130448a55 | |||
| ed6a6e5a34 | |||
| 36ccd48cfc | |||
| 61f2b376ee | |||
| b59888dc99 | |||
| d29e120c72 | |||
| 16cc43ad28 | |||
| 3773af632c | |||
| 2aeb58d9ed | |||
| affc7521d6 | |||
| f5a7d78d4f | |||
| c42c636231 | |||
| 99b21dbe8e | |||
| 3af4546839 | |||
| ace7801796 | |||
| 7d0a920c8c | |||
| f24f1ff4b7 | |||
| 703359301b | |||
| 66da50eb92 | |||
| 757a24894a | |||
| 4b19aabba6 | |||
| 626642cd25 | |||
| a1c91da619 | |||
| fac4169389 | |||
| a5f1ea1358 | |||
| db8df130fe | |||
| 52f4ab3157 | |||
| 8519d854fb | |||
| edd01e4445 | |||
| 9ea2820411 | |||
| 967818f315 | |||
| ca8e06f300 | |||
| a611b5010f | |||
| 2bc353c8fc | |||
| d4dd979311 | |||
| cd4bafbed3 | |||
| 51d7222c84 | |||
| 888df5c664 | |||
| 220394ed0d | |||
| 89280d6087 | |||
| cb3ad780b1 | |||
| 9615c940bb | |||
| 33e0fb21d6 | |||
| 2a8b2b3a40 | |||
| f765e1d38f | |||
| e6c011d007 | |||
| ba8aaa4ade | |||
| 9a93c6f983 | |||
| 803e9e00e0 | |||
| bb795a9555 | |||
| ac81aeed31 | |||
| 6a4d6d88c5 | |||
| 32ae7e2b38 | |||
| 4e62da3d52 | |||
| b19ae63ceb | |||
| 17c7e2446c | |||
| 1dab2c159a | |||
| 9cabb1053d | |||
| caa2f2d59c | |||
| 6a23042b74 | |||
| 33d13bb455 | |||
| 0074ad6643 | |||
| e2d3c05376 | |||
| c62f30ec32 | |||
| 536a108040 | |||
| c1525eaa60 | |||
| dcd2e1cd19 | |||
| 19865adb6a | |||
| b705e9e1e5 | |||
| 87a6a3f1f8 | |||
| 5914e2e578 | |||
| e39c7a47fc | |||
| 24c55e142b | |||
| de19519be0 | |||
| 3d87e928d4 | |||
| c89f338601 | |||
| 6feaddc542 | |||
| eaecbcf41f | |||
| 7b07b75747 | |||
| 0f397b0ee3 | |||
| 69918e681f | |||
| cb90b72836 | |||
| f5a6ffa8de | |||
| d3845601e9 | |||
| 1385472aaf | |||
| 5fd15c706b | |||
| 5bd502c72f | |||
| f39c4a51dd | |||
| 8e857abf29 | |||
| 2abd95da6d | |||
| 15a3697679 | |||
| a2d7299e72 | |||
| dcdda64b9e | |||
| 5cc5b04b18 | |||
| 0c87d0cc65 | |||
| a7ea5780cc | |||
| 6f06fc9503 | |||
| 6bc1f2d05f | |||
| c736041f3c | |||
| 8a5ad04776 | |||
| 6a726a331d | |||
| b0fe5b4a44 | |||
| 0e4aaabb54 | |||
| 8ddbae5ee2 | |||
| cfa0dd5a9a | |||
| 5644789d64 | |||
| c7c8a96a57 | |||
| f73512107c | |||
| f8401d00a4 | |||
| b79037c055 | |||
| 8af9a55187 | |||
| 1b200f217b | |||
| c0e6d13a1f | |||
| 2b00e03999 | |||
| bf2dabe3f4 | |||
| d0f549ce22 | |||
| 89165e9d88 | |||
| a601e93d00 | |||
| fa4d275cc0 | |||
| 9867d4f232 | |||
| e3b3484905 | |||
| def393b930 | |||
| c1096e2b01 | |||
| 04e1dad952 | |||
| e170bafffc | |||
| 23f31a8c4d | |||
| d5a5375379 | |||
| 7d520d864e | |||
| 16063402be | |||
| 0520592fc5 | |||
| f27a25fdf5 | |||
| 0181a703f9 | |||
| aad7967402 | |||
| 7814c0323e | |||
| eb1ee09769 | |||
| 5265f3e83c | |||
| 5aa03f88dc | |||
| ff2a56ac12 | |||
| 51ce3374b9 | |||
| 16576fd1f6 | |||
| 3ff52465dd | |||
| 0e9f8e2dd6 | |||
| 4225f3c8da | |||
| fff8c26df9 | |||
| 7d8a986784 | |||
| 4e25b796ca | |||
| 581c1c0c0a | |||
| 8d1b6b114a | |||
| 75ca9d485d | |||
| 74dc86d56c | |||
| 3e3c866ec0 | |||
| 2b0c63a783 | |||
| 8386beac1d | |||
| dc9694fb32 | |||
| 70a155a0a7 | |||
| 673aaf1c13 | |||
| c059bc34d8 | |||
| f2a3552286 | |||
| f491fe517a | |||
| f6c8f4fae6 | |||
| b43ea19e1e | |||
| c6ff40e288 | |||
| 86509e2598 | |||
| adc5498641 | |||
| 74d779ee35 | |||
| cc25a91cf1 | |||
| 13c909f085 | |||
| 2823433f7c | |||
| abfb28dea2 | |||
| ebac73704b | |||
| 74f1df6893 | |||
| 1ef4c22ec6 | |||
| 262516d3da | |||
| 1304c5180f | |||
| c3cabed6e7 | |||
| 274b79f293 | |||
| aa76b5ad79 | |||
| 84496271c4 | |||
| ac4670492e | |||
| aaed0c2547 | |||
| ed13289934 | |||
| a575ecdd68 | |||
| 0a2a4c68fa | |||
| d9692da89c | |||
| fbbc8d2d8b | |||
| d27186a177 | |||
| 812d59e4dd | |||
| 995c258aa5 | |||
| bd9af70a97 | |||
| 465c40b927 | |||
| 6f11b8c453 | |||
| 86ec9e9d54 | |||
| 78fe3e7956 | |||
| ad8a8c3cac | |||
| 46596fc5f6 | |||
| f09bbf8d4a | |||
| 83e0f1cda5 | |||
| aa4f63a8ce | |||
| 499a10837f | |||
| 405ccd1709 | |||
| b735c95c84 | |||
| e61a0f1de9 | |||
| 52b013e165 | |||
| 76081fd88f | |||
| 4a9649f096 | |||
| 061b6986a3 | |||
| ff49052baa | |||
| 7bd5255c63 | |||
| 473f4b19f0 | |||
| e04d1e55a1 | |||
| e23f053b89 | |||
| ddc416a45a | |||
| c07f55e8d4 | |||
| d3e832f064 | |||
| 6e5c1c158c | |||
| 07a326114e | |||
| 2725d4085c | |||
| 860cd61ba5 | |||
| 4bfd6d05ca | |||
| 9e0af5fdff | |||
| 8ac3e35b1a | |||
| cc4d918a07 | |||
| 63e3b7fb17 | |||
| 562cfaebf8 | |||
| b47b670d94 | |||
| 7aa8403b70 | |||
| 6ec142e8f4 | |||
| 49cf91b789 | |||
| 4437e86f72 | |||
| 8ec5e261d4 | |||
| 815c820e6a | |||
| 4490194389 | |||
| 71052b8c26 | |||
| dc43029892 | |||
| bf592223de | |||
| 8b3fb3f4a2 | |||
| e9909ef057 | |||
| e49ccc5aa3 | |||
| e78c1cba6d | |||
| 689ff9bd5c | |||
| 7c3ce01b27 | |||
| 6081b7ad79 | |||
| 0e902c1f57 | |||
| df20a2ea1e | |||
| 870fdc3f65 | |||
| 5f11d27f58 | |||
| e9df237ca9 | |||
| 8b6081dbbf | |||
| f064c794e3 | |||
| 960e959bd6 | |||
| ba30ad22f8 | |||
| 29db3ce86a | |||
| 2d89475f0b | |||
| f71fbdafac | |||
| 90b16dad40 | |||
| 05b9308c1b | |||
| ca8e6824ea | |||
| a0f2505728 | |||
| 3651679c86 | |||
| b0bffe5d72 | |||
| 86446de9a8 | |||
| a63b8c6a0b | |||
| ef681069c7 | |||
| 5797bc85bf | |||
| 4c829133a3 | |||
| 2328446520 | |||
| af4adc0fc8 | |||
| f61a00d292 | |||
| 7d4ce6f073 | |||
| db5b029f78 | |||
| e8754afca2 | |||
| c179adccb2 | |||
| caed7bbfdf | |||
| ff9df11a15 | |||
| 5396812290 | |||
| 9996a47d0c | |||
| abd249030b | |||
| 3c132ca4dc | |||
| f219908d67 | |||
| 5e371cf734 | |||
| 76901304c4 | |||
| 83c25e328f | |||
| ccd7140d6d | |||
| 0db52b89f0 | |||
| 93cda87bbd | |||
| 35ef330df8 | |||
| 348b76aa04 | |||
| df748183ab | |||
| e470dfc258 | |||
| 56e2c037b5 | |||
| c5c4167361 | |||
| 2f70f87f41 | |||
| 0519d155fa | |||
| 6d801d0f0e | |||
| fd21d77526 | |||
| 5b927900ae | |||
| 5fcb2bcc83 | |||
| 6dd4caf947 | |||
| 506d1adfcc | |||
| e506f7c2e6 | |||
| 574b2d6646 | |||
| b0adbd4419 | |||
| 8125081177 | |||
| 229339dc17 | |||
| 99b54df287 | |||
| 70689047ca | |||
| b4be3ed2a6 | |||
| 8e814917b6 | |||
| a8686d9169 | |||
| 830f63641b | |||
| 3e0def4305 | |||
| 722a304023 | |||
| 423fa1ed26 | |||
| 6cdc0ad1e6 | |||
| 65b3169d98 | |||
| 122febceb4 | |||
| a3cc84b617 | |||
| 20855b2976 | |||
| 93d9d86361 | |||
| f83df38d5e | |||
| dcd563fdc7 | |||
| 84ea47f08d | |||
| b79a0873dd | |||
| 9adbe55164 | |||
| 248b3088b3 | |||
| f653f7ba23 | |||
| be6466c0ff | |||
| c2aef5c998 | |||
| 3094407195 | |||
| 00af1b4b56 | |||
| e10f74c5b6 | |||
| e2b8cdbce3 | |||
| 6cd664dba6 | |||
| 0d8f27357a | |||
| ce1ebb3ad3 | |||
| 0065d36bc8 | |||
| 7a952de4f8 | |||
| 37d61b5b21 | |||
| 75f5a8bbf5 | |||
| da1670c57c | |||
| 87dec12b01 | |||
| 547db8ac94 | |||
| 0892937941 | |||
| b4f9be57d3 | |||
| 3ecf19cb8a | |||
| 531c9d5a38 | |||
| 2d6d17261c | |||
| 668c105ccf | |||
| 813836fbba | |||
| fac1199cd6 | |||
| 171c957c40 | |||
| 231ffbd0e8 | |||
| e4cd434586 | |||
| 38370c101f | |||
| a89e757718 | |||
| e58cbf7b72 | |||
| 902ad835b4 | |||
| 3f4df7c503 | |||
| a304b1f744 | |||
| 94e5dfd091 | |||
| bdd64372fd | |||
| ec2cd858bd | |||
| 6bc4552d41 | |||
| 86f40be2cb | |||
| 7ac7ed3cec | |||
| a1866254f9 | |||
| b7fc80b5f5 | |||
| 629dd5525e | |||
| 0897d11405 | |||
| 8725d22874 | |||
| b386c66837 | |||
| 3759fd137c | |||
| eb48cdb9a3 | |||
| 512f130117 | |||
| 0ca370c285 | |||
| 0092231f3d | |||
| edfc6e77a2 | |||
| 92137412c3 | |||
| af7c620129 | |||
| da09e09caa | |||
| bda908bfaf | |||
| c71a74355f | |||
| 0f23ba1415 | |||
| 4c8db72ec1 | |||
| a7a5f76cb8 | |||
| 2281b71b92 | |||
| 3d28103804 | |||
| 7f37fd666d | |||
| f8f9573410 | |||
| 144f3ed14d | |||
| 1492a916e9 | |||
| 260216c685 | |||
| 2254ce56f6 | |||
| 9cb1499561 | |||
| 4d5ae9164b | |||
| d7413cccee | |||
| c519c04a28 | |||
| 4db6690bc4 | |||
| 27a7269148 | |||
| d5067dff46 | |||
| 769c764feb | |||
| b53412d728 | |||
| 3f9988d206 | |||
| 295e63d821 | |||
| 4729e27ea8 | |||
| b590a2ffef | |||
| 52b254ff59 | |||
| f78387413a | |||
| f17061b4cb | |||
| 00effae167 | |||
| e50b62afa2 | |||
| 6470d7f8bd | |||
| 5a56c572af | |||
| ac8011ddb1 | |||
| d98908ad5c | |||
| 6d58eee37f | |||
| fab6515531 | |||
| 60f6f4cd80 | |||
| 7792e96334 | |||
| 8744ba58c9 | |||
| 728bc67ddf | |||
| b09fd38e65 | |||
| 9a64bad16e | |||
| 92b58d8999 | |||
| db02bd8483 | |||
| a3696af35b | |||
| dfc210c1e6 | |||
| bf8a4a338f | |||
| e8ef355d0e | |||
| 2738eb065c | |||
| 0fc8a660c3 | |||
| ec7a9d3419 | |||
| 69a1ffb7b9 | |||
| f9e28d6191 | |||
| ae447e47ac | |||
| 44ed26aa79 | |||
| 8969503da5 | |||
| d380b248ab | |||
| 3c28331b1c | |||
| 3e5fddcba1 | |||
| 9a2602e91b | |||
| 3483994b50 | |||
| 0c58fcb3f3 | |||
| f54c7532ae | |||
| 1550231681 | |||
| 84531839fb | |||
| 6363a0aeb3 | |||
| 357b174431 | |||
| d428f8f7d1 | |||
| 37a0010637 | |||
| 6344f05549 | |||
| 3edfeaa661 | |||
| 8e193ce86f | |||
| 4198ceb4b3 | |||
| ef451a063b | |||
| 1a64bce2fb | |||
| cf6dbc2aa1 | |||
| 38606d2190 | |||
| cbd437de2b | |||
| 93ddf62926 | |||
| be1d212a73 | |||
| 2c3fca1f3b | |||
| 7c706af8bd | |||
| 384ad70a73 | |||
| dd9a2cb770 | |||
| e5901c1e09 | |||
| fa53d51d45 | |||
| 78d5d9dfc4 | |||
| 902dcbff02 | |||
| 367099dd60 | |||
| 5681cf9420 | |||
| db6757652e | |||
| 81c01d8fc9 | |||
| 4f3ca6cdfd | |||
| 719c9afde5 | |||
| d29a85bf5c | |||
| bd193a7eaf | |||
| 4a87e022cf | |||
| 706e49c570 | |||
| ce660ae88d | |||
| 6fdc30e819 | |||
| 2676f47a12 | |||
| 82d08e8aa8 | |||
| 706f5913e6 | |||
| 4b720b8dd7 | |||
| 46bc365021 | |||
| 550d285a8b | |||
| 268eff17f1 | |||
| 579c31b7c7 | |||
| 782c3df3d3 | |||
| f1ec639ffe | |||
| ba0f349be9 | |||
| ac31fbf862 | |||
| 1a59baaacc | |||
| 0d14069272 | |||
| c3a2656d90 | |||
| 162e84ba9b | |||
| 91bf7c7252 | |||
| 8283e6819f | |||
| 8ad2307fb7 | |||
| 65464e8ee5 | |||
| a09f874bba | |||
| 9332601f5b | |||
| 6f96a69440 | |||
| 43c15167b3 |
@@ -5,3 +5,6 @@ indent_size = 2
|
||||
|
||||
[*.{md,markdown,mdx}]
|
||||
max_line_length = 80
|
||||
|
||||
[{Makefile,*.mk}]
|
||||
indent_style = tab
|
||||
|
||||
@@ -26,3 +26,4 @@ pnpm-debug.log*
|
||||
**/*.tfstate.backup
|
||||
|
||||
*.sqlite
|
||||
DIGITALOCEAN_TOKEN
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
include make/vars.mk
|
||||
|
||||
submake_file = $(shell [ -f "$(module)/Makefile" ] && echo "$(module)/Makefile")
|
||||
install_submake_file = $(shell [ -f "$(module)/install.mk" ] && echo "$(module)/install.mk")
|
||||
|
||||
define make_module_rule =
|
||||
.PHONY: make_$(module)
|
||||
make_$(module): $(module)/.env
|
||||
$(if $(submake_file),\
|
||||
$(MAKE) --makefile=$(notdir $(submake_file)) --directory=$(module))
|
||||
endef
|
||||
|
||||
define module_env_rule =
|
||||
$(module)/.env: .env
|
||||
cp .env $(module)/.env
|
||||
endef
|
||||
|
||||
define install_module_rule =
|
||||
.PHONY: install_$(module)
|
||||
install_$(module): install_openrc_$(module) install_dyndns_$(module) $(if $(SUBDOMAIN_$(module)),install_tls_$(SUBDOMAIN_$(module))) $(install_submake_file)
|
||||
$(if $(install_submake_file),$(MAKE) --makefile=$(notdir $(install_submake_file)) --directory=$(dir $(install_submake_file)) install)
|
||||
endef
|
||||
|
||||
define reinstall_module_rule =
|
||||
.PHONY: reinstall_$(module)
|
||||
reinstall_$(module): reinstall_openrc_$(module) reinstall_dyndns_$(module) $(if $(SUBDOMAIN_$(module)),reinstall_tls_$(SUBDOMAIN_$(module))) $(install_submake_file)
|
||||
$(if $(install_submake_file),$(MAKE) --makefile=$(notdir $(install_submake_file)) --directory=$(dir $(install_submake_file)) reinstall)
|
||||
endef
|
||||
|
||||
define uninstall_module_rule =
|
||||
.PHONY: uninstall_$(module)
|
||||
uninstall_$(module): uninstall_openrc_$(module) uninstall_dyndns_$(module) $(if $(SUBDOMAIN_$(module)),install_tls_$(SUBDOMAIN_$(module)))
|
||||
$(if $(install_submake_file),\
|
||||
$(MAKE) --makefile=$(notdir $(install_submake_file)) --directory $(dir $(install_submake_file)) uninstall
|
||||
)
|
||||
endef
|
||||
|
||||
.PHONY: all
|
||||
all: $(ENV_RULES) $(MAKE_RULES) $(BUILD_RULES) $(PUSH_RULES)
|
||||
|
||||
$(foreach module,$(ALL_MODULES),$(eval $(call make_module_rule)))
|
||||
$(foreach module,$(ALL_MODULES),$(eval $(call module_env_rule)))
|
||||
|
||||
.PHONY: install
|
||||
install: install_tls install_nginx $(ENV_RULES) $(INSTALL_RULES) install_crontab
|
||||
|
||||
.PHONY: reinstall
|
||||
reinstall: reinstall_tls reinstall_nginx reinstall_dyndns $(ENV_RULES) $(REINSTALL_RULES) reinstall_crontab
|
||||
|
||||
.PHONY: uninstall
|
||||
uninstall: uninstall_nginx uninstall_dyndns uninstall_tls uninstall_joeac.net_service $(UNINSTALL_RULES) uninstall_crontab
|
||||
|
||||
$(foreach module,$(ALL_MODULES),$(eval $(install_module_rule)))
|
||||
$(foreach module,$(ALL_MODULES),$(eval $(reinstall_module_rule)))
|
||||
$(foreach module,$(ALL_MODULES),$(eval $(uninstall_module_rule)))
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
$(foreach module,$(MAKE_MODULES),$(MAKE) --directory=$(module) clean;)
|
||||
|
||||
include make/container.mk
|
||||
include make/openrc.mk
|
||||
include make/nginx.mk
|
||||
include make/crontab.mk
|
||||
include make/dyndns.mk
|
||||
include make/tls.mk
|
||||
@@ -2,44 +2,103 @@
|
||||
|
||||
Joe Carstairs' public Internet presence
|
||||
|
||||
Structure:
|
||||
To install:
|
||||
|
||||
```
|
||||
/
|
||||
├── capsule My Gemini capsule
|
||||
├── smtp A local SMTP server
|
||||
└── website My Website
|
||||
```sh
|
||||
wget -O- https://git.joeac.net/joeac/joeac.net/raw/branch/main/install.sh | sh
|
||||
```
|
||||
|
||||
## Running with Podman
|
||||
## DNS setup
|
||||
|
||||
These instructions will probably work with Docker, too: just substitute `podman`
|
||||
for `docker` in all the commands.
|
||||
A/AAAA DNS records are added automatically by `make install`, but in order to
|
||||
get `mox` working as an email server, you'll have to manually add the following
|
||||
DNS records.
|
||||
|
||||
To run with Podman, first set up your environment variables. Copy `example.env`
|
||||
to `.env` and edit the values accordingly.
|
||||
Deliver mail for mail.joeac.net to mail.joeac.net:
|
||||
|
||||
Then, create the `remote_smtp_password` secret, storing the password for the
|
||||
remote SMTP server which will send the contact emails on behalf of the website.
|
||||
|
||||
```bash
|
||||
sudo podman secret create remote_smtp_password /path/to/remote/smtp/password
|
||||
```
|
||||
mail.joeac.net. MX 10 mail.joeac.net.
|
||||
```
|
||||
|
||||
Now build and start the containers:
|
||||
All emails from the email server will be signed with two DKIM keys. So that
|
||||
clients can verify the authenticity of the messages, provide these keys as TXT
|
||||
records:
|
||||
|
||||
```bash
|
||||
sudo podman-compose build && sudo podman-compose up -d
|
||||
```
|
||||
2026a._domainkey.mail.joeac.net. TXT v=DKIM1;h=sha256;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvYfjrzmYgBtYofzBwI80aiW98+M2g6z+gd1Iwz9g0y30rPFNTctFn9GwBNuYBgZiZxB+sqjEbPMbr3li/R7i0A9t/KbNNJhkNC+4IjKJjk+jw1CXm4vXOUa4YSYWwy7NVYTH/QwZGz6fwjVM7YvDnnE4gG2NwrVx+AXlONt2R1G+qgV6HAIIvVi8T0yCjjqEc5B5bKlqk0XU9vSyUFJhhKnR/KNRe79C+H9GWJzcU7HUCmIHX04Xi0JeB/wm3weF1xjtGTsWyy5BmHHsfWGqSr2Dbg5o6AI5W0h4VkQ4QzdEYGVQ9ZBDyqFQwQFXLn0oHZjCD/vFzPOPdM5pxF/OgwIDAQAB
|
||||
2026b._domainkey.mail.joeac.net. TXT v=DKIM1;h=sha256;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzcrk9FUt6AdrvnAP3KawuOTLw7uL5SJ+ZYmShuz41zwM6bPQteGSSwddFXIxcqVlJrdFahrK4KvHX/sw/hWVfZoPLDdwsGN5eI8cqQjNDE+JDu9BbPlTituva4Hkve0hbAKDqA8jmbcZg6aU7b44Kzq8UpWAlPO273Rq2tsbCBcITt8B3NFoeY9CSsZU1LqGl855GUtaNyhlPaAvfab3Q9/4wyusPhCHlBYaRK+ZzuSMs5KEOG6n4kbZfMVi2+4c/bPU5PdTuyvbSIEqjNH4TpfatE0I9ubGv0WbAzr5EZbv5+xtukZ/dIisPPMjn1AbjpSJYNYr2OYgey6+WvzRmQIDAQAB
|
||||
```
|
||||
|
||||
## Running on the host machine
|
||||
Specify the MX host is allowed to send for our domain and for itself (for DSNs).
|
||||
~all means softfail for anything else, which is done instead of -all to prevent
|
||||
older mail servers from rejecting the message because they never get to looking
|
||||
for a dkim/dmarc pass.
|
||||
|
||||
To run on the host machine, first, as before, set up your environment variables
|
||||
by copying `example.env` to `.env` and editing the values as appropriate.
|
||||
|
||||
```bash
|
||||
npm run start
|
||||
```
|
||||
mail.joeac.net. TXT v=spf1 ip4:217.155.190.42 ip6:fdc9:6aec:7a18:0:2e0:4cff:fe61:9b17 mx ~all
|
||||
```
|
||||
|
||||
Note that emails may not work locally without further setup. These instructions
|
||||
are of course woefully incomplete.
|
||||
Emails that fail the DMARC check (without aligned DKIM and without aligned SPF)
|
||||
should be rejected, and request reports. If you email through mailing lists that
|
||||
strip DKIM-Signature headers and don't rewrite the From header, you may want to
|
||||
set the policy to p=none.
|
||||
|
||||
```
|
||||
_dmarc.mail.joeac.net. TXT v=DMARC1;p=reject;rua=mailto:dmarcreports@mail.joeac.net!10m
|
||||
```
|
||||
|
||||
Remote servers can use MTA-STS to verify our TLS certificate with the WebPKI
|
||||
pool of CA's (certificate authorities) when delivering over SMTP with
|
||||
STARTTLSTLS.
|
||||
|
||||
```
|
||||
mta-sts.mail.joeac.net. CNAME mail.joeac.net.
|
||||
_mta-sts.mail.joeac.net. TXT v=STSv1; id=20260705T153220
|
||||
```
|
||||
|
||||
Request reporting about TLS failures.
|
||||
|
||||
```
|
||||
_smtp._tls.mail.joeac.net. TXT v=TLSRPTv1; rua=mailto:tlsreports@mail.joeac.net
|
||||
```
|
||||
|
||||
Client settings will reference a subdomain of the hosted domain, making it
|
||||
easier to migrate to a different server in the future by not requiring settings
|
||||
in all clients to be updated.
|
||||
|
||||
```
|
||||
clientsettings.mail.joeac.net. CNAME mail.joeac.net.
|
||||
```
|
||||
|
||||
Autoconfig is used by Thunderbird. Autodiscover is (in theory) used by
|
||||
Microsoft.
|
||||
|
||||
```
|
||||
autoconfig.mail.joeac.net. CNAME mail.joeac.net.
|
||||
_autodiscover._tcp.mail.joeac.net. SRV 0 1 443 mail.joeac.net.
|
||||
```
|
||||
|
||||
For secure IMAP and submission autoconfig, point to mail host.
|
||||
|
||||
```
|
||||
_imaps._tcp.mail.joeac.net. SRV 0 1 993 mail.joeac.net.
|
||||
_submissions._tcp.mail.joeac.net. SRV 0 1 465 mail.joeac.net.
|
||||
```
|
||||
|
||||
Next records specify POP3 and non-TLS ports are not to be used. These are
|
||||
optional and safe to leave out (e.g. if you have to click a lot in a DNS admin
|
||||
web interface).
|
||||
|
||||
```
|
||||
_imap._tcp.mail.joeac.net. SRV 0 0 0 .
|
||||
_submission._tcp.mail.joeac.net. SRV 0 0 0 .
|
||||
_pop3._tcp.mail.joeac.net. SRV 0 0 0 .
|
||||
_pop3s._tcp.mail.joeac.net. SRV 0 0 0 .
|
||||
```
|
||||
|
||||
Optional: You could mark Let's Encrypt as the only Certificate Authority allowed
|
||||
to sign TLS certificates for your domain.
|
||||
|
||||
```
|
||||
mail.joeac.net. CAA 0 issue "letsencrypt.org"
|
||||
```
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
.certificates
|
||||
@@ -1,36 +0,0 @@
|
||||
FROM alpine:3.23 AS agate
|
||||
RUN apk --update --no-cache add rust cargo \
|
||||
&& wget -O - https://github.com/mbrubeck/agate/archive/refs/tags/v3.3.20.tar.gz | tar -xz \
|
||||
&& cargo install --path agate-3.3.20/ \
|
||||
&& rm -rf agate-3.3.20 agate-target
|
||||
|
||||
FROM alpine:3.23 AS comitium
|
||||
RUN apk --no-cache add make go scdoc
|
||||
RUN wget -O - https://git.sr.ht/~nytpu/comitium/archive/v1.8.2.tar.gz | tar -xz \
|
||||
&& make --directory=comitium-v1.8.2 \
|
||||
&& mv comitium-v1.8.2/build/comitium /usr/local/bin/comitium \
|
||||
&& rm -rf comitium-v1.8.2
|
||||
|
||||
FROM alpine:3.23 AS final
|
||||
RUN mkdir -p /var/app/content
|
||||
WORKDIR /var/app
|
||||
COPY .certificates .certificates
|
||||
RUN crontab -l > crontab.tmp \
|
||||
&& echo "0 */6 * * * * /usr/local/bin/comitium refresh --data /var/app/comitium-data && cp /var/app/comitium-data/feed.gmi /var/app/content/feed.gmi" >> crontab.tmp \
|
||||
&& crontab crontab.tmp \
|
||||
&& rm crontab.tmp
|
||||
|
||||
RUN apk --no-cache add gcc # Dependency for agate
|
||||
COPY --from=agate /root/.cargo/bin/agate /usr/local/bin/agate
|
||||
COPY --from=comitium /usr/local/bin/comitium /usr/local/bin/comitium
|
||||
|
||||
COPY content comitium-data feeds.txt ./
|
||||
RUN while read feed; do \
|
||||
comitium add --data comitium-data/ "$feed"; \
|
||||
done <feeds.txt \
|
||||
&& comitium refresh --data comitium-data/ \
|
||||
&& cp comitium-data/feed.gmi content/feed.gmi \
|
||||
&& cp comitium-data/subscriptions.gmi content/subscriptions.gmi
|
||||
|
||||
CMD agate --content content/ --addr [::]:1965 --addr 0.0.0.0:1965 --lang en-GB
|
||||
|
||||
@@ -1,146 +0,0 @@
|
||||
# "381: how the church as we know it was made"
|
||||
|
||||
The church which defines our world now is in a significant way the one which emerged out of sixty years of controversy from the Council of Constantinople in 381. I've been charting what happened, why, and the ongoing legacy.
|
||||
|
||||
Published on: 5 Oct 2025
|
||||
|
||||
Athanasius defined the fourth century. Not that he was a god, or even a king, or that he always got his way. But he wrote the history books. His tale of an epic battle fought tooth-and-nail between Arian heretics and him and his loyal allies has come to be the standard account of how, over the course of the fourth century, the Church redefined what orthodoxy means and how it is declared and identified.
|
||||
|
||||
The result was the Nicene Creed. It had been first written for a very particular polemical purpose in 325, but later found itself the centre of a strange theological revival, and was finally revised in a council at Constantinople in 381. In so doing, the bishops assembled a recognisable 'Nicene' tradition which is still one of the defining features of planet Earth.
|
||||
|
||||
For better and for worse, the church as we know it has a capacity both for great humility, faith and submission to the mystery of God, but it also has a capacity for great intolerance. This is the church created in 381.
|
||||
|
||||
To understand the church as we know it today, then, we need to understand the complex, confusing journey from 325 to 381.
|
||||
|
||||
Athanasius' chronicle of that journey is temptingly simple. The only problem with it is that it isn't true. Indeed, his 'history' was never meant to function as an all-encompassing narrative of Church history, to be read for centuries ever after. His accounts function as polemics, meant to cajole, condemn and persuade his readers in his own time of his vision for their future.
|
||||
|
||||
Nevertheless, whatever Athanasius' real significance in how his times unfolded, his witness is important. He fully inhabited his times, often in the middle of the fray. Whether or not we buy Athanasius' portrayal of himself as fighting the good fight, he was certainly a fighter. By looking through his eyes, then, we can get a perspective on how the Church as we know it came to be.
|
||||
|
||||
So it makes sense to start with him. As a young priest in his native Alexandria, he became tangled up in a controversy which would come to define his career. A strong-minded and fearless young priest had begun to preach. His name was Arius.
|
||||
|
||||
---
|
||||
|
||||
According to the Egyptian tradition, Alexander, the bishop of Alexandria, was the nineteenth in a direct line of succession from Mark the Evangelist himself. With a great deal of justice, he would have regarded himself as one of the most important Christian leaders in the world, and at least the equal of the bishop of Rome.
|
||||
|
||||
Small wonder, then, that the insubordination that plagued his diocese bothered him. First Erescentius had started a schism, disputing the rule he used for calculating the date of Easter.
|
||||
|
||||
Then there was Meletius. During the persecution under the Roman emperor Diocletian, Meletius had already rubbed a few people the wrong way: while other bishops were in hiding or in prison, he took the initiative to resolve problems and ordain priests without properly consulting the absent bishops' representatives. Perhaps it was intended kindly: it was seen as meddling. Now Meletius accused Alexander of being too soft on Christians who had caved into the threat of torture and made sacrifices to the pagan cults. When he decided Alexander was never going to match his high rigorist standards, he broke away, too.
|
||||
|
||||
Alexander must have longed for the relatively good order of the Greek and Roman churches, where bickering subordinates were generally willing to let their bishop have the last say. The throne of St Mark was in trouble. If Christ's body wasn't to get chopped up any more than it already was, he needed to establish his personal authority.
|
||||
|
||||
This was the context in which Arius, a young firebrand priest, steps onto stage right. He surely knew his own bishop's teaching: God is one substance and one essence, unchangeable, indivisible. Christ his Son is in every way God: God from God, light from light, true God from true God, eternally begotten of the Father before all ages. How else could Christ, by adopting human flesh, mediate the transcendent God to fallen humanity?
|
||||
|
||||
But Arius didn't like this one bit. If God is unchangeable, how could he adopt flesh? That suggests he was not flesh, and then became flesh. And in any case, if the martyrs were right to give up their lives to know God, he must have the perfect, uncompromising transcendence which the martyrs so admired. But how can God adopt flesh, never mind suffer and die on a cross, without compromising that transcendence? Something had to give. For Arius, the solution was to modify the relationship between the Father and the Son.
|
||||
|
||||
Arius accepted that Christ had to be in some sense divine, in order to mediate God to humanity. But he denied that he was quite as much God as God is. He has something like his Father's essence, not in a co-equal way, but rather in a derivative way. This makes sense of Father-Son language, which suggests the Father came first, and the Son came next, a derivative of the Father. So the Son is God from God, but not true God from true God. The Son was begotten in time, and is not eternal: only God the Father himself is eternal.
|
||||
|
||||
At another time in another place, Arius might have passed for a creative, independent thinker without much notice. But Arius was directly contradicting Alexander just as the latter was desperate to assert his authority. It got ugly.
|
||||
|
||||
Alexander called a council of local bishops in about 320. The council condemned Arius and removed him from his post as priest. In response, Arius went on the campaign trail, visiting bishops in Palestine and Asia Minor who he thought would be sympathetic to his theology. Shortly afterwards, he returned to Alexandria, triumphantly brandishing vindications from two councils, one in Jerusalem and one in Bithynia. He wasn't going to make it easy for Alexander.
|
||||
|
||||
Luckily for Alexander, the Emperor Constantine had just united the eastern and western halves of the Empire. He had famously converted to Christianity after seeing the sign of the cross at the Battle of Milvian Bridge in 312, and saw the bishops as means towards his mission of uniting the Empire under one government and one God. Constantine had been made aware of the dispute between Arius and Alexander, and he didn't want schisms in the church any more than Alexander did.
|
||||
|
||||
He called a council in his own palace in Nicaea, paying the travel expenses and hotel bills of all the bishops in attendance. For those bishops, many carrying the scars of torture they had endured under Diocletian, it must have been a bewildering experience. Alexander was in attendance. His secretary was Athanasius.
|
||||
|
||||
In 325, the council condemned Arius. To avoid anyone else following in his path, they produced a statement of faith, designed to exclude Arius' teaching, no matter who taught it. This statement of faith is now known as the Nicene Creed.
|
||||
|
||||
The council also fixed the date of Easter to boot. Alexander must have been relieved.
|
||||
|
||||
You might have thought that would have been the end for Arius. In fact, Constantine engineered his re-admittance into the church as soon as 328. Arius died in peace in 336. Constantine's mission wasn't to purge the church, but to unite the church. As long as all sides worshipped God and could live in peace, he wanted as many people as possible included. His mission was unity, not uniformity.
|
||||
|
||||
Bishops like Eusebius of Caesarea in Syria got this. He had been provisionally excommunicated on suspicion of Arianism in 325, but was reconciled at Nicaea given the chance to explain himself and sign up to the Nicene Creed. No sooner had he done this, however, than he had started explaining to the faithful back home how they could carry on believing that the Son was not really eternal, even as the Creed was designed to exclude exactly such a claim. While Eusebius might seem duplicitous, at the time, this was exactly the kind of tolerant pragmatism that Constantine asked of the bishops: as long as they didn't cause more out-and-out conflict.
|
||||
|
||||
Alexander didn't have long to enjoy the peace of Nicaea. He died just a few years afterward in 328. The throne of St Mark passed to Athanasius.
|
||||
|
||||
---
|
||||
|
||||
The peace didn't last long. Just as Athanasius was donning his mitre, Eusebius was plotting against Eustathius the bishop of Antioch, and engineered his deposition. In his defence, Eusebius accused Eustathius of the long-condemned heresy, Sabellianism. Then in 335, he followed up by deposing Marcellus, the bishop of Ancyra, at a council in Tyre.
|
||||
|
||||
To defend his action, he wrote _Against Marcellus_, in which he accused Marcellus of being a Sabellian, too. Sabellius' heresy was (to borrow a modern term) modalism, the view that 'Father', 'Son' and 'Spirit' are mere titles, aspects, 'modes' of God, not in any real way distinct. He also accused Marcellus of adoptionism, another agreed heresy. Marcellus taught that the Son only became an aspect of the divine nature at the Incarnation, and that in the last day, Christ would hand over his kingdom to his Father.
|
||||
|
||||
This action would cast a long shadow over the next half-century. Time and again, bishops allied to Eusebius' way of thinking, or 'Eusebians', would re-affirm their opposition to that 'heretic' Marcellus and his 'Sabellianism'. This is a crucial dynamic for understanding where theological factions drew up their battle lines, and for what compromises were needed in order to get to 381.
|
||||
|
||||
Even the bishop of Alexandria wasn't immune from Eusebius' purge. Athanasius had vigorously defended his ally, Marcellus, at the council of Tyre in 335. Eusebius set about plotting his downfall. He dug up dirt. He accused Athanasius of using threats and bribes to get himself elected, and sending goons to beat up his political opponents. Once he'd found evidence of Athanasius meddling with the crucial Egyptian grain export that kept Rome fed, he had the emperor on side. Constantine convened a meeting in 336 and exiled him to the German frontier.
|
||||
|
||||
---
|
||||
|
||||
Or at least, that's how Athanasius tells it. Athanasius loves a plot: at the time, alleging a conspiracy was a classic rhetorical technique for painting your enemies as heretics.
|
||||
|
||||
Eusebius was no stranger to rhetoric himself, and it's to his 337 best-seller, the _Life of Constantine_, that we owe our standard account of Constantine's reign. He regarded Empire and Church as allies in a joint mission, to unite the world under one government and one faith. To him, someone like Athanasius, constitutionally incapable of tolerating anyone who disagreed with him and willing to use gangster tactics to get his way, was a threat to this divine mission.
|
||||
|
||||
It's worth remembering that after Constantine died, Athanasius would be re-exiled by four more Roman emperors. In his lifetime, only Julian failed to exile Athanasius, and him only perhaps because he didn't have time in his whirlwind twenty-month reign. We also can't be sure how much influence Eusebius actually had in the expulsion of Athanasius and his allies: it coheres well enough with the emperor's anti-sectarian agenda that it might have happened with or without Eusebius' involvement.
|
||||
|
||||
Perhaps Athanasius was a brute. Still, the Roman Catholic Church manages to venerate both Eusebius and Athanasius as saints. This may seem like a contradiction. But perhaps an ability to tolerate contradiction is precisely the legacy of 381.
|
||||
|
||||
But we're not there yet. By 335, Eusebius had engineered the exile of Eustathius, Marcellus, and Athanasius. After Constantine died, he had to do it all over again, but by 339, he had persuaded his successor, Constantius, to re-assert his father's exiles of the three men. With the Empire once again split, Athanasius and Marcellus headed to Rome to re-group and re-think.
|
||||
|
||||
---
|
||||
|
||||
From Rome, Athanasius and Marcellus were safe for now from Eusebius' clutches, but also relatively impotent. In this period of exile in the 340s, in an effort to claw back his reputation, Athanasius developed the polemic which still defines the standard history of the fourth century. He invented a cunning label for Eusebius and his cronies: he called them 'Arians'.
|
||||
|
||||
Eusebius rejected the label as ridiculous. Arius had been reconciled, and more to the point, had died in 336. For that matter, why would a bishop follow the teaching of a mere priest? Not only that, but the label ignored significant differences between Arius' and Eusebius' teaching. His verdict was clear: the label 'Arian' is a baseless slur, with no other purpose than to tar his reputation as a heretic.
|
||||
|
||||
He was right, of course. But like it or not, Athanasius' theory of an Arian conspiracy began to win adherents, not least Julian, the bishop of Rome. Julian called a council to exonerate Athanasius and Marcellus. When the Greeks refused to turn up, he called a local council anyway and vindicated the two men. In the face of Greek obstinacy, Julian wrote east, pleading the bishops to take the 'Arian' threat seriously.
|
||||
|
||||
In response, the easterners held a council in Antioch in 341, agreeing four creeds which powerfully condemned Marcellus' teaching, including the influential Dedication Creed. This includes assertions that Father, Son and Spirit are 'three in subsistence, one in agreement', that the Son was generated before time began, against Marcellus' teaching that the Father, Son and Spirit are aspects of God without division in subsistence, and that there only came to be a divine Son at his incarnation. They explicitly condemned Arius, Sabellius and Marcellus.
|
||||
|
||||
So the divisions grew deeper. Without an emperor to compel the bishops to come together, there may not have been much chance of a rapprochement. But even if there were to be such an emperor, who's to say that their settlement would have satisfied the bishops?
|
||||
|
||||
---
|
||||
|
||||
Meanwhile, in the 340s and through the 350s, two further theological movements gathered steam: the homoians and the heterousians.
|
||||
|
||||
The homoians, perhaps tired of the squabbles between the Athanasian and Eusebian factions, determined to sidestep their petty debates altogether.
|
||||
|
||||
A key term of the theological disagreement was 'essence' or 'ousia'. Athanasius, in his lifelong battle to make sure Arius stayed dead, insisted that Father, Son and Spirit shared the same ousia. In contrast, Eusebius, with his anti-Sabellian polemic, needed to assert the real distinction between Father, Son and Spirit, and so asserted that each had a separate ousia. So the difference can be summed up as a counting problem. How many divine ousias are there? One or three?
|
||||
|
||||
The homoians claimed that both sides were mistaken, simply because they used the word 'ousia'. There is no mention of ousia in Scripture, so, they claimed, we have no basis for asserting it of God one way or the other. All we can truly say is that Father, Son and Spirit are distinct but somehow alike. Whereof we cannot speak, there must we remain silent.
|
||||
|
||||
This might have worked as a way forward, except that the heterousians provoked such a strong reaction that 'ousia'-talk was needed to refute them. Aetius, and his followed Eunomius, argued that since God is simple, and all generate things are divided, it follows that God is ingenerate. But the Son is generate: therefore Father and Son must be altogether unalike. They expressed this by saying that Father and Son are unlike in ousia. This teaching was swiftly branded 'neo-Arian', provoking a strong reaction. To counter the heterousian teaching, their opponents were forced to fight on their terms, and that meant using 'ousia'-talk.
|
||||
|
||||
Thus enters Basil of Caesarea. He argued that if we abandon 'ousia'-talk, we will have no way of saying that the Father and Son have anything in common at all, which makes a nonsense of the idea that the Son brings humanity knowledge of his Father. Without like essence, they might as well be two completely different Gods. Therefore we have to say at least that they have like essence -- 'homoiousia'. But without direct access to perfect knowledge of the invisible God, we're not in a position to judge that they have exactly the same essence, so he stopped short of agreeing with the 'homoousia' of the Nicene Creed which Athanasius so treasured.
|
||||
|
||||
Seeing the opportunity to make common cause against the homoians, Athanasius started to soften. He wrote an extremely charitable commentary on Basil's theology which emphasised their similarities and papered over their differences. Athanasius recognised that both he and Basil wanted to assert the unity of God while still preserving distinctions between Father, Son and Spirit. The two began to campaign against the homoian movement.
|
||||
|
||||
But Basil got there too late. In 359, the emperor Constantine II called a council in Constantinople, and in 360 it issued a homoian creed with full imperial backing. Any campaign against the homoians would have to take place sub rosa.
|
||||
|
||||
---
|
||||
|
||||
In Athanasius' and Basil's long, slow campaign against homoianism, their weapon of choice was surprising: they dusted off the Nicene Creed of 325. Athanasius argued, against the homoians, that 'ousia'-talk, although not directly Scriptural, was essential in order to draw out the consequences of Scripture while ruling out Arian mis-interpretations.
|
||||
|
||||
Thus Nicaea, conceived as a one-off meant to clean up the Arian controversy, found a new life as the anti-homoian movement -- or perhaps you could call it the Nicene revival? -- rallied around it.
|
||||
|
||||
As the movement progressed, the formerly disagreeing bishops found ways to come together. An essential move was that made in Athanasius' _Antiochene Tome_ of 362. In it, he relented on his long opposition to there being three 'hypostases' or 'substances' in the Godhead.
|
||||
|
||||
'Hypostasis' had for a long time been used interchangeably with 'ousia'. However, Athanasius claimed that perhaps God could have three hypostases, but only one ousia, at the same time. In so doing, he wedged apart a sharp technical distinction between 'hypostasis' and 'ousia' which previously wouldn't have made sense. Logical or not, it enabled the Nicene revival to have its cake and eat it. God is both one in ousia, protecting against Arianism, and three in hypostasis, protecting against Sabellianism.
|
||||
|
||||
So the Nicene revival gained a new superpower: the power to use formerly synonymous terms to assert contradictions without blushing. This power to accept apparent contradiction as part of the unknowable mystery of God is perhaps the most important legacy of the period. Arguably, the church has been at its best when it has put aside the need to know everything, and embraced this spirit of tolerance, humility and faith.
|
||||
|
||||
---
|
||||
|
||||
For much of the 360s and 370s, the homoian emperor Valens had ruled over the eastern part of the Empire, while his big brother, Valentinian, ruled the west. In the late 370s, Valentinian and then Valens died within quick succession of each other. Valentinian's twenty-year-old son, Gratian, was left to clear up the mess. In 379, Gratian delegated rule of the east to Theodosius, who was to implement a decisively different religious policy than his predecessor, Valens.
|
||||
|
||||
In 380, Theodosius issued an edict, saying that only those who agreed to the homoousios clause of the Nicene Creed could be considered 'catholic' Christians. The message was clear: the homoians were out, and the Nicenes were in.
|
||||
|
||||
In 381, he called a council to Constantinople, and it (probably) issued the revision of the 325 creed which is still used in various versions in all the world's largest Christian denominations. There would be no more revisions, and it would become, then as now, compulsory reading for all those preparing to don vestments.
|
||||
|
||||
One question is, why did the 381 creed differ in the ways it did from 325? Many of the differences, including the much-enlarged section on the Son, seem to have little controversial content: nobody was disputing that Jesus was born of the Virgin Mary, for example, though she makes her first appearance in the Creed in the 381 version. Some historians think this suggests that the 381 was based on a similar, but distinct creed from 325. This seems unlikely to me, given that about half the creed is in verbatim agreement with 325.
|
||||
|
||||
However, a couple of edits stand out. There are some clear signs of anti-Marcellianism: 'his \[the Son's] kingdom shall have no end', the Son is begotten of the Father 'before all ages'. Perhaps a clear emphasis on the eternal relationship between the Son and the Father was part of the diplomacy needed to get the Eusebian faction on-side.
|
||||
|
||||
The new details on the Holy Spirit are interesting too. They suggest a delicate compromise. Some bishops were reluctant to suppose that the Father and the Spirit have the same essence. On the other hand, others reckoned that they must share the same essence, given that they are equally deserving of worship. Thus the creed does not have a 'homoousios' clause for the Spirit, but does assert that the Spirit 'together with the Father and with the Son is worshipped and glorified'. With a spoonful of humility, both sides can be satisfied with that.
|
||||
|
||||
The revised Nicene Creed was the focus point, the distillation of a growing theological movement, formed by the various anti-homoian bishops finding a way to keep true to their own convictions while respecting each other's red lines.
|
||||
|
||||
As a result of the context of 325, Athanasius' relentless anti-Arian polemic which kept that movement alive, and the 'neo-Arian' heterousian movement, the new Nicene tradition insisted on the full co-equal divinity of Father, Son and Holy Spirit. This doctrine ensures Nicenes can affirm that Christ mediates true knowledge of the transcendent Godhead to humanity: the one who was born of Mary, suffered and died on the cross, was raised from the dead and ascended into heaven was true God from true God, of the same essence as his Father.
|
||||
|
||||
To satisfy the Eusebian strain, which defined itself by opposition to Marcellus, the Nicene tradition included a commitment to a robust distinction between Father, Son and Spirit, and to the eternity of the Son: begotten of the Father before all ages, his kingdom shall have no end. As a result, Nicenes inherited a way of thinking about God's action in the world, as instrinsically co-operative without being divided.
|
||||
|
||||
The biggest change between 325 and 381 was not the text, but what the text is used for. In 325, the Creed functioned to condemn Arius in order to heal the divisions his teachings had caused. In its second life, the Creed found an altogether new purpose: to serve as a common statement of orthodox faith. It started life as a way to define who was out. It ended up defining who was in.
|
||||
|
||||
Where was Athanasius? Consider that when Athanasius was appointed bishop in 328, he was relatively young for a bishop at thirty-five. That means that in 381, he would have been the ripe old age of eighty-eight. In fact, he didn't make it that far: he died in peace in the countryside outside his native Alexandria in 373. If he had seen the outcome of 381, he might have regarded his life project complete. Perhaps he knew that with the new generation of bishops, the tide was turning for good, and died in peace. Perhaps not. Either way, his compromises, and his beloved homoousios, have left a permanent mark on the church.
|
||||
|
||||
This is the legacy of 381. It is two-faced: any common statement of faith can be used to exclude. Indeed, in the late fourth century, both non-Nicene Christians and pagans found themselves the victims of increasing state-backed sectarian violence.
|
||||
|
||||
However, 381 also bears witness to the power of humility and faith. Once we stop grasping at perfect knowledge we cannot attain, we can begin to appreciate the mystery of God. This is one legacy I hope we can carry forward into our century.
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
# joeac's gemlog
|
||||
|
||||
Hi! I'm Joe Carstairs, and you've found my gemlog.
|
||||
|
||||
=> 2026-03-04.gmi 2026-03-04 What is an agnostic?
|
||||
=> 2026-02-16.gmi 2026-02-16 10 very short stories about the Reformation
|
||||
=> 2025-12-11.gmi 2025-12-11 Why did the church become persecuting in the fourth century?
|
||||
=> 2025-10-09.gmi 2025-10-09 Arianism
|
||||
=> 2025-09-18.gmi 2025-09-18 Changing my ambitions
|
||||
=> 2025-07-03.gmi 2025-07-03 Why Psalm 118 is the theme tune to Matthew's Gospel
|
||||
=> 2025-06-23.gmi 2025-06-23 Figuring things out
|
||||
=> 2025-05-04.gmi 2025-05-04 Does resurrection doctrine give us unique reasons to work for justice?
|
||||
=> 2025-05-02.gmi 2025-05-02 Surprised By Hope
|
||||
=> 2025-01-28.gmi 2025-01-28 A paradox about 'should'
|
||||
=> 2025-01-24.gmi 2025-01-24 Why scientists need philosophers
|
||||
=> 2025-01-19.gmi 2025-01-19 How I read things on the Internet now (no, of course I don't leave the terminal!)
|
||||
=> 2024-12-17.gmi 2024-12-17 Questions I have about sex
|
||||
=> 2024-07-16.gmi 2024-07-16 What do academics think LLM ‘hallucination’ means?
|
||||
=> 2024-07-08.gmi 2024-07-08 Doctor Who, gayness and the church
|
||||
=> 2024-06-13.gmi 2024-06-13 LLMs do not understand anything
|
||||
=> 2024-05-02.gmi 2024-05-02 How I made YouTube work for me
|
||||
=> 2024-04-14.gmi 2024-04-14 God Is Not Great
|
||||
=> 2024-04-11.gmi 2024-04-11 Who consecrates the tabernacle? (Ex 29)
|
||||
=> 2024-04-10.gmi 2024-04-10 Tracking pixels
|
||||
=> 2024-03-30.gmi 2024-03-30 Why Easter is the best week of the year
|
||||
=> 2024-01-14.gmi 2024-01-14 Harari’s Sapiens on Religion
|
||||
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 63 KiB |
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 91 KiB |
|
After Width: | Height: | Size: 914 KiB |
@@ -1,6 +1,6 @@
|
||||
# Harari’s Sapiens on Religion
|
||||
|
||||
Published: 14 Jan 2024
|
||||
Published on: 14 Jan 2024
|
||||
|
||||
I’ve been slowly re-reading Yuval Noah Harari’s 2014 classic, Sapiens, which apart from being ridiculously over-scoped and hilariously under-evidenced, is proving delightfully entertaining.
|
||||
|
||||
@@ -167,7 +167,7 @@ Some authors have managed to recognise the ambiguity of the term. Both King et a
|
||||
|
||||
So it seems that although many academics have treated the term ‘hallucination’ as jargon, in actual fact, there is no widely agreed specific meaning of the word.
|
||||
|
||||
<hr>
|
||||
---
|
||||
|
||||
I will slide in here with a quick side note. While some authors treated ‘hallucination’ as jargon for unfaithfulness or unfactuality, other authors contemporaneously managed to talk about these topics without using the word ‘hallucination’ at all. Here are some examples:
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
|
||||
Mark Vernon got me thinking about how the Church’s teaching on sex may be evolving.
|
||||
|
||||
Published on: 17 Dec 2024 updatedDate: 2024-12-17
|
||||
Published on: 17 Dec 2024
|
||||
Updated on: 17 Dec 2024
|
||||
|
||||
I just listened back to Mark Vernon talking about sexual desire and Christian spirituality.
|
||||
|
||||
@@ -16,11 +17,10 @@ Part of what’s so interesting about this, is I feel I got my first proper sex
|
||||
|
||||
I’m also currently reading (as is Mark Vernon) Diarmaid MacCulloch’s epic history of Christian sexuality, [Lower Than the Angels][lower-than-the-angels].
|
||||
|
||||
=> https://www.penguin.co.uk/books/313582/lower-than-the-angels-by-macculloch-diarmaid/9780241400937
|
||||
=> https://www.penguin.co.uk/books/313582/lower-than-the-angels-by-macculloch-diarmaid/9780241400937
|
||||
|
||||
But so far (I’m about a third of the way through and up to about the 5th century) there have only been odd glimmers of positive Christian understandings of sexuality. The overwhelming Christian consensus of the early Church (according to MacCulloch) is that sexual desire is a symptom of humanity’s fallen state, not our longing for God.
|
||||
|
||||
So I want to know: what changed between Mark’s experience and mine? How is Christian teaching about sex changing right now? Was my experience typical of other Christians growing up today, in evangelical churches, across the denominational spectrum, across Britain, across the global Church? What *is* the Christian consensus on sex now, and how old is it, and where did it come from?
|
||||
|
||||
I guess I’ve got two-thirds of a gigantic tome to work through, first of all. That’ll be a start. Any answers? Postcards please.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
I've been sprucing up how I follow what's happening on the Internet. I can now read all the things I want to read pretty efficiently, and enjoy doing it, which is exciting.
|
||||
|
||||
Published on: 19 Jan 2025
|
||||
Published on: 19 Jan 2025
|
||||
|
||||
## The problem
|
||||
|
||||
@@ -18,7 +18,7 @@ For a while, I've been hosting CommaFeed on PikaPods. This has been OK (OMG, RSS
|
||||
|
||||
=> https://www.commafeed.com
|
||||
=> https://www.pikapods.com
|
||||
=> gemini://joeac.net/blog/2024/05-02_no_more_youtube
|
||||
=> gemini://joeac.net/blog/2024/05-02_no_more_youtube
|
||||
|
||||
It also hasn't been any good for distinguishing between stuff I don't want to read *ever*, and stuff I don't want to read *right now* but will get round to later. I could in theory use the bookmarking feature built-in to my browser, but removing things after I've read them is too clunky, so I don't do it.
|
||||
|
||||
@@ -26,14 +26,14 @@ It also hasn't been any good for distinguishing between stuff I don't want to re
|
||||
|
||||
Every morning, I open my terminal and run newsboat.
|
||||
|
||||
=> https://newsboat.org
|
||||
=> ./2025-01-19_newsboat.webp newsboat showing how many unread posts I have at a glance in the opening view
|
||||
=> https://newsboat.org
|
||||
=> /images/longlog/2025-01-19_newsboat.webp newsboat showing how many unread posts I have at a glance in the opening view
|
||||
|
||||
I know the unread count is pretty fresh, because I've set up a systemd service to run newsboat at startup to fetch the feeds.
|
||||
|
||||
I press `l` twice to open a post. Then I press `n` to navigate to the next unread post until I run out of unread posts.
|
||||
|
||||
=> ./2025-01-19_newsboat-post.webp newsboat displaying a post
|
||||
=> /images/longlog/2025-01-19_newsboat-post.webp newsboat displaying a post
|
||||
|
||||
If I encounter something I want to read later, but don't have time right now, I press `b`, which runs a home-made bookmarking script. Here it is:
|
||||
|
||||
@@ -56,8 +56,8 @@ I can also run this script manually and pass it a URL of my choice at any time,
|
||||
|
||||
When I want to read from my reading list, I run `readnow.sh`, which simply opens my reading list folder, `~/readlist/unread`, in my terminal file browser of choice: namely, ranger.
|
||||
|
||||
=> https://ranger.github.io
|
||||
=> ./2025-01-19_ranger.webp ranger showing the contents of my reading list with a preview
|
||||
=> https://ranger.github.io
|
||||
=> /images/longlog/2025-01-19_ranger.webp ranger showing the contents of my reading list with a preview
|
||||
|
||||
Although ranger has a preview, I'll typically open the file up in my terminal web browser of choice, which is w3m (plus a couple of custom key-bindings).
|
||||
|
||||
@@ -76,7 +76,7 @@ I've configured this to be my preferred web browser in ranger by shifting it to
|
||||
|
||||
Having configured my default web browser in my ranger config, all I need to do is press `l`.
|
||||
|
||||
=> ./2025-01-19_w3m.webp A post displaying in w3m
|
||||
=> /images/longlog/2025-01-19_w3m.webp A post displaying in w3m
|
||||
|
||||
No ads, no cookie popups, no giant banner images taking 2 seconds to load and shifting the content all over the place: just the text I want to read. Isn't it beautiful?
|
||||
|
||||
@@ -113,12 +113,12 @@ I can now keep up to date, and I enjoy doing it.
|
||||
|
||||
I get not everyone likes to live in the terminal. I think the key takeaways are:
|
||||
|
||||
* Make it really easy to sift through new posts
|
||||
* When you sift, sift through every post, and for each one, either read it straight away, or add it to your reading list
|
||||
* Sift daily
|
||||
* Make it really easy to add things to your reading list
|
||||
* Make it really easy to browse, read things, and mark things read in your reading list
|
||||
* Set aside time to catch up on your reading list
|
||||
* Make it really easy to sift through new posts
|
||||
* When you sift, sift through every post, and for each one, either read it straight away, or add it to your reading list
|
||||
* Sift daily
|
||||
* Make it really easy to add things to your reading list
|
||||
* Make it really easy to browse, read things, and mark things read in your reading list
|
||||
* Set aside time to catch up on your reading list
|
||||
* Make the whole thing joyful (both because joy is good, and because you won't do it otherwise)
|
||||
|
||||
## Next steps
|
||||
@@ -127,11 +127,10 @@ I still haven't really figured out social media. I'd like to stay up to date wit
|
||||
|
||||
I still need to know:
|
||||
|
||||
* Are my friends posting stuff on the Internet?
|
||||
* If so, where?
|
||||
* What's the best way of subscribing to their posts
|
||||
* even if they live on different websites and in different formats?
|
||||
* Are my friends posting stuff on the Internet?
|
||||
* If so, where?
|
||||
* What's the best way of subscribing to their posts
|
||||
* even if they live on different websites and in different formats?
|
||||
* What's the best way of sending and receiving comments/replies/reactions?
|
||||
|
||||
TBC. Answers on a postcard please.
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
|
||||
I'm summarising a few of the big stories about the Reformation I've been studying recently.
|
||||
|
||||
Published on: 16 Feb 2026 updatedDate: 2026-02-27
|
||||
Published on: 16 Feb 2026
|
||||
Updated on: 27 Feb 2026
|
||||
|
||||
1. Moral corruption in public office
|
||||
|
||||
@@ -45,4 +46,3 @@ The medieval Latin church had a thing for councils. Councils functioned as a way
|
||||
10. Persecution
|
||||
|
||||
In 1520, Martin Luther was declared an heretic in a papal bull issued by Pope Leo X. In response, Martin Luther burned the bull in public and announced that Leo X was the Antichrist. Various players in various quarters tried various strategies for resolving the schism, and it seems that few were willing to give up on violent coercion. In both Catholic and Protestant domains, magistrates burned books and burned people in an attempt to quell heresy.
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
# The structure of Genesis
|
||||
|
||||
Published on: 21 Mar 2026
|
||||
|
||||
I've been reading the Book of Genesis recently. Last night, I tried a favourite exercise of mine. It's very simple. I wrote down a list, in order, of all the 'episodes' in Genesis. That is, I wrote down a list that went:
|
||||
|
||||
* Creation
|
||||
* Adam and Eve
|
||||
* Cain and Abel
|
||||
* Genealogy of Noah
|
||||
* Noah and the Flood
|
||||
* …
|
||||
|
||||
…and so on, all the way to Joseph.
|
||||
|
||||
Once I'd finished this, I was surprised at the result. I realised that, without consciously thinking it, I had been expecting to find a single, clear structure, and in particular, one that went: patriarch, genealogy, patriarch, genealogy, and so on. I didn't find that at all.
|
||||
|
||||
For sure, patriarchs and genealogies are major structures in Genesis, and you'll get a long way thinking about Genesis as a story of six patriarchs and so many genealogies (though the genealogies are rather more difficult to count). Indeed, you *can*, if you really want, slice up Genesis into six neat patriarch cycles and glue them back together again with genealogies: Adam (1-5), Noah (5-11), Abram (11-25), Isaac (25-27), Jacob (27-36), Joseph (36-50). But this way of thinking cannot comprehensively account for the whole book.
|
||||
|
||||
For one thing, there are a good few pieces in Genesis which are difficult to fit into a patriarch jigsaw. Why is there so much material about Cain, Hagar, Ishmael, Esau, and Dinah, including genealogies? Why is the Tower of Babel in there? If Genesis is all about the patriarchs, these are all lengthy side-alleys. (May I say pends? Closes?)
|
||||
|
||||
For two things, this neat six-part series is more messy than it might at first appear. On this model, the genealogies function to glue together the patriarch narratives. Sometimes, this model works well: the genealogy in chapter 5 does a good job of connecting Adam to Noah, and the one in chapter 10 gets us from Noah to Abram. But from Abram to Jacob to Joseph, there's no need for genealogies to stitch things together, because we're only taking one step on the genealogical ladder at a time, from father to son to grandson.
|
||||
|
||||
So, in chapter 25, instead of a 'genealogy' from Abram to his son Isaac, we get genealogies of Keturah and Esau: genealogical 'dead ends' from a patriarchal point of view. In chapter 36, where we're 'supposed' to be linking Jacob to his son Joseph, we get another genealogy of Esau. And in chapter 27, at the join between the supposed 'Isaac cycle' and the supposed 'Jacob cycle,' there's no genealogy at all.
|
||||
|
||||
I'm not for a moment trying to tell you that this model is *useless* for understanding Genesis. Far from it! I don't think you can understand Genesis as a coherent whole without considering it as a story of six patriarchs. I'm just saying this model is *inadequate*. It seems that to account for the Book of Genesis, we're going to have to structure it in multiple ways. To me, that's wonderfully exciting.
|
||||
|
||||
In particular, I'm considering all these to be worthwhile ways to look at Genesis as a whole:
|
||||
|
||||
* Genealogies! (Without assuming they are centred on the six patriarchs!)
|
||||
* 'These are the generations of…' (how many occurrences can you find?)
|
||||
* Yahweh speaking to people! (Always one person alone: did you notice that?)
|
||||
* Wives! (How many can you think of? Will you include Potiphar's wife in this analysis? What about Dinah?)
|
||||
* Anti-patriarchs and foreigners! (Does Adam get as much column space as Abimelech, or Esau?)
|
||||
* Wells! (Some of them appear twice, or even thrice…)
|
||||
* Names and naming! (Do you remember why Jacob is called 'Jacob'?)
|
||||
* Deaths and burials! (How did Abraham end up buried in that cave?)
|
||||
|
||||
None of these structural lenses is adequate for seeing the whole thing in focus. But each one adds a new dimension. They all pile on top of one another. It's difficult to think of a physical analogy, because in my experience, things don't tend to occupy the same physical space at the same time, and I don't want to resort to the 'kaleidoscope' cliché. I guess it's a bit like quantum super-position, but instead of something being both 'up' and 'down' at the same time, it's multiple Persian rugs. Each one has its own colour scheme, its own patterns, its own delicately balanced symmetries. And yet, just as each rug is intricately harmonious within itself, it is no less intricately arranged into complex symphony with every other rug. And yet, somehow, all the rugs are simultaneously woven out of the same yarn. Picture that!
|
||||
|
||||
Of course, you can also read Genesis without attempting to comprehend the entire thing at once. You can also study a single episode, like the Tower of Babel, without trying to squeeze it into a grand narrative of the whole of Genesis. I suspect lots, if not all, of the stories in Genesis were originally told orally and independently of each other, and I think it's perfectly valid to read them independently once again.
|
||||
|
||||
Nevertheless, the author or authors of Genesis, and, more importantly, the Holy Ghost who moved them, once decided that it would be a good idea to put these stories and genealogies in an orderly sequence in the same scroll, and deliberately and explicitly relate them to one another. By considering structural lenses, we're joining the human authors, and generations of readers, in the faith that these stories mean something to each other, that they have something to tell us not only independently but also together.
|
||||
@@ -0,0 +1,51 @@
|
||||
# I'm a Protestant, why should I care about Vatican II?
|
||||
|
||||
This week in the New College, I've been studying the Second Vatican Council (1962-65), and in particular the Dogmatic Constitution on the Church, also known as 'Lumen Gentium.'
|
||||
|
||||
The Roman Catholic Church had inherited a rather secular view of what the Church is: it is a visible institution, 'as visible as the Kingdom of France' as Reformation polemicists once fained to put it, and in particular, a kind of monarchy, the Pope its King. After Vatican I closed in 1870, certain of the Church's earthly powers were increasingly in the hands of the Pontiff: not only monarchy, but an absolute one at that.
|
||||
|
||||
In the 1960s, the bishops deemed this inadequate. One particular concern was ecumenism, then in fashion. It is hardly possible to form cordial relations with other ecclesial organisations so long as one is officially bound to describe them as not real Church. Another concern was the Jews: it is hardly possible in a post-Holocaust world to pronounce the Jews nothing more than traitors against God. The bishops demanded a new understanding.
|
||||
|
||||
Once I understood this much, I stopped. Why carry on? I'm not Catholic. This isn't 'my' doctrine. I'm not at all tempted to view the Church as nothing other than a visible institution. If anything, I'm more tempted to say, 'the Church is just the collection of all the Christian people – that's it! Why bother getting all metaphysical?'
|
||||
|
||||
So, I set myself a challenge: I'd try and persuade myself to care about Lumen Gentium. What follows is my best case.
|
||||
|
||||
My case rests on this claim: if the Church is nothing more than all the Christians, then Christ died for nothing.
|
||||
|
||||
Here's the wedge: who does Christ save?
|
||||
|
||||
Just the Christians, of course! Is that your view? Sounds sensible. Good Catholic doctrine. It was put like this at the 11th session of the Council of Florence-Ferrara, on the 4th of February, 1442:
|
||||
|
||||
> It firmly believes, professes and preaches that all those who are outside the catholic church, not only pagans but also Jews or heretics and schismatics, cannot share in eternal life and will go into the everlasting fire which was prepared for the devil and his angels, unless they are joined to the catholic church before the end of their lives.
|
||||
|
||||
Perhaps you wouldn't have put it with quite that degree of extraordinary pastoral sensitivity. But is that basically your view? It is untenable! It is cruel, and it makes God out to be cruel. It is also unlivable. It is not possible to go about treating your brother, your friend, your colleague, your local shopkeep as if they're on a one-way train to eternal hellfire, and you're waving at them from the other track. If you do, you will be perceived as dangerously insane, and rightly so. In fact, almost nobody does behave as if this doctrine is true, and good thing, too!
|
||||
|
||||
Perhaps another Roman Catholic Council can suggest something more irenic?
|
||||
|
||||
> Those also can attain to salvation who through no fault of their own do not know the Gospel of Christ or His Church, yet sincerely seek God and moved by grace strive by their deeds to do His will as it is known to them through the dictates of conscience. Nor does Divine Providence deny the helps necessary for salvation to those who, without blame on their part, have not yet arrived at an explicit knowledge of God and with His grace strive to live a good life. Whatever good or truth is found amongst them is looked upon by the Church as a preparation for the Gospel.
|
||||
|
||||
That, of course, is Lumen Gentium.
|
||||
|
||||
Yet, if this is true, what role does Christ play after all? If Christ's Church isn't strictly necessary for salvation, then why did God bother sending his Son? We proclaim that Christ is the only way that God saves the world, but if we admit that some Jews and Muslims and all the rest might just be saved too, don't we deny that Christ is the only door?
|
||||
|
||||
So, if Christ only saves the Christians, then his salvation is cruelly limited. If he saves some non-Christians too, then the salvation isn't really from him.
|
||||
|
||||
Lumen Gentium attempts to get us out of this bind. Do you care yet?
|
||||
|
||||
According to Lumen Gentium, the Church is the 'budding-forth' of the kingdom of the heavens:
|
||||
|
||||
> From this source [Jesus] the Church, equipped with the gifts of its Founder and faithfully guarding His precepts of charity, humility and self-sacrifice, receives the mission to proclaim and to spread among all peoples the Kingdom of Christ and of God and to be, on earth, the initial budding-forth of that kingdom.
|
||||
|
||||
What strikes me about this 'budding-forth' image, is that a budding is both a promise and a foretaste of a coming flowering. See why this budding-forth matters:
|
||||
|
||||
> Its end is the kingdom of God, which has been begun by God Himself on earth, and which is to be further extended until it is brought to perfection by Him at the end of time, when Christ, our life, shall appear, and "creation itself will be delivered from its slavery to corruption into the freedom of the glory of the sons of God." So it is that that messianic people, although it does not actually include all men, and at times may look like a small flock, is nonetheless a lasting and sure seed of unity, hope and salvation for the whole human race.
|
||||
|
||||
This is what the budding-forth is a promise and a foretaste *of*: the liberation of the whole world. That's how it can be hope for all people, not only Christians. One more for the hat-trick:
|
||||
|
||||
> God gathered together as one all those who in faith look upon Jesus as the author of salvation and the source of unity and peace, and established them as the Church that for each and all it may be the visible sacrament of this saving unity.
|
||||
|
||||
You poor Protestant schismatic, you probably never heard the word 'sacrament' before. Let me explain: a 'sacrament' is an effective sign. Effective: it does what it says. Sign: it says what it does. It's also a mysterious unity of not-two-but-one events. Take communion: no, take communion. When you do, notice, it is effective: it actually brings you together with the rest of the body of Christ into communion with Christ the head. It is a sign: the bread and wine represent Christ's body and blood and point to his Passion which makes that communion possible. It is a physical reality: it is bread and wine. It is a spiritual reality: it is the flesh and blood of Christ. It is not two realities: it is mysteriously one.
|
||||
|
||||
Describing the Church as a 'sacrament,' in my opinion, is a stroke of brilliance. It is effective: not to say that the Church is perfect, it is a foretaste now of God's final redemption of the whole creation, and actually can bring forward flashes of light in the darkness, however flawed the earthly Church may be. It is a sign: as a gathering of followers of Christ, it points forward to the time when 'every knee shall bow, whether in the heavens or on the earth or under the earth, and every tongue confess that Jesus Christ is Lord, to the glory of God the Father.' It is a physical reality: a gathering of people, bound together by various organisational structures and other physical binds, like shared buildings, rituals, sacred objects. It is a spiritual reality: the body of Christ, one in his headship, the holy communion of saints refusing from age to age to respect boundaries of time, space, or even death. It is not two realities: it is mysteriously one.
|
||||
|
||||
Does this help you to loosen the bind you're in? At least credit it with the attempt.
|
||||
@@ -0,0 +1,96 @@
|
||||
# Green apocalypse (my dissertation proposal)
|
||||
|
||||
I want you to panic: thus Greta Thunberg exhorted the delegates at the World Economic Forum in Davos in 2019. I want you to act as if the house is on fire, because it is.
|
||||
|
||||
In her speech, Thunberg projected her audience into an imaginary crisis. The house is on fire. Try and escape – there is no way out. Fight the fire. Do it now. No cost too great.
|
||||
|
||||
A crisis situation demands an immediate response, and renders inaction unintelligible. No one can recognise that their house is on fire and lie on the sofa watching TV. In a crisis situation, decision-making adopts a certain, necessary, urgent character.
|
||||
|
||||
For the world leaders gathered in Davos, in contrast, continuing to set fossils on fire was a conceivable course of action. Climate change was not a literal crisis for them: in fact, climate change is not literally a crisis for anyone. That's not to say that it isn't real, or that it isn't really a big problem: all I mean is that it does not pose an undeferrable, immediate, existential threat to anyone, in the way that heatwaves, floods, and fires do.
|
||||
|
||||
Thunberg’s speech exhorted her audience to imagine what it would be like if setting fossils on fire were as inconceivable as sitting watching TV while your house is on fire, and to act as if it were true. She created an imaginary crisis to try to persuade her audience to act in a certain way.
|
||||
|
||||
The rhetoric of Thunberg’s speech echoes across our public fora. Political speech, newspaper articles, pop-science, scientific journals, novels, poems, films, and computer games abound with imaginary crises of this kind. The Woodland Trust is currently campaigning for local and national governments across the UK to declare a state of ‘nature emergency.’ This amounts to nothing more, and nothing less, than declaring official belief in an imaginary crisis.
|
||||
|
||||
These imaginary crisis narratives fascinate me: I’m planning to write a dissertation about them over the next four months. Maybe I can persuade you that they’re worth caring about?
|
||||
|
||||
These sorts of narratives are frequently labelled ‘apocalypses.’ Phrases such as ‘climate apocalypse’ and ‘environmental apocalypse’ are increasingly common. However, neither of these terms are quite adequate.
|
||||
|
||||
Take ‘climate apocalypse.’ Climate change is often woven inextricably into other, diverse problems: deforestation, habitat loss, soil degradation, overfishing, plastic pollution, ocean acidification, capitalism, imperialism, democracy, hunger, war, justice. The word ‘climate’ suggests that weather patterns can be neatly sliced out of this thickly knotted web of concerns. Perhaps some specialist scientific literature does attempt this, but a lot of what I want to study is not that particular kind of scientific literature.
|
||||
|
||||
The word ‘green’ is already associated with this whole web of concerns: think ‘green energy,’ ‘green tourism,’ ‘Green Party,’ ‘green agriculture.’
|
||||
|
||||
The word ‘green’ is also more suitable than ‘climate’ because it is open. By using the word ‘green,’ I don’t have to arbitrarily exclude literature from consideration just because it doesn’t focus on weather patterns or some other fixed list of concerns. I also considered ‘eco-apocalypse,’ but ‘green apocalypse’ has the advantage that ‘green’ can be detached and function as a self-standing epithet, while ‘eco’ can only exist as a prefix in ordinary English.
|
||||
|
||||
‘Green’ is also much more beautiful than ‘eco.’ (I dare you to disagree!)
|
||||
|
||||
I am interested in hope. In order to face our big problems, we need hope.
|
||||
|
||||
Hope is not merely a feeling. Hope means action. Hope is never easy. In easy situations, there is no need for hope. Hope means right action in difficult circumstances. Nevertheless, hope is also a feeling. Hope includes a conviction that not all is lost: that however rocky the road, good will win out in the end.
|
||||
|
||||
The opposite of hope is despair. Despair means a conviction that all is indeed lost. Since all is lost, action is pointless. Despair means no action, means resigning to mere lamentation.
|
||||
|
||||
A lot of folk complain that green apocalypse is no good, because it induces despair instead of hope. A woman on my degree programme told us that she once started an undergraduate degree in Environmental Science, but found it so depressing that she had to switch subjects for the sake of her sanity. Evidently, her Environmental Science department, despite apparently being experts in the field, either didn’t realise the importance of hope (improbable in my view), or were incapable of telling hopeful stories about the environment (relatable!). So, is the apocalyptic form at fault? Come to mention it, what is an ‘apocalypse?’
|
||||
|
||||
Sometimes, the word ‘apocalypse’ has taken on a meaning close to the ‘disaster’ of the ‘disaster movie’ genre: a total catastrophe far outweighing any redemptive afterwards. This usage is exemplified in the phrase ‘nuclear apocalypse,’ as well as in the phrase ‘post-apocalypse’ to refer to a time after such a total catastrophe.
|
||||
|
||||
However, ‘apocalypse’ has a deeper resonance, coming from its ultimate entry point into the English language: the Apocalypse of St John, also known as the Book of Revelation, the last book of the Christian Bible. This work inspired nineteenth-century scholars to coin the word ‘apocalyptic’ in order to name a genre of literature, viz. the genre of literature to which the Apocalypse belongs.
|
||||
|
||||
In Koine Greek, the verb ἀποκαλύπτω (ápokalýpto) was constructed from the verb καλύπτω (kalýpto), ‘to veil.’ Thus, in the Apocalypse itself, the word ‘apocalypse’ means ‘unveiling.’ The work is introduced as ‘the ἀποκάλυψις (ápokálypsis) of Jesus Christ.’ Something was hidden as if behind a veil, but has now been revealed in, or through, or by, Jesus Christ.
|
||||
|
||||
Can apocalyptic literature inspire hope instead of despair? Surely, if we will find a model anywhere, we might find it here, in the Apocalypse itself? Could biblical scholarship help us to unveil the hope hidden here?
|
||||
|
||||
While the Apocalypse had been relatively neglected by biblical scholars until about the 1960s, since then, academics have taken a keen interest in it. There was a particular flurry of activity in the 1990s. Then, Elizabeth Schüssler Fiorenza helped to popularise the view which became widespread amongst biblical scholars that the Apocalypse was written in response to a crisis faced by the Christian communities of Asia Minor under the rule of the Roman Emperor Domitian.
|
||||
|
||||
However, at a similar time, Leonard Thompson argued that there is no evidence that those communities were facing a crisis, and you don’t need to posit a crisis to explain the Apocalypse.
|
||||
|
||||
In his view, John’s audience likely lived relatively peaceful, ordinary lives, but John’s rhetoric induces an imaginary crisis in order to get his audience to act in a certain way. He does this by revealing hidden ultimate realities behind the deceptively ordinary world of appearances. Having gone on an imaginative, visionary cosmic journey through space and time, revealing these hidden, ultimate realities, his audience can now return to their messy visible reality with a new orientation towards what really matters, enabling them to do what is right even when their real-world decision-making does not literally have the certain, necessary, urgent character which it would in a crisis.
|
||||
|
||||
Perhaps this is one way that the Apocalypse grounded hope for its original audience, in the sense of ‘hope’ I explored above. The ultimate reality revealed in John’s vision is not optimistic: it acknowledges the reality of extreme suffering. But the ultimate good in John’s vision is rock-solid. God’s final victory over the beast is assured, even when the whore of Babylon drinks the blood of the saints by the gallon. All is not lost. This conviction underlies John’s appeal to his audience to live rightly even in their complicated reality with no obvious moral absolutes.
|
||||
|
||||
So why does green apocalypse so often inspire despair instead of hope? I hope I will develop my ideas over the next few months, but I have at least one inkling.
|
||||
|
||||
St John unveils a hidden reality behind the ordinary world of appearances. If this is to orient his audience towards hidden moral absolutes in their ordinary, very un-absolute everyday moral decision-making, this hidden reality must have a glimmer of ultimate value, something that cannot be compromised. In order to do this, he cannot be limited to mere scientific fact-speak. He has to reach beyond the grasp of facts, into the realm of myth: the realm of visions, dragons, lakes of fire, celestial cities. The point of these visions is not to name for us some definite future as it really appears, but to point us towards something which cannot be simply named in our language. It is this mythic quality which enables John to really reach behind the veil of ordinary reality, into the realm of ultimate things.
|
||||
|
||||
Where green apocalypse fails, it is often failing by failing to provide a rock-solid, rock-bottom reality for us to hold on to. Often, it does the very opposite, pointing us towards ordinary, visible realities, like polar ice caps and rare species, while at the same time emphasising how fragile they are. No wonder such narratives are so alienating! As long as green apocalypses limit themselves to the plain kind of language favoured by science – so-called ‘fact-speak’ – they will thus forever be condemned to inspire despair.
|
||||
|
||||
Where green apocalypse succeeds, it succeeds by delving into the riches of myth-speak. I think a promising example of this is ‘The Lost Words,’ with words by Robert MacFarlane and illustrations by Jackie Morris.
|
||||
|
||||
=> https://www.thelostwords.org/ ‘The Lost Words’ Website
|
||||
|
||||
In ‘The Lost Words,’ apparently ordinary characters from the British environment – as ordinary as dandelions, acorns, and ferns – are depicted in beautiful illustrated portraits on gold leaf, in the manner of a religious icon. In the pages in-between, illustrations of fields, thickets, and moors are scattered with a jumble of golden letters, waiting to be assembled. Each icon is accompanied by an acrostic poem. Consider ‘Bramble’:
|
||||
|
||||
=> /images/longlog/2026-04-12_bramble.webp ‘Bramble’ icon
|
||||
|
||||
> Bramble is on the march again,
|
||||
> Rolling and arching along the hedges,
|
||||
> into parks on the city edges.
|
||||
> All streets are suddenly thick with briar:
|
||||
> cars snarled fast, business over.
|
||||
> Moths have come in their millions,
|
||||
> drawn to the thorns. The air flutters.
|
||||
> Bramble has reached each house now,
|
||||
> looped it in wire. People lock doors,
|
||||
> close shutters.
|
||||
> Little shoots steal through keyholes,
|
||||
> to leave – in quiet halls,
|
||||
> Empty stairwells – bowls of bright
|
||||
> blackberries where the light falls.
|
||||
|
||||
Picture it! The human world tied up, people pushed out. Bramble barging through, conquering cities, streets, houses. Bramble is on the march again. It is decisively not fact-speak. It is imaginative – myth-speak, perhaps?
|
||||
|
||||
You could also study ‘Weasel,’ who ‘acts on land like spark on tinder – / Scorches grass, turns fields to pyre, sand to glass, tree to cinder.’ Or there is willow, the wise one, who will never, can never, share willow-wisdom with us: ‘you will never know a word of willow – for we are willow and you are not.’
|
||||
|
||||
My thoughts are not quite there yet, but I sense there’s something here. We’re not just being given a scientific account of bramble, weasel, willow. We’re being given more than that – a mythic account, peeling back ordinary reality to find something more precious behind. Can this refocus our eyes on what really matters? Can this transcend eco-anxiety? Can this ground hope instead of despair?
|
||||
|
||||
To recap, in the dissertation I’m about to write, I intend to address the question: how can green apocalypse ground hope instead of despair?
|
||||
|
||||
This question is topical, since green apocalypses have already been repeatedly accused of grounding despair instead of hope.
|
||||
|
||||
This question is also novel, since most critics imply that the solution to the problem is to stop telling green apocalypses, whereas my question presumes that it is possible to inspire hope without abandoning the apocalyptic form.
|
||||
|
||||
Since I have fixed the concept ‘apocalypse’ into the scope of my project, the Apocalypse of St John, very literally the defining work of the apocalyptic genre, is a necessary focus point. My subject matter is not just any old green stories, it is particularly those green stories which are ‘apocalyptic,’ that is, those which are rather like the Apocalypse.
|
||||
|
||||
Therefore, my project amounts to an attempt to explain (at least) one way in which the Apocalypse might have once grounded hope instead of despair, and then to explore how green stories can do something similar today.
|
||||
|
||||
I’ll be handing this in on the 5th of August. Wish me luck!
|
||||
@@ -0,0 +1,3 @@
|
||||
ChatGPT 3.5 gives bad answers half the time, and programmers miss the mistakes almost half the time. Be careful out there, folks.
|
||||
|
||||
=> https://dl.acm.org/doi/pdf/10.1145/3613904.3642596 Is Stack Overflow Obsolete? An Empirical Study of the Characteristics of ChatGPT Answers to Stack Overflow Questions
|
||||
@@ -0,0 +1,3 @@
|
||||
Cory Doctorow writes incessantly about the harms of monopolised markets. This essay is particularly good, because he collects many of monopolists’ greatest hits from recent years. Do keep reading to the end. It just gets better.
|
||||
|
||||
=> https://pluralistic.net/2024/05/24/record-scratch/#autoenshittification Cory Doctorow: autoenshittification
|
||||
@@ -0,0 +1,3 @@
|
||||
‘Once you find yourself in the position of being someone’s father you’ll quickly realize that you’re not actually raising anyone here, you just happen to be the veteran in the trenches alongside them, showing them the ropes and hoping they’ll survive and turn out okay.’
|
||||
|
||||
=> https://johan.hal.se/wrote/2024/06/05/parenting Parenting
|
||||
@@ -0,0 +1,3 @@
|
||||
Catherine Carr did a fantastic job of unveiling how teenage boys are experiencing masculinity in Britain today. Plenty here to surprise, shock and inspire.
|
||||
|
||||
=> https://www.bbc.co.uk/programmes/m001yshl Boys
|
||||
@@ -0,0 +1,3 @@
|
||||
Colin McGinn makes the case for primary and secondary moral values, just as there are primary and secondary qualities, apparently thereby managing to assert both moral realism and anti-realism at the same time without contradiction.
|
||||
|
||||
=> https://www.colinmcginn.net/primary-and-secondary-values Primary and Secondary Values
|
||||
@@ -0,0 +1,3 @@
|
||||
Jay Hoffman spots some striking parallels between the current AI hype and the dot-com bubble.
|
||||
|
||||
=> https://thehistoryoftheweb.com/beware-the-cloud-of-hype Beware the cloud of hype
|
||||
@@ -0,0 +1,3 @@
|
||||
Cory Doctorow, writing for the Electronic Frontier Foundation, argues that to save news media, we need to dismantle ad-tech monopolies, ban surveillance advertising, open up app stores and have an end-to-end web.
|
||||
|
||||
=> https://eff.org/saving-the-news Saving the News from Big Tech
|
||||
@@ -0,0 +1,3 @@
|
||||
A superb tribute to the building and analysis of the failures of the planning system. This was published in my free local newsletter, and is worthy of any broadsheet newspaper.
|
||||
|
||||
=> https://broughtonspurtle.org.uk/news/gone-not-forgotten 154 McDonald Road: Gone but not Forgotten
|
||||
@@ -0,0 +1,3 @@
|
||||
Chris Ferdinandi has a hot take here. I would be keen to test this idea out one day: push the limits of how much complex state you can manage within the light DOM.
|
||||
|
||||
=> https://gomakethings.com/state-based-ui-is-an-anti-pattern State-based UI is an anti-pattern
|
||||
@@ -0,0 +1,3 @@
|
||||
Yuck, yuck, yuck. Makes me glad I’m not on Instagram. For people already stuck there, though, this just sucks. Highly recommend either opting out of AI training or quitting Insta, if only to give the twits the middle finger they deserve.
|
||||
|
||||
=> https://www.fastcompany.com/91132854/instagram-training-ai-on-your-data-its-nearly-impossible-to-opt-out Instagram is training AI on your data. It’s nearly impossible to opt out
|
||||
@@ -0,0 +1,3 @@
|
||||
Did you know that most organisations store less than 100GB, and almost all analytics is run on the last 24h of data? I didn’t. Though take it all with a pinch of salt: the guy’s writing on his company blog which sells traditional data warehouses.
|
||||
|
||||
=> https://motherduck.com/blog/big-data-is-dead Big Data is Dead
|
||||
@@ -0,0 +1,3 @@
|
||||
ve got many inter-dependent flags. If you have independent flags, re-writing those as enums will just end up with you re-implementing the boolean type for every parameter, and not getting much profit, I reckon.
|
||||
|
||||
=> https://www.luu.io/posts/dont-use-booleans Don’t use booleans
|
||||
@@ -0,0 +1,3 @@
|
||||
Who doesn't like a classic David-and-Goliath hacker story? Also, if you're American, please <a href="https://www.breakupticketmaster.com">break up TicketMaster</a>. If you're in the UK, it's not quite as bad, but <a href="https://assets.publishing.service.gov.uk/media/5519473540f0b61401000087/final_report.pdf">it's still really bad</a>. Use alternatives where you can.
|
||||
|
||||
=> https://conduition.io/coding/ticketmaster s Rotating Barcodes (SafeTix)
|
||||
@@ -0,0 +1,3 @@
|
||||
Pretty convincing to me. The biggest potential weakness in his argument is his claim that none of the most common reasons why devs disagree on story points exposes anything which ought to be resolved in an estimation meeting. If you can provide other common reasons besides the ones Dave considered, you could rebut his argument. I don't feel experienced enough to judge this myself.
|
||||
|
||||
=> https://blog.scottlogic.com/2024/07/05/story-points-are-wasting-time.html Story points are wasting time
|
||||
@@ -0,0 +1,3 @@
|
||||
Read the interviews. Economists give interesting, and diverse, opinions on the economic potential of LLMs.
|
||||
|
||||
=> https://www.goldmansachs.com/intelligence/pages/gs-research/gen-ai-too-much-spend-too-little-benefit/report.pdf Goldman Sachs Top of the Mind, Issue 129
|
||||
@@ -0,0 +1,3 @@
|
||||
I posted on the Scott Logic blog a while ago about how the word 'hallucination' doesn't accurately capture how LLMs work.
|
||||
|
||||
=> https://blog.scottlogic.com/2024/09/10/llms-dont-hallucinate.html t 'hallucinate'
|
||||
@@ -0,0 +1,3 @@
|
||||
In case you'd forgotten: content moderation is still carried out by appalling worker exploitation. This is not news, but nonetheless an excellent and suitably chilling essay on the topic. Be aware that the essay describes some deeply traumatic content.
|
||||
|
||||
=> https://www.noemamag.com/the-human-cost-of-our-ai-driven-future The Human Cost Of Our AI-Driven Future
|
||||
@@ -0,0 +1,3 @@
|
||||
A pretty good case for avoiding the word 'just' in software engineering. I admit I've been guilty, too.
|
||||
|
||||
=> https://sgringwe.com/2019/10/10/Please-just-stop-saying-just.html just'
|
||||
@@ -0,0 +1,3 @@
|
||||
Alexander Pruss has a bizarre, but at first blush convincing, argument that complementarians about gender don’t have to appeal to morally significant intrinsic differences between men and women.
|
||||
|
||||
=> https://alexanderpruss.blogspot.com/2024/11/sexual-symmetry-and-asymmetry.html Sexual symmetry and asymmetry
|
||||
@@ -0,0 +1,4 @@
|
||||
Handy for the next time you develop a CLI or TUI. Also handy as a user: now I know about readline key bindings, which are everywhere apparently.
|
||||
|
||||
=> https://jvns.ca/blog/2024/11/26/terminal-rules "Rules" that terminal programs follow
|
||||
=> https://readline.kablamo.org/emacs.html Readline key bindings
|
||||
@@ -0,0 +1 @@
|
||||
I should write a post about self-hosting a Website.
|
||||
@@ -0,0 +1,3 @@
|
||||
There was no long-term price inflation from 1200 (when these data begin) until 1550. WHAT?!
|
||||
|
||||
=> https://www.bankofengland.co.uk/statistics/research-datasets s 'Millenium of Macroeconomic Data'
|
||||
@@ -0,0 +1,3 @@
|
||||
I just donated $40. These guys are promising to do whatever it takes to make sure the AT Protocol is genuinely owned by everyone.
|
||||
|
||||
=> https://freeourfeeds.com Free Our Feeds
|
||||
@@ -0,0 +1 @@
|
||||
I should write a post about owning a homelab.
|
||||
@@ -0,0 +1 @@
|
||||
I should write a post about biblical inerrancy.
|
||||
@@ -0,0 +1 @@
|
||||
I should stop listening to radio and recorded music in my house. Music is played by people, not machines. So-called 'recorded music' is fake.
|
||||
@@ -0,0 +1 @@
|
||||
My current diary is hand-made using a blank notebook and a bunch of felt-tip pens. It was fun to do, but also really time-consuming, and error-prone. Maybe I could write a script to produce the design in PDF? It'd probably go via HTML just because I know how to do things in HTML.
|
||||
@@ -0,0 +1 @@
|
||||
I loved Brave New World by Aldous Huxley. If you ever intend on doing science, having sex or being human, you should read this book.
|
||||
@@ -0,0 +1 @@
|
||||
I loved the art exhibition today at my church, Bruntsfield Evangelical. I was blown away by the hidden talents in the congregation – sorry for the cliché. I kept coming back to a few works in particular: Brooke's painting of the Samaritan woman at the well, Irena's multi-media interpretation of Ps 139 'you knit me together in my mother's womb,' Sam's prose-poem 'On Words,' and Maggie Shearer's landscapes. And this only scratches the surface. Today ignited my love for this congregation, made me passionately desire to have more art in my life, and inspired me to take up an interest in poetry again.
|
||||
@@ -0,0 +1 @@
|
||||
I loved 'Batter my heart' by John Donne. I was surprised that I loved it more than 'Death be not proud' when I bought a collection of his poems today and read through the Divine Meditations. 'Death be not proud' may yet grow on me. I'd love to memorise a few of his Divine Meditations.
|
||||
@@ -0,0 +1 @@
|
||||
I should write a post about self-hosting a Gemini capsule.
|
||||
@@ -0,0 +1 @@
|
||||
I wish I set aside time to read the Bible and read literature and sometimes write sonnets.
|
||||
@@ -0,0 +1 @@
|
||||
I wish there was a version of the Bible that was like the Authorised Version but with fewer errors.
|
||||
@@ -0,0 +1 @@
|
||||
I wish I was better at languages.
|
||||
@@ -0,0 +1 @@
|
||||
I should write a post based on the essay I'm writing for my course, Science and Religion in Literature. I could try to explain to a general audience what's going on in the academic science and religion discourse right now, and my argument as to how Philip Pullman's His Dark Materials trilogy could address this.
|
||||
@@ -0,0 +1 @@
|
||||
I wish I had a copy of Shakespeare's sonnets. I'd love to memorise Sonnet 18.
|
||||
@@ -0,0 +1 @@
|
||||
I had an unexpected craving to go back to The Elder Scrolls III: Morrowind, a computer game I was obsessed with between the ages of about 16 and 18. I actually got as far as looking at prices for GPUs. I don't currently have a GPU in my computer, since I haven't played computer games for years. Playing Morrowind with enough mods to make it fun would require a GPU of some kind, though I find it really hard to judge what card would be appropriate. In the end, I remembered that I actually quite like not being addicted to computer games, and the sudden craving gradually faded.
|
||||
@@ -0,0 +1 @@
|
||||
I loved the Easter homily at Sacred Heart of Jesus on Lauriston Street, Edinburgh. I loved it because I couldn't predict where it was going, which meant I had to listen and think. It got me thinking about scapegoating. I agree that there's something a bit morally gross about scapegoating, and I see the connection he made with the theory of penal substitution. I think the priest missed the Lev 16 connection, though, which I think is pretty important.
|
||||
@@ -0,0 +1 @@
|
||||
I'd love to get to know more myths and fairy tales. I'd love a good translation of the Odyssey, or a good telling of other Greek myths, or Neil Gaiman's Norse myths, or some sagas, or…
|
||||
@@ -0,0 +1 @@
|
||||
I should get a bunch of my pals together and go poetry busking. If we make any money we can go to the pub afterwards.
|
||||
@@ -0,0 +1 @@
|
||||
I should write a post based on my dissertation proposal. Someone else might find my reflections on green apocalypse interesting. And it would be cool for me to look back at the end of the project.
|
||||
@@ -0,0 +1,3 @@
|
||||
I loved this silly post by ew0k.
|
||||
|
||||
=> gemini://warmedal.se/~bjorn/posts/2025-09-02-married-was-i-scammed.gmi Married! Was I Scammed?
|
||||
@@ -0,0 +1 @@
|
||||
I went through my work diary from semester 1, and remembered that I came up with a few fun and productive ways of digesting what I'd learned! I wrote a very personal and temporary catechism, summarising important opinions that I had formed, I wrote down a list of quality questions I'd encountered, and I wrote a couple of stories/essays for my longlog. I should totally do all these things again: Semester 2 Edition.
|
||||
@@ -0,0 +1 @@
|
||||
I should make sure that folk on my Website know how to subscribe to my logs, and how to get to my Gemini capsule. That is, I should write a guide to RSS and a guide to Gemini, and make them accessible from my homepage.
|
||||
@@ -0,0 +1 @@
|
||||
I wish I had a few more fountain pens. Dreadfully useful things.
|
||||
@@ -0,0 +1,9 @@
|
||||
‘Losing Eden’ by Lucy Jones left me feeling hopeful, inspired. But I can’t imagine what I shall do, and it’s driving me nuts. What I really want is to form a joy brigade at Bruntsfield Evangelical that goes outside regularly, to ‘touch nature from the inside.’ But I tried that before, and no one signed up, and I have no idea how to persuade people to sign up to things, or what sort of thing I could run instead that people would sign up to. And now I feel depressed. I feel I want to do something, and I can do something, but no one will back me up, presumably because there’s something wrong with me.
|
||||
|
||||
That’s how I felt about noon. To burn some energy, I went to walk to the shops and back, and long before I knew what I was doing, I found my toes dangling in the Braid Burn. It was a very particular spot. Last time I came here, I pretty much wrote a sonnet in my head, and came back and wrote it down. Today I did not have many words in my head, but I was astonished at how delicious the light looked through the leaves and the warm bed of wildflowers I couldn’t name.
|
||||
|
||||
When I came back, I was still fizzing with frustrated energy. I didn’t realise hope could be such a terrible emotion. On a whim, I got Edward Thomas off the shelf, and browsed through his poems, including ‘Lob’ and my favourite, ‘Adlestrop.’
|
||||
|
||||
By that point, I’d calmed down enough to get back to my work. I read ‘Wilding’ by Isabella Tree, with illustrations by Angela Harding. It also made me feel hopeful. They have a story about a diamond in the rough, a shining city on a hill in a land still cloaked in darkness, a suggestion that homo sapiens could be a keystone species. I was close to tears three times while reading it.
|
||||
|
||||
After I finished, I went outside in the rain into my tenement’s shared garden. I’ve been there exactly once before: in January last year, when I was viewing the flat. I looked once, and decided it was dark, lifeless and dull: not worth going back to. I was so wrong! I’m plotting to try taking my morning pot of tea in the garden some day when it’s dry. I don’t feel angry any more.
|
||||
@@ -0,0 +1,3 @@
|
||||
Why do I feel like I wrote this? Or like this person stole my opinions somehow?
|
||||
|
||||
=> gemini://eph.smol.pub/a-book-of-proverbs eph – A Book Of Proverbs
|
||||
@@ -0,0 +1,7 @@
|
||||
Today I saw three birds nesting.
|
||||
|
||||
In the morning, I read a book in my shared tenement garden. While I was reading, I caught a blackbird in the corner of my eye. He caught me in the corner of his eye. A worm wriggled in his beak. He froze for a time. Eventually – hop! He watched me suspiciously. Was he really that pea-brained to think I could catch him even if I tried? A long pause. Hop! He was now at the edge of the border, inches away from diving into the bushes. Here, he waited, and seemed ready to wait forever. The worm wriggled in his beak. I realised what was going on. I turned my back to him. When I looked back, he was gone.
|
||||
|
||||
Over lunch, I went for a walk on the Union Canal. Yards past Boroughmuir High School, a huge nest of heavy sticks sat implausibly erected on top of a bank of reeds, like a house on stilts, with a huge swan heaved on top of it. A second swan, presumably its mate, sailed up and down the canal some way further along. But this one was stock still, perhaps sleeping, its whole head nestled in the folds of its own body. Whether it brooded over eggs or chicks, I couldn't tell.
|
||||
|
||||
A little further down, after I passed the second swan, I came to a bridge. When I turned the corner round the abutment of the bridge, I found the towpath strewn with pigeons. As I passed, they whisked up into the iron spars under the bridge. Many of them ended up on a small protruding course along the brickwork on the far side, and I could see why: the iron spars was bristling with anti-bird spikes. Still, more than half the pigeons had seemingly made do with a prickly perch. There must have been at least a dozen nests. They were built of dried plant matter, though I've no idea how they got them to stick together. Spittle? Impressive constructions: large, tall, and deep. I could hear chicks mewling. I watched for a minute. The young ones were pretty much completely obscured in their deep nests. But sure enough, after a couple of minutes, I caught a glimpse of one sticking a head out above the parapet.
|
||||
@@ -0,0 +1,3 @@
|
||||
I wish I had an album or two from Getdown Services. Their recordings are so silly and also sound amazing!
|
||||
|
||||
=> https://getdownservices.bandcamp.com Getdown Services on Bandcamp
|
||||
@@ -0,0 +1,24 @@
|
||||
Not long ago, I started hosting on Gemini protocol. I'm fascinated by how the wonder that is the Internet seems to have gone so wrong with the rise of the Web, and Gemini protocol had an exciting proposal for what went wrong and how to fix it.
|
||||
|
||||
If you know a little of the technical details about the Web, you'll know that 'the Web' basically refers to five technologies lumped together: the Internet, HTML, TCP/IP, TLS, and DNS.
|
||||
|
||||
Gemini then placed the blame for the failure of the Web on HTML and HTTP. Gemini protocol is far simpler than HTTP and is deliberately non-extensible, and encourages authors to use the gemtext document format (in which I'm writing this post!) which is designed on the same principles. The result is something Web-like, but with plain documents that mostly don't do anything.
|
||||
|
||||
=> https://geminiprotocol.net About the Gemini protocol
|
||||
|
||||
Today, I've just heard about a fairly young network technology called Reticulum.
|
||||
|
||||
=> https://reticulum.network/manual/zen.html Foundational philosophy of Reticulum
|
||||
=> https://reticulum.network/manual/whatis.html What is Reticulum?
|
||||
|
||||
Unlike Gemini, which ditches HTML and HTTP but keeps TCP/IP, TLS, and DNS, Reticulum reforms those latter three technologies. In less geeky speak, Gemini looks at the messages, Reticulum at the medium for transporting the messages.
|
||||
|
||||
Some folk might think this is just for the kind of geek that builds home radios. Maybe it is. But maybe it is also a very piercing analysis of why the Web went wrong and a serious, concrete proposal for what to do about it, in which, in principle, anyone with a bit of time, technical knowledge and some old hardware worth a tenner on eBay can participate.
|
||||
|
||||
Imagine a world where you can connect to the Internet, get all the gob-stopping advantages of an incomprehensibly cheap, fast, and accessible international communications network, without having to tolerate rent-sucking corporations sitting in the way of the information you want to access, without having to throw away your phone every 2-5 years, without having to fight against systems that seem designed to make your life more difficult instead of easier...
|
||||
|
||||
To summarise the headlines:
|
||||
|
||||
* No domain names, only cryptographic hashes
|
||||
* You take your identity with you, so there is no concept of 'logging in'
|
||||
* There is no trust in the system, in contrast to the Web, which depends on total trust in invisible corporations who hold domain name databases and sign TLS certificates
|
||||
@@ -0,0 +1,3 @@
|
||||
I picked up a random book in the New College Library, and it brought home how much tightly apocalyptic language had been tied to visions of nuclear armageddon, particularly in the 1980s.
|
||||
|
||||
Perhaps this is still shaping, and limiting, how we use apocalyptic language today, even as the subject matter has largely shifted away from nuclear weapons and towards green issues.
|
||||
@@ -0,0 +1,7 @@
|
||||
I've recently found the blog of Dieter Helm, a Professor of Economic Policy at Oxford University. He has revealed a few surprises about energy that have shifted my perspective. Among them:
|
||||
|
||||
* We have never had an energy transition. When we started massively exploiting coal, we also burned more wood. When we started massively exploiting oil and gas, we burned more coal.
|
||||
* Nor are we experiencing an energy transition now: although renewables make up an increasing share of global energy consumption, total energy consumption is increasing more than this. Fossil fuel consumption is going up, not down, and shows no sign of slowing.
|
||||
* In the 'bad old days' of an electricity system built on fossil fuels, we needed 60GW of capacity to reliably keep the lights on in the UK. In a grid built on renewables, we will need 120GW, because renewables are intermittent. Back-up power will need to come from some combination of fossil fuels, nuclear, and storage. That means power stations spending most of their time idling, and huge new infrastructure to support 120GW of transmission and any storage solutions.
|
||||
* These 'system costs' of renewables explain why renewable energy is more expensive than fossil fuels, even though the marginal cost is cheaper, contrary to false promises that renewable energy is now 'ten times cheaper' than fossil fuels.
|
||||
* Germany's push for renewables over the last few decades has been a disaster in just about every way, including increasing global CO2 emissions: with higher energy prices, German energy-intensive industries (including solar panel manufacture!) moved to China where energy, mostly fuelled by coal, is much cheaper.
|
||||
@@ -0,0 +1,3 @@
|
||||
I loved ‘Climate Change As Class War’ by Matthew Huber. I realise I'd been hooked into the assumption that the only kinds of green action people outside the corridors of power can take is making green consumption choices, taking up gardening, or going on a protest. This assumption leads to the conclusion that you and I are, ultimately, powerless over the big global problems. I hadn't consider the kind of action Huber considers: industrial action leading to state socialism.
|
||||
|
||||
=> https://www.versobooks.com/en-gb/products/775-climate-change-as-class-war ‘Climate Change As Class War’ by Matthew Huber
|
||||
@@ -0,0 +1 @@
|
||||
I've joined a political party. I didn't vote for them. See if you can guess which one.
|
||||
@@ -0,0 +1,5 @@
|
||||
I've just written a new abstract for my upcoming Masters dissertation. Hopefully it shows how my thinking is developing.
|
||||
|
||||
(I'm also just really pleased that I managed to write something today. I've been suffering from blank page syndrome.)
|
||||
|
||||
Since the 1960s, a political movement has emerged in the West, dominated by the middle classes, seeking to defend the non-human world against human abuse: the green movement. Greens have developed a palette of common rhetorical techniques, which we can call ‘green rhetoric’. Since the 1990s, climate change has become the master frame for green issues, and green rhetoric has been dominated by the narrative of an impending climate catastrophe. However, in that time, most of the movement’s most important demands for social-scale change have not happened: green rhetoric is not working. Some scholars, attempting to explain what’s gone wrong, pinpoint how green rhetoric uses apocalyptic language, and implies that green rhetoric would be more effective were it to be less apocalyptic. In this dissertation, I argue against this conclusion, and aim to show that, in order to succeed, green rhetoric must become more apocalyptic, not less.
|
||||
@@ -0,0 +1,7 @@
|
||||
I looked through some concordances while I was bored in the New College Library the other day.
|
||||
|
||||
I really love Robert Young's Analytical Concordance. Young's is a concordance to the Authorised Version, so the entries are the English words used in the AV. But each English-language entry groups together all the words in the Greek New Testament and Hebrew Old Testament which correspond to that English word, and lists all the occurrences of each of those words in their respective source texts. That makes it a perfect tool for understanding the relationships between the biblical source texts. The only disadvantage is that it doesn't seem at all interested in the Septuagint, which is really important for understanding the way New Testament authors use the Old Testament.
|
||||
|
||||
It astonished me that there are concordances available of the NIV and ESV texts. Why would you want that? The texts don't correspond very well to the Greek or Hebrew source texts, and they don't have nearly as much clout as self-standing faith texts as the Authorised Version does. I really don't get it. If I had one, I would probably never open it.
|
||||
|
||||
I couldn't get ahold of a Strong's, but I did happen to drop in Armchair Books on the way back from the library, and they have a beautiful 19th-century Cruden's Concordance. Cruden's was the first English-language concordance when its eponymous author painstakingly constructed it in 1737, and has never been out of print since then. By the looks of it, it remains very relevant for English-speaking readers of the Bible. And going for a bargain as well... if you get there before me, I'll eat your head.
|
||||
@@ -0,0 +1,7 @@
|
||||
So I've now got half a dozen services running on my homelab across two machines. I need to install the services on each machine, keep them running after crashes and reboots, update and restart them when the source code changes, and co-ordinate them with each other (since I can only have one public IP on my home network, but I want to serve stuff over the Internet from both machines).
|
||||
|
||||
I am currently managing this with Podman, some Dockerfiles and Docker-Compose files, Makefiles, and a lot of manual interference. This just about works, and is probably reasonably sensible for the small, low-consequence situation.
|
||||
|
||||
Still, it is a faff. I'm wondering: is this kind of what Kubernetes is for? I've never understood. Looking at the documentation, I find it really hard to understand what Kubernetes is for. Maybe it's for situations kind of like this (only typically much bigger)?
|
||||
|
||||
Answers on a postcard please.
|
||||