From c9507a9aa5ed3a448c20be64198ad394d63795f4 Mon Sep 17 00:00:00 2001 From: rsahwe Date: Thu, 19 Feb 2026 22:04:44 +0100 Subject: [PATCH] rizin: use xdg.enable and home.preferXdgDirectories rizin reads configuration from both $HOME/.rizinrc and from $XDG_CONFIG_HOME/rizin/rizinrc and the module now uses the relevant options for choosing between them. --- modules/programs/rizin.nix | 18 +++++++++++++----- .../programs/rizin/basic-configuration.nix | 2 +- tests/modules/programs/rizin/default.nix | 1 + .../programs/rizin/disabled-configuration.nix | 1 + tests/modules/programs/rizin/prefer-xdg.nix | 17 +++++++++++++++++ 5 files changed, 33 insertions(+), 6 deletions(-) create mode 100644 tests/modules/programs/rizin/prefer-xdg.nix diff --git a/modules/programs/rizin.nix b/modules/programs/rizin.nix index 43a6afab..595876ba 100644 --- a/modules/programs/rizin.nix +++ b/modules/programs/rizin.nix @@ -34,11 +34,19 @@ in }; }; - config = lib.mkIf cfg.enable { - home.packages = lib.mkIf (cfg.package != null) [ cfg.package ]; + config = + let + configFile = + if config.xdg.enable && config.home.preferXdgDirectories then + "${config.xdg.configHome}/rizin/rizinrc" + else + ".rizinrc"; + in + lib.mkIf cfg.enable { + home.packages = lib.mkIf (cfg.package != null) [ cfg.package ]; - xdg.configFile."rizin/rizinrc" = lib.mkIf (cfg.extraConfig != "") { - text = cfg.extraConfig; + home.file.${configFile} = lib.mkIf (cfg.extraConfig != "") { + text = cfg.extraConfig; + }; }; - }; } diff --git a/tests/modules/programs/rizin/basic-configuration.nix b/tests/modules/programs/rizin/basic-configuration.nix index ca740885..80d0a8e8 100644 --- a/tests/modules/programs/rizin/basic-configuration.nix +++ b/tests/modules/programs/rizin/basic-configuration.nix @@ -8,6 +8,6 @@ }; nmt.script = '' - assertFileExists "home-files/.config/rizin/rizinrc" + assertFileExists "home-files/.rizinrc" ''; } diff --git a/tests/modules/programs/rizin/default.nix b/tests/modules/programs/rizin/default.nix index 6358b458..c40fe998 100644 --- a/tests/modules/programs/rizin/default.nix +++ b/tests/modules/programs/rizin/default.nix @@ -1,4 +1,5 @@ { rizin-basic-configuration = ./basic-configuration.nix; rizin-disabled-configuration = ./disabled-configuration.nix; + rizin-prefer-xdg = ./prefer-xdg.nix; } diff --git a/tests/modules/programs/rizin/disabled-configuration.nix b/tests/modules/programs/rizin/disabled-configuration.nix index 822d56a8..149ad957 100644 --- a/tests/modules/programs/rizin/disabled-configuration.nix +++ b/tests/modules/programs/rizin/disabled-configuration.nix @@ -8,6 +8,7 @@ }; nmt.script = '' + assertPathNotExists "home-files/.rizinrc" assertPathNotExists "home-files/.config/rizin/rizinrc" ''; } diff --git a/tests/modules/programs/rizin/prefer-xdg.nix b/tests/modules/programs/rizin/prefer-xdg.nix new file mode 100644 index 00000000..bde44a31 --- /dev/null +++ b/tests/modules/programs/rizin/prefer-xdg.nix @@ -0,0 +1,17 @@ +{ + xdg.enable = true; + + home.preferXdgDirectories = true; + + programs.rizin = { + enable = true; + extraConfig = '' + e asm.bytes=true + e asm.bytes.space=true + ''; + }; + + nmt.script = '' + assertFileExists "home-files/.config/rizin/rizinrc" + ''; +}