diff --git a/user/app/ranger/ranger.nix b/user/app/ranger/ranger.nix index 9fb478fb..c69ff03d 100644 --- a/user/app/ranger/ranger.nix +++ b/user/app/ranger/ranger.nix @@ -10,9 +10,12 @@ let myCbxScript = '' ''; in { + imports = [ ../../pkgs/ranger.nix ]; + home.packages = with pkgs; [ ranger xdragon + highlight (pkgs.writeScriptBin "cbx" myCbxScript) ]; home.file.".config/ranger/rc.conf".source = ./rc.conf; diff --git a/user/app/ranger/rifle.conf b/user/app/ranger/rifle.conf index 3eef9a95..fec75b8b 100644 --- a/user/app/ranger/rifle.conf +++ b/user/app/ranger/rifle.conf @@ -130,7 +130,7 @@ ext cbz, has zathura, X, flag f = zathura -- "$@" #------------------------------------------- # Images #------------------------------------------- -mime ^image, has nsxiv, X, flag f = nsxiv "$@" +mime ^image, has krita, X, flag f = krita "$@" mime ^image/svg, has inkscape, X, flag f = inkscape "$@" #------------------------------------------- diff --git a/user/pkgs/ranger.nix b/user/pkgs/ranger.nix new file mode 100644 index 00000000..c10b2ccd --- /dev/null +++ b/user/pkgs/ranger.nix @@ -0,0 +1,23 @@ +{ lib, pkgs, ... }: + +{ + nixpkgs.overlays = [ + (self: super: + { + ranger = super.ranger.overrideAttrs (oldAttrs: rec { + preConfigure = '' + substituteInPlace ranger/__init__.py \ + --replace "DEFAULT_PAGER = 'less'" "DEFAULT_PAGER = '${lib.getBin pkgs.less}/bin/less'" + + # give image previews out of the box when building with w3m + substituteInPlace ranger/config/rc.conf \ + --replace "set preview_images false" "set preview_images true" + + substituteInPlace ranger/ext/img_display.py \ + --replace "self.image_id -= 1" "self.image_id = max(0, self.image_id - 1)" + ''; + }); + } + ) + ]; +}