St
Appearance
Installing
environment.systemPackages = [ st ];
Official Patches
Can be applied by first downloading them from `st.suckless.org/patches` like so:
curl https://st.suckless.org/patches/rightclickpaste/st-rightclickpaste-0.8.2.diff >rightclicktopaste.diff
And then including them in an attribute override in your systemPackages declaration:
environment.systemPackages = [
(st.overrideAttrs (oldAttrs: rec {
patches = [
./rightclicktopaste.diff
];
}))
];
Unofficial Patches
Hosted on GitHub can be applied in a similar fashion using:
environment.systemPackages = [
(st.overrideAttrs (oldAttrs: rec {
patches = [
"${fetchFromGitHub { owner = "foo"; repo = "bar"; rev = "0.0.1"; sha256 = "111111111111111111111111111111111111111111111111111"; }}/some-custom-patch.diff"
];
}))
];
Patch Dependencies
Can be included with the `buildInputs` line like in the following ligature patch example:
curl https://st.suckless.org/patches/ligatures/0.8.3/st-ligatures-20200430-0.8.3.diff >ligatures.diff
environment.systemPackages = [
(st.overrideAttrs (oldAttrs: rec {
buildInputs = oldAttrs.buildInputs ++ [ pkgs.harfbuzz ];
patches = [
./ligatures.diff
];
}))
];