commit 01fc06543395617220068208745ce5a65b5979d5 Author: Madeleine Sydney Ĺšlaga Date: Sat Jan 24 20:50:49 2026 -0700 init diff --git a/.dir-locals.el b/.dir-locals.el new file mode 100644 index 0000000..ae9a945 --- /dev/null +++ b/.dir-locals.el @@ -0,0 +1,11 @@ +((nil + . ((cider-clojure-cli-aliases . ":dev") + (eval + . (progn + (defun start-deertopia-server () + (let ((n (cider-format-connection-params "%j" cider-launch-params))) + (when (equal n "deertopia.net") + (cider-interactive-eval + "(do (require '[net.deertopia.publish.server :as server]) + (server/start!))")))) + (add-hook 'cider-connected-hook #'start-deertopia-server)))))) diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..3550a30 --- /dev/null +++ b/.envrc @@ -0,0 +1 @@ +use flake diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1459518 --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +result +.nrepl-port +.cpcache/ +.cache/ +.lsp/ +.clj-kondo +.cpcache +.lsp +.nrepl +.direnv/ +node_modules +resources/vendor/* diff --git a/bb.edn b/bb.edn new file mode 100644 index 0000000..519d575 --- /dev/null +++ b/bb.edn @@ -0,0 +1,8 @@ +{:tasks + {:requires ([babashka.process :as p]) + lock + {:doc "Update the clj-nix lockfile" + :task (-> (p/sh {:out :inherit :err :inherit} + "nix run github:jlesquembre/clj-nix#deps-lock") + :exit + System/exit)}}} diff --git a/deps-lock.json b/deps-lock.json new file mode 100644 index 0000000..986bedb --- /dev/null +++ b/deps-lock.json @@ -0,0 +1,644 @@ +{ + "lock-version": 4, + "git-deps": [ + { + "lib": "io.github.msyds/spec-dict", + "url": "https://github.com/msyds/spec-dict.git", + "rev": "531d629b7f05f37232261cf9e8927a4b5915714f", + "git-dir": "https/github.com/msyds/spec-dict", + "hash": "sha256-5hMdPsB8OhOCtByPZS+CHXzVLq0H+OBKKnXec21xwmg=" + } + ], + "mvn-deps": [ + { + "mvn-path": "babashka/fs/0.5.24/fs-0.5.24.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-owunNIWFqt6xNGhNV6vFs7GyYEz8z8wHRT7TSw1MDlU=" + }, + { + "mvn-path": "babashka/fs/0.5.24/fs-0.5.24.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-E1jX6M3DeoTXVU6Vzd6xIpE0s9QAZpZALJl4nSKU8E8=" + }, + { + "mvn-path": "babashka/process/0.6.25/process-0.6.25.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-XWTJ6kUgLD3/UJGe++Lf0+/Ja9SPViS50v33v3JOf4s=" + }, + { + "mvn-path": "babashka/process/0.6.25/process-0.6.25.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-4bSR/Z0g4rXVwv2u6e9rkoL8d1nV5b9iNIs/U2o8l8Y=" + }, + { + "mvn-path": "camel-snake-kebab/camel-snake-kebab/0.4.3/camel-snake-kebab-0.4.3.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-gZHzNXdjENeFekCtMyVL5mrbNjgGsYE22IQxlpI6wsg=" + }, + { + "mvn-path": "camel-snake-kebab/camel-snake-kebab/0.4.3/camel-snake-kebab-0.4.3.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-LVp6g6ymqHa1ZOMHYD0CRaNxZ4osT0xoEH7dC5sLv7s=" + }, + { + "mvn-path": "cheshire/cheshire/6.1.0/cheshire-6.1.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-ruCrbkSBlaoJXyLEKOINK8YQWRxUwQ7D4YPdOwgWOcI=" + }, + { + "mvn-path": "cheshire/cheshire/6.1.0/cheshire-6.1.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-KKpi9U7eZ2YjAyQI14sMgqv91IiMfFagshIrg+Pad+M=" + }, + { + "mvn-path": "clout/clout/2.2.1/clout-2.2.1.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-nzdGxROb7zUJmjOuuDMQCnWOJXKv1CM+ynAM3XLWhws=" + }, + { + "mvn-path": "clout/clout/2.2.1/clout-2.2.1.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-BNzQl/YWeodReE3AkISRm68YmBfPQcvt4sQs7gSMh6c=" + }, + { + "mvn-path": "com/fasterxml/jackson/core/jackson-core/2.20.0/jackson-core-2.20.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-vAz0YHWHcgH4QG7n3idBrn32wGb18EV72AYypxjAbnI=" + }, + { + "mvn-path": "com/fasterxml/jackson/core/jackson-core/2.20.0/jackson-core-2.20.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-XxZVisIjBzpvJHRA8wX1nwXv9QqvHurguq1BKAABb2g=" + }, + { + "mvn-path": "com/fasterxml/jackson/dataformat/jackson-dataformat-cbor/2.20.0/jackson-dataformat-cbor-2.20.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-qwdWFsvWf1Z2+Jgl7JyLx7VMhNvpNLFiFFs0FyNwtdY=" + }, + { + "mvn-path": "com/fasterxml/jackson/dataformat/jackson-dataformat-cbor/2.20.0/jackson-dataformat-cbor-2.20.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-SYvwMYvqLnY2Wf0r/k8W8pHt8JNaMMnysKKP7jrXz8c=" + }, + { + "mvn-path": "com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.20.0/jackson-dataformat-smile-2.20.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-NFwALLesnlQ0Go8ExWoR3CGUVCbqg5n/VuAvuOkSpm4=" + }, + { + "mvn-path": "com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.20.0/jackson-dataformat-smile-2.20.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-IM1JgnnQUcaQMkt6R1+Ee/wQoAcQS6uc371ga1sFhDk=" + }, + { + "mvn-path": "com/fasterxml/jackson/dataformat/jackson-dataformats-binary/2.20.0/jackson-dataformats-binary-2.20.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-ZJ/OQKV9Qhx82erCP919XPbzwdG5NAbuJ3xFw1Mm5Yg=" + }, + { + "mvn-path": "com/fasterxml/jackson/jackson-base/2.20.0/jackson-base-2.20.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-/IgCjRnuqjftpZbmuY03SfIs/IrdGeoZdFq+g2iDzmY=" + }, + { + "mvn-path": "com/fasterxml/jackson/jackson-bom/2.20.0/jackson-bom-2.20.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-9ig2R+cB/aHNMS3MIcsTKkD3mPGejkL6/D/jR8WlG7s=" + }, + { + "mvn-path": "com/fasterxml/jackson/jackson-parent/2.20/jackson-parent-2.20.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-tDt/XGLoaxZPrnCuF9aRHF22B5mvAQVzYK/aguSEW+U=" + }, + { + "mvn-path": "com/fasterxml/oss-parent/70/oss-parent-70.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-JsqO1vgsnS7XzTIpgQW7ZcD52JnbYXV6CXQVhvqTpjk=" + }, + { + "mvn-path": "com/github/seancorfield/next.jdbc/1.3.1070/next.jdbc-1.3.1070.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-KBwHPE6hgD3YXNC/CKln0+1pajBSIbfiynJldAwTkB8=" + }, + { + "mvn-path": "com/github/seancorfield/next.jdbc/1.3.1070/next.jdbc-1.3.1070.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-dXkdZHooK97QEyeXodFSC942EiB9B8MlHUNZlbH8nvI=" + }, + { + "mvn-path": "com/unboundid/unboundid-ldapsdk/5.1.1/unboundid-ldapsdk-5.1.1.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-pDQyAxsORZLswWwh04LPvdn5jVAvFn9+/oaXq09Efrk=" + }, + { + "mvn-path": "com/unboundid/unboundid-ldapsdk/5.1.1/unboundid-ldapsdk-5.1.1.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-w6xcAY5WK8G4gm92pX0qY7sf0uKzCo8m7dSBPrEvztg=" + }, + { + "mvn-path": "commons-codec/commons-codec/1.15/commons-codec-1.15.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-s+n21jp5AQm/DQVmEfvtHPaQVYJt7+uYlKcTadJG7WM=" + }, + { + "mvn-path": "commons-codec/commons-codec/1.15/commons-codec-1.15.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-yG7hmKNaNxVIeGD0Gcv2Qufk2ehxR3eUfb5qTjogq1g=" + }, + { + "mvn-path": "commons-io/commons-io/2.17.0/commons-io-2.17.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-SqTKSPPf0wt4Igt4gdjLk+rECT7JQ2G2vvqUh5mKVQs=" + }, + { + "mvn-path": "commons-io/commons-io/2.17.0/commons-io-2.17.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-SEqTn/9TELjLXGuQKcLc8VXT+TuLjWKF8/VrsroJ/Ek=" + }, + { + "mvn-path": "compojure/compojure/1.7.1/compojure-1.7.1.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-CtYPv//W9VUqS0NpBWYADP2bbXq9g22e05zVgm4Ifyk=" + }, + { + "mvn-path": "compojure/compojure/1.7.1/compojure-1.7.1.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-wJXfgk0wVcbec4QiDLsCvzmpdc8wE9hGub5Shmi/7wc=" + }, + { + "mvn-path": "crypto-equality/crypto-equality/1.0.1/crypto-equality-1.0.1.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-7hXMC3bc9z+PyG0C6e/+1xYKimtAsvDp3nLj3SXtS98=" + }, + { + "mvn-path": "crypto-equality/crypto-equality/1.0.1/crypto-equality-1.0.1.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-Yy5XAtXTVhk9GKUN4KJhoZwUqtYIc05GToWjYA509Es=" + }, + { + "mvn-path": "crypto-random/crypto-random/1.2.1/crypto-random-1.2.1.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-XBKIRte2bVPF6XJnc7hy9+AoRP9lGplqXjRSoVI65Sw=" + }, + { + "mvn-path": "crypto-random/crypto-random/1.2.1/crypto-random-1.2.1.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-2OgLA0KFMl6QX1RkmhWYtoe5pKmaOk9LlO7TWXyyEEg=" + }, + { + "mvn-path": "hiccup/hiccup/2.0.0-RC4/hiccup-2.0.0-RC4.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-VtAuPgpdoRcPVQRru4WiMAs1JBCTCCpD2/4Uma0wuLo=" + }, + { + "mvn-path": "hiccup/hiccup/2.0.0-RC4/hiccup-2.0.0-RC4.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-ORP6o0LGyU6d1wnqWUpTl+JptPAdFPjBRxHBVXxoZH0=" + }, + { + "mvn-path": "http-kit/http-kit/2.8.0/http-kit-2.8.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-xJbmqG/sRrN0PcOZ7chy4USW2IioTQTByE3qoe0gg60=" + }, + { + "mvn-path": "http-kit/http-kit/2.8.0/http-kit-2.8.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-RLTLjpPU9rJiwE7Qdx1w3WbnbUXX/HVYIGcaYmVcVDk=" + }, + { + "mvn-path": "instaparse/instaparse/1.5.0/instaparse-1.5.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-wrzW86dNGhFJc+asceNTb2sDXyn3aenR7FKP/l5WzCc=" + }, + { + "mvn-path": "instaparse/instaparse/1.5.0/instaparse-1.5.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-7Vh2tzj7zXYdGd03xiyTExP/beuWSi8Nn1NmRKkw9bQ=" + }, + { + "mvn-path": "medley/medley/1.4.0/medley-1.4.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-TPIRabvctGuZ531Am+63v9GqNmCIUodXQky5l9SW81U=" + }, + { + "mvn-path": "medley/medley/1.4.0/medley-1.4.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-JhEgB4cMXujVcrvDw4n8a9bMZG1cUAdfbolYQMWGEMA=" + }, + { + "mvn-path": "org/apache/apache/23/apache-23.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-vBBiTgYj82V3+sVjnKKTbTJA7RUvttjVM6tNJwVDSRw=" + }, + { + "mvn-path": "org/apache/apache/29/apache-29.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-PkkDcXSCC70N9jQgqXclWIY5iVTCoGKR+mH3J6w1s3c=" + }, + { + "mvn-path": "org/apache/apache/33/apache-33.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-14vYUkxfg4ChkKZSVoZimpXf5RLfIRETg6bYwJI6RBU=" + }, + { + "mvn-path": "org/apache/commons/commons-fileupload2-core/2.0.0-M1/commons-fileupload2-core-2.0.0-M1.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-aPumFRznTMztKyudp8asY5gDFDFmVzBSudlcyURbgh8=" + }, + { + "mvn-path": "org/apache/commons/commons-fileupload2-core/2.0.0-M1/commons-fileupload2-core-2.0.0-M1.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-P238Oe+/9c1XC1Luqb27XH8VCbCnOzUnB7REXwdWnko=" + }, + { + "mvn-path": "org/apache/commons/commons-fileupload2/2.0.0-M1/commons-fileupload2-2.0.0-M1.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-KVM5MYJNx4Iu09XWp0fCeEcYoxZVo/Ifx9gkWcFvtq8=" + }, + { + "mvn-path": "org/apache/commons/commons-parent/52/commons-parent-52.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-ddvo806Y5MP/QtquSi+etMvNO18QR9VEYKzpBtu0UC4=" + }, + { + "mvn-path": "org/apache/commons/commons-parent/58/commons-parent-58.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-LUsS4YiZBjq9fHUni1+pejcp2Ah4zuy2pA2UbpwNVZA=" + }, + { + "mvn-path": "org/apache/commons/commons-parent/74/commons-parent-74.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-gOthsMh/3YJqBpMTsotnLaPxiFgy2kR7Uebophl+fss=" + }, + { + "mvn-path": "org/clojars/pntblnk/clj-ldap/0.0.17/clj-ldap-0.0.17.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-d+ygGVO56kwcrLssTcym1P3PsFmOq3UlqYgkHL025nI=" + }, + { + "mvn-path": "org/clojars/pntblnk/clj-ldap/0.0.17/clj-ldap-0.0.17.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-DpL90WPauoqhSf2UH5BFHY2DLo+NtNsWOlToM7LZALw=" + }, + { + "mvn-path": "org/clojure/clojure/1.10.3/clojure-1.10.3.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-fxJHLa7Y9rUXSYqqKrE6ViR1w+31FHjkWBzHYemJeaM=" + }, + { + "mvn-path": "org/clojure/clojure/1.10.3/clojure-1.10.3.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-GJwAxDNAdJai+7DsyzeQjJSVXZHq0b5IFWdE7MGBbZQ=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.0/clojure-1.11.0.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-PiH6daB+yd278bK1A1bPGAcQ0DmN6qT0TpHNYwRVWUc=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.0/clojure-1.11.0.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-SQjMS0yeYsmoFJb5PLWsb2lBd8xkXc87jOXkkavOHro=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.1/clojure-1.11.1.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-I4G26UI6tGUVFFWUSQPROlYkPWAGuRlK/Bv0+HEMtN4=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.1/clojure-1.11.1.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-IMRaGr7b2L4grvk2BQrjGgjBZ0CzL4dAuIOM3pb/y4o=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.2/clojure-1.11.2.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-iPqZkT1pIs+39kn1xGdQOHfLb8yMwW02948mSAhLqZc=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.2/clojure-1.11.2.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-FzbP/xCV4dT+/raogrut9ttB7+MV8pbw/aMtt//EExE=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.3/clojure-1.11.3.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-nDBUCTKOK5boXdK160t1gQxnt2unCuTQ9t3pvPtVsbc=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.3/clojure-1.11.3.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-DA2+Ge4NKpxXMQzr3dNWRD8NFlFMQmBHsGLjpXwNuK0=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.4/clojure-1.11.4.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-/H/xtmENDjSUp1zBHvgYEL2kAqwVcBL+TjuJlYbPQTM=" + }, + { + "mvn-path": "org/clojure/clojure/1.11.4/clojure-1.11.4.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-a6YADmhI+Cw5y5tJqyqmo6Vi9MJNUrMeUZCuZJXwwwk=" + }, + { + "mvn-path": "org/clojure/clojure/1.12.0/clojure-1.12.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-xFMzAGRBoFnqn9sTQfxsH0C5IaENzNgmZTEeSKA4R2M=" + }, + { + "mvn-path": "org/clojure/clojure/1.12.0/clojure-1.12.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-KfRiqonLl2RXWEGKXwjUwagrc1yW569JgX0WqpuQgVA=" + }, + { + "mvn-path": "org/clojure/core.match/1.1.0/core.match-1.1.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-10V6tjEIWae9cTmEM4IEX6PN7A0T97qSEpfy8/uZj1M=" + }, + { + "mvn-path": "org/clojure/core.match/1.1.0/core.match-1.1.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-NnHYN2UlIwq6Ah8fYmx54g86ELYrXfgXIiWJDsSv4EU=" + }, + { + "mvn-path": "org/clojure/core.specs.alpha/0.2.56/core.specs.alpha-0.2.56.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-/PRCveArBKhj8vzFjuaiowxM8Mlw99q4VjTwq3ERZrY=" + }, + { + "mvn-path": "org/clojure/core.specs.alpha/0.2.56/core.specs.alpha-0.2.56.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-AarxdIP/HHSCySoHKV1+e8bjszIt9EsptXONAg/wB0A=" + }, + { + "mvn-path": "org/clojure/core.specs.alpha/0.2.62/core.specs.alpha-0.2.62.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-Bu6owHC75FwVhWfkQ0OWgbyMRukSNBT4G/oyukLWy8g=" + }, + { + "mvn-path": "org/clojure/core.specs.alpha/0.2.62/core.specs.alpha-0.2.62.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-F3i70Ti9GFkLgFS+nZGdG+toCfhbduXGKFtn1Ad9MA4=" + }, + { + "mvn-path": "org/clojure/core.specs.alpha/0.4.74/core.specs.alpha-0.4.74.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-63OsCM9JuoQMiLpnvu8RM2ylVDM9lAiAjXiUbg/rnds=" + }, + { + "mvn-path": "org/clojure/core.specs.alpha/0.4.74/core.specs.alpha-0.4.74.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-M0EOuKpz1S2Vez3G4KZfOZisBiPL2BPZDDPm5onEJCk=" + }, + { + "mvn-path": "org/clojure/java.data/1.3.113/java.data-1.3.113.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-VBXrCrfF1uVlmuMj1e/cR60G3NmR2JVxPbYgn+FWkCY=" + }, + { + "mvn-path": "org/clojure/java.data/1.3.113/java.data-1.3.113.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-EMRQ3qBnbiNW9J5FhBXH6cNrP5AWlnxlBMErOKQp3rc=" + }, + { + "mvn-path": "org/clojure/pom.contrib/0.1.2/pom.contrib-0.1.2.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-RoC9g43MuowXwlgXE0fxb1uq5rXft4Grc4K8Y4X/gAY=" + }, + { + "mvn-path": "org/clojure/pom.contrib/0.3.0/pom.contrib-0.3.0.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-fxgrOypUPgV0YL+T/8XpzvasUn3xoTdqfZki6+ee8Rk=" + }, + { + "mvn-path": "org/clojure/pom.contrib/1.1.0/pom.contrib-1.1.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-EOzku1+YKQENwWVh9C67g7ry9HYFtR+RBbkvPKoIlxU=" + }, + { + "mvn-path": "org/clojure/pom.contrib/1.2.0/pom.contrib-1.2.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-CRbXpBVYuVAKQnyIb6KYJ6zlJZIGvjrTPmTilvwaYRE=" + }, + { + "mvn-path": "org/clojure/pom.contrib/1.3.0/pom.contrib-1.3.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-g5qUXfrO6lvVB5+CSPM0bdIULesJFGyj9dG/riYxCWc=" + }, + { + "mvn-path": "org/clojure/spec.alpha/0.2.194/spec.alpha-0.2.194.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-z2iZ+YUpjGSxPqEplGrZAo3uja3w6rmuGORVAn04JJw=" + }, + { + "mvn-path": "org/clojure/spec.alpha/0.2.194/spec.alpha-0.2.194.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-WhHw4eizwFLmUcSYxpRbRNs1Nb8sGHGf3PZd8fiLE+Y=" + }, + { + "mvn-path": "org/clojure/spec.alpha/0.3.218/spec.alpha-0.3.218.jar", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-Z+yJjrVcZqlXpVJ53YXRN2u5lL2HZosrDeHrO5foquA=" + }, + { + "mvn-path": "org/clojure/spec.alpha/0.3.218/spec.alpha-0.3.218.pom", + "mvn-repo": "https://repo.maven.apache.org/maven2/", + "hash": "sha256-bY3hTDrIdXYMX/kJVi/5hzB3AxxquTnxyxOeFp/pB1g=" + }, + { + "mvn-path": "org/clojure/spec.alpha/0.5.238/spec.alpha-0.5.238.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-lM2ZtupjlkHzevSGCmQ7btOZ7lqL5dcXz/C2Y8jXUHc=" + }, + { + "mvn-path": "org/clojure/spec.alpha/0.5.238/spec.alpha-0.5.238.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-PLp+DcwIXEzpLd3/6iJhJP+sF4vnm9A3m1suMKlpy+o=" + }, + { + "mvn-path": "org/clojure/test.check/1.1.2/test.check-1.1.2.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-93r5qZJ67LZqNoa282s1Al8kvOZr8/AF3UTcQEvIdgE=" + }, + { + "mvn-path": "org/clojure/test.check/1.1.2/test.check-1.1.2.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-UZ45jnJMYvCsnWsZ15+P8QAdqYWD/eAb1wUrB+Ga1ow=" + }, + { + "mvn-path": "org/clojure/tools.logging/1.3.0/tools.logging-1.3.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-gmlpt42a2jJ95rfaDxdkV9lWFPo4woAyZhDzGmtRXJE=" + }, + { + "mvn-path": "org/clojure/tools.logging/1.3.0/tools.logging-1.3.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-E15H98p5wKoYG2kJPML50aYyKt1qgli2aXxQCNIwv00=" + }, + { + "mvn-path": "org/clojure/tools.macro/0.1.5/tools.macro-0.1.5.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-JxTXKUyQ+SaO7vNyj+TZjr+q7fJAoCN02u8rhVhEgkg=" + }, + { + "mvn-path": "org/clojure/tools.macro/0.1.5/tools.macro-0.1.5.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-cGCU9H2ljugXofq5uAwxLs0nZHK85uHVRCOfFAcR2zE=" + }, + { + "mvn-path": "org/junit/junit-bom/5.11.0/junit-bom-5.11.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-5nRZ1IgkJKxjdPQNscj0ouiJRrNAugcsgL6TKivkZE0=" + }, + { + "mvn-path": "org/junit/junit-bom/5.13.4/junit-bom-5.13.4.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-16CKmbJQLwu2jNTh+YTwv2kySqogi9D3M2bAP8NUikI=" + }, + { + "mvn-path": "org/junit/junit-bom/5.9.3/junit-bom-5.9.3.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-TQMpzZ5y8kIOXKFXJMv+b/puX9KIg2FRYnEZD9w0Ltc=" + }, + { + "mvn-path": "org/ring-clojure/ring-core-protocols/1.13.0/ring-core-protocols-1.13.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-CuDZ5U9cQ2xn7/4P09pwsH2DrvoPmZ3AYcdTLk7E61w=" + }, + { + "mvn-path": "org/ring-clojure/ring-core-protocols/1.13.0/ring-core-protocols-1.13.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-Yk/LF6pMW5Tw5Dp0wTIrr6/Ale2o1QCqqsTYwwlKpKY=" + }, + { + "mvn-path": "org/ring-clojure/ring-websocket-middleware/0.2.1/ring-websocket-middleware-0.2.1.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-2d3B369xBMuJr8imgnRrzIbG/oKZ9DgulVzHf+QD/4c=" + }, + { + "mvn-path": "org/ring-clojure/ring-websocket-middleware/0.2.1/ring-websocket-middleware-0.2.1.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-geZT2NZSl92xlKe1VGL9vLrWBJZ9EDfxx5ANVN9SHvM=" + }, + { + "mvn-path": "org/ring-clojure/ring-websocket-protocols/1.13.0/ring-websocket-protocols-1.13.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-lzsFA+cR8mxTjJzRYK2XY43z9l08Do9whdKKJhD5l8g=" + }, + { + "mvn-path": "org/ring-clojure/ring-websocket-protocols/1.13.0/ring-websocket-protocols-1.13.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-oLLU3iXdPWNptThQLeay5UJcKxyOM6GQKZgIS4o4EWs=" + }, + { + "mvn-path": "org/sonatype/oss/oss-parent/7/oss-parent-7.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-tR+IZ8kranIkmVV/w6H96ne9+e9XRyL+kM5DailVlFQ=" + }, + { + "mvn-path": "org/xerial/sqlite-jdbc/3.47.1.0/sqlite-jdbc-3.47.1.0.jar", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-QWTZU0euq0K3VMq7eUW5PlTyndsu3tln2+l5tARctoU=" + }, + { + "mvn-path": "org/xerial/sqlite-jdbc/3.47.1.0/sqlite-jdbc-3.47.1.0.pom", + "mvn-repo": "https://repo1.maven.org/maven2/", + "hash": "sha256-Z3XeNvNR9MdFCL/+qtZAIceVhx/ZRIXsdsPhduUwU7g=" + }, + { + "mvn-path": "ring/ring-anti-forgery/1.4.0/ring-anti-forgery-1.4.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-Z0itZOlIfEQ4HwhHU4WoyPzkO3hXWbY/kCygSSaXOz8=" + }, + { + "mvn-path": "ring/ring-anti-forgery/1.4.0/ring-anti-forgery-1.4.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-guNEM3RUHq9/pMc/GBjrEzTJpVhtWKCXl7uD7ye+g2A=" + }, + { + "mvn-path": "ring/ring-codec/1.2.0/ring-codec-1.2.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-b9itBQBiBVtXtzgRBnH2j0NXdEQ9GCbmL07GTSxFZcI=" + }, + { + "mvn-path": "ring/ring-codec/1.2.0/ring-codec-1.2.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-de3pMoKzj49m+yTFILdNGDfQsbtdpUIW+AOglmzp2s4=" + }, + { + "mvn-path": "ring/ring-core/1.11.0/ring-core-1.11.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-4AnoLJdSIHaEyCMqqLHgDAGRG1VLpHTUwiSLGEr47kA=" + }, + { + "mvn-path": "ring/ring-core/1.13.0/ring-core-1.13.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-qyDIz0gvmRO2Ech8xmnwsONQB+t2fDCLpYRAl06LgR0=" + }, + { + "mvn-path": "ring/ring-core/1.13.0/ring-core-1.13.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-QXfegvVoaQ2rDDWprFQFW4tYFjxxm933D/t+VAiJt98=" + }, + { + "mvn-path": "ring/ring-defaults/0.6.0/ring-defaults-0.6.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-HM9l8iRYVXq+segdDDa+Id/C+FmpABE/cqdNvhBc06Y=" + }, + { + "mvn-path": "ring/ring-defaults/0.6.0/ring-defaults-0.6.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-d7DxPmcpVzJf6xjbTHjp5KAS4+UQEEuHFwhDBWAXj1o=" + }, + { + "mvn-path": "ring/ring-headers/0.4.0/ring-headers-0.4.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-d31Q9COKRgl4mrKQsAcNld5/72UPN0EuhQczwXdENJk=" + }, + { + "mvn-path": "ring/ring-headers/0.4.0/ring-headers-0.4.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-XNQNCCBJsKSvYgDzPplpfiRAK0xrGhJ6zjnlzpMGyx8=" + }, + { + "mvn-path": "ring/ring-ssl/0.4.0/ring-ssl-0.4.0.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-K87le9GjOe01TMt41bkDHlXhly+9jk4DZ/udBls6Mpw=" + }, + { + "mvn-path": "ring/ring-ssl/0.4.0/ring-ssl-0.4.0.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-HHmMD/cPNu7HwRubeajXYOBDYK1y9x9F9KhRytq2AQw=" + }, + { + "mvn-path": "tigris/tigris/0.1.2/tigris-0.1.2.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-SapkjttsFOVwlaEbOR6u5gZXgyP7eXVfkjMaxjAPl6A=" + }, + { + "mvn-path": "tigris/tigris/0.1.2/tigris-0.1.2.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-H9VZA1l1INzUrnbmoz7/XjWmFUIrutKo7ZrDMqr75KA=" + }, + { + "mvn-path": "vvvvalvalval/scope-capture-nrepl/0.3.1/scope-capture-nrepl-0.3.1.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-M8lO7sWNJpvTomq/N8utgfGghk742Wd5GYfTDeZc9cM=" + }, + { + "mvn-path": "vvvvalvalval/scope-capture-nrepl/0.3.1/scope-capture-nrepl-0.3.1.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-8Fa6X1vBnqcSa5LUa/NWI3NG58sLk13s96NuSqCSt1Q=" + }, + { + "mvn-path": "vvvvalvalval/scope-capture/0.3.2/scope-capture-0.3.2.jar", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-w9+kis07e4yX5IrA21Dl0bTffsAoShp1QWvIg5lnfoc=" + }, + { + "mvn-path": "vvvvalvalval/scope-capture/0.3.2/scope-capture-0.3.2.pom", + "mvn-repo": "https://repo.clojars.org/", + "hash": "sha256-jhHu+a80ZnzaUTeE+iuQidcK5SF4P2zJQb6fzEpujmQ=" + } + ] +} diff --git a/deps.edn b/deps.edn new file mode 100644 index 0000000..321d3dc --- /dev/null +++ b/deps.edn @@ -0,0 +1,23 @@ +{:deps {org.clojure/clojure {:mvn/version "1.12.0"} + http-kit/http-kit {:mvn/version "2.8.0"} + org.clojure/tools.logging {:mvn/version "1.3.0"} + hiccup/hiccup {:mvn/version "2.0.0-RC4"} + compojure/compojure {:mvn/version "1.7.1"} + org.clojars.pntblnk/clj-ldap {:mvn/version "0.0.17"} + ring/ring-defaults {:mvn/version "0.6.0"} + babashka/fs {:mvn/version "0.5.24"} + org.clojure/core.match {:mvn/version "1.1.0"} + com.github.seancorfield/next.jdbc {:mvn/version "1.3.1070"} + org.xerial/sqlite-jdbc {:mvn/version "3.47.1.0"} + cheshire/cheshire {:mvn/version "6.1.0"} + instaparse/instaparse {:mvn/version "1.5.0"} + babashka/process {:mvn/version "0.6.25"} + org.clojure/test.check {:mvn/version "1.1.2"} + io.github.msyds/spec-dict + {:git/sha "531d629b7f05f37232261cf9e8927a4b5915714f"}} + :paths ["src" "resources" "test"] + :aliases + {:dev + {:extra-deps {vvvvalvalval/scope-capture-nrepl {:mvn/version "0.3.1"}}} + :run + {:main-opts ["-m" "net.deertopia.main"]}}} diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..5747e04 --- /dev/null +++ b/flake.lock @@ -0,0 +1,171 @@ +{ + "nodes": { + "clj-nix": { + "inputs": { + "devshell": "devshell", + "nix-fetcher-data": "nix-fetcher-data", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1738969798, + "narHash": "sha256-yHUAph4easuun343wEEJXC4qsftl9vRy+CqLkORkeKI=", + "owner": "jlesquembre", + "repo": "clj-nix", + "rev": "7b314a06743ef400beb921d3559482741d19bf3f", + "type": "github" + }, + "original": { + "owner": "jlesquembre", + "repo": "clj-nix", + "type": "github" + } + }, + "devshell": { + "inputs": { + "nixpkgs": [ + "clj-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1728330715, + "narHash": "sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg=", + "owner": "numtide", + "repo": "devshell", + "rev": "dd6b80932022cea34a019e2bb32f6fa9e494dfef", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1719745305, + "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "nix-fetcher-data": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": [ + "clj-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1728229178, + "narHash": "sha256-p5Fx880uBYstIsbaDYN7sECJT11oHxZQKtHgMAVblWA=", + "owner": "jlesquembre", + "repo": "nix-fetcher-data", + "rev": "f3a73c34d28db49ef90fd7872a142bfe93120e55", + "type": "github" + }, + "original": { + "owner": "jlesquembre", + "repo": "nix-fetcher-data", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1728492678, + "narHash": "sha256-9UTxR8eukdg+XZeHgxW5hQA9fIKHsKCdOIUycTryeVw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "5633bcff0c6162b9e4b5f1264264611e950c8ec7", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-lib": { + "locked": { + "lastModified": 1717284937, + "narHash": "sha256-lIbdfCsf8LMFloheeE6N31+BMIeixqyQWbSr2vk79EQ=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1760038930, + "narHash": "sha256-Oncbh0UmHjSlxO7ErQDM3KM0A5/Znfofj2BSzlHLeVw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "0b4defa2584313f3b781240b29d61f6f9f7e0df3", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "clj-nix": "clj-nix", + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs_2" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..7b498b0 --- /dev/null +++ b/flake.nix @@ -0,0 +1,39 @@ +{ + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + flake-utils.url = "github:numtide/flake-utils"; + clj-nix.url = "github:jlesquembre/clj-nix"; + }; + + outputs = { self, ... }@inputs: + inputs.flake-utils.lib.eachDefaultSystem (system: + let + pkgs = import inputs.nixpkgs { + inherit system; + overlays = [ + inputs.clj-nix.overlays.default + ]; + }; + inherit (pkgs) lib; + in { + packages = rec { + net-deertopia = pkgs.callPackage ./net-deertopia.nix {}; + net-deertopia-graal = pkgs.mkGraalBin { cljDrv = net-deertopia; }; + default = net-deertopia; + }; + + devShells.default = + pkgs.mkShell { + inputsFrom = [ + self.packages.${system}.net-deertopia + ]; + packages = with pkgs; [ + clojure-lsp + zprint + clojure + babashka + sqlite-web + ]; + }; + }); +} diff --git a/net-deertopia.nix b/net-deertopia.nix new file mode 100644 index 0000000..61f1f39 --- /dev/null +++ b/net-deertopia.nix @@ -0,0 +1,11 @@ +{ mkCljBin +}: + +mkCljBin { + name = "net.deertopia"; + version = "1.0.0"; + projectSrc = ./.; + main-ns = "net.deertopia.main"; + buildInputs = [ + ]; +} diff --git a/src/net/deertopia/main.clj b/src/net/deertopia/main.clj new file mode 100644 index 0000000..7d684b1 --- /dev/null +++ b/src/net/deertopia/main.clj @@ -0,0 +1,5 @@ +(ns net.deertopia.main + (:gen-class)) + +(defn -main [] + (println "hi"))