mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-02-07 06:19:00 +00:00
home-manager/programs/neovide: init
This commit is contained in:
parent
c4af69e24d
commit
e5ace891b0
@ -1,6 +1,7 @@
|
||||
{
|
||||
imports = [
|
||||
./files/mutable-files.nix
|
||||
./programs/neovide.nix
|
||||
./programs/pipewire.nix
|
||||
./programs/pop-launcher.nix
|
||||
./services/archivebox.nix
|
||||
|
51
modules/home-manager/programs/neovide.nix
Normal file
51
modules/home-manager/programs/neovide.nix
Normal file
@ -0,0 +1,51 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.programs.neovide;
|
||||
|
||||
settingsFormat = pkgs.formats.toml { };
|
||||
in
|
||||
{
|
||||
options.programs.neovide = {
|
||||
enable = lib.mkEnableOption "Neovide, a graphical interface for Neovim";
|
||||
|
||||
package = lib.mkPackageOption pkgs "neovide" { };
|
||||
|
||||
settings = lib.mkOption {
|
||||
type = settingsFormat.type;
|
||||
description = ''
|
||||
The settings to be generated at
|
||||
{file}`$XDG_CONFIG_HOME/neovide/config.toml`.
|
||||
'';
|
||||
default = { };
|
||||
example = {
|
||||
maximized = true;
|
||||
|
||||
font = {
|
||||
normal = [ "MonoLisa Nerd Font" ];
|
||||
size = 18;
|
||||
features.MonoLisa = [
|
||||
"+ss01"
|
||||
"+ss07"
|
||||
"+ss11"
|
||||
"-calt"
|
||||
"+ss09"
|
||||
"+ss02"
|
||||
"+ss14"
|
||||
"+ss16"
|
||||
"+ss17"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.packages = [ cfg.package ];
|
||||
|
||||
xdg.configFile."neovide/config.toml".source =
|
||||
lib.mkIf
|
||||
(cfg.settings != { })
|
||||
(settingsFormat.generate "home-manager-neovide-settings" cfg.settings);
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue
Block a user