
基于Rust核心引擎的跨平台dotfiles管理系统,支持Linux、Arch Linux和Windows的基于配置文件的配置。
https://github.com/sneivandt/dotfiles/actions/workflows/release.yml/badge.svg](https://github.com/sneivandt/dotfiles/actions/workflows/release.yml) https://github.com/sneivandt/dotfiles/actions/workflows/docker.yml/badge.svg](https://github.com/sneivandt/dotfiles/actions/workflows/docker.yml) https://github.com/sneivandt/dotfiles/actions/workflows/ci.yml/badge.svg](https://github.com/sneivandt/dotfiles/actions/workflows/ci.yml)
bashgit clone https://github.com/sneivandt/dotfiles.git cd dotfiles ./dotfiles.sh install # 提示选择配置文件
powershellgit clone https://github.com/sneivandt/dotfiles.git cd dotfiles .\dotfiles.ps1 install -p desktop
bashdocker run --rm -it sneivandt/dotfiles
dotfiles系统包含三层结构:
dotfiles.sh、dotfiles.ps1)— 轻量级包装器,从GitHub Releases下载最新二进制文件(或使用--build从源码构建)并转发所有参数。cli/)— 处理所有编排:配置解析、配置文件解析、符号链接、文件权限管理。仅在处理包管理器和系统服务时调用外部命令。conf/)— 声明式TOML文件定义每个配置文件要安装的内容。二进制文件自动更新:首次运行时,入口脚本引导二进制文件。之后,Rust二进制文件执行更新检查并维护版本缓存。在Windows上,PowerShell包装器还会在重新启动二进制文件前升级任何暂存的更新。
bash# 使用配置文件安装 ./dotfiles.sh install -p desktop # 预览更改(空运行) ./dotfiles.sh install -d # 详细输出 ./dotfiles.sh install -v # 卸载(移除符号链接) ./dotfiles.sh uninstall # 运行验证测试 ./dotfiles.sh test # 打印版本 ./dotfiles.sh version # 从源码构建并运行(开发) ./dotfiles.sh --build install -p base
详细用法请参见使用指南。
配置文件控制包含哪些文件和安装哪些组件:
| 配置文件 | 描述 |
|---|---|
base | 最小核心shell配置 |
desktop | 完整配置,包括桌面工具 |
平台类别(linux、windows、arch)基于运行的操作系统自动检测。
详细信息请参见配置文件系统指南。
配置在conf/*.toml文件中使用TOML格式定义:
profiles.toml - 配置文件定义manifest.toml - 用于稀疏检出的文件到类别的映射symlinks.toml - 要符号链接到$HOME的文件packages.toml - 要安装的系统包systemd-units.toml - 要启用的Systemd单元vscode-extensions.toml - VS Code扩展copilot-plugins.toml - GitHub Copilot CLI插件git-config.toml - Git配置设置registry.toml - Windows注册表设置chmod.toml - 文件权限详细格式文档请参见配置参考。
bash# 构建Rust二进制文件 cd cli && cargo build # 运行测试 cargo test # 代码检查 cargo clippy -- -D warnings # 代码格式化 cargo fmt # 从源码运行 ./dotfiles.sh --build install -p base -d
开发指南请参见贡献指南。
bash# Rust测试(单元测试 + 集成测试) cd cli && cargo test # 验证配置 ./dotfiles.sh test
CI工作流验证:cargo fmt、cargo clippy、cargo test、Linux和Windows构建、包装脚本的shellcheck、每个配置文件的集成测试。
详细测试流程请参见测试文档。
bashdocker run --rm -it sneivandt/dotfiles docker buildx build -t dotfiles:local .
已发布镜像:https://hub.docker.com/r/sneivandt/dotfiles
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务