MoonLightOS

MoonTools

MoonLightOS 专有的应用。每一款都针对一件现有工具处理得不够好的事,而且写出来的都是普通文件和普通配置,因此它们做过什么,系统其他部分都看得见,也容易撤销。

日常工具

MoonLight Capture

截图与录屏

截图和录屏合在一个工具里,这样完整的组合在任何 Linux 桌面上都找不到。顶部有五种模式:整个屏幕、单个窗口、自选区域、录制屏幕、录制区域。下面可以设置:结果保存到哪里(图片文件夹、剪贴板,或两者都要)、3 秒 5 秒还是 10 秒延迟、是否包含指针、是否录制麦克风,以及从最高画质到最小体积的质量选项。

它会先把屏幕抓成一张静止的画面,再在这张画面上选区域,所以你要截的内容不会在选择过程中跑掉。窗口模式能识别真实窗口,连边框一起截下。录屏使用 ffmpeg,停止按钮是一个始终置顶的小窗口,因此录制随时都能停下来。

快捷键 Print · Shift+Print · Alt+Print · Ctrl+Shift+Print · Shift+Super+3 / 4 / 5

剪贴板

可搜索的复制历史

登录时会启动一个小服务,把你最近复制的 400 条内容保存在主目录下的一个普通 JSON 文件里,任何工具都能检索这种格式。按 Super+V 打开窗口:输入即搜索,回车即粘贴。

凡是密码管理器标记为机密的内容,以及从标题看起来像密码提示框的窗口里复制的内容,它都会刻意忽略。超过 20000 个字符的条目会被截断。

快捷键 Super+V

MoonLight Notes

自动保存的速记

一个趁没忘记先记下来的地方:一个窗口,左边是笔记列表,右边是正文,没有保存按钮,因为停止输入半秒后每条笔记都会自动保存。笔记以普通 Markdown 文件存放,一条一个文件并以笔记名命名,因此任何编辑器都能打开,任何工具都能同步,即使卸载了这个应用它们也还在。

便签小部件会把同样的笔记显示在桌面上。在终端里,moonlight-notes --new“text”会保存一条笔记后退出。

快捷键 Super+N

MoonLight Convert

在不同格式之间转换文件

转换几乎任何文件所需的东西都已经装好了:ffmpeg、ImageMagick、LibreOffice、Ghostscript 和 poppler。缺的只是一个简单的入口,让你不必知道哪个工具负责什么。把文件拖进来,列出的格式就是这些文件真正能转成的格式。

图片可转为 PNG、JPEG、WebP、AVIF、TIFF、BMP、PDF 或图标。音频可转为 MP3、FLAC、WAV、Ogg Vorbis、Opus 或 AAC。视频可转为 MP4(H.264)、Matroska、WebM(VP9)、动态 GIF,或只保留音频。文档可转为 PDF、Word、OpenDocument、RTF、纯文本、HTML、Excel、ODS 或 CSV。PDF 可转为每页一张图片、纯文本或 Word。

快捷键 Super+Shift+C

MoonLight PDF

重排页面,按需要的形式导出文档

左边是你打开的所有文件的页面,以缩略图呈现,可以选中、重排、旋转、删除、复制,也可以把图片作为新页面插进去。右边是导出时要应用的全部设置:按画质或目标体积压缩、便于网页首页快速加载、用于归档和正式提交的 PDF/A-2b、灰度、打开密码和编辑密码(并可分别控制打印、复制和编辑权限)、扫描页的文字识别、保留标题和作者而清除其余元数据、水印和页码。

它还能导出成每页一张图片、纯文本或每页一个文件,并可提取内嵌的图片。底层用的是 qpdf、Ghostscript、poppler 和 OCRmyPDF,和优秀的商业工具是同一批库。

MoonLight Export

按别人要求的格式交付图片

修图是 GIMP 的事。各家图像编辑器都做不好的恰恰是最后一步:四十张照片要导成 JPEG,宽度不超过 2000 像素,每张小于 500 KB,还要清除相机写入的 GPS 信息。这是导出的活,不是修图的活。把文件拖进来,选好对方的要求,点导出即可。

可导出 JPEG、PNG、WebP、AVIF、TIFF 或 BMP;按像素尺寸缩放但绝不放大;限制文件体积上限(以 KB 计);应用相机的旋转信息、把颜色转为 sRGB、转成黑白;在指定的角落加文字或标志水印;指定命名规则;或者把所有图片合成一个 PDF,每张一页。

混音器与均衡器

分应用音量和十段均衡器

有三件事大家常找却很少找到:哪个设备在出声、每个应用各自多响,以及一个不止于“低音增强”复选框的音色调节。前两项直接来自 PipeWire;第三项是这个工具自己搭建并控制的滤波链,频段从 32 Hz 到 16 kHz。

同样的控制项也可以从面板上的声音图标打开。

快捷键 Super+A

Windows 应用

一步把 Wine 配置妥当

光装一个 Wine 也能用,但体验很差:没有 Direct3D 转译、没有字体,而且 prefix 模拟的是 64 位 Windows,不少安装程序会直接拒绝。这个工具会把内行该做的配置一次做完:带 32 位支持的 64 位 prefix,用于 Direct3D 9、10、11 的 DXVK 和用于 Direct3D 12 的 VKD3D(让游戏和 CAD 软件通过 Vulkan 渲染),多数程序依赖的核心字体与运行库,以及一套合理的默认设置。

双击 .exe 文件就会在准备好的 prefix 中运行。在终端里,moonlight-wine --run FILE 的效果相同。

配置与维护电脑

MoonLightOS 截图
截图取自已安装镜像的真实启动过程,并非效果图。
MoonLightOS 截图

MoonLight Tweaks

外观、桌面布局与性能

把少数值得集中管理的设置放在一起:浅色、深色或按时间切换的主题;壁纸;桌面布局(MoonLight、双面板、紧凑);桌面上显示什么;小部件;Super+Space 搜索、热区、自然滚动和轻触点击等熟悉的习惯;夜间模式;开机自启的应用;以及这台电脑该用多少动画效果。

每种布局都是一整套完整的面板设置,因此来回切换绝不会留下一个只改了一半的排布。

欢迎

第一步

首次登录后显示一次。你可以在这里挑选外观,打开商店、设置、驱动页面、指纹工具、备份或关于页面,并按用途加装开发者组件:虚拟机、PHP 加数据库,或 LaTeX。已经装好的组件会变灰,而不是被隐藏。

初始设置

首次启动向导

在实时介质上,这是先于桌面出现的第一个界面:选择语言、选择键盘布局、连接网络,然后决定是体验还是安装。每一步只需几秒,也都可以跳过。它设置的每一项都是真实的系统设置,因此安装器会沿用同样的选择,同一个问题不会问第二遍。

关于 MoonLightOS

版本与硬件信息

版本名称和这台电脑的配置说明:处理器、内存、显卡、硬盘,以及 Secure Boot 是否启用,旁边配有标志。它在系统设置中取代了 Cinnamon 的 System Info 页面,也可以作为独立窗口打开。点“复制报告”会把整页内容以文本形式复制到剪贴板,可直接用于缺陷报告。

指纹

识别器检测与指纹录入

检测识别器,明确告诉你这台电脑上的传感器能不能用,启用 PAM 集成,并引导你完成录入。传感器分三类:libfprint 直接支持的;在芯片内完成比对、图像从不离开传感器的;以及比对代码为厂商二进制、不允许再分发的 Touch OEM Driver 型(Goodix、部分 Synaptics、Broadcom)。工具会把这一点讲清楚,若笔记本厂商提供了相应文件,也会主动提出下载。

它也会讲明指纹做不到的事:无法在启动时解锁加密的磁盘。

人脸解锁

看一眼摄像头即可登录

这是配合密码使用的便利功能,绝不会取代密码。它只作用于登录界面、锁屏、控制台登录、sudo 和 polkit;SSH 会话从不调用摄像头。它要求有轻微动作,光靠一张照片过不去;八秒内不成功就放弃并退回密码;你的面部数据也可以一键删除。

默认关闭。在你开启之前,摄像头不会被使用。

应用检查

核实每个已安装的应用都能启动

菜单项可能指向一个没装的程序、用了一个并不存在的图标,或者启动后立刻退出。这个工具会对菜单里的每一项检查这三点,并报告哪些是坏的。

系统自检

桌面实际上在做什么

截图只能看到症状,这个工具给出的是状态:当前生效的主题设置、外壳样式表是否正确加载、哪个显卡驱动在工作、哪些服务启动失败。在实时会话中,它还会在登录一分钟后把报告写到串口,因此在虚拟机里启动一次,不用敲任何命令就能留下诊断信息。

新增到系统设置里的页面

Cinnamon 的系统设置,补上了原本缺的几页:你的账户、安全,以及桌面与程序坞,各自集中在一处。

  • 关于

    版本和这台电脑的硬件信息,就放在大家习惯去找的地方。

  • 应用程序

    装了什么、每个应用来自三种软件包格式中的哪一种、有没有重复安装,以及一个用来卸载的按钮。

  • 桌面与程序坞

    外观、强调色、程序坞位置、放大效果、自动隐藏和最小化动画、热区与手势、小部件,以及夜间模式。

  • 安全

    一份清单,列出这台电脑哪些有防护、哪些没有:加密、防火墙、Secure Boot、启动菜单密码、自动登录、远程登录、锁屏和 USB 防护。每一行要么是绿色的,要么带一个能修好它的按钮。下面还有锁定策略和紧急密码。

  • 蓝牙

    适配器和设备都放在设置窗口内,而不是另开一个窗口;电脑没有蓝牙硬件时也会给出明确提示。

  • 你的账户

    你是谁、你能做什么,以及证明身份的所有方式:密码、指纹、人脸解锁和紧急密码,都在同一页。

MoonLightOS 截图
截图取自已安装镜像的真实启动过程,并非效果图。

在桌面和面板上

桌面小部件

  • 时钟

    大而清晰的时间和日期。

  • 系统

    用三条进度条显示处理器、内存和硬盘占用。

  • 日历

    当月日历,并突出显示今天。

  • 便签

    一张便签,输入过程中以纯文本保存。

在面板和菜单中

  • 搜索

    面板上的搜索框,可以找到应用、设置、文件和网页结果。

  • 声音

    音量、输出设备、分应用混音器和均衡器,都能从面板上直接调节。

  • 程序坞菜单

    为程序坞图标的右键菜单加上显示全部窗口、隐藏、登录时打开和退出,并放大指针下方的图标。

  • 菜单顶部信息

    在菜单顶部显示你的头像、姓名,以及你是否有管理这台电脑的权限。

  • 文件搜索

    在菜单的搜索框中按名称查找文档、图片和文件夹;网页结果由 DuckDuckGo 提供。

MoonLightOS 截图

命令行工具

刻意保留英文,这样输出可以直接粘进缺陷报告,别人也看得懂。

命令作用
moonlight-theme light | dark | toggle | auto | status在浅色和深色主题之间切换;加上 --daemon 则按时间表自动切换。
moonlight-shot --screen | --region | --window | --rec-screen从脚本或按键截图,或开始录屏。
moonlight-notes --new "text"保存一条笔记后退出。
moonlight-wine --setup | --run FILE准备 Wine,或用它运行一个 .exe 文件。
moonlight-appcheck [--launch] [--quiet]检查每一个菜单项;加上 --launch 还会逐个启动应用。
moonlight-selftest [--serial]输出桌面的运行状况,也可选择写到串口。
moonlight-desktop-trust当桌面上的启动器所指向的程序安装在系统目录中时,把它标记为可信。
moonlight-gfx-tune当图形渲染由软件完成时,在登录时关闭动画。