21

Re: група pkgsrc від replace

reverse2500 написав:

згадав ще деякі переваги:
є такі випадки коли новий пакет не збирається, його можна відкатити, в FreeBSD ports це робиться так:

#svn up -r XXXX /usr/ports/mics/mc

скинути в потрібну ревізію, яка версія попередня зберігалась, так можна робити і в pkgsrc в нестабільній гілці, цим може похвалитись SRPM ? ( Стабільна гілка протестована тому мало оновлюється )

а до чого svn до pkgsrc? чи у вас є бажання, щоб пішли далі ніж за менеджер пакетів?  *FACEPALM*

функціонал linux це завжди сума попередніх *NIX + своє нове.. *BSD це старіший *NIX ніж Linux..  тому поміркуйте ще раз добре чи дійсно хо починати суперечку..

бо на відміну від pkgsrc той самий rpm може похвалитися тим що він сам може понизити версію пакету, а не стороннім інструментом..  :P

22

Re: група pkgsrc від replace

а до чого svn до pkgsrc?

svn приклад для ports в FreeBSD, я вже писав і глянути уважно я там і написав ports, через cvs не робиі, поки не було необхідності, але зробити аналогічно теж так пожна

*BSD це старіший *NIX ніж Linux..  тому поміркуйте ще раз добре чи дійсно хо починати суперечку..

до чого тут вік ?

бо на відміну від pkgsrc той самий rpm може похвалитися тим що він сам може понизити версію пакету

я можу і не понижати версію пакету, а зібрати з тим що мені потрібно і тим що мені не потрібно, наприклад в моєму старому компі лібреофіс так і не хотів зібратись з багатопоточністю, зібрав без нього. Ті ситуації що описав вище, це не означає що треба користуватись ними постійно.
pkgsrc дає більше переваг в управлінні чим srpm

23 Востаннє редагувалося HetmanNet (06.03.2016 20:52:05)

Re: група pkgsrc від replace

reverse2500 написав:

а до чого svn до pkgsrc?

svn приклад для ports в FreeBSD, я вже писав і глянути уважно я там і написав ports, через cvs не робиі, поки не було необхідності, але зробити аналогічно теж так пожна

*BSD це старіший *NIX ніж Linux..  тому поміркуйте ще раз добре чи дійсно хо починати суперечку..

до чого тут вік ?

бо на відміну від pkgsrc той самий rpm може похвалитися тим що він сам може понизити версію пакету

я можу і не понижати версію пакету, а зібрати з тим що мені потрібно і тим що мені не потрібно, наприклад в моєму старому компі лібреофіс так і не хотів зібратись з багатопоточністю, зібрав без нього. Ті ситуації що описав вище, це не означає що треба користуватись ними постійно.
pkgsrc дає більше переваг в управлінні чим srpm

до речі, інструмент називається rpm, а srpm, brpm, drpm і т.д. лише позначення щоб можна було розрізняти rpm пакети які зовні однакові, але різні за змістом у середині..

щодо збірки пакетів, то зазвичай ті частини що можуть варіюватися виносять в окремі пакети..
щодо libreofiice то не дуже зрозумів.. ви про nlpsolver (Non-linear solver engine for LibreOffice Calc)? Якщо так то ставить окремим пакунком.

24

Re: група pkgsrc від replace

щодо libreofiice то не дуже зрозумів.. ви про nlpsolver

ні про потоковість в програмі, хочеш збирай з нею, хочеш без неї, без всіляких відкатів. Є іноді варіанти збірки на вибір, хочеш qt, gtk+, motif збирай програму, що тобі дозволяє то і робиш.

srpm, brpm, drpm

а тут все в одному pkgsrc. Make команда з різними опціями, make show-option, make dependecy, # bmake install clean clean-depends, все в одному

25 Востаннє редагувалося HetmanNet (06.03.2016 23:03:05)

Re: група pkgsrc від replace

reverse2500 написав:

щодо libreofiice то не дуже зрозумів.. ви про nlpsolver

ні про потоковість в програмі, хочеш збирай з нею, хочеш без неї, без всіляких відкатів. Є іноді варіанти збірки на вибір, хочеш qt, gtk+, motif збирай програму, що тобі дозволяє то і робиш.

srpm, brpm, drpm

а тут все в одному pkgsrc. Make команда з різними опціями, make show-option, make dependecy, # bmake install clean clean-depends, все в одному

Кілька пакунків краще ніж один, бо економиш на розмірі завантаження, просторі що займає на диску..

у мене бували випадки коли під час оновлення в корені лишалися лиш кілька мегабайт вільні.. як би все було запхано в один пакет я хрін оновився..

команда все одно одна, щоб не ставилося srpm, brpm, drpm і т.п. просто вказуєш що треба..

наявність бінарної версії економить час, а наявність в джерельних кодах дає можливість провести компіляцію на конкретній машині коли то реально треба..

тож відсутність готового бінарника є великим недоліком, бо пам'ятаю як шість годин компілювалася програма на серваку, в той час як на лінукс на такому самому серваку її вже встановив, налаштував та зрозумів що то не та програма яка треба, зніс та поставив потрібну.. тому джерельні коди то добре коли маєш зайвий час..

26

Re: група pkgsrc від replace

бо пам'ятаю як шість годин компілювалася програма на серваку

відкрий для себе

# make -j5 install clean

якщо дозволяє система то можна і до 9ти потоків вводити, є потужні сервери, люди в 24 потоки збирають пакаджі, це збільшує час компіляції

тож відсутність готового бінарника є великим недоліком

на основі його збирають репозиторій, наприклад в NetBSD, pkg_install тоді використовують чи pkgin все на смак, сам збирав для х64 репозиторій pkgsrc, почитав і на диво швидко розібрався

27 Востаннє редагувалося HetmanNet (07.03.2016 00:02:59)

Re: група pkgsrc від replace

reverse2500 написав:

бо пам'ятаю як шість годин компілювалася програма на серваку

відкрий для себе

# make -j5 install clean

якщо дозволяє система то можна і до 9ти потоків вводити, є потужні сервери, люди в 24 потоки збирають пакаджі, це збільшує час компіляції

так як фрішник що любить сирці, спитаю щодо кількості потоків.. кількість потоків варто вказувати по кількості реальних ядер чи віртуальних? ну ось серваки були тоді двопроцесорні по 6 реальних чи 12 віртуальних ядра на проц.. то вказати варто було 12 чи 24 потоки?

28

Re: група pkgsrc від replace

кількість потоків варто вказувати по кількості реальних ядер чи віртуальних?

потоки не залежать від ядер, а від перефирерії скільки для цього є виводів

29 Востаннє редагувалося HetmanNet (07.03.2016 21:06:03)

Re: група pkgsrc від replace

reverse2500 написав:

кількість потоків варто вказувати по кількості реальних ядер чи віртуальних?

потоки не залежать від ядер, а від перефирерії скільки для цього є виводів

Ну на Linux дослідним шляхом колись підібрав, здалося що оптимальна формула вибору кількості потоків.. ну а після того якось в цю тему не ліз, здавалося не дуже суттєвим, бо якщо треба на крайняк є ramfs та tmpfs.. а на FreeBSD то не спрацювало.. якщо є рецепт то діліться, то значно додасть прихильності до BSD аніж міфічні аргументи за pkgsrc..

30

Re: група pkgsrc від replace

Перший мій пакет для pkgsrc
https://chiselapp.com/user/res2500/repo … dir?ci=tip
WIKI + інше правитись буде та опис, долучаємось і тестуємо

Anonymous Cloning:
$ fossil clone https://chiselapp.com/user/res2500/repository/pkgsrc pkgsrc.fossil
$ fossil open pkgsrc.fossil

31

Re: група pkgsrc від replace

Переклав як міг флаєр для pkgsrc, оригінал документу тут pkgsrc en a4 флаєр
приймаються побажання для добавлення та переводу

Прихований текст

PKGSRC
Фреймворк для управління портативним програмним забезпеченням

Що таке pkgsrc ?
Pkgsrc  (Package Source) це фреймворрк для управління програмного забезпечення,
спочатку розроблена для NetBSD. З тих пір була перенесена на багато операційних
систем, такі як Linux, Solaris, AIX, FreeBSD, Windows, Interix, OSF\1, Minix, HaikiOS ...
PKGSRC впорядкований ієрархією каталогів і файлів Makefile, який виконується для
встановлення програмного забезпечення та всі його залежності від коду до бінарного файлу.
Крім того деякі програми доступні для автоматизування та обслуговування.

Операційні системи
Операційні системи що пітримують pkgsrc, але не обмежуються ними:
NetBSD

Solaris / SmartOS / illumos

Linux (OpenSUSE, Slackware, Fedora, RHE, Debian)

Darwin (Mac OS X)

FreeBSD

OpenBSD

IRIX

AIX

DragonFlyBSD

OSF/1

HP-UX

QNX

Haiku

MirBSD

Minix3

Cygwin

GNU/kFreeBSD

Ієрархія каталогів pkgsrc:


////////////////////////////////////

Навіщо вам потрібем pkgsrc ?

На сучасних  комп'ютерах кілька сотень програм встановлюються.
Все це програмне забезпечення підтримується для оновлень, слідкування за безпекою
виправлень помилок та інше. З ростом залежностей між пакетами зростає
проблема для створення пакету, та його робота з іншими пакетами. Робити цю роботу
практично не можливо - особливо коли потрібно підтримувати різні ОС та різні архітектури та різні версії.
Для встановлення програмного забезпечення вручну, потрібно знати всі необхідні інструменти для
збирання пакетів, від автоматичного збирання, до стабільної роботи пакету.
Ніхто не хоче проводити цілий робочий день тільки, щоб з'ясувати, який буде набір інструментів для встановлення, для даної програми.
З PKGSRC всі ці завдання можуть бути автоматизовані і об'єднані - навіть в гетерогенній мережі з різнимим ОС і архітектурами.

Окремі пакети з ОС
Деякі ОС зберігають файли  конігурації разом по всій системі, це робить технічне ослуговування
складніше, ніж вона вже є. PKGSRC відокремлює ОС від пакетів, все є в єдиному каталозі в /usr/pkg/.
Конфігураційні файли і бінарні файли зберігаються в порядкованій ієрархії каталогу, яка використовуєтсья виключно пакетами.

/usr/pkg/bin    - бінарні пакети
/usr/pkg/etc    - конфігураційні файли для програми
/usr/pkg/lib    - бібліотеки
/usr/pkg/man    - файли допомоги
/usr/pkg/sbin    - системні бінарні файли
/usr/pkg/share    - додаткові файли, наприклад документація

Попередньо скомпільовані пакети або компіляція джерельного ?

Не залежно від того, як ви вважаєте за краще програмне забезпечення - pkgsrc вам може в цьому допомогти.
Якщо ви хочите встановити бінарні пакети, потрібно просто налаштувати одну змінну оточення і pkgsrc буде використовувати бінарні файли.
Багато ентузіастів з усього світу компілюють програмне забезпечення з pkgsrc для різних ОС та платформ.
Ці пакети будуть завантажені на ftp://ftp.pkgsrc.org і вільно доступні всім користувачам. Компіляція з вихідних текстів так само легко, як за допомогою
бінарних пакетів. PKGSRC автоматично вирішить усі проблеми з залежностями, завантажити код та встановити його. Через pkgsrc можнастворити бінарні пакети.
Ці пакети можуть бути встанволені в інших машинах. Можна зібрати пакет для повільних машин на виділеному сервері чи навіть кросплатформений пакет.

Один файл з правилом для усіх!
Весь процес складання управляється через один текстовий файл!
У /etc/mk.conf, всі необхідні змінні оточення можуть бути скориговані.
Ці змінні визначають глобальні параметри,  який
компілятор і які каталоги слід використовувати під час компіляції
або там, де повинні бути встановлені сторінки людини пакетів. в
Крім глобальних опцій, специфічні для пакета параметри можуть бути
використовуватися для настройки пакетів, наприклад які залежності, або яка
версія повинна бути використана.

Як використовувати Pkgsrc?
Отримати Pkgsrc з pkgsrc.org через CVS або FTP і розархівувати його на
ваш жорсткий диск. Pkgsrc є ієрархією каталогів і файлів,
відсортовані за категоріями. Щоб встановити пакет, просто введіть
певний каталог і тип  make install clean clean-depends -
Pkgsrc інше зробить за вас!

Які Make методі можна застосувати ?

• make fetch: отримати код
• make checksum: перевірка коду
• make install-depends: установка залежностуй
• make extract: розархівувати пакет
• make patch: застосовувати патчі до вихідних файлів
• make configure: конфігурація коду
• make build: компіляція пакету
• make install: встановлення програми
• make package: створення бінарного пакету з коду
• make clean: очищення робочої папки
• make clean-depends: видалення робочої директорії та файлів залежностей
• make deinstall: видалення пакету
• make replace: заміна пакету на нову версію
• make update: оновлення пакету з залежностями
• make fetch-list:згенерувати скрипт для вилучення коду за допомогою FTP
• make show-options: показати доступні пакети

Додаткові програми

• pkg_admin виконувати різні адміністративні завдання
• pkg_add, pkg_delete встановлення та оновлення програми пакету
• pkg_chk перевірка на оновлення пакету
• pkg_tarup tars up installed software packages
• pkgfind пошук пакету по слову
• pkg_view установки пакетів в ізольованому оточенні
• cdpack створення компакт-дисків з бінарними пакетами
• pkg_select текстовий користувацький інтерфейс для Pkgsrc

Безпека
Як і проект NetBSD, Pkgsrc підкреслює безпеку. всі
вихідні файли і патчі підписані як з SHA1 і
RipeMD160 контрольна сума. Обидві контрольні суми перевіряються перед
розпакуванням коду і процесі установки, якщо зупиниться -
контрольні суми не збігаються.
На додаток до контрольних сумах, підписи OpenPGP можуть бути використані для
перевірити цілісності вихідних файлів. За допомогою включення цієї процедури,
майже неможливо записати троянських коней в пакетах.
Для пошуку небезпечних пакетів легко, проект Pkgsrc підтримує
список вразливостей. Цей текстовий файл містить список небезпечною
пакетів і їх уразливості. За допомогою аудиту програми
пакетів, список може бути залучена і автоматично порівнюються
для встановлених пакетів. Це завдання може бути автоматизована
з cron і може поліпшити вашу безпеку систем різко.

Установка як користувач
З Pkgsrc, користувач без root привілеїв можна встановити пакети
в його домашній каталог.

Документація
Вся система документована. Керівництво Pkgsrc вільно
доступна на http://www.NetBSD.org/Documentation/pkgsrc/
або як Pkgsrc / DOC / pkgsrc.txt.