A couple of options come to mind.
1. The Colour Look Up Table (CLUT) module.
In Bruce Williams' YouYube video tutorial: darktable ep 052 - The Color Lookup Table module he uses a CLUT to alter the colours on a Item of clothing a model is wearing. The darktable 3.0 manual states:
To modify the color mapping, you can change source as well as target colors.
The main use case is to change the target colors. You start with an appropriate palette of source colors (either from the presets menu or from a style you download). You can then change lightness (L), green-red (a), blue-yellow (b), or saturation (C) of the patches' target values via sliders.
To change the source color of a patch you select a new color from your image by using the color picker, and Shift+click on the patch you want to replace. You can switch between point and area sampling mode from within the global color picker panel (see Section 3.3.6, “Global color picker”).
To reset a patch, double-click it. Right-click a patch to delete it. Shift+click on empty space to add a new patch (with the currently picked color as source color).
2. Use Gimp.
It is possible to develop your Raw file in darktable then finish the edit in Gimp. You can export a high quality (32-bit float tiff file) from darktable and then open it in Gimp. Alternatively, opening the RAW in Gimp will open an instance of darktable which will apply any edits previously made to the RAW file and allow further changes to be made. When you close darktable the image is imported directly into Gimp in high quality.The Gimp 2.10 manual states:
1.3.3. Adjusting Hue and Saturation
In our experience, if your image has a color cast---too much red, too much blue, etc---the easiest way to correct it is to use the Levels tool, adjusting levels individually on the red, green, and blue channels. If this doesn't work for you, it might be worth your while to try the Color Balance tool or the Curves tool, but these are much more difficult to use effectively. (They are very good for creating certain types of special effects, though.)
Which is more or less a long winded method of achieving what kahovius said in his answer but without the ease of using darktable's parametric maskng.