You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在nixpkgs-unstable中配置HLS以禁用Ormolu/Fourmolu功能?

在nixpkgs-unstable中禁用HLS的ormolu和fourmolu功能

在旧版nixpkgs(2022版本)中,需要同时禁用cabal flag并手动覆盖插件依赖来实现效果,但在最新的nixpkgs-unstable中,配置方式已经简化:

直接通过override将对应的HLS插件设为null即可,Nix会自动处理依赖移除与功能禁用,无需再操作cabal flag。

配置代码示例

直接override写法

pkgs.haskellPackages.haskell-language-server.override {
  hls-ormolu-plugin = null;
  hls-fourmolu-plugin = null;
}

管道式写法(兼容原配置习惯)

lib.flip lib.pipe pkgs.haskellPackages.haskell-language-server [
  (drv: drv.override { hls-ormolu-plugin = null; })
  (drv: drv.override { hls-fourmolu-plugin = null; })
];

说明

新版nixpkgs对HLS的打包逻辑做了调整,所有插件都作为独立的可配置依赖项暴露,不再需要通过cabal flag来控制插件的启用状态。将插件设为null后,Nix会自动跳过该插件的构建,并从HLS的最终产物中移除相关功能。

内容的提问来源于stack exchange,提问作者Sridhar Ratnakumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 02:33:28