From 602f44b46456451156296fe068c189a10c376151 Mon Sep 17 00:00:00 2001 From: Circling Skies Date: Thu, 6 Aug 2026 16:58:12 -0300 Subject: [PATCH] Cleans up LOOP completely for coherence with the new io work. We're ready to tackle the new design on the index, so we're going live with the current changes so that we can use it every day and spot any mishaps we might find (while we write the new index subsystem). --- Anyfile | 15 -- Makefile | 2 +- README | 22 +-- images/gnus-article.png | Bin 0 -> 121447 bytes images/sylpheed-reading.png | Bin 0 -> 110687 bytes images/sylpheed-subscribing.png | Bin 0 -> 11854 bytes loop.lisp | 95 +-------- loop.nw | 337 ++++++++------------------------ make-release | 2 +- version.lisp | 2 + 10 files changed, 93 insertions(+), 382 deletions(-) create mode 100644 images/gnus-article.png create mode 100644 images/sylpheed-reading.png create mode 100644 images/sylpheed-subscribing.png create mode 100644 version.lisp diff --git a/Anyfile b/Anyfile index b42bb38..c5b227b 100644 --- a/Anyfile +++ b/Anyfile @@ -31,15 +31,6 @@ format-def: loop.nw (rm format-def.tmp && exit 1)) && \ mv format-def.tmp format-def -make-release: loop.nw - (no tangle -Rmake-release.sh < loop.nw > make-release.tmp || \ - (rm make-release.tmp && exit 1)) && \ - mv make-release.tmp make-release && chmod 0755 make-release - -release: make-release - ./make-release $$(git log --oneline -1 | awk '{print $$1}') \ - loop.nw > loop.tmp && mv loop.tmp loop.nw - loop.asd: loop.nw (no tangle -Rloop.asd < loop.nw > loop-asd.tmp || \ (rm loop-asd.tmp && exit 1)) && \ @@ -70,12 +61,6 @@ scripts/migrate-add-creation-date.lisp: loop.nw mv migrate-add-creation-date.tmp \ scripts/migrate-add-creation-date.lisp -# run: loop.nw -# (no tangle -Rrun < loop.nw > run.tmp || \ -# (rm run.tmp && exit 1)) && \ -# mv run.tmp run && \ -# chmod 0755 run - loop.tex: loop.nw no weave -delay -index loop.nw > loop.tex diff --git a/Makefile b/Makefile index 7b81a2e..248657c 100644 --- a/Makefile +++ b/Makefile @@ -4,6 +4,6 @@ loop: loop.asd loop.lisp scripts/build-exe.lisp sbcl --script scripts/build-exe.lisp install: loop - mkdir -p `head -1 conf-home` && \ + mkdir -p `head -1 conf-home`/tmp && \ cp -R loop accounts.lisp groups scripts \ `head -1 conf-home` diff --git a/README b/README index 6ecd95e..abd483d 100644 --- a/README +++ b/README @@ -21,7 +21,7 @@ install it as a local project. Go to and say - $ git clone https://git.antartida.xyz/loop/srv loop + $ git clone https://git.atlantida.space/root/loop $ cd loop $ echo /path/to/loop/home > conf-home $ make install @@ -76,7 +76,7 @@ Using another terminal, telnet to your host on port 1024: --8<-------------------------------------------------------->8--- $ telnet localhost 1024 Trying 127.0.0.1... -Connected to antartida.xyz. +Connected to 127.0.0.1. Escape character is '^]'. 200 Welcome! Say ``help'' for a menu. quit @@ -122,22 +122,6 @@ $ crontab -l We installed LOOP just fine on + Void GNU/Linux release ``rolling'' with SBCL 2.6.6.void.1 FreeBSD 14.1, 14.2 with SBCL 2.4.9. Debian GNU/Linux 8.11 codename jessie with SBCL 1.2.4.debian. - -(*) Systems with installation issues - -We installed LOOP on Ubuntu 24.04 (24.01.1 LTS) codename noble with -SBCL 2.2.9.debian. We found that CLSQL could not load the shared -object libsqlite3.so because ``apt install libsqlite3'' installs the -library at - - /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6 - -with a symbolic link to libsqlite3.so.0, but not to libsqlite3.so. -SBCL is trying to load libsqlite3.so, so a solution is to just tell -your system to - - ln -s libsqlite3.so.0 libsqlite3.so - -at /usr/lib/x86_64-linux-gnu. diff --git a/images/gnus-article.png b/images/gnus-article.png new file mode 100644 index 0000000000000000000000000000000000000000..04dfeebb9648f4c113973c313e3d4538283051d3 GIT binary patch literal 121447 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