Рубрика «package manager»

Я знаю, какое у вас сейчас лицо:

лицо человека, который узнает что кто-то пишет код на VBA

лицо человека, который узнает что кто-то пишет код на VBA

Но на самом деле идея не нова и изначально я даже думал не изобретать велосипед, ведь есть по описанию неплохой vba-blocks, с открытым исходным кодом. Бери не хочу.
Читать полностью »

Введение

apt-key - это утилита, используемая для управления ключами, которые APT использует для аутентификации пакетов. Это тесно связано с утилитой add-apt-repository, которая добавляет внешние репозитории с использованием серверов ключей в список надежных источников установки APT. Однако ключам, добавленным с помощью apt-key и add-apt-repository, aptЧитать полностью »

Linux многоликий: как работать на любом дистрибутиве - 1

Создать приложение для резервного копирования, работающее на любом дистрибутиве — задачка не простая. Чтобы обеспечить работу Veeam Agent for Linux на дистрибутивах от Red Hat 6 и Debian 6, до OpenSUSE 15.1 и Ubuntu 19.04 приходится решать спектр проблем, особенно если учесть, что в состав модуля входит модуль ядра.

Статья создана по материалам выступления на конференции LinuxPiter 2019.
Читать полностью »

Менеджеры зависимостей - 1

В этой статье я расскажу, в чем менеджеры зависимостей (package manager) схожи по внутреннему устройству, алгоритму работы, и в чем их принципиальные отличия. Я рассматривал package manager’ы, предназначенные для разработки под iOS/OS X, но содержание статьи с некоторыми допущениями применимо и к другим.
Читать полностью »

Разработчики часто сталкиваются с типовыми задачами, которые появляются в новых проектах. Постепенно накапливается база вспомогательного кода, которая собирается в библиотеки и переносится из проекта в проект. И чем больше проектов, тем тяжелее становится поддерживать такие библиотеки.
image

Читать полностью »

Nix loves C++

В последнее время много разговоров идет о том, что для C++ нужен свой пакетный менеджер подобный pip, npm, maven, cargo и т.д. Все конкуренты имеют простой и стандартизированный механизм подключения нестандартной библиотеки. В C++ же все действуют как умеют: кто-то прописывает в README список пакетов для Ubuntu, CentOS и других дистрибутивов, кто-то использует git submodule и скрипты для их сборки, кто-то использует CMake ExternalProject, кто-то копирует все исходники в один гигантский репозиторий, кто-то делает образ Docker или Vagrant.

Чтобы решить проблему был даже создан стартап — biicode, но он обанкротился и его будущее неизвестно. Взамен появился conan, дополняя зоопарк конкурентов — nuget, cget, hunter, cpm, qpm, cppget, pacm и даже gradle for c++.

Меня не устраивал ни один из перечисленных способов. Я было начал писать пакеты для Conan, но столкнулся с большим числом хаков, неразвитым API, отсутвием гайдлайнов и, как следствие, низкой вероятностью переиспользования чужих пакетов. И тут вспомнилось, что когда-то мне очень понравились идеи пакетного менеджера в NixOS. И подумал — а зачем плодить пакетный менеджер специально для C++, если те же задачи решает обычный пакетный менеджер? Нужно только чтобы он был достаточно гибким и простым в части описания пакета. И Nix идеально подошел на эту роль.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js