<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Вышел пакетный менеджер GNU Guix 0.4 и прототип дистрибутива на нём]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=30674&amp;type=atom" />
	<updated>2013-09-30T14:36:12Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=30674</id>
		<entry>
			<title type="html"><![CDATA[Вышел пакетный менеджер GNU Guix 0.4 и прототип дистрибутива на нём]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=366311#p366311" />
			<content type="html"><![CDATA[<p>Одним из интересных <a href="http://permalink.gmane.org/gmane.org.fsf.announce/2028">анонсов</a>, приуроченных к тридцатилетию проекта GNU, стал выпуск пакетного менеджера <a href="http://www.gnu.org/software/guix/">GNU Guix 0.4</a> и публикация первого рабочего прототипа самодостаточного GNU/Linux дистрибутива на его основе. Дистрибутив оформлен в виде <a href="ftp://alpha.gnu.org/gnu/guix/">загрузочного образа</a> (120 Мб) для QEMU и предназначен для запуска в виртуализированных окружениях, инсталлятор для установки на отдельные разделы пока отсутствует. </p><p>Дистрибутив включает только свободные компоненты и поставляется с ядром GNU Linux-Libre 3.11, очищенным от несвободных элементов бинарных прошивок. Для сборки применяется GCC 4.7.3. В качестве системы инициализации используется сервисный менеджер <a href="http://www.gnu.org/software/dmd/">GNU dmd</a>, развиваемый как альтернатива SysV-init с поддержкой зависимостей. Управляющий демон и утилиты dmd написаны на языке Guile (одна из реализаций языка Scheme), который также используется и для определения параметров запуска сервисов. Базовые образ поддерживает работу в консольном режиме, но для установки <a href="http://www.gnu.org/software/guix/package-list.html">подготовлено</a> более 400 готовых пакетов, среди которых и компоненты графического стека на базе X.Org, оконные менеджеры dwm и ratpoison, а также ряд программ на базе библиотеки GTK+. </p><p>Пакетный менеджер GNU Guix основан на наработках проекта <a href="http://nixos.org/nix/">Nix</a> и кроме типичных функций управления пакетами поддерживает такие возможности, как выполнение транзакционных обновлений, возможность отката обновлений, работа без получения привилегий суперпользователя, поддержка привязанных к отдельным пользователям профилей, возможность одновременной установки нескольких версий одной программы, средства уборки мусора (выявление и удаление неиспользуемых версий пакетов). Для определения сценариев сборки приложений и правил формирования пакетов предлагается использовать специализированный высокоуровневый предметно-ориентированный язык и компоненты Guile Scheme API, позволяющие выполнять все операции по управлению пакетами на функциональном языке программирования Scheme. </p><p>Поддерживается возможность использования пакетов, подготовленных для пакетного менеджера Nix и размещённых в репозитории <a href="http://nixos.org/nixpkgs/">Nixpkgs</a>. Кроме операций с пакетами возможно создание сценариев для управления конфигурацией приложений. При сборке пакета автоматически загружаются и собираются все связанные с ним зависимости. Возможна как загрузка готовых бинарных пакетов из репозитория, так и сборка из исходных текстов со всеми зависимостями. Реализованы средства для поддержания версий установленных программ в актуальном состоянии через организацию установки обновлений из внешнего репозитория. </p><p>Пакеты оформляются в виде контейнеров, содержащих все необходимые для работы приложений компоненты и позволяющие запустить приложение без оглядки на состав базового системного окружения. Между пакетами Guix возможно определение зависимостей, при этом для поиска наличия уже установленных зависимостей используется сканирование хэшей-идентификаторов в директории установленных пакетов. Пакеты устанавливаются в отдельное дерево директорий или поддиректорию в каталоге пользователя, что позволяет обеспечить его параллельное сосуществование с другими пакетными менеджерами и обеспечить поддержку широкого спектра существующих дистрибутивов. Например, пакет устанавливается как /nix/store/f6dvq84299f3249h8my6r9vs7a0n3-firefox-24.0.0/, где &quot;f6dvq8...&quot; является уникальным идентификатором пакета, используемым для контроля зависимостей.</p><p>Источник - <a href="http://www.opennet.ru/opennews/art.shtml?num=38024">http://www.opennet.ru/opennews/art.shtml?num=38024</a></p>]]></content>
			<author>
				<name><![CDATA[Драко Стаарн]]></name>
				<uri>https://linuxforum.ru/profile.php?id=24508</uri>
			</author>
			<updated>2013-09-30T14:36:12Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=366311#p366311</id>
		</entry>
</feed>
