{ config, pkgs, lib, ... }: let cfg = config.ctucxConfig.programs.micro; in { options = { ctucxConfig.programs.micro = { enable = lib.mkEnableOption "micro"; }; }; config = lib.mkIf cfg.enable { home-manager.users.katja = { programs.micro = { enable = true; settings = { "*.nix".tabstospaces = true; "*.nix".tabmovement = true; "*.nix".tabsize = 2; "*.nim".tabstospaces = true; "*.nim".tabmovement = true; "*.nim".tabsize = 2; scrollbar = true; eofnewline = false; wordwrap = true; softwrap = true; }; }; xdg = lib.mkIf pkgs.stdenv.isLinux { desktopEntries = { micro = { name = "micro"; settings = { NoDisplay = "true"; }; }; }; }; home = { sessionVariables.EDITOR = "micro"; shellAliases.nano = "micro"; }; }; }; }