Fcitx5输入法兼容性配置杂谈
本文包括:Arch Linux上KDE Wayland环境下Fcitx5输入法的兼容性配置,包括但不限于:Flatpak应用,Qt应用(如wemeet),Electron应用(如新QQ)。 Wayland基础配置(共通)本段更新于2026/4/21,此时ArchWiki已更新,主要修改了关于GTK_IM_MODULE与QT_IM_MODULE的设置问题。 我相信没人还在用X11了吧?(笑) Wayland下的fcitx5是基本开箱即用的,本段的配置是用于正常使用XWayland应用程序的。 为了支持GTK: ~/.config/gtk-3.0/settings.ini12[Settings]gtk-im-module = fcitx 请勿设置GTK_IM_MODULE环境变量。 为了支持Qt,设置以下环境变量: Qt5与非KDE桌面也需要这些环境变量。 /etc/environment12QT_IM_MODULES=wayland;fcitxQT_IM_MODULE=fcitx 为了支持其他的XWayland应用程序: /etc/environment1XMODIFIERS...
Ubuntu桌面因不支持EAP_IDENTITY而无法连接IKEv2 VPN的解决方法
省流:把strongSwan装全。 前情提要在Gnome桌面下,默认的图形配置界面里只支持OpenVPN/PPTP/WireGuard VPN,而无法配置基于IPsec/IKEv2的VPN(说来也奇怪,Windows下反而是内置了IKEv2和PPTP/L2TP等的客户端,而OpenVPN之类的才要额外客户端)。为了支持IKEv2,我们需要使用的是strongSwan,最重要的是其图形配置前端network-manager-strongswan。 1sudo apt install network-manager-strongswan 但是装完之后,在证书等配置都完全正常的情况下,使用EAP-MSCHAPv2认证时会失败,报错如下: 12314[IKE] server requested EAP_IDENTITY (id 0x00), sending 'username'14[IKE] EAP_IDENTITY not supported, sending EAP_NAK15[IKE] received EAP_FAILURE, EAP authenticati...
AvaloniaUI TextBox无法在setter中被清空的解决办法
先上代码: 1234567891011121314151617private string _inputText = "";public string InputText{ get => _inputText; set { string endless = value.TrimEnd('\r', '\n'); if (endless.Length < value.Length) { this.RaiseAndSetIfChanged(ref _inputText, ""); } else { this.RaiseAndSetIfChanged(ref _inputText, value); } }} 在这段C#代码中,InputText访问器使...
TacZ枪包在服务端上的特殊安装要求
TacZ枪包在新版客户端上的安装大家都明白,直接把zip包丢到版本文件夹底下的tacz文件夹里面就可以了。然而,这一举措(放在服务器根目录下的tacz文件夹中)在某些服务端上是不可行的,会造成枪包无法加载(/tacz reload根本读不到)。 在放置好枪包后第一次启动服务器之后,位于服务器根目录下的tacz文件夹中所有枪包均会被移动到一个同样名为tacz的文件夹中,而原文件夹中会多出一份名为tacz-pre.toml的文件,其内容如下: 1234[gunpack] #When enabled, the mod will not try to overwrite the default pack under .minecraft/tacz #Since 1.0.4, the overwriting will only run when you start client or a dedicated server DefaultPackDebug = false 将DefaultPackDebug的值改为true之后,枪包就不会被移动了。此时将被挪走的枪包挪回来,...
iStoreOS防火墙放行特定IPv6流量进入内网
因为爱快用的太糟心,我将家里的主网关换成了iStoreOS的系统,但是两个系统的操作逻辑不大一样,导致很多配置的迁移遇到了比较大的阻力。几个例子: IPv6解析与通行默认阻断,设置藏得很深 自带的DDNS很容易出问题 内网DHCP设置不在网络-DHCP/DNS而是在网络-接口 …… 这里要详细展开的是关于iStoreOS(其实带LuCI的OpenWRT都一样)的防火墙如何有限地放行IPv6流量。 iStoreOS版本:24.10.2-2025070410 为什么要放行IPv6流量?默认情况下,对于外网主动访问的普通流量,OpenWRT的策略是直接阻断,这样能够保证内网中具有公网IP的设备(下文特指IPv6,毕竟国内没几个人家里内网能全是公网IPv4的吧……)不会在你没允许的情况下被外网访问。 然而,如果你内网有需要对外开放的应用,比如NAS或者博客,那么放行IPv6就相当的有必要,因为许多网关完全不支持IPv6栈的端口转发(不过iStoreOS倒是支持),毕竟公网v6唾手可得。更重要的是,这是一个学习OpenWRT防火墙策略与配置的大好机会。 位置侧栏:网络-防火墙 关键配...
Ubuntu netplan配置固定接口
我不知道各位有没有碰到过类似的问题:你刚刚把你的Ubuntu计算机加好新硬件,插电开机(冷启动),然后SSH一登,Connection Timeout,回到本地一看,netplan给你写了份新的配置文件导致IP不同…… 究其原因,一个比较有说服力的解释是某些玄学的网口卸载逻辑导致冷启动时系统误以为这个接口已经有网口占着了,然后就自己创建了一份新的配置。实测下来这种情况基本上只在Ubuntu Desktop上出现,因为ubuntu-desktop才有这么一套自动配置机制。 想要解决其实相当简单,溜一遍参考文档,找到了一个好东西:match键。通过这个玩意儿,我们可以直接将一份netplan配置绑定到指定MAC地址的设备上(当然也可以通过设备名绑定,但是那样不大符合我们的初衷)。 例如,我的netplan配置文件(位于/etc/netplan下面的某个yaml文件)是这样的: 123456789101112network: version: 2 renderer: NetworkManager ethernets: enp2s0: match: ...
强制重新安装Windows包管理器winget
省流1Add-AppxPackage {Microsoft.DesktopAppInstaller的appx安装包路径} -ForceApplicationShutdown -ForceUpdateFromAnyVersion 前情提要新买了一块1TB的系统盘,用傲梅分区助手做了一下系统迁移,进系统一看,发现Microsoft Store的应用怎么也没法安装了。 使用Add-AppxPackage呢?提示:找不到指定卷UUID。 反手一个查注册表,得,系统盘UUID被改过了。我是把系统分区和软件分区放在同一块物理盘上的,这两个分区在系统迁移之后UUID全变了。 手动改回来呢?重启完之后没有改善。按照Deepseek的指示删掉了整个记录UUID的项,重启,这下应用安装程序也不报错误码了,直接跟我说解析应用包时出错。 还能怎么办?重装系统解决99%的问题,直接保留文件重装。 重装完之后,在Microsoft Store里倒是可以正常安装了,但是应用安装程序还是照旧。 尝试重装时发生的问题既然现在能装UWP应用了,说明Appx系统算是修好了,问题就单纯出在应用安装程...
Linux安装Stable Diffusion WebUI为systemd服务
本文章介绍了在Ubuntu上使用Conda环境部署Stable Diffusion WebUI,并将其部署为systemd系统服务的方法。与此同时,还包含这些操作的要点。 Stable Diffusion WebUI(简称SD WebUI,下文简称SD)的本地部署一直是很热的话题,但是在Linux上的服务端部署一直是一个难题。不像在Windows上,我们有秋叶大佬开发的绘世启动器一键懒人包,在Linux上我们必须手动下载Stable Diffusion WebUI并进行配置。 为什么要用Linux?首先显而易见的是,Linux下SD的性能浪费更少。我之前使用秋叶的整合包时,网页面板每次都需要缓冲半分钟才能打开,而使用Linux时几乎是秒开。在绘图性能上也是Linux略优,这在许多人的测试中均有体现。 其次,SD陷在CUDA生态里面,在Windows上使用A卡和I卡运行SD是使用DirectML兼容层转接的,存在比较明显的性能损耗。而在Linux上,A卡可以使用ROCm来运行SD,可以满血运行。 第三,SD的启动相当耗时,并且由于会预分配显存(将模型一次性搬进显存)导致显存爆满,显...
让systemd直接管辖aria2服务
这篇省不了流,省了你也不知道怎么解决。 前段时间开始玩Ubuntu当服务器用,用apt装了个Aria2,又装了个AriaNG拿来挂下载。 然后问题来了,原版Aria2单文件下载线程数限死在16线程,相比Motrix自带的修改版Aria2慢如狗。然后就是扒拉下来Aria2源文件改了自己编译,又因为技术力不够摸不清咋用make编译…… 最后找到了这个才解决:P3TERX/Aria2-Pro-Core: Aria2 static binaries for GNU/Linux with some powerful feature patches. | 破解无限线程 防掉线程优化 静态编译 二进制文件 增强版 把编译好的文件丢到/usr/bin下面,顺带按照教程放了个SysV脚本到/etc/init.d/下面让它自己生成服务配置文件。 然后问题又双叒叕来了,这个Aria2三天两头崩溃,systemctl就给你挂个running(exited)也不重启,手动重启服务又连不上,只能先stop再run,烦死个人。 所以最后就决定换成原生systemctl服务,直接管辖aria2c。 方案以下代码...
MC开服器开发指南-区分服务端核心类型
简而言之,就是检查.jar文件内的META-INF/MANIFEST.MF文件,其中的Main-Class字段具有每种核心的特征。 引言在开发开服器时,区分服务端类型是很重要的,因为单凭文件扩展名无法判断用户提供的.jar文件究竟是什么,例如反人类的Forge核心,永远不给下载核心本体,只让下载安装器。除此之外,如果客户端核心滥竽充数,也会导致某些奇怪的问题。 然而,有一个办法可以大致上区分各种服务器核心,那就是检查.jar文件内的META-INF/MANIFEST.MF文件。 MANIFEST.MF文件是Java平台的一种规范,用于定义和管理Java应用程序的组件、库和模块。它是JAR文件中的一个纯文本文件,遵循特定的格式规范。 在JAR文件中,MANIFEST.MF文件必须位于META-INF目录下,且一个JAR文件中只能有一个MANIFEST.MF文件。 在MANIFEST.MF文件中,Main-Class字段向Java虚拟机指明了该文件的主类,以使jar文件能够正常执行。在较新的MC版本中都会具有Main-Class字段(目前已知的只有远古版本没有)。由于不同的核心都会...
