跳至主要内容

博文

目前显示的是 2019的博文

小循环——情在何处

偶然间听到的一首歌,蛮耐听的~ 情在何处 演唱者:丁当 / 谢文德 / 戴荃 / 王思远 制作人:周华健 / 邓纬圣 录音工程师:邓纬圣 / 洪浚程 混音工程师:林正忠 OP:摆渡人音乐股份有限公司 SP:Rock Music Publishing Co. Ltd. 王允:问世间 情在何处 吕布:世间路 情字胡涂 王允:说穿了 就是一份礼物 吕布:猜不透 王司徒的药葫芦 王允:这心意 你要看得清楚 吕布:老狐狸 岂会平白无故 王允:来的来 去的去 称一称 数一数 可不要 把我随手辜负 吕布:有还有 无还无 赚归赚 赌归赌 难道我 还怕他耍阴毒 貂蝉:问世间 情在何处 相逢人 转身陌路 王允:你看她 宛转蛾眉 滟潋娇 天生尤物 吕布:说什么 说什么 云中龙 风中虎 王允:说什么 说什么 人中吕布 马中赤兔 吕布:一见她 鬓边香丝 眸中滴露 王允:说不得 意气随风 化作春泥 要把好花护 吕布:一霎时 脸儿热 鼻儿酸 胆儿怯 腿儿癫 心儿微苦 貂蝉:问世间 情在何处 才相见 云烟尘土 王允:问世间 情归何人 董卓:丞相事 情不关心 王允:说穿了 就是一份礼品 董卓:猜不透 王司徒的城府深 王允:这心意 发自一片天真 董卓:老狐狸 莫非装鬼弄神 王允:国不国 民不民 打一打 分一分 只服你 天下第一能人 董卓:君不君 臣不臣 金要金 银要银 难道我 还怕他耍阴狠 貂蝉:问世间 情归何人 相逢时 漠不关心 王允:你看她 盈盈红粉 俏青娥 绝代佳人 董卓:说什么 说什么 当宰相 做帝王 王允:说什么 说什么 天下张狂 高楼独上 董卓:一见她 杏面桃腮 眉黛花黄 王允:说不得 手脚寒凉 言语荒唐 斜眼望牙床 董卓:一霎时 口儿燥 眼儿酸 身儿抖 肚儿叫 魂儿迷茫 貂蝉:问世间 情在何方 乍别离 天地苍苍

Fix Docker Desktop in Windows using MOFCOMP

前一段 Windows 10 上的 Docker Desktop 突然不工作了,卸载重装也无效。一开始以为是 HyperV 里面什么地方被折腾坏了,但是删光了自定义的网络和设备仍旧无助。 后来在[某处](https://www.soinside.com/question/YKwpTYAjjstuUjDSvdkKx9) 看到有人给了这么一条命令(需要以系统管理员权限执行): MOFCOMP %SYSTEMROOT%\System32\WindowsVirtualization.V2.mof 重启之后重装居然解决了! `mofcomp` 貌似是 Windows Management Instrumentation (WMI) 中的[一个命令行工具](https://docs.microsoft.com/en-us/windows/win32/wmisdk/mofcomp), > Mofcomp.exe 是一个操作系统工具,用于编译 MOF 文件,并将文件中包含的信息添加到 WMI 存储库中。 坦白说暂时还不清楚为什么这个命令管用,先记下来以备不时之需……

Spotify 和 Amazon Music 的服务试用小结

最近两个月在对比 Amazon 的 Unlimited Music Service 和 Spotify。 之前买了一对 Echo Dot 小音箱,可以通过蓝牙连接作为播放音箱,更秒的是可以通过 Alexa 声控。另外,台式机的桌面上还藏着一枚不起眼但是音质很过瘾的 Sony SRS ZR7,它可以支持 Chrome Cast 以及 WIFI 连接。所以主要是针对这两种不同类的音箱。 巧的是,Amazon和Spotify都提供了差不多一个月的免费试用期,于是在电脑、手机上都安装了两家的播放器,有空就放来听听。最后体验下来 Spotify 取得了压倒性的胜利: 1. 播放软件的操控性极佳 Spotify 为每个用户提供一个“唯一”的播放队列,当你正在聆听手机上播放的歌曲时,如果通过电脑切换到 WIFI 音箱播放,那么切换的过程是非常顺的——手机上声音停止,电脑里的播放器看得到正在转到新的目标播放器,短暂停顿之后在音箱里就继续播放了。 坦白说一开始我对于这个“唯一的播放队列”有点不太适应,还想着应该每个终端都有一个当前播放的列表。但是使用了几天之后立即适应了这个模型,觉得操作也非常直观。Amazon 的播放器貌似就没有这种顺滑的操作体验,基本上不同终端之间几乎是互不可见的状态…… 2. 平台支持超级丰富 无论是哪一个终端设备都有支持,iphone、android,Web 界面,在到传统的台式机领域——从 Windows 到 MacOS,甚至到 Linux 都有播放器可以安装!而 Amazon 的 Music 在手机和 Windows 上都有,主要是因为在 Android 和 Windows 的体验都不乍的,别的平台我后来都没有兴趣去仔细找。 3. 价格也差不多 二者在土澳的价格差不多都是 `11.99/month`,不过 Echo 设备可以订阅量身定制的简约套餐,大概是 5/month 左右吧。可惜由于上面的对比,就失去了性价比。 客观的说,Spotify 也不是一个缺点都没有—— Echo 设备可以播放 Spotify,可是 Alexa 的整合程度不高,我可以说歌手名或是歌曲名,可以 "Play Next",别的貌似就没了……对比之下,Echo 播放 Amazon Music 的整合优势是相当明...

Archlinux Desktop Setup - Audio Control

前文已经提过,为了控制 Arch Linux 进入 XFCE4 桌面系统后的音量控制,安装了以下的包 sudo pacman -S alsa-utils pulseaudio pulseaudio-alsa 另外,系统控制栏不像 Windows 或 MacOS那样自带小喇叭可以管控音量,找到了一个神器 PulseAudio Volume Control 装上了: sudo pacman -S pavucontrol 它可以管理整个系统的声音输入输出,方便用户选择播放设备,像是在 Configuration 界面下选择 * 笔记本自己的内建喇叭 Analog Stereo Output * 或者是通过HDMI接入的显示器的内建音响 Digital Stereo (HDMI) Output * 甚至是外接的蓝牙音箱 另外一个最简单的应用当然就是控制音量,Playback 界面下拉动选择。 由于本人使用的键盘带有多媒体键,想要偷懒通过快捷键控制音量。Google了一下果然找到[答案](https://unix.stackexchange.com/questions/355665/how-to-increase-or-decrease-volume-in-xfce-with-keyboard-shortcuts) 如下: 首先要知道自己的 sink index,使用以下的命令: $ pactl list short sinks 4 alsa_output.pci-0000_00_1b.0.hdmi-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED 我的系统里是 `4`,接着打开菜单里的 「Settings」选择「Keyboard」,然后在 Layout 界面下添加几个新的配置项目,包括: 1. `pactl -- set-sink-mute 4 toggle` 2. `pactl -- set-sink-volume 4 +10%` 3. `pactl -- set-sink-volume 4 -10%` 然后就可以享受懒人的福利啦,一键静音又回来啦~

Archlinux Desktop Setup - YAY

为了安装 Archlinux 的各种非核心包,像是 AUR 之类,只靠 pacman 是不够用的。有一些早期的文章用的是命令 `yaourt` 不过貌似已经不再推荐使用了。 参考 [【Yaourt 已死!在 Arch 上使用这些替代品】](https://linux.cn/article-9925-1.html#toc_3) 我选择了 `yay` 作为替代,最主要的原因是,它是由 Golang 编写的. 安装也很方便,克隆 git repository 之后自己编译,yay 的二进制文件貌似只对 pacman 有依赖: git clone https://aur.archlinux.org/yay.git cd yay makepkg -si 然后用起来也很清爽, # Search a package yay -Ss # Install the package yay -S

Archlinux Desktop Setup - Bumblebee to bridge IGA and NVIDIA

不满足于新安装的 Archlinux/Xfce4 里面仅能使用 Intel 的集成显卡,于是开始折腾如何启用 Nvidia 的独立显卡,我的这台老本本里带的是 GeForce GT500M。 先是卸载了之前误装的 nouveau,不过它的wiki相当不错,配套的 [freedesktop.org 页面](https://nouveau.freedesktop.org/wiki/CodeNames/#NVC0) 提供了完整的 Code Names,我的 GT500M 属于 NVC0 Family (Fermi 架构) 的 `NVD9 (GF119)` 。 在 Nvidia 的官网页面上 [Legacy Driver](https://www.nvidia.com/object/IO_32667.html) 里面可以看到 `390.xx Driver` 可以支持这款显卡。[Archlinux Nvidia 的 wiki](https://wiki.archlinux.org/index.php/NVIDIA#Minimal_configuration) 上也写得很清楚: > For GeForce 400/500 series cards [NVCx and NVDx] from around 2010-2011, install the nvidia-390xx or nvidia-390xx-lts package. 于是执行最简步骤,顺利地安装了以下packages: yay -S xf86-video-intel yay -S mesa xf86-input-mouse xf86-input-evdev xf86-input-keyboard yay -S nvidia-390xx nvidia-390xx-utils 接着安装 [“大黄蜂” 【bumblebee】](https://wiki.archlinux.org/index.php/Bumblebee),它是相当于 Nvidia Optimus 的一种技术,针对笔记本电脑的显卡切换提供无缝的支持,大多数情况下使用 Intel 的集成显卡来渲染,当需要的时候(例如游戏或是OpenGL调用)可以切换为 NVIDIA 独立显卡提供高帧率的渲染。 早期的计算机不具...

Archlinux Desktop Setup - Clock Timezone and System Time

安装好 XFCE4 之后,桌面的右上角有desktop panel,也有clock,wifi和power的托盘图标等。 结果发现clock显示的时间居然不是按照当前的时区来的,尽管我已经做好了 `/etc/localtime` 的软连接到 `/usr/share/zoneinfo` 下面的时区文件。 后来查了查和clock有关的资料,发现这些小widget都是配置在 `~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml` 里面的。在其中查找关键字 "clock" 就可以定位到对应的 `plugin` 的 id。 在我的桌面下,clock对应的是 `plugin-5`。于是可以执行 `xfconf-query -c xfce4-panel --list | grep plugin-5` 来列举所有与这个空间相关的配置项。结果意外的发现居然没有显式配置。 参考 [这篇BBS的讨论](https://bbs.archlinux.org/viewtopic.php?id=233651), <property name="plugin-5" type="string" value="clock"> <property name="timezone" type="string" value="EST"/> <property name="mode" type="uint" value="2"/> <property name="show-military" type="bool" value="false"/> <property name="show-seconds" type="bool" value="true"/> <pro...

Archlinux Desktop Setup - XFCE4

安装 Desktop 是很方便的, 1. `sudo pacman -S xorg-server xorg-xinit xterm` 2. `sudo pacman -S xfce4 xfce4-goodies` 可以先尝试进入 X 系统,再进入 XFCE: 3. `exec startx` 4. `exec startxfce4` 然后开始解决没有声音的问题,可以安装以下的包,并为系统添加一个可以调节音量的控件: 5. `sudo pacman -S alsa-utils pulseaudio pulseaudio-alsa` 6. `sudo pacman -S pavucontrol` 针对 Desktop 显示中文方框的问题,需要安装几个字体,包括 `ttf-dejavu`、 `ttf-droid` 和 `wqy-microhei`、 `wqy-zenhei` 等。 如果喜欢使用中文界面,可以在 `/etc/xprofile` 中 `export LANG=zh_CN.UTF-8`,重启之后可以看到所有菜单都已经是熟悉的中文了。 搞定桌面之后可以安装一个 Desktop Display Manager,例如 `sddm`。 > Simple Desktop Display Manager (SDDM) 是用于X11和wayland视窗系统的显示管理器(图形登录界面)。 > SDDM 使用C++11重写并且支持通过 QML 改变主题。它是KDM的接替者并且与 KDE Frameworks 5, > KDE Plasma 5 和 KDE Applications 5协同使用。 启用服务 `sudo systemctl enable sddm.service`。这样下一次登录就直接进入GUI模式而不再是console。

ArchLinux in Laptop - Dual OS Boot

手头有一台老笔记本,是2013年买的 Dell XPS14z。去年为她更换过 SSD ,将老的光驱拆了下来挂上了原本的 HDD。这样一共有`700+ GB` 的磁盘空间。去年更新了硬件之后也重灌了 Windows 10系统,时常更新,到目前位置体验都还不错。今天忽然心血来潮,想要做双系统——除了 Win10之外再弄一个 Linux。 14-16年之间在公司的机器上用 Virtualbox安装了 ArchLinux 作为开发环境,Desktop Manager 用的是 XFCE,体验挺不错,因此这次依旧想要使用这套配置。 于是先在 Windows 的 `compmgmt.msc` 里将磁盘卷压缩了一下,SSD 分出了80GB;HDD 上分出了23GB 。然后做了一个 ArchLinux 20190401 ISO 的优盘。Windows 电源选项里取消了关机的快速选项,然后重启,按 F12 到 boot options里面选择优盘进入。 以前在 VirtualBox 里只是一个 partition 挂载为 root(`/`)。这次稍微特殊化了一下,将分区做的多了几个: * `/usr` 推荐大小为12GB - 20GB * `/var` 推荐大小为10GB 左右 * `/home` 自行估计大小 * `/boot` 建议至少 100MB,如果考虑多内核的话,可以到300MB 左右。 用 `fdisk` 分了这几个 partitions,SSD 由于之前已经是4个 primary 所以不能直接 (n)ew,必须先 (d)elete 再创建一个 (e)xtensive 作为容器,在其中可以创建多个 logical partitions。 * `/dev/sda5` (extensive & container, total size 80GB) * `/dev/sda6` (for boot partition, 320MB) * `/dev/sda7` (for root partition, 50GB) * `/dev/sda8` (for usr partition, 18GB) * `/dev/sda9` (for var partition, 12GB) * `/dev/sdb3` (extensive & cont...

Minimal Version Selection in vgo

从一段GOTO Conf的视频里学到了有关GoLang的版本管理——早期的Golang作为Google的内部语言,是不需要版本管理的,因为整个谷歌的内部共享一个大代码库。 后来Golang Community开始尝试不同的版本管理风格,主要是以vendoring的方式——把代码库整个下载下来使用。在需要的时候可以update,go的工具链提供了便捷的更新命令。 最近有一个名为 vgo 的工具发布,不同于其它语言(特别是node.js)所拥抱的 sementic versioning,它采用的是较为保守的 minimum versioning。详见 Russ Cox 的这篇博文——[A Proposal for Package Versioning in Go](https://blog.golang.org/versioning-proposal)