在nix派生中覆盖脚本

时间:2017-01-04 14:05:20

标签: nix nixos

有没有办法在现有派生中覆盖脚本和/或配置而无需重新编译整个包?

我想创建一个新版本的gnome-session,修改后的$out/share/gnome-session/sessions/gnome.session已修改。使用overridePackage我可以更改preFixup阶段,但这会导致重新编译整个gnome-session包。

1 个答案:

答案 0 :(得分:0)

问题的一个简单解决方案是在没有任何来源的情况下创建新的派生。诀窍是创建基本派生中每个文件和目录的链接,除了需要修改的任何文件。这些文件根据需要明确处理。

下面的代码段显示了如何使用xmonad而不是gnome-shell创建新的gnome-session。

public void goBack(View view) {
    TableLayout parent = (TableLayout) findViewById(R.id.activity_main);
    RelativeLayout child = (RelativeLayout) findViewById(R.id.activity_displayMessage);
    parent.removeView(child);
}