The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск Linux-дистрибутива CRUX 3.6, opennews (??), 09-Дек-20, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


42. "Выпуск Linux-дистрибутива CRUX 3.6"  +/
Сообщение от Аноним (42), 10-Дек-20, 14:01 
> 2. Порты FreeBSD сделаны на базе Makefile, и при просмотре того же
> pkgsrc у меня лично возникали касательно наличия в именах файлов символов,
> отличных от допустимых posix (латинских букв, цифр, минус, подчёркивание, точка) - например пробелом. 99%, что и в FreeBSD при желании спортировать приложении, содержащее в имени файла, скажем, пробел, могут возникнуть проблемы

А можно было не додумывать в лучших местных традициях "как оно там, в этих бздах, должно быть" , а посмотреть тот же porters handbook (pkg-plist):


/usr/local/etc/openal-soft/hrtf/Default HRTF.mhr

https://svnweb.freebsd.org/ports/head/audio/openal-soft/pkg-...
%%ETCDIR%%/hrtf/Default HRTF.mhr

и никакого "доп.обработчика".
...
https://www.freshports.org/devel/cmake/

/usr/local/share/cmake/Help/generator/Green Hills MULTI.rst
/usr/local/share/cmake/Help/generator/MSYS Makefiles.rst
/usr/local/share/cmake/Help/generator/MinGW Makefiles.rst
/usr/local/share/cmake/Help/generator/NMake Makefiles JOM.rst
/usr/local/share/cmake/Help/generator/NMake Makefiles.rst

Ответить | Правка | Наверх | Cообщить модератору

45. "Выпуск Linux-дистрибутива CRUX 3.6"  +/
Сообщение от Аноним (45), 10-Дек-20, 18:34 
> А можно было не додумывать

Пару лет назад интересовался pkgsrc, привлекала переносимость. Думал свои пакеты оформлять в виде портов pkgsrc. Заметил, что в некоторых портах в Makefile задаётся список каких-либо файлов, где пробел - разделитель имён файлов, соответственно имя файла не может содержать пробелы. Копнул глубже.

Попробовал создать info-файл с пробелом в имени, обнаружил проблемы. В идеологии pkgsrc список info-файлов дописывался в конец install-файла в формате
> usr/pkg/info/file.info 0644

(кроме 0644 было ещё что-то, уже не помню, для примера хватит и этого). Соответственно, если в имя файла добавлялся пробел, условно говоря:
> usr/pkg/info/mega file.info 0644

то он искал info-файл с именем "usr/pkg/info/mega" и при установке пытался добавлять в /usr/pkg/info/dir его.

Знаю, что никто не будет создавать info-файлы с пробелами, но, по ощущениям от чтения портов pkgsrc, проблемы могут быть и в других местах. Если порт просто устанавливает файл с пробелом с правами доступа по умолчанию, то проблем нет. Но подобного рода недоработка в ядре системы управления пакетами даёт понять, что система сделана на отвали и доверять ей не стоит.

Ответить | Правка | Наверх | Cообщить модератору

48. "Выпуск Linux-дистрибутива CRUX 3.6"  +/
Сообщение от анонн (ok), 10-Дек-20, 20:25 
>> А можно было не додумывать
> Пару лет назад интересовался pkgsrc, привлекала переносимость.

...
> (кроме 0644 было ещё что-то, уже не помню, для примера хватит и
> этого). Соответственно, если в имя файла добавлялся пробел, условно говоря:
>> usr/pkg/info/mega file.info 0644
> то он искал info-файл с именем "usr/pkg/info/mega" и при установке пытался добавлять
> в /usr/pkg/info/dir его.

...
> умолчанию, то проблем нет. Но подобного рода недоработка в ядре системы
> управления пакетами даёт понять, что система сделана на отвали и доверять
> ей не стоит.

Да ... придумывать, "как оно наверняка во фре работает" здесь уже освященная годами традиция.


# в качестве примера взят пустой пакет qt-doc и добавлен файл от балды
% cat /usr/ports/own/misc/qt5-doc/pkg-plist
@(nobody,nobody,0644) %%QT_DOCDIR%%/foo bar.html
% make package
...
# echo dummy > "/tmp/usr/ports/own/misc/qt5-doc/work/stage/usr/local/share/doc/qt5/foo bar.html"

# make deinstall install package clean
...
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages
===>   Registering installation for qt5-doc-5.15.0
Installing qt5-doc-5.15.0...
===>  Building package for qt5-doc-5.15.0
===>  Cleaning for qt5-doc-5.15.0

ll /usr/local/share/doc/qt5/foo\ bar.html
-rw-r--r--  1 nobody  nobody     6B 10 Dec. 20:14 /usr/local/share/doc/qt5/foo bar.html

Ответить | Правка | Наверх | Cообщить модератору

52. "Выпуск Linux-дистрибутива CRUX 3.6"  +1 +/
Сообщение от www2 (??), 11-Дек-20, 11:59 
А если перед пробелами обратную косую черту ставить, будет работать?

А порты FreeBSD, OpenBSD, dport'ы DragonFly BSD не имеют подобных проблем?

>но, по ощущениям от чтения портов pkgsrc, проблемы могут быть и в других местах.

Могут быть, а могут и не быть.

>подобного рода недоработка в ядре системы управления пакетами даёт понять, что система сделана на отвали и доверять ей не стоит.

Хм. Если говорить о доверии, то на что вообще можно расчитывать, скачивая программы и запуская их не глядя? Если уж на то пошло, то многие программы не требуют прав root и их вроде как можно ставить из pkgsrc под обычным пользователем.

Ответить | Правка | К родителю #45 | Наверх | Cообщить модератору

55. "Выпуск Linux-дистрибутива CRUX 3.6"  +/
Сообщение от Аноним (55), 13-Дек-20, 18:22 
> А если перед пробелами обратную косую черту ставить, будет работать?

Не уверен на 100%, но вроде (вероятность ~80%) пробовал и не помогло.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру