Skip to content

Instantly share code, notes, and snippets.

@sorawee
Last active June 26, 2022 01:52
Show Gist options
  • Select an option

  • Save sorawee/ed0b056dc1ab7fd002f660ee3be78b01 to your computer and use it in GitHub Desktop.

Select an option

Save sorawee/ed0b056dc1ab7fd002f660ee3be78b01 to your computer and use it in GitHub Desktop.
racket-package-source
#lang racket
(require json
text-table
scramble/regexp
syntax/parse/define)
(define-RE GIT:// (inject "git://"))
(define-RE HTTPS:// (inject "https://"))
(define-RE GITHUB:// (inject "github://"))
(define-RE GIT+HTTPS:// (inject "git\\+https://"))
(define-RE GITHUB (inject "github\\.com"))
(define-RE GITLAB (inject "gitlab\\.com"))
(define-RE BITBUCKET (inject "bitbucket\\.org"))
(define-RE SOURCEHUT (inject "git\\.sr\\.ht"))
(define-RE UNB (inject "pivot\\.cs\\.unb\\.ca"))
(define-RE MARVID (inject "git\\.marvid\\.fr"))
(define-RE FLUX (inject "gitlab\\.flux\\.utah\\.edu"))
(define-RE WATERLOO (inject "git\\.uwaterloo\\.ca"))
(define-RE ?PATH= (inject "\\?path="))
(define-RE .GIT (inject "\\.git"))
(define-RE NAME (inject "[a-zA-Z0-9_~-]+"))
(define-RE NAME-/ (inject "[a-zA-Z0-9_~/-]+"))
(define-RE NAME-. (inject "[a-zA-Z0-9_~.-]+"))
(define-RE NAME-% (inject "[a-zA-Z0-9_~%-]+"))
(define-RE <PATH-/> NAME-/)
(define-RE <PATH-%> NAME-%)
(define-RE <PATH> NAME)
(define-RE <BRANCH> NAME-.)
(define-RE <GROUP> NAME-.)
(define-RE <SUBGROUP> NAME)
(define-RE <REPO> NAME)
(define-RE <REPO-.> NAME-.)
(define obj (string->jsexpr (file->string "pkgs-all.json")))
(define-syntax-parser register
[(_ pre ... {~datum :PATH} post ...)
#'(begin
(register pre ... ?PATH= <PATH> post ...)
(register pre ... ?PATH= <PATH-/> post ...)
(register pre ... ?PATH= <PATH-%> post ...))]
[(_ pre ... {~datum :PROTOCOL} post ...)
#'(begin
(register pre ... HTTPS:// post ...)
(register pre ... GIT:// post ...)
(register pre ... GITHUB:// post ...)
(register pre ... GIT+HTTPS:// post ...))]
[(_ pre ... {~datum :REPO} post ...)
#'(begin
(register pre ... <REPO> post ...)
(register pre ... <REPO> .GIT post ...)
(register pre ... <REPO-.> post ...))]
[(_ pre ... {~datum :HOST} post ...)
#'(begin
(register pre ... GITHUB "/" post ...)
(register pre ... BITBUCKET "/" post ...)
(register pre ... GITLAB "/" post ...)
(register pre ... SOURCEHUT "/" post ...)
(register pre ... UNB "/" post ...)
(register pre ... MARVID "/" post ...)
(register pre ... FLUX "/" post ...)
(register pre ... WATERLOO "/" post ...))]
[(_ elem ...) #'(register-rx elem ...)])
(define-syntax-parse-rule (register-rx fragment ...+)
(set! preds (cons
(procedure-rename
(λ (s) (regexp-match (px (cat ^ fragment ... $)) s))
(string->symbol (string-replace (~a '(fragment ...))
" "
"")))
preds )))
(define (core-empty s)
(equal? s "http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/empty.zip"))
(define (core-empty* s)
(equal? s "https://pkg-sources.racket-lang.org/pkgs/empty.zip"))
(define (-#checksum s)
(regexp-match #px"#[a-z0-9]{17}" s))
(define preds '())
;; with :PATH
(register :PROTOCOL :HOST <GROUP> "/" <SUBGROUP> "/" :REPO :PATH)
(register :PROTOCOL :HOST <GROUP> "/" :REPO :PATH)
(register :PROTOCOL :HOST <GROUP> "/" :REPO :PATH "#" <BRANCH>)
(register :PROTOCOL :HOST <GROUP> "/" :REPO "/" :PATH)
;; without :PATH
(register :PROTOCOL :HOST <GROUP> "/" :REPO)
(register :PROTOCOL :HOST <GROUP> "/" :REPO "/")
(register :PROTOCOL :HOST <GROUP> "/" :REPO "/" <BRANCH>)
(register :PROTOCOL :HOST <GROUP> "/" :REPO "/" <BRANCH> "/")
(register :PROTOCOL :HOST <GROUP> "/" :REPO "#" <BRANCH>)
(define (other-zip s)
(string-suffix? s ".zip"))
(define (other-tar-gz s)
(string-suffix? s ".tar.gz"))
(define all-preds
(append (list core-empty
core-empty*
-#checksum)
(reverse preds)
(list other-zip
other-tar-gz)))
(define transformed
(for/list ([(k v) obj])
(list k (hash-ref v 'source))))
(define LIMIT 5)
(define (safe-take xs)
(cond
[(< (length xs) LIMIT) xs]
[else (take xs LIMIT)]))
(define-values (remaining grouped)
(for/fold ([remaining transformed] [grouped '()]) ([pred all-preds])
(define-values (yes no)
(partition (λ (row) (pred (second row))) remaining))
(values no (cond
[(empty? yes) grouped]
[else
(cons (list (length yes) (object-name pred)
(string-join (safe-take (map (compose1 ~a first) yes)) "\n")
(string-join (safe-take (map (compose1 ~a second) yes)) "\n"))
grouped)]))))
(print-table remaining)
(print-table (reverse grouped))
(printf "~a remaining\n" (length remaining))
┌───────────────────────┬───────────────────────────────────────────────────────────────────────────────────┐
│russia-phonologie │https://github.com/.git │
├───────────────────────┼───────────────────────────────────────────────────────────────────────────────────┤
│rparallel │https://codeberg.org/montanari/rparallel.git │
├───────────────────────┼───────────────────────────────────────────────────────────────────────────────────┤
│racketmq │https://git.syndicate-lang.org/syndicate-lang/racketmq-2017.git#main │
├───────────────────────┼───────────────────────────────────────────────────────────────────────────────────┤
│BSA-drracket-teachpacks│https://github.com/.git?path=bootstrapworld%2FBSA-drracket-teachpacks.git │
├───────────────────────┼───────────────────────────────────────────────────────────────────────────────────┤
│continued-fractions │https://[email protected]/derend/continued-fractions.git │
├───────────────────────┼───────────────────────────────────────────────────────────────────────────────────┤
│syndicate │https://git.syndicate-lang.org/syndicate-lang/syndicate-rkt.git?path=syndicate#main│
└───────────────────────┴───────────────────────────────────────────────────────────────────────────────────┘
┌───┬──────────────────────────────────────────────────────────┬────────────────────────────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│227│core-empty │errortrace-lib │http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/empty.zip │
│ │ │eli-tester │http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/empty.zip │
│ │ │slideshow-lib │http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/empty.zip │
│ │ │syntax-color-lib │http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/empty.zip │
│ │ │html-doc │http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/empty.zip │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│60 │core-empty* │draw-win32-x86_64 │https://pkg-sources.racket-lang.org/pkgs/empty.zip │
│ │ │racket-x86_64-linux-natipkg-2 │https://pkg-sources.racket-lang.org/pkgs/empty.zip │
│ │ │racket-ppc-macosx-3 │https://pkg-sources.racket-lang.org/pkgs/empty.zip │
│ │ │math-win32-i386 │https://pkg-sources.racket-lang.org/pkgs/empty.zip │
│ │ │math-i386-macosx │https://pkg-sources.racket-lang.org/pkgs/empty.zip │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│8 │-#checksum │unlike-assets-doc │https://github.com/zyrolasting/unlike-assets.git?path=unlike-assets-doc#7fb08d6902d34399c96a325d6d27f1ff84813b│
│ │ │unlike-assets-lib │https://github.com/zyrolasting/unlike-assets.git?path=unlike-assets-lib#7fb08d6902d34399c96a325d6d27f1ff84813b│
│ │ │json-sourcery │https://github.com/adjkant/json-sourcery.git?path=json-sourcery#c6ee9a5de2f8a85dc58159dedeb1d2bb9a3f710f │
│ │ │peg │https://github.com/rain-1/racket-peg.git#5191749fa13686045f2170358097eb81d710a9de │
│ │ │sql-sourcery │https://github.com/adjkant/sql-sourcery.git?path=sql-sourcery#f6c0619ed9febbb66864f36aa41fa495df683f95 │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│2 │(HTTPS://GITLAB/<GROUP>/<SUBGROUP>/<REPO>.GIT?PATH=<PATH>)│racket-where │https://gitlab.com/src_prepare/racket/racket-where.git?path=src │
│ │ │collector2 │https://gitlab.com/src_prepare/racket/collector2.git?path=src │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│286│(HTTPS://GITHUB/<GROUP>/<REPO>.GIT?PATH=<PATH>) │dallas-lib │https://github.com/jessealama/dallas.git?path=dallas-lib │
│ │ │wasm-lib │https://github.com/Bogdanp/racket-wasm.git?path=wasm-lib │
│ │ │battle-arena │https://github.com/thoughtstem/TS-Languages.git?path=battlearena │
│ │ │typed-racket-hacks │https://github.com/philnguyen/typed-racket-hacks.git?path=typed-racket-hacks │
│ │ │dallas │https://github.com/jessealama/dallas.git?path=dallas │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│4 │(HTTPS://GITLAB/<GROUP>/<REPO>.GIT?PATH=<PATH>) │csexp │https://gitlab.com/spritely/racket-csexp.git?path=csexp │
│ │ │magenc │https://gitlab.com/dustyweb/magenc.git?path=magenc │
│ │ │pk │https://gitlab.com/dustyweb/racket-pk.git?path=pk │
│ │ │crystal │https://gitlab.com/spritely/crystal.git?path=crystal │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│3 │(HTTPS://WATERLOO/<GROUP>/<REPO>.GIT?PATH=<PATH>) │uwaterloo-racket-tools │https://git.uwaterloo.ca/djholtby/uwaterloo-racket.git?path=uwaterloo-racket-tools │
│ │ │htdp-trace │https://git.uwaterloo.ca/djholtby/uwaterloo-racket.git?path=htdp-trace │
│ │ │graphic-block │https://git.uwaterloo.ca/djholtby/uwaterloo-racket.git?path=graphic-block │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│2 │(HTTPS://GITLAB/<GROUP>/<REPO-.>?PATH=<PATH>) │nvim-client │https://gitlab.com/HiPhish/neovim.rkt.git?path=nvim-client │
│ │ │msgpack │https://gitlab.com/HiPhish/MsgPack.rkt.git?path=msgpack │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│130│(GIT://GITHUB/<GROUP>/<REPO>?PATH=<PATH>) │markparam-lib │git://github.com/jeapostrophe/markparam?path=markparam-lib │
│ │ │curly-fn-doc │git://github.com/lexi-lambda/racket-curly-fn?path=curly-fn-doc │
│ │ │poppler-win32-i386 │git://github.com/soegaard/poppler-libs?path=poppler-win32-i386 │
│ │ │tulip-test │git://github.com/lexi-lambda/racket-tulip?path=tulip-test │
│ │ │megaparsack-lib │git://github.com/lexi-lambda/megaparsack?path=megaparsack-lib │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│9 │(GIT://GITHUB/<GROUP>/<REPO>.GIT?PATH=<PATH>) │scripty-lib │git://github.com/lexi-lambda/scripty.git?path=scripty-lib │
│ │ │struct-update │git://github.com/lexi-lambda/struct-update.git?path=struct-update │
│ │ │struct-update-lib │git://github.com/lexi-lambda/struct-update.git?path=struct-update-lib │
│ │ │alexis-util │git://github.com/lexi-lambda/racket-alexis.git?path=alexis-util │
│ │ │struct-update-doc │git://github.com/lexi-lambda/struct-update.git?path=struct-update-doc │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://GITHUB/<GROUP>/<REPO>.GIT?PATH=<PATH-/>) │z3 │https://github.com/philnguyen/z3-rkt.git?path=z3/ │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(GIT://GITHUB/<GROUP>/<REPO>?PATH=<PATH-/>) │zo-lib │git://github.com/racket/racket?path=pkgs/zo-lib │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│2 │(HTTPS://GITHUB/<GROUP>/<REPO>.GIT?PATH=<PATH-%>) │tangerine │https://github.com/aeva/tangerine.git?path=package%2Ftangerine │
│ │ │zuo-doc │https://github.com/racket/racket.git?path=racket%2Fsrc%2Fzuo%2Fzuo-doc │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│14 │(HTTPS://GITLAB/<GROUP>/<REPO>.GIT?PATH=<PATH-%>) │macrokey-lib │https://gitlab.com/xgqt/racket-macrokey.git?path=src%2Fmacrokey-lib │
│ │ │ebuild-tools │https://gitlab.com/xgqt/racket-ebuild.git?path=src%2Febuild-tools │
│ │ │ebuild-transformers │https://gitlab.com/xgqt/racket-ebuild.git?path=src%2Febuild-transformers │
│ │ │ebuild │https://gitlab.com/xgqt/racket-ebuild.git?path=src%2Febuild │
│ │ │ebuild-test │https://gitlab.com/xgqt/racket-ebuild.git?path=src%2Febuild-test │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│137│(HTTPS://GITHUB/<GROUP>/<REPO>.GIT?PATH=<PATH>#<BRANCH>) │scribble-bettergrammar-lib │https://github.com/wilbowma/scribble-bettergrammar.git?path=scribble-bettergrammar-lib#main │
│ │ │sawzall-test │https://github.com/ralsei/sawzall.git?path=sawzall-test#main │
│ │ │keyring-secret-service-lib │https://github.com/samdphillips/racket-keyring.git?path=keyring-secret-service-lib#release │
│ │ │commonmark-lib │https://github.com/lexi-lambda/racket-commonmark.git?path=commonmark-lib#master │
│ │ │typed-racket-datatype │https://github.com/AlexKnauth/typed-racket-datatype.git?path=typed-racket-datatype#main │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│2 │(HTTPS://GITLAB/<GROUP>/<REPO>.GIT?PATH=<PATH>#<BRANCH>) │goblins │https://gitlab.com/spritely/goblins.git?path=goblins#v0.9 │
│ │ │aurie │https://gitlab.com/spritely/aurie.git?path=aurie#v0.0.1 │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│3 │(HTTPS://FLUX/<GROUP>/<REPO>.GIT?PATH=<PATH>#<BRANCH>) │clotho │https://gitlab.flux.utah.edu/xsmith/clotho.git?path=clotho#rpi-release │
│ │ │xsmith │https://gitlab.flux.utah.edu/xsmith/xsmith.git?path=xsmith#current-release │
│ │ │xsmith-examples │https://gitlab.flux.utah.edu/xsmith/xsmith.git?path=xsmith-examples#current-release │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://GITLAB/<GROUP>/<REPO>.GIT?PATH=<PATH-%>#<BRANCH>)│preserves │https://gitlab.com/preserves/preserves.git?path=implementations%2Fracket%2Fpreserves#main │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://GITHUB/<GROUP>/<REPO>.GIT/?PATH=<PATH>) │quad-tree │https://github.com/dented42/racket-quad-tree.git/?path=quad-tree │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│14 │(GIT://GITHUB/<GROUP>/<REPO>/?PATH=<PATH>) │srfi-doc-nonfree │git://github.com/racket/srfi/?path=srfi-doc-nonfree │
│ │ │draw-test │git://github.com/racket/draw/?path=draw-test │
│ │ │automata │git://github.com/jeapostrophe/automata/?path=automata │
│ │ │markparam │git://github.com/jeapostrophe/markparam/?path=markparam │
│ │ │distro-build-test │git://github.com/racket/distro-build/?path=distro-build-test │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│4 │(GIT://GITHUB/<GROUP>/<REPO>/?PATH=<PATH-/>) │racket-test-extra │git://github.com/racket/racket/?path=pkgs/racket-test-extra │
│ │ │racket-test-core │git://github.com/racket/racket/?path=pkgs/racket-test-core │
│ │ │expander │git://github.com/racket/racket/?path=racket/src/expander │
│ │ │racket-build-guide │git://github.com/racket/racket/?path=pkgs/racket-build-guide │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│493│(HTTPS://GITHUB/<GROUP>/<REPO>.GIT) │colophon │https://github.com/basus/colophon.git │
│ │ │decentralized-internet │https://github.com/Lonero-Team/Racket-Package.git │
│ │ │mox │https://github.com/wargrey/mox.git │
│ │ │biginterval │https://github.com/oflatt/biginterval.git │
│ │ │file-watchers │https://github.com/zyrolasting/file-watchers.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│10 │(HTTPS://BITBUCKET/<GROUP>/<REPO>.GIT) │web-sessions │https://bitbucket.org/nadeemabdulhamid/web-sessions.git │
│ │ │derp-3 │https://bitbucket.org/jbclements/derp-3.git │
│ │ │simple-polynomial │https://bitbucket.org/derend/simple-polynomial.git │
│ │ │ANU-Web-Quantum-RNG │https://bitbucket.org/Tetsumi/anu-web-quantum-rng.git │
│ │ │andlet │https://bitbucket.org/derend/andlet.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│33 │(HTTPS://GITLAB/<GROUP>/<REPO>.GIT) │SSE │https://gitlab.com/oquijano/sse.git │
│ │ │mike │https://gitlab.com/xgqt/racket-mike.git │
│ │ │uni-table │https://gitlab.com/racketeer/uni-table.git │
│ │ │list-util │https://gitlab.com/RayRacine/list-util.git │
│ │ │try │https://gitlab.com/RayRacine/try.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│3 │(HTTPS://UNB/<GROUP>/<REPO>.GIT) │unb-cs4613 │https://pivot.cs.unb.ca/git/unb-cs4613.git │
│ │ │unb-cs2613 │https://pivot.cs.unb.ca/git/unb-cs2613.git │
│ │ │plai-dynamic │https://pivot.cs.unb.ca/git/plai-dynamic.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://MARVID/<GROUP>/<REPO>.GIT) │typed-compose │https://git.marvid.fr/scolobb/typed-compose.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://FLUX/<GROUP>/<REPO>.GIT) │version-string-with-git-hash │https://gitlab.flux.utah.edu/xsmith/version-string-with-git-hash.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://GITHUB/<GROUP>/<REPO-.>) │pangu │https://github.com/kisaragi-hiu/pangu.rkt.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│290│(GIT://GITHUB/<GROUP>/<REPO>) │racquel │git://github.com/brown131/racquel │
│ │ │binutils │git://github.com/lwhjp/racket-binutils │
│ │ │Drrackgit │git://github.com/bbusching/drrackgit │
│ │ │sqlite-table │git://github.com/jbclements/sqlite-table │
│ │ │compact-annotations │git://github.com/jackfirth/compact-annotations │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│16 │(GIT://GITHUB/<GROUP>/<REPO>.GIT) │digimon │git://github.com/wargrey/digimon.git │
│ │ │libtoxcore-racket │git://github.com/lehitoskin/libtoxcore-racket.git │
│ │ │fulmar │git://github.com/cwearl/fulmar.git │
│ │ │dset │git://github.com/pnwamk/dset.git │
│ │ │drracket-cyberpunk │git://github.com/thinkmoore/drracket-cyberpunk.git │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│8 │(GIT://GITHUB/<GROUP>/<REPO-.>) │Adapton │git://github.com/plum-umd/adapton.racket │
│ │ │javascript │git://github.com/samth/javascript.plt │
│ │ │pprint │git://github.com/takikawa/pprint.plt │
│ │ │io │git://github.com/samth/io.rkt │
│ │ │SAT │git://github.com/Kraks/SAT.rkt │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│3 │(GIT+HTTPS://GITHUB/<GROUP>/<REPO>) │sirmail │git+https://github.com/mflatt/sirmail │
│ │ │pict-balloon2 │git+https://github.com/mflatt/pict-balloon2 │
│ │ │destruct │git+https://github.com/MichaelBurge/destruct │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│3 │(GIT+HTTPS://SOURCEHUT/<GROUP>/<REPO>) │zstd │git+https://git.sr.ht/~williewillus/racket-zstd │
│ │ │r16 │git+https://git.sr.ht/~williewillus/r16 │
│ │ │cbor │git+https://git.sr.ht/~williewillus/racket-rfc8949 │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│2 │(GIT://GITHUB/<GROUP>/<REPO>/) │pdf-read │git://github.com/gcr/pdf-read/ │
│ │ │molis-hai │git://github.com/jbclements/molis-hai/ │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│110│(GITHUB://GITHUB/<GROUP>/<REPO>/<BRANCH>) │profj │github://github.com/mflatt/profj/master │
│ │ │rsvg │github://github.com/takikawa/racket-rsvg/master │
│ │ │semilit │github://github.com/samth/semilit/master │
│ │ │gcstats │github://github.com/samth/gcstats/master │
│ │ │xml-rpc │github://github.com/jeapostrophe/xml-rpc/master │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│2 │(GITHUB://GITHUB/<GROUP>/<REPO-.>/<BRANCH>) │set │github://github.com/samth/set.rkt/master │
│ │ │c-utils │github://github.com/samth/c.rkt/master │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│10 │(GITHUB://GITHUB/<GROUP>/<REPO>/<BRANCH>/) │rsound │github://github.com/jbclements/RSound/pre-6/ │
│ │ │scrypt │github://github.com/tonyg/racket-scrypt/master/ │
│ │ │while-loop │github://github.com/jbclements/while-loop/master/ │
│ │ │data-red-black │github://github.com/dyoo/data-red-black/master/ │
│ │ │parsack │github://github.com/stchang/parsack/master/ │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(GITHUB://GITHUB/<GROUP>/<REPO-.>/<BRANCH>/) │bcrypt │github://github.com/samth/bcrypt.rkt/master/ │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│117│(HTTPS://GITHUB/<GROUP>/<REPO>.GIT#<BRANCH>) │ez-csv │https://github.com/sleibrock/ez-csv.git#main │
│ │ │hyper-literate │https://github.com/jsmaniac/hyper-literate.git#main │
│ │ │aful │https://github.com/jsmaniac/aful.git#unhygienic │
│ │ │extensible-parser-specifications│https://github.com/jsmaniac/extensible-parser-specifications.git#main │
│ │ │multi-id │https://github.com/jsmaniac/multi-id.git#main │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://GITLAB/<GROUP>/<REPO>.GIT#<BRANCH>) │emo │https://gitlab.com/yurb/emo.git#main │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(HTTPS://MARVID/<GROUP>/<REPO>.GIT#<BRANCH>) │typed-graph │https://git.marvid.fr/scolobb/typed-graph.git#master │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│17 │(GIT://GITHUB/<GROUP>/<REPO>#<BRANCH>) │neu-cs2500-handin │git://github.com/nuprl/cs2500-client#f2016 │
│ │ │racketeer │git://github.com/miraleung/racketeer#master │
│ │ │cover-coveralls │git://github.com/rpless/cover-coveralls#release │
│ │ │typeset-rewriter │git://github.com/pnwamk/typeset-rewriter#master │
│ │ │webapi │git://github.com/rmculpepper/webapi#pkg │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│2 │(GIT://GITHUB/<GROUP>/<REPO>.GIT#<BRANCH>) │python │git://github.com/pedropramos/PyonR.git#master │
│ │ │latex-utils │git://github.com/dented42/latex-utils.git#master │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│1 │(GIT+HTTPS://GITHUB/<GROUP>/<REPO>#<BRANCH>) │turing │git+https://github.com/curiousyogurt/turing#master │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│3 │(GIT+HTTPS://SOURCEHUT/<GROUP>/<REPO>#<BRANCH>) │raco-exe-multitarget │git+https://git.sr.ht/~sschwarzer/raco-exe-multitarget#v0.5.0 │
│ │ │todo-txt │git+https://git.sr.ht/~sschwarzer/todo-txt#v0.5.0 │
│ │ │sudoku-solver │git+https://git.sr.ht/~sschwarzer/sudoku-solver#v0.15.1 │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│48 │other-zip │sau-cptr-405 │http://computing.southern.edu/rordonez/class/CPTR-405/sau-cptr-405.zip │
│ │ │csv-reading │https://www.neilvandyke.org/racket/csv-reading.zip │
│ │ │hostname │http://www.neilvandyke.org/racket/hostname.zip │
│ │ │csc104 │https://www.cs.toronto.edu/~gfb/racket-pkgs/csc104.zip │
│ │ │egg-herbie-linux │https://github.com/uwplse/herbie/releases/download/v1.6/egg-herbie-ubuntu.zip │
├───┼──────────────────────────────────────────────────────────┼────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│15 │other-tar-gz │libsqlite3-i386-win32 │https://racket.defn.io/libsqlite3-i386-win32-3.37.tar.gz │
│ │ │libargon2-aarch64-macosx │https://racket.defn.io/libargon2-aarch64-macosx-20190702.tar.gz │
│ │ │libsass-x86_64-win32 │https://racket.defn.io/libsass-x86_64-win32-3.6.5.tar.gz │
│ │ │libsqlite3-aarch64-linux │https://racket.defn.io/libsqlite3-aarch64-linux-3.37.tar.gz │
│ │ │libsass-i386-win32 │https://racket.defn.io/libsass-i386-win32-3.6.5.tar.gz │
└───┴──────────────────────────────────────────────────────────┴────────────────────────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment