diff options
| author | Martino Fontana <tinozzo123@gmail.com> | 2025-10-11 17:07:03 +0200 |
|---|---|---|
| committer | Martino Fontana <tinozzo123@gmail.com> | 2025-10-11 17:09:23 +0200 |
| commit | 5a23a56feb82ea3d9de6c30455bb245bcb321087 (patch) | |
| tree | 6c3bf6f5a55afdd8c3940c25ec6d9b56779b8204 /pkgs/development/python-modules/python-openstackclient/git@git.tavy.me:nixos | |
| parent | ed4dbafb102a5ae1138f872ba00e6430a03c6318 (diff) | |
makeBinaryWrapper: If prefix/suffix already exists, remove the original
This is mostly meant for `wrapQtApps`, which is why it's implemented only for `makeBinaryWrapper`.
Qt apps are often launched on top of each other, creating a problem: many of the paths in `XDG_DATA_PATHS`, `QT_PLUGIN_PATH` and `NIXPKGS_QT6_QML_IMPORT_PATH` become duplicated, and these envars are already massive by themselves without this problem.
Starting KDE Plasma, and most paths are seen twice. Open Konsole, and it becomes three times. If it was opened with CTRL+ALT+T, four times.
Why is this a problem?
- The more these paths are duplicated, the slower it becomes to copy the envars, and for the programs to parse them.
- Some programs are buggy and malfunction if the environment variable block is too big. For instance, the EA App (via Wine) is unable to launch games if there are more than 32768 characters in the block, a number easily surpassable due to this problem.
- It's ugly typing `env` and seeing this massive wall of duplicated paths.
Because there is no reason for the same path to appear multiple times, this change removes a path if it's already in the list, adding it back to the start or the end.
Diffstat (limited to 'pkgs/development/python-modules/python-openstackclient/git@git.tavy.me:nixos')
0 files changed, 0 insertions, 0 deletions
