Home

Welcome to fateone’s blog.

Setup gnome environment on arch

配置 gnome 桌面环境 目标是简洁易用,清晰美观。 环境 archlinux, gnome 输入法 笔者选择使用 fcitx5。 paru -S fcitx5 fcitx5-gtk fcitx5-qt fcitx5-chinese-addons fcitx5-configtool \ fcitx5-im fcitx5-mozc fcitx5-pinyin-zhwiki 之后配置系统使用 fcitx5: 编辑配置文件: # /etc/environment XMODIFIERS=@im=fcitx QT_IM_MODULE=fcitx # $HOME/.gtkrc-2.0 gtk-im-module="fcitx" # $HOME/.config/gtk-3.0/settings.ini [Settings] gtk-im-module=fcitx 配置 gnome: gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'fcitx'>}" 必备插件 为了安装插件,我们首先需要安装 gnome shell 的插件支持,这包括宿主机以及浏览器扩展安装。 宿主机中执行 paru -S gnome-browser-connector 即可。 浏览器中访问 https://extensions.gnome.org 下载所使用的浏览器对应的扩展即可。 推荐的插件包括以下: https://extensions.gnome.org/extension/261/kimpanel: 为 wayland 下的 fcitx5 输入法提供支持; https://extensions.gnome.org/extension/615/appindicator-support: 为 gnome 下应用显示托盘; https://extensions.gnome.org/extension/3569/task-widget: 将 evolution 任务显示到 gnome 通知区; https://gitlab.com/rastersoft/desktop-icons-ng: 支持文件夹中右键打开特定终端。 细节调整 笔者的需求是将 caps lock 映射到 ctrl 以及为应用右上角添加最小化按键,为此需要下载 gnome tweaks (paru -S gnome-tweaks)。 ...

September 7, 2025

install driver for intel smart sound technology on arch linux

Arch linux 下为“适用于数字麦克风的英特尔@智音技术”麦克风安装驱动 环境 archlinux, alienware-x17-r2, gnome wayland, PipeWire 安装步骤 sudo pacman -Q sof-firmware 安装必要的驱动程序; echo "options snd-intel-dspcfg dsp_driver=3" | sudo tee /etc/modprobe.d/sof-mic.conf 配置强制使用 sof-firmware 作为音频驱动程序; 重启系统,重新加载驱动,之后可打开 gnome settings 检查麦克风是否能够检测到输入。

September 7, 2025

NixOS autotools derivation best practice

使用 autotools 工具链推导的最佳实践 首先要明晰我们的构建方式: 为构建指定依赖包,这包括构建时依赖和运行时依赖; 指定构建脚本进行构建,并修复生成文件,删减不需要的可执行文件依赖库; 将生成的推导加入到用户的自定义仓库中。 基于此,我们可以分为 4 步。 构建统一依赖制定 nix 脚本 # autotools.nix pkgs: attrs: let default_attrs = { builder = "${pkgs.bash}/bin/bash"; args = [ ./builder.sh ]; base_pkgs = with pkgs; [ gnutar gzip gnumake gcc coreutils gawk gnused gnugrep binutils.bintools findutils patchelf ]; build_pkgs = [ ]; system = builtins.currentSystem; }; in derivation (default_attrs // attrs) 这是一个双变量函数,或者称为双层函数,这样我们可以对于该函数进行复用。它指定了如下的属性: 构建主程序,也就是 bash ./builder.sh; autotools 所依赖的构建依赖包 base_pkgs,以及可调整的针对于特定包的依赖 build_pkgs; 可执行文件运行系统,指定为当前系统,对于笔者来说是 x86_64-linux; 最后一行表示将默认集合与用户自定义集合合并,如果有冲突以用户为准,将合并集合用于生成推导。 一个使用实例如下: ...

September 5, 2025

Sudo without passwd for user on NixOS

在 NixOS 上如何为用户启用使用 sudo 无需密码 修改 /etc/nixos/configuration.nix,添加如下内容: security.sudo.extraRules = [{ users = ["fateone"]; commands = [{ command = "ALL"; options = ["NOPASSWD"]; }]; }]; 之后执行 sudo nixos-rebuild switch 即可生效。

September 5, 2025

Enable NixOS folder sharing in gnome box

前置条件 读者需要先在宿主机上安装 gnome boxes,并在其中安装 NixOS,笔者使用的是 NixOS 25.05 的 gnome 桌面, 安装后在宿主机中的 gnome boxes 上配置好共享文件夹。 启用 NixOS 相关服务 编辑 /etc/nixos/configuration.nix 在 services 片段添加如下内容: # enable nixos as a VM services.spice-vdagentd.enable = true; services.spice-webdavd.enable = true; 之后在终端执行 sudo nixos-rebuild switch 使得配置生效,但是需要注意,NixOS 的该命令并不会 修改服务的运行与停止状态,所以我们还需要手动重启使得服务启动,或者手动启动。 但在重启之前,请读者先执行以下步骤,在宿主机下添加用户服务,以确保在启动机器后自动挂载。 这里可以直接按照传统的方式设置服务,但是这不太符合 NixOS 的可复现理念,笔者这里介绍两种方法。 添加挂载宿主机文件夹服务 编辑 $HOME/.config/systemd/user/gvfs-mount-shared.service [Unit] Description=Mount GNOME Boxes Shared Folder via gvfs After=graphical-session.target [Service] ExecStart=/run/current-system/sw/bin/gio mount dav://127.0.0.1:9843/ Restart=on-failure [Install] WantedBy=default.target 之后在终端执行 systemctl --user enable gvfs-mount-shared.service 并重启机器,打开 nautilus 即可看到宿主机的挂载文件夹。 ...

September 2, 2025

Install archlinux

本文记录安装 archlinux 的过程,由于安装过程中所见皆是英文,过程记录不自禁也半洋半中,还请读者谅解。 test if your conputer is supported by linux Run the ubuntu live CD to test. make a start disk Advice ventoy. begin installing Set your BIOS to boot from your start disk. For nvidia GPU owner, you need to set nomodeset for booting options. mannual install network config Of course, the first thing you should do when you start arch install is to configure network. For myself, I choose to connect to Tsinghua Secure WIFI. ...

August 31, 2025

新的尝试

陌生人,你好,我是杜港枫,来自清华大学电子工程系,希望我的博客能对你有所帮助。 理论上这份博客不会被很多人看见,但是作为一份上网就可随时查阅的文档于我而讲也是不错的。

August 30, 2025