An implementation:
Ja, könnte man optional auswählbar machen. Wäre natürlich mit etwas Arbeit verbunden für den User...
Du kannst ja Standardwerte vorgeben, von denen du denkst, dass sie in den meisten Fällen laufen. Und nur wo der User was anderes wünscht, muss ers ändern.
Sorry, dass ich das so sage, aber so etwas hartzukodieren finde ich ziemlich interopatibilitätsfeindlich und das ist auf einem Multikulti-
OS, das bei jedem anders funktioniert, eine ziemliche Todsünde. Ich drück das so drastisch nicht aus, weil ich dich irgendwie beleidigen will oder so, sondern es ist wirklich so, dass Setup A potenziell völlig anders aussieht als Setup B. Es gibt nichts, wovon du annehmen kannst, dass es immer vorhanden ist, außer vielleicht die libc, POSIX und bei grafischen Oberflächen höchstens noch XDG. Du musst nicht für alle Fälle eine Lösung bieten, das ist klar, wird auch selten erwartet. Aber es kommt sehr negativ rüber, wenn man es dann nicht einmal selbst anpassen kann.
Also ernsthaft: Mach es irgendwie änderbar, wenn auch nur über eine sonstwo versteckte Konfigdatei, oder eben über einen externen Mechanismus.