个人 Ubuntu 开发环境配置文件,一键安装和配置开发工具。
git clone https://github.com/yourusername/dotfiles.git
cd dotfiles
chmod +x setup.sh
./setup.sh安装完成后,重新登录系统或运行:
newgrp docker && source ~/.zshrcdotfiles/
├── setup.sh # 主安装脚本
├── uninstall.sh # 卸载脚本
├── .zshrc # Zsh 配置
├── .p10k.zsh # Powerlevel10k 主题配置
├── .vimrc # Vim 配置
├── .oh-my-zsh/ # Oh-My-Zsh 自定义配置
│ ├── aliases.zsh # 别名定义
│ ├── functions.zsh # 自定义函数
│ └── my-commands/ # 自定义命令
│ ├── laradock # Laradock 管理命令
│ ├── lw # 快速进入 workspace
│ ├── json.sh # JSON 处理工具
│ ├── tennis # Tennis 工具
│ └── ... # 其他实用脚本
├── docker/
│ └── daemon.json # Docker 守护进程配置
├── ghostty/
│ └── config/config # Ghostty 终端配置
├── lsd/
│ └── config.yaml # LSD (现代 ls) 配置
├── nvim/ # Neovim 配置 (LazyVim)
│ ├── init.lua
│ ├── lua/
│ │ ├── config/
│ │ │ ├── autocmds.lua
│ │ │ ├── keymaps.lua
│ │ │ ├── lazy.lua
│ │ │ └── options.lua
│ │ └── plugins/
│ │ └── example.lua
│ ├── lazy-lock.json
│ └── stylua.toml
├── gnome-extensions.txt # GNOME 扩展列表
└── gnome-extensions-settings.dconf # GNOME 扩展配置
| 工具 | 说明 |
|---|---|
| Git | 版本控制 |
| Docker | 容器运行时 |
| Zsh | Shell |
| Oh-My-Zsh | Zsh 框架 |
| Vim | 文本编辑器 |
| Neovim | 现代文本编辑器 |
| Ghostty | 现代终端 |
| LSD | 现代 ls 替代品 |
| 工具 | 说明 |
|---|---|
| nvm | Node.js 版本管理器 |
| jq | JSON 处理工具 |
| Claude Code | Anthropic 官方 AI 编程助手 CLI |
| 工具 | 说明 |
|---|---|
| lazydocker | Docker TUI 管理工具 |
| lazygit | Git TUI 管理工具 |
| lazyssh | SSH TUI 管理工具 |
| lazyjournal | Journalctl TUI 查看器 |
| 工具 | 说明 |
|---|---|
| yazi | 终端文件管理器 |
| btop | 系统资源监控 |
| systemctl-tui | Systemd 服务管理 TUI |
| glow | 终端 Markdown 渲染器 |
| leaf | 终端 Markdown 预览器(GUI-like 体验) |
| tennis | 终端工具 |
| 工具 | 说明 |
|---|---|
| Ulauncher | 应用启动器(模糊搜索、扩展支持) |
| 插件 | 说明 |
|---|---|
| powerlevel10k | 美化主题 |
| zsh-autosuggestions | 命令自动建议 |
| zsh-syntax-highlighting | 语法高亮 |
| autojump | 快速目录跳转 |
| 命令 | 说明 |
|---|---|
| laradock | Laradock 容器管理工具 |
| lw | 快速进入 Laradock workspace |
| json | JSON 格式化工具 |
| tennis | Tennis 工具 |
通过扩展管理器安装,配置自动恢复:
- user-theme - 用户主题
- clipboard-indicator - 剪贴板管理
- kimpanel - 输入法面板
- tiling-assistant - 窗口平铺
- ubuntu-appindicators - 系统托盘
- 更多见
gnome-extensions.txt
安装脚本会创建以下符号链接:
| 源文件 | 目标位置 |
|---|---|
.zshrc |
~/.zshrc |
.p10k.zsh |
~/.p10k.zsh |
.vimrc |
~/.vimrc |
nvim/ |
~/.config/nvim/ |
ghostty/config/config |
~/.config/ghostty/config |
lsd/config.yaml |
~/.config/lsd/config.yaml |
docker/daemon.json |
/etc/docker/daemon.json |
.oh-my-zsh/aliases.zsh |
~/.oh-my-zsh/custom/aliases.zsh |
.oh-my-zsh/functions.zsh |
~/.oh-my-zsh/custom/functions.zsh |
.oh-my-zsh/my-commands/ |
~/.oh-my-zsh/custom/my-commands/ |
Laradock 容器管理工具,支持多版本管理:
# 基本命令
laradock ps # 查看容器状态
laradock up nginx # 启动 nginx 容器
laradock stop nginx # 停止 nginx 容器
laradock restart nginx # 重启 nginx 容器
laradock logs nginx # 查看 nginx 日志
laradock build nginx # 构建 nginx 容器
laradock exec workspace # 进入 workspace 容器
# 多版本支持
laradock up nginx --74 # 使用 laradock74 目录
laradock up nginx --81 # 使用 laradock81 目录
laradock up nginx --85 # 使用 laradock85 目录快速进入 Laradock workspace 容器:
lw # 进入默认 workspace
lw -8 # 进入 laradock8 workspace
lw -r # 重启并进入 workspace
lw -8 -r # 重启并进入 laradock8 workspaceJSON 格式化工具:
echo '{"name":"test"}' | json # 格式化 JSONleaf 提供类似 GUI 的 Markdown 预览体验:
leaf README.md # 打开 Markdown 文件
leaf --watch README.md # 实时预览模式(文件修改自动重载)
leaf # 打开文件选择器
leaf --inline README.md # 直接输出到终端(不进入 TUI)常用快捷键:
| 快捷键 | 功能 |
|---|---|
j/k |
上下滚动 |
d/u |
翻页 |
t |
切换目录侧边栏 |
Ctrl+E |
在编辑器中打开 |
Ctrl+F 或 / |
搜索 |
q |
退出 |
Ulauncher 是快速应用启动器,默认快捷键为 Super (Windows 键):
功能特性:
- 模糊搜索应用
- 内置计算器(直接输入数学表达式)
- 文件浏览器(输入
~或/开始浏览) - 扩展支持(访问 https://ext.ulauncher.io/ 获取扩展)
常用操作:
| 输入 | 功能 |
|---|---|
| 应用名称 | 搜索并启动应用 |
5 + 3 |
计算数学表达式 |
~/Documents |
浏览文件目录 |
/etc |
浏览系统目录 |
- 将配置文件放入对应目录
- 在
setup.sh中添加符号链接命令
- 在
.oh-my-zsh/my-commands/目录下创建新脚本 - 添加执行权限:
chmod +x script-name - 在脚本中使用
source "$SCRIPT_DIR/common.sh"引入公共函数
脚本会自动检测以下工具是否已安装:
- Docker
- Zsh
- Ghostty
- nvm
- Node.js (通过 nvm 安装 LTS 版本)
- Claude Code
- lazydocker
- lazygit
- lazyssh
- lazyjournal
- yazi
- systemctl-tui
- glow
- leaf
- btop
- jq
- tennis
- Ulauncher
- Docker 权限:安装后需要重新登录系统才能使用 docker 命令
- Zsh 默认 Shell:安装后默认切换到 Zsh
- GNOME 扩展:需要手动通过扩展管理器安装,配置会自动恢复
- 自定义命令:安装后需要重启终端或运行
source ~/.zshrc才能使用自定义命令
./uninstall.shMIT