eepm icon indicating copy to clipboard operation
eepm copied to clipboard

epm play wps-office-cn: update configuration scripts and fix desktop file categories

Open CatSema opened this issue 2 months ago • 6 comments

CatSema avatar Oct 22 '25 14:10 CatSema

@vitlav Если правильно все понял, то отправил правки.

CatSema avatar Oct 23 '25 16:10 CatSema

Еще заметил, что в скрипте nixpkgs (https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/wp/wpsoffice-cn/package.nix) Они делают так для libmysqlclient, вместо игнорирования:

# libmysqlclient dependency
patchelf --replace-needed libmysqlclient.so.18 libmysqlclient.so $out/opt/kingsoft/wps-office/office6/libFontWatermark.so
patchelf --add-rpath ${libmysqlclient}/lib/mariadb $out/opt/kingsoft/wps-office/office6/libFontWatermark.so

И честно говоря не понимаю, как поступить в итоге (

CatSema avatar Oct 23 '25 20:10 CatSema

patchelf --replace-needed libmysqlclient.so.18 libmysqlclient.so $out/opt/kingsoft/wps-office/office6/libFontWatermark.so

Это заменит libmysqlclient.so.18 на libmysqlclient.so

patchelf --add-rpath ${libmysqlclient}/lib/mariadb $out/opt/kingsoft/wps-office/office6/libFontWatermark.so

Эта строчка говорит искать библиотеки в ${libmysqlclient}/lib/mariadb по видимому у них libmysqlclient.so лежит там, вот и замена через patchelf, насколько такое нужно другим дистрибутивам не знаю, скорее всего ни насколько

Boria138 avatar Oct 24 '25 04:10 Boria138

@vitlav Хочу уточнить уже наверняка, то до конца не могу понять как нужно разбить на функции:

Вариант 1: одна функция добавляет секцию [6.0], если её нет, вторая добавляет строки AppComponentMode и AppComponentModeInstall, если их нет; создание директории и пустого файла остаётся снаружи.

Вариант 2: одна функция отвечает за создание директории и пустого файла, вторая добавляет секцию [6.0] и обе строки; обе функции вызываются всегда.

Какой вариант правильный, или нужно по-другому?

CatSema avatar Oct 31 '25 14:10 CatSema

@vitlav 🙃

CatSema avatar Nov 07 '25 21:11 CatSema

@vitlav 🙃

Я же отметил две одинаковые конструкции в коде. Раз они одинаковые, надо сделать функцию и вызвать её два раза с разными параметрами, AppComponentMode и AppComponentModeInstall.

vitlav avatar Nov 09 '25 15:11 vitlav

Вроде как готово. AppComponentMode и AppComponentModeInstall объединил в одну функцию, чуть переделал добавление "[6.0]", так как оно нужно лишь при создании конфига. И убрал ограничение на проверку.

CatSema avatar Nov 15 '25 17:11 CatSema