Qlot(发音为kyü-'lät,类似"culotte")是一个使用Quicklisp工具的项目本地库安装器。它的目标类似于Ruby的Bundler或Perl的Carton。
警告:此软件仍处于BETA测试阶段。API可能会发生变化。
当你需要:
common(ql:quickload :qlot)
也可以使用Roswell安装:
bash# 安装稳定版 $ ros install qlot # 从GitHub安装最新版本 $ ros install fukamachi/qlot
Roswell安装会提供qlot命令行工具:
bash$ which qlot /Users/nitro_idiot/.roswell/bin/qlot
qlfile文件在项目根目录创建qlfile文件,声明项目依赖:
# 示例qlfile git clack [***] github datafly fukamachi/datafly :branch v0.7.x ql log4cl 2014-03-17
bash$ cd /path/to/myapp # 项目本地安装库 $ qlot install
这将创建.qlot/目录(包含所有依赖)和qlfile.lock文件(锁定依赖版本)。
bash# 更新所有依赖 $ qlot update # 更新特定依赖 $ qlot update --project mito
bash# 添加Quicklisp库 $ qlot add mito # 添加Ultralisp库 $ qlot add ultralisp egao1980-cl-idna # 添加GitHub库 $ qlot add github datafly fukamachi/datafly
使用qlot exec在项目环境中执行命令:
bash# 启动REPL $ qlot exec ros -S . run # 启动Web应用 $ qlot exec clackup app.lisp # 构建项目 $ qlot exec ros build some-app.ros
qlfile是依赖声明文件,每行代表一个库,格式为:
<source> <project name> [参数...]
ql <project name> [<version>] ql log4cl 2014-03-17 # 指定版本 ql clack # 使用最新版本
ultralisp <project name> [<version>] ultralisp egao1980-cl-idna
http <project name> <url> [<file md5>] http yason [***]
git <project name> <repos url> [:ref|:branch|:tag <标识符>] git clack [***] git clack [***] :branch develop git datafly [***] :tag v0.7.4 git cl-dbi [***] :ref 54928984e5756e92ba298aae51de8b95a6b0cf4b
私有仓库通过SSH访问:
git myapp ***:company/private-repo.git
github <project name> <user/repo> [:ref|:branch|:tag <标识符>] github datafly fukamachi/datafly github datafly fukamachi/datafly :branch develop
dist <dist name> <distribution URL> [<dist version>] dist quicklisp [***] dist ultralisp [***]
如果多个发行版提供相同库,后面声明的发行版优先级更高。
在Emacs配置中添加:
emacs(defun slime-qlot-exec (directory) (interactive (list (read-directory-name "项目目录: "))) (slime-start :program "qlot" :program-args '("exec" "ros" "-S" "." "run") :directory directory :name 'qlot :env (list (concat "PATH=" (mapconcat 'identity exec-path ":")))))
使用M-x slime-qlot-exec启动项目本地SLIME REPL。
可以通过PROJECT_ROOT/.qlot/local-projects目录或符号链接添加本地开发的库。
| 命令 | 描述 |
|---|---|
qlot install | 安装qlfile中声明的依赖 |
qlot update | 更新所有依赖并更新qlfile.lock |
qlot update --project <name> | 更新特定依赖 |
qlot add <source> <project> [参数] | 添加新依赖 |
qlot exec <command> | 在项目环境中执行命令 |
qlot run | 启动项目本地REPL |
Quicklisp虽然极大简化了Common Lisp库的安装,但存在版本控制限制:
Qlot通过项目本地安装和版本锁定解决了这些问题,让Common Lisp项目的依赖管理更加可靠和可预测。
Copyright (c) 2014 Eitaro Fukamachi
根据MIT许可证授权。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速