mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-26 23:54:01 +00:00
c911876981
Contour was broken for aarch64 in #253334, and completely broke in #344788 for all platforms. This removes the broken package, and adds a notice to remove broken packages in the future. aarch64 users have waited a year for this to be fixed, so I think we should lean to be more eager to remove in general, and then the fix can come when it is ready, instead of letting it block this. Resolves: #258515 Signed-off-by: Christina Sørensen <christina@cafkafk.com>
84 lines
1.9 KiB
Nix
84 lines
1.9 KiB
Nix
# This module manages the terminfo database
|
|
# and its integration in the system.
|
|
{ config, lib, pkgs, ... }:
|
|
{
|
|
|
|
options = with lib; {
|
|
environment.enableAllTerminfo = lib.mkOption {
|
|
default = false;
|
|
type = lib.types.bool;
|
|
description = ''
|
|
Whether to install all terminfo outputs
|
|
'';
|
|
};
|
|
|
|
security.sudo.keepTerminfo = lib.mkOption {
|
|
default = true;
|
|
type = lib.types.bool;
|
|
description = ''
|
|
Whether to preserve the `TERMINFO` and `TERMINFO_DIRS`
|
|
environment variables, for `root` and the `wheel` group.
|
|
'';
|
|
};
|
|
};
|
|
|
|
config = {
|
|
|
|
# This should not contain packages that are broken or can't build, since it
|
|
# will break this expression
|
|
#
|
|
# Currently broken packages:
|
|
# - contour
|
|
#
|
|
# can be generated with:
|
|
# lib.attrNames (lib.filterAttrs
|
|
# (_: drv: (builtins.tryEval (lib.isDerivation drv && drv ? terminfo)).value)
|
|
# pkgs)
|
|
environment.systemPackages = lib.mkIf config.environment.enableAllTerminfo (
|
|
map (x: x.terminfo) (
|
|
with pkgs.pkgsBuildBuild;
|
|
[
|
|
alacritty
|
|
foot
|
|
kitty
|
|
mtm
|
|
rio
|
|
rxvt-unicode-unwrapped
|
|
rxvt-unicode-unwrapped-emoji
|
|
st
|
|
termite
|
|
tmux
|
|
wezterm
|
|
yaft
|
|
]
|
|
)
|
|
);
|
|
|
|
environment.pathsToLink = [
|
|
"/share/terminfo"
|
|
];
|
|
|
|
environment.etc.terminfo = {
|
|
source = "${config.system.path}/share/terminfo";
|
|
};
|
|
|
|
environment.profileRelativeSessionVariables = {
|
|
TERMINFO_DIRS = [ "/share/terminfo" ];
|
|
};
|
|
|
|
environment.extraInit = ''
|
|
|
|
# reset TERM with new TERMINFO available (if any)
|
|
export TERM=$TERM
|
|
'';
|
|
|
|
security.sudo.extraConfig = lib.mkIf config.security.sudo.keepTerminfo ''
|
|
|
|
# Keep terminfo database for root and %wheel.
|
|
Defaults:root,%wheel env_keep+=TERMINFO_DIRS
|
|
Defaults:root,%wheel env_keep+=TERMINFO
|
|
'';
|
|
|
|
};
|
|
}
|