diff --git a/home-manager/modules/nnn/default.nix b/home-manager/modules/nnn/default.nix new file mode 100644 index 0000000..0f0d3ab --- /dev/null +++ b/home-manager/modules/nnn/default.nix @@ -0,0 +1,57 @@ +{ pkgs, config, lib, ... }: +with lib; +let + cfg = config.eboskma.programs.nnn; +in +{ + options.eboskma.programs.nnn = { enable = mkEnableOption "nnn"; }; + + config = mkIf cfg.enable { + programs.nnn = { + enable = true; + package = (pkgs.nnn.overrideAttrs + (_prevAttrs: { + version = "unstable-2023-10-08"; + src = pkgs.fetchFromGitHub + { + owner = "jarun"; + repo = "nnn"; + rev = "7f63bef4d6c9f70b99a4c98435c9c0a68e05be44"; + sha256 = "B9WRQW4wbs3+lJ9ACFheTaO+0+G/r67yJZJJPMDIQXI="; + }; + }) + ).override + { + withNerdIcons = true; + extraMakeFlags = [ "O_COLEMAK=1" "O_GITSTATUS=1" ]; + }; + plugins = { + src = (pkgs.fetchFromGitHub { + owner = "jarun"; + repo = "nnn"; + rev = "7f63bef4d6c9f70b99a4c98435c9c0a68e05be44"; + sha256 = "B9WRQW4wbs3+lJ9ACFheTaO+0+G/r67yJZJJPMDIQXI="; + }) + "/plugins"; + + mappings = { + c = "fzcd"; + f = "finder"; + V = "imgview"; + }; + }; + + extraPackages = with pkgs; [ + atool + ffmpegthumbnailer + html2text + imv + mediainfo + p7zip + pbzip2 + pigz + sourceHighlight + zip + ]; + }; + }; +} diff --git a/users/erwin/home.nix b/users/erwin/home.nix index b34334e..cd1111f 100644 --- a/users/erwin/home.nix +++ b/users/erwin/home.nix @@ -72,6 +72,7 @@ in gpg.enable = true; mpd.enable = true; neovim.enable = true; + nnn.enable = true; nushell.enable = true; obs-studio.enable = true; rclone = {