使用 dotbot 管理 dotfiles 配置文件

一直都使用手动的方式来管理 dotfiles,之前一方面是学习,一方面是熟悉整个配置,但随着配置文件的不断增多,管理便成为了一个问题。今天本来是在看 Karabiner 的配置,然后找到了一些参考,发现 narze 使用 dotbot 来管理其配置。便顺手也把我的 dotfiles 改了一下。 dotbot 的原理非常简单,就是将配置文件软链接到特定的位置,使得 Vim,Tmux, zsh 之类可以直接使用。然后 dotbot 使用 YAML 定义的一套配置格式将整个过程简化。使得最后可以直接运行 git clone [email protected]:ei Read more ...

2020-08-15 dotfiles , config , mac , linux , vim , zsh

使用 assh 来管理 SSH config

前两天一直在思考如何管理我的 SSH config 配置,最后的解决办法就是通过 git 版本管理起来。但这两天由冒出一个新的问题,那就是经常在国内直连 aws 或者 oracle 的机器时 ssh 连不上,但是通过国内的 VPS 中转就非常快,那这就意味着,我每一次连接国外的机器时必须先登录腾讯云的机器,然后在从腾讯云的机器上连过去,有些麻烦,但那天在 Twitter 上看到有人分享了一个 SSH 管理的命令行工具 assh,大致的看了一下使用简介,通过配置就可以完美的解决这个问题。 ProxyCommand assh 这个工具就将登录一台机器跳转 Read more ...


备份和恢复从 Chrome Webstore 中下架的 Google Chrome Extension

这两天重装系统同步 Chrome 的数据才发现,我一直使用的 Dream Afar New Tab 这个我用了很久的扩展从 Chrome Webstore 消失了,不清楚是 Google 主动下架,还是作者很久没有更新被 Webstore 下了还是为什么。但这个扩展经过了很多的 Chrome 版本依然运行良好至今为止都能每天给我提供世界不同地方的美景。 备份文件 Chrome 的扩展安装后以文件的形式在如下的目录中: Windows: %UserProfile%\AppData\Local\Google\Chrome\User Data\Def Read more ...


Docker 网络与容器互联

简单整理一下 Docker 中 network 子命令,以及 docker 中相关 network 方面的内容。 在安装完 Docker 后,使用 ifconfig -a 查看可以看到多出一个虚拟的 docker0 接口,这个接口是 Docker 默认的网关地址。 不同 Network driver 介绍 Docker 容器默认有三种连接方式: bridge,网桥模式 host,宿主机模式,容器直接使用宿主机的网络 none bridge 模式 Docker 默认会生成一个 docker0 网桥,如果不指定,默认创建的容器都会默认 Read more ...

2020-07-20 docker , network , ip , linux , container

MacBook Pro 初始设置记录

这里就简单的记录一下我从 Linux Mint 迁移到 MacOS 根据我的个人需求来初始化新的 MacBook Pro 的一些设置,和一些基本的感想。下面的内容会按照我自身的需求出发,我会列举我想要的功能然后在此基础上我需要借助哪些工具来实现。在切换到 MacBook Pro 之前,我使用了大约 6 年多的 Linux Mint,我已经有一套我自己的 Workflow,在切换到 Mac OS 之前我就在想哪一些的事情我是必须有 Mac 的软硬件才能做到,并且很提高某一方面的效率的,我列了一些 被很多人追捧的触摸板,当然这个是硬件软件的结合其他系 Read more ...

2020-07-19 unix , macos , setup , github

多设备间同步 ssh 配置及密钥

ssh 客户端会在用户目录 ~/.ssh/ 目录下存放配置信息 (~/.ssh/config) 和公钥和私钥,如果有多个设备不同设备间的同步和管理就会成为一个比较头疼的问题。我在 Reddit 上抛出这个问题 后,我本来想的是通过 git 版本控制来进行管理,但有人说因为公钥和私钥都是二进制的文件,其实没有必要使用 git,任何一个同步工具就能够解决。 不过鉴于国内糟糕的网络环境,我还是通过 git 来管理,最后同步该私有仓库即可。主要注意的是 SSH key 是非常敏感的信息,要注意安全。 SSH 目录的权限 用户目录下的 ~/.ssh目录以及下面 Read more ...

2020-07-15 ssh , config , sync , unix , linux

mosh: 使用 UDP 传输的 Shell

Mosh 是 mobile shell 的缩写,Mosh 允许间断性连接,使用传统的 SSH 连接远程设备时,如果遇到一点点的网络问题,SSH 连接就会被中断。Mosh 使用 UDP 传输,相较于 SSH,在漫游网络,Wi-Fi,移动 (cellular) 网络,长距离连接等网络场景下提供了更好的连接体验。 Mosh 提供的一些特性: Mosh 会自动在连接的网络环境中进行切换,而不会中断连接。尤其当在移动设备上使用 Wi-Fi,3/4G 移动连接时,可以保持连接状态 当笔记本进入睡眠状态,然后再被唤醒,网络连接会中断,使用 Mosh ,但 Read more ...

2020-07-13 mosh , ssh , udp

Vim 插件之 vim-easymotion

Vim 中已经提供了非常多移动的动作,从简单的字符间移动 (jkhl),到 word 间 (w/e/b),句子间 ((/)),段落间 ({/}),行首行尾 (0/^/$),文档开始 (gg),文档结尾 (G),还有搜索 (//np) 等等一系列的操作,但 easy-motion 将 Vim 中的移动又提升了一个高度。 继续往下阅读之前先确保阅读了 vim 文档中关于 motion 的内容。 想象一个场景,想要跳转到当前行下一个段落中的第二个句子的第三个单词开头,使用上面提到的方法,可能需要按下不同的按键,并且可能还需要组合使用,那有没有什么方法能降低 Read more ...

2020-07-06 vim , vim-plugin

JetBrains IntelliJ IDEA 中使用 vim 总结

虽然使用了很长时间的 Vim,也使用了很长时间的 IntelliJ IDEA,但总感觉没有充分利用,所以想再这里总结一下,系统的浏览一遍 Idea Vim 插件能提供的功能,看看能不能有所受益,Vim 和 IntelliJ IDEA 的基本操作和内容就省略了。 Introduction 首先 ideavim 这个插件是 JetBrains 官方提供的,基本上安装后即可。GitHub 的页面还提到 ideavim 插件提供了一些 Vim 插件的扩展功能,比如: vim-easymotion vim-surround vim-multipl Read more ...

2020-07-06 intellij , vim , editor , shortcut , summary

在树莓派上安装 Prometheus node-exporter

前些天正好在我的二代树莓派上安装了 AdGuard Home,这样一个基础服务必然不能少了监控,所以正好把 Prometheus node-exporter 安装一下。 Prerequisite 首先确认一下 CPU 型号,我的是二代,比较老,直接 lscpu 看一下就知道: Model name: ARMv7 Processor rev 5 (v7l) 这是一个 armv5 版本的,然后到 node-exporter 下载二进制: https://github.com/prometheus/node_export Read more ...


最近文章

  • 开源 Kotlin ORM 框架 Exposed 使用说明 Exposed 是 JetBrains 在数年前推出的轻量级 ORM 框架,Kotlin 编写,已经在 JetBrains 内部多个关键产品使用。
  • Open WebUI 基于网页的大语言交互界面及联网搜索配置 之前的视频也介绍过,ChatWise,Cherry Studio,Chatbox 等大语言模型调用的本地客户端,虽然这些客户端都还是跨平台的,但是总还是需要占用本地的空间,今天我就来介绍一款基于网页的 LLM 交互客户端 Open WebUI,以及再介绍一下如何配置 Open WebUI 让其支持联网搜索。
  • 多版本管理工具 mise 使用详解 我用了很多年的 asdf 作为管理各种语言版本的工具,但是最近一次更新,asdf 多了一些变化,我也写了一篇文章介绍怎么升级的。在文章下方有小伙伴(lonelyhentxi) 给我推荐了 mise 这样一款使用 Rust 编写的多版本管理工具 mise,我大致的看了一下 mise,觉得是一个非常不错的项目,在这里再次感谢。
  • 搭建 Joplin 同步服务器 在我的博客上很久之前我介绍过 Joplin,不过我自己只在 Linux,Android 上用过一段时间,后来出现了 Obsidian ,就切换到 Obsidian 了,但是最近看到一篇文章介绍了如何自建一个 Joplin 同步服务器,这样就可以直接无缝地进行同步数据了。之前 Joplin 只是开放了 [[WebDAV]] 协议的访问协议用可以用来同步。
  • 从 Java 到 Kotlin Kotlin 和 Java 作为 JVM 生态中两大主流编程语言,在语法特性、开发效率和适用场景上存在显著差异。Kotlin 凭借现代化设计解决了 Java 的许多痛点,而 Java 凭借成熟生态和广泛支持仍是企业级开发的主力。