File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -96,6 +96,30 @@ runTests "direnv-test" [
9696 ( notIsFile "${ getDotdir wrapper } /lib/nix-direnv.sh" )
9797 ]
9898 ) )
99+ ( runTest "if mise is enabled then lib/mise.sh should exists" (
100+ let
101+ wrapper = self . wrappers . direnv . wrap {
102+ inherit pkgs ;
103+ mise . enable = true ;
104+ } ;
105+ in
106+ [
107+ ( isDirectory ( getDotdir wrapper ) )
108+ ( isFile "${ getDotdir wrapper } /lib/mise.sh" )
109+ ]
110+ ) )
111+ ( runTest "if mise is disabled then lib/mise.sh should not exist" (
112+ let
113+ wrapper = self . wrappers . direnv . wrap {
114+ inherit pkgs ;
115+ mise . enable = false ;
116+ } ;
117+ in
118+ [
119+ ( isDirectory ( getDotdir wrapper ) )
120+ ( notIsFile "${ getDotdir wrapper } /lib/mise.sh" )
121+ ]
122+ ) )
99123 ( runTest "if a lib-script is set then it should be generated" (
100124 let
101125 libScriptFile = "${ getDotdir wrapper } /lib/foo.sh" ;
Original file line number Diff line number Diff line change 66 ...
77} :
88let
9- cfg = config ;
10-
119 tomlFmt = pkgs . formats . toml { } ;
1210 direnvToml = tomlFmt . generate "direnv.toml" config . extraConfig ;
1311 direnvDotdir = "${ config . wrapper . ${ config . outputName } } /${ config . configDirname } " ;
3028 enable = lib . mkEnableOption "nix-direnv integration" ;
3129 package = lib . mkPackageOption pkgs "nix-direnv" { } ;
3230 } ;
31+ mise = {
32+ enable = lib . mkEnableOption "mise integration" ;
33+ package = lib . mkPackageOption pkgs "mise" { } ;
34+ } ;
3335 lib = lib . mkOption {
3436 type = with lib . types ; attrsOf lines ;
3537 description = ''
6264 # DIRENV_CONFIG = "${placeholder "out"}/${config.configDirname}";
6365 } ;
6466 passthru . DIRENV_CONFIG = direnvDotdir ;
65- lib . "nix-direnv.sh" =
66- lib . mkIf ( config . nix-direnv . enable ) "source ${ cfg . nix-direnv . package } /share/nix-direnv/direnvrc" ;
67+ lib = {
68+ "nix-direnv.sh" = lib . mkIf config . nix-direnv . enable ''
69+ source ${ config . nix-direnv . package } /share/nix-direnv/direnvRc
70+ '' ;
71+ "mise.sh" = lib . mkIf config . mise . enable ''
72+ eval "$(${ lib . getExe config . mise . package } direnv activate)"
73+ '' ;
74+ } ;
6775 extraConfig = {
6876 global = lib . mkIf ( config . silent ) {
6977 log_format = "-" ;
You can’t perform that action at this time.
0 commit comments