home: add terminal

This module abstracts away the color configuration.
This commit is contained in:
Bruno BELANYI 2021-04-05 00:54:28 +00:00
parent b983136080
commit a4f3d67393
2 changed files with 48 additions and 0 deletions

View file

@ -12,6 +12,7 @@
./pager.nix
./secrets # Home-manager specific secrets
./ssh.nix
./terminal
./tmux.nix
./vim
./wm

47
home/terminal/default.nix Normal file
View file

@ -0,0 +1,47 @@
{ lib, ... }:
let
mkColorOption = with lib; description: default: mkOption {
inherit description default;
example = "#abcdef";
type = types.strMatching "#[0-9a-f]{6}";
};
in
{
imports = [
];
options.my.home = with lib; {
terminal = {
colors = {
background = mkColorOption "Background color" "#161616";
foreground = mkColorOption "Foreground color" "#ffffff";
foregroundBold = mkColorOption "Foreground bold color" "#ffffff";
cursor = mkColorOption "Cursor color" "#ffffff";
black = mkColorOption "Black" "#222222";
blackBold = mkColorOption "Black bold" "#666666";
red = mkColorOption "Red" "#e84f4f";
redBold = mkColorOption "Red bold" "#d23d3d";
green = mkColorOption "Green" "#b7ce42";
greenBold = mkColorOption "Green bold" "#bde077";
yellow = mkColorOption "Yellow" "#fea63c";
yellowBold = mkColorOption "Yellow bold" "#ffe863";
blue = mkColorOption "Blue" "#66aabb";
blueBold = mkColorOption "Blue bold" "#aaccbb";
magenta = mkColorOption "Magenta" "#b7416e";
magentaBold = mkColorOption "Magenta bold" "#e16a98";
cyan = mkColorOption "Cyan" "#6d878d";
cyanBold = mkColorOption "Cyan bold" "#42717b";
white = mkColorOption "White" "#dddddd";
whiteBold = mkColorOption "White bold" "#cccccc";
};
};
};
}