oras
ql-https
oras | ql-https | |
---|---|---|
8 | 6 | |
1,266 | 17 | |
3.3% | - | |
9.3 | 7.7 | |
4 days ago | about 2 months ago | |
Go | Common Lisp | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
oras
- Distribute Artifacts Across OCI Registries
- OCI image from dockerfile
-
RFC 6920: Naming Things with Hashes
Interesting, I'd not known of this RFC before.
Another example of a content-addressed data store could be OCI registries (more commonly known as container image registries). Using them to store arbitrary artefacts is quite well supported now: https://oras.land/
-
sbcl - require
See https://oras.land/
-
Ocicl – An ASDF system distribution and management tool for Common Lisp
> ... but still only supports one niche operating system.
1. Linux is not a niche in the target market for this project.
2. The project is written in Common Lisp with hard dependencies on SBCL-provided libraries[1], so there's reason to suspect it should work on other OSes supported by SBCL.
3. Sure, the presence of Makefile and sb-posix imply it requires a POSIX compliant OS, but Linux is not the only one that fits the bill.
4. The included Linux-only binary 'oras' is clearly a vendored artifact, not part of this project, and clearly an OCI client. A simple search shows it is indeed cross-platform[2].
Perhaps you should try what almost every Linux user has had to do when encountering software actually built for only one "niche" operating system that they want to use on their OS: look.
1. https://github.com/ocicl/ocicl/blob/170aff0/ocicl.asd#L34
2. https://github.com/oras-project/oras/releases
-
Looking for an artifact store for generic assets, rather than specially-formatted packages or containers. Thinking maybe ORAS, but wondering if there are other options.
oras isn't that unpopular, Helm is using it as an SDK for example. Here are other projects who are using it. https://github.com/oras-project/oras/network/dependents
- OCI Registry as Storage
ql-https
-
It's 2023, so of course I'm learning Common Lisp
Solutions for the lack of https:
- add in https://github.com/rudolfochrist/ql-https (downloads packages with curl)
- use another package manager, CLPM: https://www.clpm.dev (or the newest ocicl)
> CLPM comes as a pre-built binary, supports HTTPS by default, supports installing multiple package versions, supports versioned systems, and more.
- use mitmproxy: https://hiphish.github.io/blog/2022/03/19/securing-quicklisp...
-
Ocicl – An ASDF system distribution and management tool for Common Lisp
Other options are:
- Quicklisp -really slick, libraries in there are curated. (with https support here: https://github.com/rudolfochrist/ql-https and here: https://github.com/snmsts/quicklisp-https.git)
- for project-local dependencies like virtualenv: https://github.com/fukamachi/qlot
- a new, more traditional one: https://www.clpm.dev (CLPM comes as a pre-built binary, supports HTTPS by default, supports installing multiple package versions, supports versioned systems, and more)
For recent Quicklisp upgrades: http://ultralisp.org/
Ocicl is very new (5 days) and tries a new approach, building "on tools from the world of containers".
-
What do you think the risks/pitfalls of using Common Lisp are in a business?
You can use SSL with QuickLisp via ql-https
- quicklisp security (or total lack of it)
-
Common Lisp Implementations in 2023
LPM's warning is not surprising. It's common for libraries (dare I say open-source ones?), even if they work well. It's part of the stability game, once they are marked 1.0, they are stable. LPM works well (as reported by others).
QL wants to do it portably, there are easy workarounds, but yeah…
(just saw https://github.com/rudolfochrist/ql-https)
-
Securing Quicklisp through mitmproxy
That what I‘m doing: https://github.com/rudolfochrist/ql-https
What are some alternatives?
regclient - Docker and OCI Registry Client in Go and tooling using those libraries.
tungsten - A Common Lisp toolkit.
containerd - An open and reliable container runtime
CSharpRepl - A command line C# REPL with syntax highlighting – explore the language, libraries and nuget packages interactively.
distribution - The toolkit to pack, ship, store, and deliver container content
bettercap - The Swiss Army knife for 802.11, BLE, IPv4 and IPv6 networks reconnaissance and MITM attacks.
imgpkg - Store application configuration files in Docker/OCI registries
thirteen-letters - Competitive word scramble in the browser, made for Lisp Game Jam (Spring 2023)
distribution-spec - OCI Distribution Specification
quicklisp-https
qlot - A project-local library installer for Common Lisp