<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.nixos.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Unabomberlive</id>
	<title>Official NixOS Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nixos.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Unabomberlive"/>
	<link rel="alternate" type="text/html" href="https://wiki.nixos.org/wiki/Special:Contributions/Unabomberlive"/>
	<updated>2026-04-05T08:19:32Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.0</generator>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=19747</id>
		<title>NixOS Wiki/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=19747"/>
		<updated>2025-01-18T18:18:32Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
__NOTOC__&amp;lt;!-- NOTE: Please don&#039;t change the layout/categorizing without first coordinating with the other editors. --&amp;gt;&amp;lt;!-- NOTE: Feel free to add/edit content though! --&amp;gt;&amp;lt;!-- NOTE: Removing those notes and/or disregarding this is not only rude, but should be considered defacement. --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;row home-panes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-7&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-started|icon=clarifications|Приступаем|&lt;br /&gt;
Это официальная Wiki NixOS.&lt;br /&gt;
Она включает в себя темы, не освещённые в [https://nixos.org/nixos/manual Мануале по NixOS]: руководства пользователя NixOS, примеры конфигурации и советы по устранению неполадок.&lt;br /&gt;
&lt;br /&gt;
NixOS — это операционная система на базе Linux ядра, основанная на менеджере пакетов Nix и репозитории пакетов Nixpkgs.&lt;br /&gt;
&lt;br /&gt;
Новичкам в NixOS рекомендуется прочитать обзорную статью [[Nix Ecosystem|Экосистема Nix]], чтобы получить полное представление. Для более конкретного ознакомления см. :&lt;br /&gt;
* [[NixOS]]&lt;br /&gt;
* [[Nix package manager|Пакетный менеджер Nix]]&lt;br /&gt;
* [[Nixpkgs|Репозиторий пакетов Nixpkgs]]&lt;br /&gt;
* [[Overview of the Nix Language |Общее представление о Nix языке]]&lt;br /&gt;
Если вы хотите попробовать Nix в автономном режиме на другом дистрибутиве Linux или на Mac, ознакомьтесь с [[nix.dev]].&lt;br /&gt;
&lt;br /&gt;
В экосистеме Nix существует множество дополнительных инструментов, таких как:&lt;br /&gt;
&lt;br /&gt;
* [[Home Manager|Home-manager]] для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* [[Flakes|Nix Flakes]] для управления зависимости проектов Nix&lt;br /&gt;
&lt;br /&gt;
Они добавляют сложности и поначалу могут сбить с толку, и вы даже можете решить, что они вам не нужны.&lt;br /&gt;
Начните с простой Nix/NixOS, а Home Manager и/или Flakes интегрируйте в свою систему только после того, как вы уверенно освоите Nix/NixOS и поймете их значение.}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|hosting|icon=cloud|Установка NixOS|&lt;br /&gt;
&amp;lt;!-- once ready: * На вашем компьютере, с помощью [] --&amp;gt;&lt;br /&gt;
* На Персональном Компьютере, с [[NixOS_as_a_desktop/ru|NixOS на ПК]]&lt;br /&gt;
* На ARM, с [[NixOS on ARM]]&lt;br /&gt;
* В облаке, с помощью [[NixOS friendly hosters]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|doctopics|icon=manual|Разделы документации|&lt;br /&gt;
Первым пунктом должны быть [[Resources]], который служит шлюзом к наиболее важной документации. Некоторые основные моменты приведены ниже.&lt;br /&gt;
&lt;br /&gt;
Основные справочные материалы:&lt;br /&gt;
* [https://nixos.org/nixos/manual/ Руководство по NixOS]&lt;br /&gt;
* [https://nixos.org/nix/manual/ Руководство по Nix]&lt;br /&gt;
* [https://nixos.org/nixpkgs/manual/ Руководство по Nixpkgs]&lt;br /&gt;
* [https://nixos.org/hydra/manual/ Руководство Hydra]&lt;br /&gt;
&lt;br /&gt;
Основные категории страниц:&lt;br /&gt;
* [[:{{ns:14}}:Software|Программное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Hardware|Аппаратное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Desktop|Desktop]] - настройка для ПК&lt;br /&gt;
* [[:{{ns:14}}:Server|Server]] - настройка для Сервера&lt;br /&gt;
* [[:{{ns:14}}:Community|Community]] - люди, общение, работа над NixOS&lt;br /&gt;
&lt;br /&gt;
См. также:&lt;br /&gt;
* [[FAQ|Часто задаваемые вопросы]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet]]&lt;br /&gt;
* [[Ubuntu vs. NixOS|Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|wikipages|Служебные страницы|3=&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:SpecialPages}} Overview of special pages]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:AllPages|hideredirects=1}} Все страницы на {{SERVERNAME}}]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Special:Categories|Все категории на {{SERVERNAME}}]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[{{fullurl:Special:RecentChanges|hidebots=1&amp;amp;reviewStatus=unpatrolled}} Непроверенные изменения на {{SERVERNAME}}]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-5&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-in-touch|icon=dialog-hi|Связь|&lt;br /&gt;
&amp;lt;b&amp;gt;С сообществом&amp;lt;/b&amp;gt;&lt;br /&gt;
* [https://nixos.org/ Официальный сайт NixOS]&lt;br /&gt;
* [https://nixos.org/community/#governance-teams Команда разработчиков]&lt;br /&gt;
* [[Nix Community|Обзор сообщества]]&lt;br /&gt;
* [[Get In Touch|Чаты и форумы]]&lt;br /&gt;
* [[Support|Получить поддержку]]&lt;br /&gt;
* [[Get In Touch#Events|События]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing|Поучаствовать в развитии NixOs и Wiki]]&lt;br /&gt;
* [[Manual of Style]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/11/ru&amp;diff=19746</id>
		<title>Translations:NixOS Wiki/11/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/11/ru&amp;diff=19746"/>
		<updated>2025-01-18T18:18:31Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing|Поучаствовать в развитии NixOs и Wiki]]&lt;br /&gt;
* [[Manual of Style]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=19732</id>
		<title>NixOS Wiki/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=19732"/>
		<updated>2025-01-16T15:32:05Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
__NOTOC__&amp;lt;!-- NOTE: Please don&#039;t change the layout/categorizing without first coordinating with the other editors. --&amp;gt;&amp;lt;!-- NOTE: Feel free to add/edit content though! --&amp;gt;&amp;lt;!-- NOTE: Removing those notes and/or disregarding this is not only rude, but should be considered defacement. --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;row home-panes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-7&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-started|icon=clarifications|Приступаем|&lt;br /&gt;
Это официальная Wiki NixOS.&lt;br /&gt;
Она включает в себя темы, не освещённые в [https://nixos.org/nixos/manual Мануале по NixOS]: руководства пользователя NixOS, примеры конфигурации и советы по устранению неполадок.&lt;br /&gt;
&lt;br /&gt;
NixOS — это операционная система на базе Linux ядра, основанная на менеджере пакетов Nix и репозитории пакетов Nixpkgs.&lt;br /&gt;
&lt;br /&gt;
Новичкам в NixOS рекомендуется прочитать обзорную статью [[Nix Ecosystem|Экосистема Nix]], чтобы получить полное представление. Для более конкретного ознакомления см. :&lt;br /&gt;
* [[NixOS]]&lt;br /&gt;
* [[Nix package manager|Пакетный менеджер Nix]]&lt;br /&gt;
* [[Nixpkgs|Репозиторий пакетов Nixpkgs]]&lt;br /&gt;
* [[Overview of the Nix Language |Общее представление о Nix языке]]&lt;br /&gt;
Если вы хотите попробовать Nix в автономном режиме на другом дистрибутиве Linux или на Mac, ознакомьтесь с [[nix.dev]].&lt;br /&gt;
&lt;br /&gt;
В экосистеме Nix существует множество дополнительных инструментов, таких как:&lt;br /&gt;
&lt;br /&gt;
* [[Home Manager|Home-manager]] для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* [[Flakes|Nix Flakes]] для управления зависимости проектов Nix&lt;br /&gt;
&lt;br /&gt;
Они добавляют сложности и поначалу могут сбить с толку, и вы даже можете решить, что они вам не нужны.&lt;br /&gt;
Начните с простой Nix/NixOS, а Home Manager и/или Flakes интегрируйте в свою систему только после того, как вы уверенно освоите Nix/NixOS и поймете их значение.}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|hosting|icon=cloud|Установка NixOS|&lt;br /&gt;
&amp;lt;!-- once ready: * На вашем компьютере, с помощью [] --&amp;gt;&lt;br /&gt;
* На Персональном Компьютере, с [[NixOS_as_a_desktop/ru|NixOS на ПК]]&lt;br /&gt;
* На ARM, с [[NixOS on ARM]]&lt;br /&gt;
* В облаке, с помощью [[NixOS friendly hosters]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|doctopics|icon=manual|Разделы документации|&lt;br /&gt;
Первым пунктом должны быть [[Resources]], который служит шлюзом к наиболее важной документации. Некоторые основные моменты приведены ниже.&lt;br /&gt;
&lt;br /&gt;
Основные справочные материалы:&lt;br /&gt;
* [https://nixos.org/nixos/manual/ Руководство по NixOS]&lt;br /&gt;
* [https://nixos.org/nix/manual/ Руководство по Nix]&lt;br /&gt;
* [https://nixos.org/nixpkgs/manual/ Руководство по Nixpkgs]&lt;br /&gt;
* [https://nixos.org/hydra/manual/ Руководство Hydra]&lt;br /&gt;
&lt;br /&gt;
Основные категории страниц:&lt;br /&gt;
* [[:{{ns:14}}:Software|Программное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Hardware|Аппаратное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Desktop|Desktop]] - настройка для ПК&lt;br /&gt;
* [[:{{ns:14}}:Server|Server]] - настройка для Сервера&lt;br /&gt;
* [[:{{ns:14}}:Community|Community]] - люди, общение, работа над NixOS&lt;br /&gt;
&lt;br /&gt;
См. также:&lt;br /&gt;
* [[FAQ|Часто задаваемые вопросы]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet]]&lt;br /&gt;
* [[Ubuntu vs. NixOS|Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|wikipages|Служебные страницы|3=&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:SpecialPages}} Overview of special pages]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:AllPages|hideredirects=1}} Все страницы на {{SERVERNAME}}]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Special:Categories|Все категории на {{SERVERNAME}}]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[{{fullurl:Special:RecentChanges|hidebots=1&amp;amp;reviewStatus=unpatrolled}} Непроверенные изменения на {{SERVERNAME}}]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-5&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-in-touch|icon=dialog-hi|Связь|&lt;br /&gt;
&amp;lt;b&amp;gt;С сообществом&amp;lt;/b&amp;gt;&lt;br /&gt;
* [https://nixos.org/ Официальный сайт NixOS]&lt;br /&gt;
* [https://nixos.org/community/#governance-teams Команда разработчиков]&lt;br /&gt;
* [[Nix Community|Обзор сообщества]]&lt;br /&gt;
* [[Get In Touch|Чаты и форумы]]&lt;br /&gt;
* [[Support|Получить поддержку]]&lt;br /&gt;
* [[Get In Touch#Events|События]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing|Поучаствовать в развитии NixOs и Wiki]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/9/ru&amp;diff=19731</id>
		<title>Translations:NixOS Wiki/9/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/9/ru&amp;diff=19731"/>
		<updated>2025-01-16T15:32:03Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;См. также:&lt;br /&gt;
* [[FAQ|Часто задаваемые вопросы]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet]]&lt;br /&gt;
* [[Ubuntu vs. NixOS|Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=19730</id>
		<title>NixOS Wiki/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=19730"/>
		<updated>2025-01-16T15:31:13Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
__NOTOC__&amp;lt;!-- NOTE: Please don&#039;t change the layout/categorizing without first coordinating with the other editors. --&amp;gt;&amp;lt;!-- NOTE: Feel free to add/edit content though! --&amp;gt;&amp;lt;!-- NOTE: Removing those notes and/or disregarding this is not only rude, but should be considered defacement. --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;row home-panes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-7&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-started|icon=clarifications|Приступаем|&lt;br /&gt;
Это официальная Wiki NixOS.&lt;br /&gt;
Она включает в себя темы, не освещённые в [https://nixos.org/nixos/manual Мануале по NixOS]: руководства пользователя NixOS, примеры конфигурации и советы по устранению неполадок.&lt;br /&gt;
&lt;br /&gt;
NixOS — это операционная система на базе Linux ядра, основанная на менеджере пакетов Nix и репозитории пакетов Nixpkgs.&lt;br /&gt;
&lt;br /&gt;
Новичкам в NixOS рекомендуется прочитать обзорную статью [[Nix Ecosystem|Экосистема Nix]], чтобы получить полное представление. Для более конкретного ознакомления см. :&lt;br /&gt;
* [[NixOS]]&lt;br /&gt;
* [[Nix package manager|Пакетный менеджер Nix]]&lt;br /&gt;
* [[Nixpkgs|Репозиторий пакетов Nixpkgs]]&lt;br /&gt;
* [[Overview of the Nix Language |Общее представление о Nix языке]]&lt;br /&gt;
Если вы хотите попробовать Nix в автономном режиме на другом дистрибутиве Linux или на Mac, ознакомьтесь с [[nix.dev]].&lt;br /&gt;
&lt;br /&gt;
В экосистеме Nix существует множество дополнительных инструментов, таких как:&lt;br /&gt;
&lt;br /&gt;
* [[Home Manager|Home-manager]] для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* [[Flakes|Nix Flakes]] для управления зависимости проектов Nix&lt;br /&gt;
&lt;br /&gt;
Они добавляют сложности и поначалу могут сбить с толку, и вы даже можете решить, что они вам не нужны.&lt;br /&gt;
Начните с простой Nix/NixOS, а Home Manager и/или Flakes интегрируйте в свою систему только после того, как вы уверенно освоите Nix/NixOS и поймете их значение.}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|hosting|icon=cloud|Установка NixOS|&lt;br /&gt;
&amp;lt;!-- once ready: * На вашем компьютере, с помощью [] --&amp;gt;&lt;br /&gt;
* На Персональном Компьютере, с [[NixOS_as_a_desktop/ru|NixOS на ПК]]&lt;br /&gt;
* На ARM, с [[NixOS on ARM]]&lt;br /&gt;
* В облаке, с помощью [[NixOS friendly hosters]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|doctopics|icon=manual|Разделы документации|&lt;br /&gt;
Первым пунктом должны быть [[Resources]], который служит шлюзом к наиболее важной документации. Некоторые основные моменты приведены ниже.&lt;br /&gt;
&lt;br /&gt;
Основные справочные материалы:&lt;br /&gt;
* [https://nixos.org/nixos/manual/ Руководство по NixOS]&lt;br /&gt;
* [https://nixos.org/nix/manual/ Руководство по Nix]&lt;br /&gt;
* [https://nixos.org/nixpkgs/manual/ Руководство по Nixpkgs]&lt;br /&gt;
* [https://nixos.org/hydra/manual/ Руководство Hydra]&lt;br /&gt;
&lt;br /&gt;
Основные категории страниц:&lt;br /&gt;
* [[:{{ns:14}}:Software|Программное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Hardware|Аппаратное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Desktop|Desktop]] - настройка для ПК&lt;br /&gt;
* [[:{{ns:14}}:Server|Server]] - настройка для Сервера&lt;br /&gt;
* [[:{{ns:14}}:Community|Community]] - люди, общение, работа над NixOS&lt;br /&gt;
&lt;br /&gt;
См. также:&lt;br /&gt;
* [[FAQ|Часто задаваемые вопросы]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet]]&lt;br /&gt;
* [[Ubuntu vs NixOS|Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|wikipages|Служебные страницы|3=&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:SpecialPages}} Overview of special pages]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:AllPages|hideredirects=1}} Все страницы на {{SERVERNAME}}]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Special:Categories|Все категории на {{SERVERNAME}}]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[{{fullurl:Special:RecentChanges|hidebots=1&amp;amp;reviewStatus=unpatrolled}} Непроверенные изменения на {{SERVERNAME}}]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-5&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-in-touch|icon=dialog-hi|Связь|&lt;br /&gt;
&amp;lt;b&amp;gt;С сообществом&amp;lt;/b&amp;gt;&lt;br /&gt;
* [https://nixos.org/ Официальный сайт NixOS]&lt;br /&gt;
* [https://nixos.org/community/#governance-teams Команда разработчиков]&lt;br /&gt;
* [[Nix Community|Обзор сообщества]]&lt;br /&gt;
* [[Get In Touch|Чаты и форумы]]&lt;br /&gt;
* [[Support|Получить поддержку]]&lt;br /&gt;
* [[Get In Touch#Events|События]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing|Поучаствовать в развитии NixOs и Wiki]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/9/ru&amp;diff=19729</id>
		<title>Translations:NixOS Wiki/9/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/9/ru&amp;diff=19729"/>
		<updated>2025-01-16T15:31:13Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;См. также:&lt;br /&gt;
* [[FAQ|Часто задаваемые вопросы]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet]]&lt;br /&gt;
* [[Ubuntu vs NixOS|Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Chromium&amp;diff=19602</id>
		<title>Chromium</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Chromium&amp;diff=19602"/>
		<updated>2025-01-10T20:48:18Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: /* Accelerated video playback */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
=== NixOS ===&lt;br /&gt;
Add {{nixos:package|chromium}} to {{NixOS Manual|name=systemPackages|anchor=#sec-package-management}}.&lt;br /&gt;
&lt;br /&gt;
== Accelerated video playback == &lt;br /&gt;
&lt;br /&gt;
Make sure [[Accelerated Video Playback]] is setup on the system properly. Check {{ic|chrome://gpu}} to see if Chromium has enabled hardware acceleration.&lt;br /&gt;
&lt;br /&gt;
If accelerated video playback is not working, check relevant flags at {{ic|chrome://flags}}, or enable them using the cli:&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = with pkgs; [&lt;br /&gt;
    (chromium.override {&lt;br /&gt;
      commandLineArgs = [&lt;br /&gt;
        &amp;quot;--enable-features=AcceleratedVideoEncoder&amp;quot;&lt;br /&gt;
        &amp;quot;--ignore-gpu-blocklist&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-zero-copy&amp;quot;&lt;br /&gt;
      ];&lt;br /&gt;
    })&lt;br /&gt;
  ];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
In some cases, {{ic|chrome://gpu}} will show Video Decode as enabled, but Video Acceleration Information as blank, with {{ic|chrome://media-internals}} using FFmpeg Video Decoder (software decoding). If this happens, try to enable the following features:&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = with pkgs; [&lt;br /&gt;
    (chromium.override {&lt;br /&gt;
      commandLineArgs = [&lt;br /&gt;
        &amp;quot;--enable-features=AcceleratedVideoEncoder,VaapiOnNvidiaGPUs,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-features=VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-features=UseMultiPlaneFormatForHardwareVideo&amp;quot;&lt;br /&gt;
        &amp;quot;--ignore-gpu-blocklist&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-zero-copy&amp;quot;&lt;br /&gt;
      ];&lt;br /&gt;
    })&lt;br /&gt;
  ];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== Enabling native Wayland support ==&lt;br /&gt;
&lt;br /&gt;
You can turn on native Wayland support in all chrome and most electron apps by setting an environment variable: &amp;lt;code&amp;gt;environment.sessionVariables.NIXOS_OZONE_WL = &amp;quot;1&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Enabling DRM (Widevine support) ==&lt;br /&gt;
By default, {{nixos:package|chromium}} does not support playing DRM protected media. However, there is a build time flag to include the unfree Widevine blob from nixpkgs:&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = with pkgs; [&lt;br /&gt;
    (chromium.override { enableWideVine = true; })&lt;br /&gt;
  ];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Applications]]&lt;br /&gt;
[[Category:Web Browser]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Chromium&amp;diff=19601</id>
		<title>Chromium</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Chromium&amp;diff=19601"/>
		<updated>2025-01-10T20:47:08Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: /* Accelerated video playback */  New chromium acceleration flags&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
=== NixOS ===&lt;br /&gt;
Add {{nixos:package|chromium}} to {{NixOS Manual|name=systemPackages|anchor=#sec-package-management}}.&lt;br /&gt;
&lt;br /&gt;
== Accelerated video playback == &lt;br /&gt;
&lt;br /&gt;
Make sure [[Accelerated Video Playback]] is setup on the system properly. Check {{ic|chrome://gpu}} to see if Chromium has enabled hardware acceleration.&lt;br /&gt;
&lt;br /&gt;
If accelerated video playback is not working, check relevant flags at {{ic|chrome://flags}}, or enable them using the cli:&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = with pkgs; [&lt;br /&gt;
    (chromium.override {&lt;br /&gt;
      commandLineArgs = [&lt;br /&gt;
        &amp;quot;--enable-features=AcceleratedVideoEncoder&amp;quot;&lt;br /&gt;
        &amp;quot;--ignore-gpu-blocklist&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-zero-copy&amp;quot;&lt;br /&gt;
      ];&lt;br /&gt;
    })&lt;br /&gt;
  ];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
In some cases, {{ic|chrome://gpu}} will show Video Decode as enabled, but Video Acceleration Information as blank, with {{ic|chrome://media-internals}} using FFmpeg Video Decoder (software decoding). If this happens, try to enable the following features:&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = with pkgs; [&lt;br /&gt;
    (chromium.override {&lt;br /&gt;
      commandLineArgs = [&lt;br /&gt;
        &amp;quot;--enable-features=AcceleratedVideoEncoder,VaapiOnNvidiaGPUs,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-features=VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-features=DefaultANGLEVulkan,UseMultiPlaneFormatForHardwareVideo&amp;quot;&lt;br /&gt;
        &amp;quot;--ignore-gpu-blocklist&amp;quot;&lt;br /&gt;
        &amp;quot;--enable-zero-copy&amp;quot;&lt;br /&gt;
      ];&lt;br /&gt;
    })&lt;br /&gt;
  ];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== Enabling native Wayland support ==&lt;br /&gt;
&lt;br /&gt;
You can turn on native Wayland support in all chrome and most electron apps by setting an environment variable: &amp;lt;code&amp;gt;environment.sessionVariables.NIXOS_OZONE_WL = &amp;quot;1&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Enabling DRM (Widevine support) ==&lt;br /&gt;
By default, {{nixos:package|chromium}} does not support playing DRM protected media. However, there is a build time flag to include the unfree Widevine blob from nixpkgs:&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = with pkgs; [&lt;br /&gt;
    (chromium.override { enableWideVine = true; })&lt;br /&gt;
  ];&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Applications]]&lt;br /&gt;
[[Category:Web Browser]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Flakes/ru&amp;diff=19600</id>
		<title>Flakes/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Flakes/ru&amp;diff=19600"/>
		<updated>2025-01-10T20:40:21Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;=== Входная схема ===&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nix flakes&#039;&#039;&#039; это [https://nixos.org/manual/nix/stable/contributing/experimental-Features.html экспериментальная особенность] которая была представлена с Nix 2.4 ([https://nixos.org/manual/nix/unstable/release-notes/rl-2.4.html см. Примечания к выпуску]).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Introduction&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== Введение ====&lt;br /&gt;
&lt;br /&gt;
Nix flakes обеспечивают единую структуру для Nix-проектов, фиксируют версии зависимостей в лок-файле и делают более удобным написание воспроизводимых Nix-выражений.&lt;br /&gt;
&lt;br /&gt;
* [https://nixos.org/manual/nix/unstable/command-ref/new-cli/nix3-flake.html#description flake]  это файловая структура, корневая директория которой содержит спецификацию Nix в файле &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* Содержимое файла &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt; следует единой схеме наименования для объявления пакетов и их зависимостей на языке Nix.&lt;br /&gt;
&lt;br /&gt;
Флейки вводят [https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-references синтаксис, похожий на URL] для указания удалённых источников.&lt;br /&gt;
&lt;br /&gt;
* Чтобы упростить длинный синтаксис URL с помощью более коротких названий, [https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-registry.html флейки используют реестр] символических идентификаторов.&lt;br /&gt;
&lt;br /&gt;
* Флейки также позволяют фиксировать ссылки и версии, которые затем могут быть запрошены и обновлены программно.&lt;br /&gt;
&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix.html Экспериментальный интерфейс командной строки] принимает ссылки на флейки для выражений, которые создают, запускают и развёртывают пакеты.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Enable_flakes_temporarily&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== Временно включить поддержку Flakes ====&lt;br /&gt;
&lt;br /&gt;
При использовании любой команды &amp;lt;code&amp;gt;nix&amp;lt;/code&amp;gt; добавьте следующие параметры командной строки:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
 --experimental-features &#039;nix-command flakes&#039;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Enable_flakes_permanently_in_NixOS&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
====Включить flakes на постоянной основе в NixOS====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Add the following to the [[Overview_of_the_NixOS_Linux_distribution#Declarative_Configuration system configuration |NixOS configuration]]:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
  nix.settings.experimental-features = [ &amp;quot;nix-command&amp;quot; &amp;quot;flakes&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Other_Distros,_with_Home-Manager&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
===== В других Дистрибутивах, с Home-Manager =====&lt;br /&gt;
&lt;br /&gt;
Добавьте следующее в свою конфигурацию Home-Manager:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
  nix.settings.experimental-features = [ &amp;quot;nix-command&amp;quot; &amp;quot;flakes&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Other_Distros,_without_Home-Manager&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=====Другие Дистрибутивы, без Home-Manager=====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Note | The  [https://github.com/DeterminateSystems/nix-installer Determinate Nix Installer] enables flakes by default.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Добавьте следующее в &amp;lt;code&amp;gt;~/.config/nix/nix.conf&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;/etc/nix/nix.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=text&amp;gt;&lt;br /&gt;
experimental-features = nix-command flakes&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Basic_Usage_of_Flake&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Основное Использование Flake ===&lt;br /&gt;
&lt;br /&gt;
Прежде чем выполнять какие-либо команды nix на этом этапе, обратите внимание на два предупреждения ниже: одно для шифрования, другое для git.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
====Encryption WARNING====&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Warning | Since contents of flake files are copied to the world-readable Nix store folder, do not put any unencrypted secrets in flake files. You should instead use a [[Comparison of secret managing schemes|secret managing scheme]].}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Git_WARNING&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== Предупреждение Git ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
For flakes in git repos, only files in the working tree will be copied to the store.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Therefore, if you use &amp;lt;code&amp;gt;git&amp;lt;/code&amp;gt; for your flake, ensure to &amp;lt;code&amp;gt;git add&amp;lt;/code&amp;gt; any project files after you first create them.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
See also https://www.tweag.io/blog/2020-05-25-flakes/&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Generate_flake.nix_file&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
====Создание файла flake.nix====&lt;br /&gt;
&lt;br /&gt;
Чтобы начать базовое использование Flakes, выполните команду flake в каталоге проекта:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=text&amp;gt;&lt;br /&gt;
nix flake init&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Flake schema ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The flake.nix file is a Nix file but that has special restrictions (more on that later).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
It has 4 top-level attributes:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;description&amp;lt;/code&amp;gt; это строка описывающая flake.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;inputs&amp;lt;/code&amp;gt; is an attribute set of all the dependencies of the flake. The schema is described below.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;outputs&amp;lt;/code&amp;gt; is a function of one argument that takes an attribute set of all the realized inputs, and outputs another attribute set whose schema is described below.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nixConfig&amp;lt;/code&amp;gt; is an attribute set of values which reflect the [https://nixos.org/manual/nix/stable/command-ref/conf-file.html values given to nix.conf]. This can extend the normal behavior of a user&#039;s nix experience by adding flake-specific configuration, such as a binary cache.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Input_schema&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Входная схема ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-inputs The nix flake inputs manual].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-references The nix flake references manual].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The inputs attribute defines the dependencies of the flake. For example, nixpkgs has to be defined as a dependency for a system flake in order for the system to build properly.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Nixpkgs can be defined using the following code:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;inputs.nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/&amp;lt;branch name&amp;gt;&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
For any repository with its own flake.nix file, the website must also be defined. Nix knows where the nixpkgs repository is, so stating that it&#039;s on GitHub is unnecessary.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
For example, adding [[Hyprland]] as an input would look something like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;inputs.hyprland.url = &amp;quot;github:hyprwm/Hyprland&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you want to make Hyprland follow the nixpkgs input to avoid having multiple versions of nixpkgs, this can be done using the following code:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;inputs.hyprland.inputs.nixpkgs.follows = &amp;quot;nixpkgs&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Using curly brackets({}), we can shorten all of this and put it in a table. The code will look something like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
inputs = {&lt;br /&gt;
  nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/&amp;lt;branch name&amp;gt;&amp;quot;;&lt;br /&gt;
  hyprland = {&lt;br /&gt;
    url = &amp;quot;github:hyprwm/Hyprland&amp;quot;;&lt;br /&gt;
    inputs.nixpkgs.follows = &amp;quot;nixpkgs&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Output schema ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This is described in the nix package manager [https://github.com/NixOS/nix/blob/master/src/nix/flake-check.md src/nix/flake-check.md].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Once the inputs are resolved, they&#039;re passed to the function `outputs` along with with `self`, which is the directory of this flake in the store. `outputs` returns the outputs of the flake, according to the following schema.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В которой:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;system&amp;gt;&amp;lt;/code&amp;gt; is something like &amp;quot;x86_64-linux&amp;quot;, &amp;quot;aarch64-linux&amp;quot;, &amp;quot;i686-linux&amp;quot;, &amp;quot;x86_64-darwin&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;name&amp;gt;&amp;lt;/code&amp;gt; is an attribute name like &amp;quot;hello&amp;quot;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;flake&amp;gt;&amp;lt;/code&amp;gt; is a flake name like &amp;quot;nixpkgs&amp;quot;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;store-path&amp;gt;&amp;lt;/code&amp;gt; is a &amp;lt;code&amp;gt;/nix/store..&amp;lt;/code&amp;gt; path&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
{ self, ... }@inputs:&lt;br /&gt;
{&lt;br /&gt;
  # Executed by `nix flake check`&lt;br /&gt;
  checks.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Executed by `nix build .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  packages.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Executed by `nix build .`&lt;br /&gt;
  packages.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.default = derivation;&lt;br /&gt;
  # Executed by `nix run .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  apps.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = {&lt;br /&gt;
    type = &amp;quot;app&amp;quot;;&lt;br /&gt;
    program = &amp;quot;&amp;lt;store-path&amp;gt;&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
  # Executed by `nix run . -- &amp;lt;args?&amp;gt;`&lt;br /&gt;
  apps.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.default = { type = &amp;quot;app&amp;quot;; program = &amp;quot;...&amp;quot;; };&lt;br /&gt;
&lt;br /&gt;
  # Formatter (alejandra, nixfmt or nixpkgs-fmt)&lt;br /&gt;
  formatter.&amp;quot;&amp;lt;system&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Used for nixpkgs packages, also accessible via `nix build .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  legacyPackages.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Overlay, consumed by other flakes&lt;br /&gt;
  overlays.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = final: prev: { };&lt;br /&gt;
  # Default overlay&lt;br /&gt;
  overlays.default = final: prev: { };&lt;br /&gt;
  # Nixos module, consumed by other flakes&lt;br /&gt;
  nixosModules.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = { config, ... }: { options = {}; config = {}; };&lt;br /&gt;
  # Default module&lt;br /&gt;
  nixosModules.default = { config, ... }: { options = {}; config = {}; };&lt;br /&gt;
  # Used with `nixos-rebuild switch --flake .#&amp;lt;hostname&amp;gt;`&lt;br /&gt;
  # nixosConfigurations.&amp;quot;&amp;lt;hostname&amp;gt;&amp;quot;.config.system.build.toplevel must be a derivation&lt;br /&gt;
  nixosConfigurations.&amp;quot;&amp;lt;hostname&amp;gt;&amp;quot; = {};&lt;br /&gt;
  # Used by `nix develop .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  devShells.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Used by `nix develop`&lt;br /&gt;
  devShells.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.default = derivation;&lt;br /&gt;
  # Hydra build jobs&lt;br /&gt;
  hydraJobs.&amp;quot;&amp;lt;attr&amp;gt;&amp;quot;.&amp;quot;&amp;lt;system&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Used by `nix flake init -t &amp;lt;flake&amp;gt;#&amp;lt;name&amp;gt;`&lt;br /&gt;
  templates.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = {&lt;br /&gt;
    path = &amp;quot;&amp;lt;store-path&amp;gt;&amp;quot;;&lt;br /&gt;
    description = &amp;quot;template description goes here?&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
  # Used by `nix flake init -t &amp;lt;flake&amp;gt;`&lt;br /&gt;
  templates.default = { path = &amp;quot;&amp;lt;store-path&amp;gt;&amp;quot;; description = &amp;quot;&amp;quot;; };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
You can also define additional arbitrary attributes, but these are the outputs that Nix knows about.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;nix_run&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== `nix run` ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
When output &amp;lt;code&amp;gt;apps.&amp;lt;system&amp;gt;.myapp&amp;lt;/code&amp;gt; is not defined, &amp;lt;code&amp;gt;nix run myapp&amp;lt;/code&amp;gt; runs &amp;lt;code&amp;gt;&amp;lt;packages or legacyPackages.&amp;lt;system&amp;gt;.myapp&amp;gt;/bin/&amp;lt;myapp.meta.mainProgram or myapp.pname or myapp.name (the non-version part)&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Using flakes with stable Nix ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
There exists the [https://github.com/edolstra/flake-compat flake-compat] library that you can use to shim &amp;lt;code&amp;gt;default.nix&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;shell.nix&amp;lt;/code&amp;gt; files. It will download the inputs of the flake, pass them to the flake’s &amp;lt;code&amp;gt;outputs&amp;lt;/code&amp;gt; function and return an attribute set containing &amp;lt;code&amp;gt;defaultNix&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;shellNix&amp;lt;/code&amp;gt; attributes. The attributes will contain the output attribute set with an extra &amp;lt;code&amp;gt;default&amp;lt;/code&amp;gt; attribute pointing to current platform’s &amp;lt;code&amp;gt;defaultPackage&amp;lt;/code&amp;gt; (resp. &amp;lt;code&amp;gt;devShell&amp;lt;/code&amp;gt; for &amp;lt;code&amp;gt;shellNix&amp;lt;/code&amp;gt;).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Place the following into &amp;lt;code&amp;gt;default.nix&amp;lt;/code&amp;gt; (for &amp;lt;code&amp;gt;shell.nix&amp;lt;/code&amp;gt;, replace &amp;lt;code&amp;gt;defaultNix&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;shellNix&amp;lt;/code&amp;gt;) to use the shim:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
(import (&lt;br /&gt;
  fetchTarball {&lt;br /&gt;
    url = &amp;quot;https://github.com/edolstra/flake-compat/archive/12c64ca55c1014cdc1b16ed5a804aa8576601ff2.tar.gz&amp;quot;;&lt;br /&gt;
    sha256 = &amp;quot;0jm6nzb83wa6ai17ly9fzpqc40wg1viib8klq8lby54agpl213w5&amp;quot;; }&lt;br /&gt;
) {&lt;br /&gt;
  src =  ./.;&lt;br /&gt;
}).defaultNix&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
You can also use the lockfile to make updating the hashes easier using &amp;lt;code&amp;gt;nix flake lock --update-input flake-compat&amp;lt;/code&amp;gt;. Add the following to your &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
  inputs.flake-compat = {&lt;br /&gt;
    url = &amp;quot;github:edolstra/flake-compat&amp;quot;;&lt;br /&gt;
    flake = false;&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
and add &amp;lt;code&amp;gt;flake-compat&amp;lt;/code&amp;gt; to the arguments of &amp;lt;code&amp;gt;outputs&amp;lt;/code&amp;gt; attribute. Then you will be able to use &amp;lt;code&amp;gt;default.nix&amp;lt;/code&amp;gt; like the following:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
(import (&lt;br /&gt;
  let&lt;br /&gt;
    lock = builtins.fromJSON (builtins.readFile ./flake.lock);&lt;br /&gt;
    nodeName = lock.nodes.root.inputs.flake-compat;&lt;br /&gt;
  in&lt;br /&gt;
  fetchTarball {&lt;br /&gt;
    url =&lt;br /&gt;
      lock.nodes.${nodeName}.locked.url&lt;br /&gt;
        or &amp;quot;https://github.com/edolstra/flake-compat/archive/${lock.nodes.${nodeName}.locked.rev}.tar.gz&amp;quot;;&lt;br /&gt;
    sha256 = lock.nodes.${nodeName}.locked.narHash;&lt;br /&gt;
  }&lt;br /&gt;
) { src = ./.; }).defaultNix&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Accessing flakes from Nix expressions ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you want to access a flake from within a regular Nix expression on a system that has flakes enabled, you can use something like &amp;lt;code&amp;gt;(builtins.getFlake &amp;quot;/path/to/directory&amp;quot;).packages.x86_64-linux.default&amp;lt;/code&amp;gt;, where &#039;directory&#039; is the directory that contains your &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Making your evaluations pure ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Nix flakes run in pure evaluation mode, which is underdocumented. Some tips for now:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* fetchurl and fetchtar [https://github.com/NixOS/nix/blob/36c4d6f59247826dde32ad2e6b5a9471a9a1c911/src/libexpr/primops/fetchTree.cc#L201 require] a sha256 argument to be considered pure.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* builtins.currentSystem is non-hermetic and impure. This can usually be avoided by passing the system (i.e., x86_64-linux) explicitly to derivations requiring it.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* Imports from channels like &amp;lt;code&amp;gt;&amp;lt;nixpkgs&amp;gt;&amp;lt;/code&amp;gt; can be made pure by instead importing from the &amp;lt;code&amp;gt;output&amp;lt;/code&amp;gt; function in &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;, where the arguments provide the store path to the flake&#039;s inputs:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
 outputs = { self, nixpkgs, ... }:&lt;br /&gt;
  {&lt;br /&gt;
    nixosConfigurations.machine = nixpkgs.lib.nixosSystem {&lt;br /&gt;
      modules = [&lt;br /&gt;
        &amp;quot;${nixpkgs}/nixos/modules/&amp;lt;some-module&amp;gt;.nix&amp;quot;&lt;br /&gt;
        ./machine.nix&lt;br /&gt;
      ];&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== The nix flakes command ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The {{ic|nix flake}} subcommand is described in [https://nixos.org/manual/nix/unstable/command-ref/new-cli/nix3-flake.html command reference page of the unstable manual].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Install_packages_with_`nix_profile`&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Установка пакетов с помощью `nix-profile` ==&lt;br /&gt;
&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-profile-install.html &amp;lt;code&amp;gt;nix profile install&amp;lt;/code&amp;gt; в документации]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Using nix flakes with NixOS ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Ic|nixos-rebuild switch}} will read its configuration from &amp;lt;code&amp;gt;/etc/nixos/flake.nix&amp;lt;/code&amp;gt; if it is present.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
A basic nixos flake.nix could look like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  inputs.nixpkgs.url = github:NixOS/nixpkgs/nixos-unstable;&lt;br /&gt;
  outputs = { self, nixpkgs }: {&lt;br /&gt;
    # replace &#039;joes-desktop&#039; with your hostname here.&lt;br /&gt;
    nixosConfigurations.joes-desktop = nixpkgs.lib.nixosSystem {&lt;br /&gt;
      modules = [ ./configuration.nix ];&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you want to pass on the flake inputs to external configuration files, you can use the &amp;lt;code&amp;gt;specialArgs&amp;lt;/code&amp;gt; attribute:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  inputs.nixpkgs.url = github:NixOS/nixpkgs/nixos-unstable;&lt;br /&gt;
  inputs.home-manager.url = github:nix-community/home-manager;&lt;br /&gt;
&lt;br /&gt;
  outputs = { self, nixpkgs, ... }@inputs: {&lt;br /&gt;
    nixosConfigurations.fnord = nixpkgs.lib.nixosSystem {&lt;br /&gt;
      specialArgs = { inherit inputs; };&lt;br /&gt;
      modules = [ ./configuration.nix ];&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Then, you can access the flake inputs from the file &amp;lt;code&amp;gt;configuration.nix&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{ config, lib, inputs, ... }: {&lt;br /&gt;
  # do something with home-manager here, for instance:&lt;br /&gt;
  imports = [ inputs.home-manager.nixosModules.default ];&lt;br /&gt;
  ...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Ic|nixos-rebuild}} also allows to specify different flake using the &amp;lt;code&amp;gt;--flake&amp;lt;/code&amp;gt; flag (# is optional):&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;console&amp;quot;&amp;gt;&lt;br /&gt;
$ sudo nixos-rebuild switch --flake .&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
By default nixos-rebuild will use the currents system hostname to lookup the right nixos configuration in &amp;lt;code&amp;gt;nixosConfigurations&amp;lt;/code&amp;gt;. You can also override this by using appending it to the flake parameter:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;console&amp;quot;&amp;gt;&lt;br /&gt;
$ sudo nixos-rebuild switch --flake /etc/nixos#joes-desktop&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To switch a remote host you can use:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ nixos-rebuild --flake .#mymachine \&lt;br /&gt;
  --target-host mymachine-hostname \&lt;br /&gt;
  --build-host mymachine-hostname --fast \&lt;br /&gt;
  switch&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{warning|Remote building seems to have an issue that&#039;s [https://github.com/NixOS/nixpkgs/issues/134952#issuecomment-1367056358 resolved by setting the &amp;lt;code&amp;gt;--fast&amp;lt;/code&amp;gt; flag].}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Pinning the registry on NixOS ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{ inputs, ... }:&lt;br /&gt;
{&lt;br /&gt;
 nix.registry = {&lt;br /&gt;
    nixpkgs.flake = inputs.nixpkgs;&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To make sure the registry entry is &amp;quot;locked&amp;quot;, use the following:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
  nix.registry = {&lt;br /&gt;
    nixpkgs.to = {&lt;br /&gt;
      type = &amp;quot;path&amp;quot;;&lt;br /&gt;
      path = pkgs.path;&lt;br /&gt;
      narHash = builtins.readFile&lt;br /&gt;
          (pkgs.runCommandLocal &amp;quot;get-nixpkgs-hash&amp;quot;&lt;br /&gt;
            { nativeBuildInputs = [ pkgs.nix ]; }&lt;br /&gt;
            &amp;quot;nix-hash --type sha256 --sri ${pkgs.path} &amp;gt; $out&amp;quot;);&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This has the unfortunate side-effect of requiring import-from-derivation and slowing down build times, however it may greatly speed up almost every eval. Full-time flakes users may be able to just use &amp;lt;code&amp;gt;narHash = pkgs.narHash&amp;lt;/code&amp;gt;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Super_fast_nix-shell&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Супер быстрая nix-shell ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
A feature of the nix Flake edition is that Nix evaluations are cached.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Допустим, в вашем проекте есть файл &amp;lt;code&amp;gt;shell.nix&amp;lt;/code&amp;gt;, который выглядит следующим образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  pkgs ? import &amp;lt;nixpkgs&amp;gt; { },&lt;br /&gt;
}:&lt;br /&gt;
pkgs.mkShell {&lt;br /&gt;
  packages = [ pkgs.nixfmt ];&lt;br /&gt;
&lt;br /&gt;
  shellHook = &#039;&#039;&lt;br /&gt;
    # ...&lt;br /&gt;
  &#039;&#039;;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Running nix-shell can be a bit slow and take 1-3 seconds.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Now create a &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt; file in the same repository:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  inputs.nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/nixpkgs-unstable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
  outputs =&lt;br /&gt;
    { nixpkgs, ... }:&lt;br /&gt;
    {&lt;br /&gt;
      /*&lt;br /&gt;
        This example assumes your system is x86_64-linux&lt;br /&gt;
        change as neccesary&lt;br /&gt;
      */&lt;br /&gt;
      devShells.x86_64-linux =&lt;br /&gt;
        let&lt;br /&gt;
          pkgs = nixpkgs.legacyPackages.x86_64-linux;&lt;br /&gt;
        in&lt;br /&gt;
        {&lt;br /&gt;
          default = pkgs.mkShell {&lt;br /&gt;
            packages = [ pkgs.hello ];&lt;br /&gt;
          };&lt;br /&gt;
        };&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
( If you&#039;re in a git repository run `git add flake.nix` so that Nix recognizes it. )&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
And finally, run &amp;lt;code&amp;gt;nix develop&amp;lt;/code&amp;gt;. This is what replaces the old nix-shell invocation.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Exit and run again, this command should now be super fast.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{warning|TODO: there is an alternative version where the defaultPackage is a pkgs.buildEnv that contains all the dependencies. And then nix shell is used to open the environment.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Automatically_switch_nix_shells_with_nix-direnv&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Автоматическое переключение оболочек nix с nix-direnv ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
You can easily switch nix shells when you cd into different projects with [https://github.com/nix-community/nix-direnv nix-direnv].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Pushing Flakes to Cachix ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
https://docs.cachix.org/pushing#flakes&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To push &#039;&#039;all&#039;&#039; flake outputs automatically, checkout [https://github.com/srid/devour-flake#usage devour-flake].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Build specific attributes in a flake repository ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
When in the repository top-level, run &amp;lt;code&amp;gt;nix build .#&amp;lt;attr&amp;gt;&amp;lt;/code&amp;gt;. It will look in the &amp;lt;code&amp;gt;legacyPackages&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;packages&amp;lt;/code&amp;gt; output attributes for the corresponding derivation.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Eg, in nixpkgs:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=console&amp;gt;&lt;br /&gt;
$ nix build .#hello&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Building flakes from a Git repo url with submodules ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
As per nix 2.9.1, git submodules in package &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt;&#039;s won&#039;t get copied to the nix store, this may cause the build to fail.  To workaround this, use:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;console&amp;quot;&amp;gt;&lt;br /&gt;
nix build &#039;.?submodules=1#hello&#039;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
See: https://github.com/NixOS/nix/pull/5434&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Importing_packages_from_multiple_nixpkgs_branches&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Импорт пакетов из нескольких веток nixpkgs ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
A NixOS config flake could be as follows:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  description = &amp;quot;NixOS configuration with two or more channels&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
 inputs = {&lt;br /&gt;
    nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/nixos-23.11&amp;quot;;&lt;br /&gt;
    nixpkgs-unstable.url = &amp;quot;github:NixOS/nixpkgs/nixos-unstable&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
  outputs =&lt;br /&gt;
    { nixpkgs, nixpkgs-unstable, ... }:&lt;br /&gt;
    {&lt;br /&gt;
      nixosConfigurations.&amp;quot;&amp;lt;hostname&amp;gt;&amp;quot; = nixpkgs.lib.nixosSystem {&lt;br /&gt;
        modules = [&lt;br /&gt;
          {&lt;br /&gt;
            nixpkgs.overlays = [&lt;br /&gt;
              (final: prev: {&lt;br /&gt;
                unstable = nixpkgs-unstable.legacyPackages.${prev.system};&lt;br /&gt;
                # use this variant if unfree packages are needed:&lt;br /&gt;
                # unstable = import nixpkgs-unstable {&lt;br /&gt;
                #   inherit system;&lt;br /&gt;
                #   config.allowUnfree = true;&lt;br /&gt;
                # };&lt;br /&gt;
              })&lt;br /&gt;
            ];&lt;br /&gt;
          }&lt;br /&gt;
          ./configuration.nix&lt;br /&gt;
        ];&lt;br /&gt;
      };&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
# NixOS configuration.nix, can now use &amp;quot;pkgs.package&amp;quot; or &amp;quot;pkgs.unstable.package&amp;quot;&lt;br /&gt;
{ pkgs, ... }:&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = [&lt;br /&gt;
    pkgs.firefox&lt;br /&gt;
    pkgs.unstable.chromium&lt;br /&gt;
  ];&lt;br /&gt;
  # ...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If the variable &amp;lt;code&amp;gt;nixpkgs&amp;lt;/code&amp;gt; points to the flake, you can also define &amp;lt;code&amp;gt;pkgs&amp;lt;/code&amp;gt; with overlays with:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
pkgs = import nixpkgs { system = &amp;quot;x86_64-linux&amp;quot;; overlays = [ /*the overlay in question*/ ]; };&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Getting &#039;&#039;Instant&#039;&#039; System Flakes Repl ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
How to get a nix repl out of your system flake:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
$ nix repl&lt;br /&gt;
&lt;br /&gt;
nix-repl&amp;gt; :lf /path/to/flake&lt;br /&gt;
Added 18 variables.&lt;br /&gt;
&lt;br /&gt;
nix-repl&amp;gt; nixosConfigurations.myHost.config.networking.hostName&lt;br /&gt;
&amp;quot;myHost&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
However, this won&#039;t be instant upon evaluation if any file changes have been done since your last configuration rebuild. Instead, if one puts:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
nix.nixPath = let path = toString ./.; in [ &amp;quot;repl=${path}/repl.nix&amp;quot; &amp;quot;nixpkgs=${inputs.nixpkgs}&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
In their system &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt; configuration file, and includes the following file in their root directory flake as &amp;lt;code&amp;gt;repl.nix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
let&lt;br /&gt;
  flake = builtins.getFlake (toString ./.);&lt;br /&gt;
  nixpkgs = import &amp;lt;nixpkgs&amp;gt; { };&lt;br /&gt;
in&lt;br /&gt;
{ inherit flake; }&lt;br /&gt;
// flake&lt;br /&gt;
// builtins&lt;br /&gt;
// nixpkgs&lt;br /&gt;
// nixpkgs.lib&lt;br /&gt;
// flake.nixosConfigurations&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
(Don&#039;t forget to &amp;lt;code&amp;gt;git add repl.nix &amp;amp;&amp;amp; nixos-rebuild  switch --flake &amp;quot;/etc/nixos&amp;quot;&amp;lt;/code&amp;gt;)&lt;br /&gt;
Then one can run (or bind a shell alias):&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=bash&amp;gt;&lt;br /&gt;
source /etc/set-environment &amp;amp;&amp;amp; nix repl $(echo $NIX_PATH | perl -pe &#039;s|.*(/nix/store/.*-source/repl.nix).*|\1|&#039;)&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This will launch a repl with access to &amp;lt;code&amp;gt;nixpkgs&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;lib&amp;lt;/code&amp;gt;, and the &amp;lt;code&amp;gt;flake&amp;lt;/code&amp;gt; options in a split of a second.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
An alternative approach to the above shell alias is omitting &amp;lt;code&amp;gt;repl&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;nix.nixPath&amp;lt;/code&amp;gt; and creating a shell script:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
nix.nixPath = [ &amp;quot;nixpkgs=${inputs.nixpkgs}&amp;quot; ];&lt;br /&gt;
environment.systemPackages = let&lt;br /&gt;
  repl_path = toString ./.;&lt;br /&gt;
  my-nix-fast-repl = pkgs.writeShellScriptBin &amp;quot;my-nix-fast-repl&amp;quot; &#039;&#039;&lt;br /&gt;
    source /etc/set-environment&lt;br /&gt;
    nix repl &amp;quot;${repl_path}/repl.nix&amp;quot; &amp;quot;$@&amp;quot;&lt;br /&gt;
  &#039;&#039;;&lt;br /&gt;
in [&lt;br /&gt;
  my-nix-fast-repl&lt;br /&gt;
];&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Enable_unfree_software&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Включить несвободное ПО ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Refer to [[Unfree software|Unfree Software]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Development_tricks&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Трюки для разработки ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Build a package added in a PR ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight&amp;gt;&lt;br /&gt;
nix build github:nixos/nixpkgs?ref=pull/&amp;lt;PR_NUMBER&amp;gt;/head#&amp;lt;PACKAGE&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
this allows building a package that has not yet been added to nixpkgs.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
note that this will download a full source tarball of nixpkgs.  if you already have a local clone, using that may be faster due to delta compression:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight&amp;gt;&lt;br /&gt;
git fetch upstream pull/&amp;lt;PR_NUMBER&amp;gt;/head &amp;amp;&amp;amp; git checkout FETCH_HEAD &amp;amp;&amp;amp; nix build .#PACKAGE&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
this allows building a package that has not yet been added to nixpkgs.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== How to add a file locally in git but not include it in commits ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
When a git folder exists, flake will only copy files added in git to maximize reproducibility (this way if you forgot to add a local file in your repo, you will directly get an error when you try to compile it). However, for development purpose you may want to create an alternative flake file, for instance containing configuration for your preferred editors as described [https://discourse.nixos.org/t/local-personal-development-tools-with-flakes/22714/8 here]… of course without committing this file since it contains only your own preferred tools. You can do so by doing something like that (say for a file called &amp;lt;code&amp;gt;extra/flake.nix&amp;lt;/code&amp;gt;):&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight&amp;gt;&lt;br /&gt;
git add --intent-to-add extra/flake.nix&lt;br /&gt;
git update-index --skip-worktree --assume-unchanged extra/flake.nix&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Rapid iteration of a direct dependency ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
One common pain point with using Nix as a development environment is the need to completely rebuild dependencies and re-enter the dev shell every time they are updated. The &amp;lt;code&amp;gt;nix develop --redirect &amp;lt;flake&amp;gt; &amp;lt;directory&amp;gt;&amp;lt;/code&amp;gt; command allows you to provide a mutable dependency to your shell as if it were built by Nix.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Consider a situation where your executable, &amp;lt;code&amp;gt;consumexe&amp;lt;/code&amp;gt;, depends on a library, &amp;lt;code&amp;gt;libdep&amp;lt;/code&amp;gt;. You&#039;re trying to work on both at the same time, where changes to &amp;lt;code&amp;gt;libdep&amp;lt;/code&amp;gt; are reflected in real time for &amp;lt;code&amp;gt;consumexe&amp;lt;/code&amp;gt;. This workflow can be achieved like so:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=bash&amp;gt;&lt;br /&gt;
cd ~/libdep-src-checkout/&lt;br /&gt;
nix develop # Or `nix-shell` if applicable.&lt;br /&gt;
export prefix=&amp;quot;./install&amp;quot; # configure nix to install it here&lt;br /&gt;
buildPhase   # build it like nix does&lt;br /&gt;
installPhase # install it like nix does&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Now that you&#039;ve built the dependency, &amp;lt;code&amp;gt;consumexe&amp;lt;/code&amp;gt; can take it as an input. &#039;&#039;&#039;In another terminal&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=bash&amp;gt;&lt;br /&gt;
cd ~/consumexe-src-checkout/&lt;br /&gt;
nix develop --redirect libdep ~/libdep-src-checkout/install&lt;br /&gt;
echo $buildInputs | tr &amp;quot; &amp;quot; &amp;quot;\n&amp;quot; | grep libdep&lt;br /&gt;
# Output should show ~/libdep-src-checkout/ so you know it worked&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If Nix warns you that your redirected flake isn&#039;t actually used as an input to the evaluated flake, try using the &amp;lt;code&amp;gt;--inputs-from .&amp;lt;/code&amp;gt; flag. If all worked well you should be able to &amp;lt;code&amp;gt;buildPhase &amp;amp;&amp;amp; installPhase&amp;lt;/code&amp;gt; when the dependency changes and rebuild your consumer with the new version &#039;&#039;without&#039;&#039; exiting the development shell.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;See_also&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== См. также ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://nix.dev/concepts/flakes Flakes] - nix.dev&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/NixOS/rfcs/pull/49 RFC 49] (2019) - Original flakes specification&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://jade.fyi/blog/flakes-arent-real/ Flakes aren&#039;t real and can&#039;t hurt you] (Jade Lovelace, 2024)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/ryan4yin/nixos-and-flakes-book NixOS &amp;amp; Flakes Book](Ryan4yin, 2023) - 🛠️ ❤️ An unofficial NixOS &amp;amp; Flakes book for beginners.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://xeiaso.net/blog/nix-flakes-1-2022-02-21 Nix Flakes: an Introduction] (Xe Iaso, 2022)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://serokell.io/blog/practical-nix-flakes Practical Nix Flakes] (Alexander Bantyev, 2021) - Intro article on working with Nix and Flakes&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.tweag.io/blog/2020-05-25-flakes/ Nix Flakes, Part 1: An introduction and tutorial] (Eelco Dolstra, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.tweag.io/blog/2020-06-25-eval-cache/ Nix Flakes, Part 2: Evaluation caching] (Eelco Dolstra, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.tweag.io/blog/2020-07-31-nixos-flakes/ Nix Flakes, Part 3: Managing NixOS systems] (Eelco Dolstra, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://nixos.org/manual/nix/unstable/command-ref/new-cli/nix3-flake.html Nix flake command reference manual] - Many additional details about flakes, and their parts.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.youtube.com/watch?v=QXUlhnhuRX4&amp;amp;list=PLgknCdxP89RcGPTjngfNR9WmBgvD_xW0l Nix flakes 101: Introduction to nix flakes] (Jörg Thalheim, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/NixOS/nix/blob/master/src/nix/flake.md spec describing flake inputs in more detail]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/numtide/flake-utils flake-utils: Library to avoid some boiler-code when writing flakes]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://zimbatm.com/NixFlakes/#direnv-integration zimbat&#039;s direnv article]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/nix-community/todomvc-nix building Rust and Haskell flakes]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software]]&lt;br /&gt;
[[Category:Nix]]&lt;br /&gt;
[[Category:Flakes]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Flakes/31/ru&amp;diff=19599</id>
		<title>Translations:Flakes/31/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Flakes/31/ru&amp;diff=19599"/>
		<updated>2025-01-10T20:40:20Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;=== Входная схема ===&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Входная схема ===&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Flakes/ru&amp;diff=19598</id>
		<title>Flakes/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Flakes/ru&amp;diff=19598"/>
		<updated>2025-01-10T20:39:41Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;В которой:&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nix flakes&#039;&#039;&#039; это [https://nixos.org/manual/nix/stable/contributing/experimental-Features.html экспериментальная особенность] которая была представлена с Nix 2.4 ([https://nixos.org/manual/nix/unstable/release-notes/rl-2.4.html см. Примечания к выпуску]).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Introduction&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== Введение ====&lt;br /&gt;
&lt;br /&gt;
Nix flakes обеспечивают единую структуру для Nix-проектов, фиксируют версии зависимостей в лок-файле и делают более удобным написание воспроизводимых Nix-выражений.&lt;br /&gt;
&lt;br /&gt;
* [https://nixos.org/manual/nix/unstable/command-ref/new-cli/nix3-flake.html#description flake]  это файловая структура, корневая директория которой содержит спецификацию Nix в файле &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* Содержимое файла &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt; следует единой схеме наименования для объявления пакетов и их зависимостей на языке Nix.&lt;br /&gt;
&lt;br /&gt;
Флейки вводят [https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-references синтаксис, похожий на URL] для указания удалённых источников.&lt;br /&gt;
&lt;br /&gt;
* Чтобы упростить длинный синтаксис URL с помощью более коротких названий, [https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-registry.html флейки используют реестр] символических идентификаторов.&lt;br /&gt;
&lt;br /&gt;
* Флейки также позволяют фиксировать ссылки и версии, которые затем могут быть запрошены и обновлены программно.&lt;br /&gt;
&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix.html Экспериментальный интерфейс командной строки] принимает ссылки на флейки для выражений, которые создают, запускают и развёртывают пакеты.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Enable_flakes_temporarily&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== Временно включить поддержку Flakes ====&lt;br /&gt;
&lt;br /&gt;
При использовании любой команды &amp;lt;code&amp;gt;nix&amp;lt;/code&amp;gt; добавьте следующие параметры командной строки:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
 --experimental-features &#039;nix-command flakes&#039;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Enable_flakes_permanently_in_NixOS&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
====Включить flakes на постоянной основе в NixOS====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Add the following to the [[Overview_of_the_NixOS_Linux_distribution#Declarative_Configuration system configuration |NixOS configuration]]:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
  nix.settings.experimental-features = [ &amp;quot;nix-command&amp;quot; &amp;quot;flakes&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Other_Distros,_with_Home-Manager&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
===== В других Дистрибутивах, с Home-Manager =====&lt;br /&gt;
&lt;br /&gt;
Добавьте следующее в свою конфигурацию Home-Manager:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
  nix.settings.experimental-features = [ &amp;quot;nix-command&amp;quot; &amp;quot;flakes&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Other_Distros,_without_Home-Manager&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=====Другие Дистрибутивы, без Home-Manager=====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Note | The  [https://github.com/DeterminateSystems/nix-installer Determinate Nix Installer] enables flakes by default.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Добавьте следующее в &amp;lt;code&amp;gt;~/.config/nix/nix.conf&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;/etc/nix/nix.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=text&amp;gt;&lt;br /&gt;
experimental-features = nix-command flakes&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Basic_Usage_of_Flake&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Основное Использование Flake ===&lt;br /&gt;
&lt;br /&gt;
Прежде чем выполнять какие-либо команды nix на этом этапе, обратите внимание на два предупреждения ниже: одно для шифрования, другое для git.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
====Encryption WARNING====&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Warning | Since contents of flake files are copied to the world-readable Nix store folder, do not put any unencrypted secrets in flake files. You should instead use a [[Comparison of secret managing schemes|secret managing scheme]].}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Git_WARNING&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== Предупреждение Git ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
For flakes in git repos, only files in the working tree will be copied to the store.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Therefore, if you use &amp;lt;code&amp;gt;git&amp;lt;/code&amp;gt; for your flake, ensure to &amp;lt;code&amp;gt;git add&amp;lt;/code&amp;gt; any project files after you first create them.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
See also https://www.tweag.io/blog/2020-05-25-flakes/&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Generate_flake.nix_file&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
====Создание файла flake.nix====&lt;br /&gt;
&lt;br /&gt;
Чтобы начать базовое использование Flakes, выполните команду flake в каталоге проекта:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=text&amp;gt;&lt;br /&gt;
nix flake init&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Flake schema ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The flake.nix file is a Nix file but that has special restrictions (more on that later).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
It has 4 top-level attributes:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;description&amp;lt;/code&amp;gt; это строка описывающая flake.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;inputs&amp;lt;/code&amp;gt; is an attribute set of all the dependencies of the flake. The schema is described below.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;outputs&amp;lt;/code&amp;gt; is a function of one argument that takes an attribute set of all the realized inputs, and outputs another attribute set whose schema is described below.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nixConfig&amp;lt;/code&amp;gt; is an attribute set of values which reflect the [https://nixos.org/manual/nix/stable/command-ref/conf-file.html values given to nix.conf]. This can extend the normal behavior of a user&#039;s nix experience by adding flake-specific configuration, such as a binary cache.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Input schema ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-inputs The nix flake inputs manual].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-references The nix flake references manual].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The inputs attribute defines the dependencies of the flake. For example, nixpkgs has to be defined as a dependency for a system flake in order for the system to build properly.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Nixpkgs can be defined using the following code:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;inputs.nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/&amp;lt;branch name&amp;gt;&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
For any repository with its own flake.nix file, the website must also be defined. Nix knows where the nixpkgs repository is, so stating that it&#039;s on GitHub is unnecessary.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
For example, adding [[Hyprland]] as an input would look something like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;inputs.hyprland.url = &amp;quot;github:hyprwm/Hyprland&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you want to make Hyprland follow the nixpkgs input to avoid having multiple versions of nixpkgs, this can be done using the following code:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;inputs.hyprland.inputs.nixpkgs.follows = &amp;quot;nixpkgs&amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Using curly brackets({}), we can shorten all of this and put it in a table. The code will look something like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
inputs = {&lt;br /&gt;
  nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/&amp;lt;branch name&amp;gt;&amp;quot;;&lt;br /&gt;
  hyprland = {&lt;br /&gt;
    url = &amp;quot;github:hyprwm/Hyprland&amp;quot;;&lt;br /&gt;
    inputs.nixpkgs.follows = &amp;quot;nixpkgs&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Output schema ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This is described in the nix package manager [https://github.com/NixOS/nix/blob/master/src/nix/flake-check.md src/nix/flake-check.md].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Once the inputs are resolved, they&#039;re passed to the function `outputs` along with with `self`, which is the directory of this flake in the store. `outputs` returns the outputs of the flake, according to the following schema.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В которой:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;system&amp;gt;&amp;lt;/code&amp;gt; is something like &amp;quot;x86_64-linux&amp;quot;, &amp;quot;aarch64-linux&amp;quot;, &amp;quot;i686-linux&amp;quot;, &amp;quot;x86_64-darwin&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;name&amp;gt;&amp;lt;/code&amp;gt; is an attribute name like &amp;quot;hello&amp;quot;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;flake&amp;gt;&amp;lt;/code&amp;gt; is a flake name like &amp;quot;nixpkgs&amp;quot;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;lt;store-path&amp;gt;&amp;lt;/code&amp;gt; is a &amp;lt;code&amp;gt;/nix/store..&amp;lt;/code&amp;gt; path&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
{ self, ... }@inputs:&lt;br /&gt;
{&lt;br /&gt;
  # Executed by `nix flake check`&lt;br /&gt;
  checks.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Executed by `nix build .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  packages.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Executed by `nix build .`&lt;br /&gt;
  packages.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.default = derivation;&lt;br /&gt;
  # Executed by `nix run .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  apps.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = {&lt;br /&gt;
    type = &amp;quot;app&amp;quot;;&lt;br /&gt;
    program = &amp;quot;&amp;lt;store-path&amp;gt;&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
  # Executed by `nix run . -- &amp;lt;args?&amp;gt;`&lt;br /&gt;
  apps.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.default = { type = &amp;quot;app&amp;quot;; program = &amp;quot;...&amp;quot;; };&lt;br /&gt;
&lt;br /&gt;
  # Formatter (alejandra, nixfmt or nixpkgs-fmt)&lt;br /&gt;
  formatter.&amp;quot;&amp;lt;system&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Used for nixpkgs packages, also accessible via `nix build .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  legacyPackages.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Overlay, consumed by other flakes&lt;br /&gt;
  overlays.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = final: prev: { };&lt;br /&gt;
  # Default overlay&lt;br /&gt;
  overlays.default = final: prev: { };&lt;br /&gt;
  # Nixos module, consumed by other flakes&lt;br /&gt;
  nixosModules.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = { config, ... }: { options = {}; config = {}; };&lt;br /&gt;
  # Default module&lt;br /&gt;
  nixosModules.default = { config, ... }: { options = {}; config = {}; };&lt;br /&gt;
  # Used with `nixos-rebuild switch --flake .#&amp;lt;hostname&amp;gt;`&lt;br /&gt;
  # nixosConfigurations.&amp;quot;&amp;lt;hostname&amp;gt;&amp;quot;.config.system.build.toplevel must be a derivation&lt;br /&gt;
  nixosConfigurations.&amp;quot;&amp;lt;hostname&amp;gt;&amp;quot; = {};&lt;br /&gt;
  # Used by `nix develop .#&amp;lt;name&amp;gt;`&lt;br /&gt;
  devShells.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Used by `nix develop`&lt;br /&gt;
  devShells.&amp;quot;&amp;lt;system&amp;gt;&amp;quot;.default = derivation;&lt;br /&gt;
  # Hydra build jobs&lt;br /&gt;
  hydraJobs.&amp;quot;&amp;lt;attr&amp;gt;&amp;quot;.&amp;quot;&amp;lt;system&amp;gt;&amp;quot; = derivation;&lt;br /&gt;
  # Used by `nix flake init -t &amp;lt;flake&amp;gt;#&amp;lt;name&amp;gt;`&lt;br /&gt;
  templates.&amp;quot;&amp;lt;name&amp;gt;&amp;quot; = {&lt;br /&gt;
    path = &amp;quot;&amp;lt;store-path&amp;gt;&amp;quot;;&lt;br /&gt;
    description = &amp;quot;template description goes here?&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
  # Used by `nix flake init -t &amp;lt;flake&amp;gt;`&lt;br /&gt;
  templates.default = { path = &amp;quot;&amp;lt;store-path&amp;gt;&amp;quot;; description = &amp;quot;&amp;quot;; };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
You can also define additional arbitrary attributes, but these are the outputs that Nix knows about.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;nix_run&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== `nix run` ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
When output &amp;lt;code&amp;gt;apps.&amp;lt;system&amp;gt;.myapp&amp;lt;/code&amp;gt; is not defined, &amp;lt;code&amp;gt;nix run myapp&amp;lt;/code&amp;gt; runs &amp;lt;code&amp;gt;&amp;lt;packages or legacyPackages.&amp;lt;system&amp;gt;.myapp&amp;gt;/bin/&amp;lt;myapp.meta.mainProgram or myapp.pname or myapp.name (the non-version part)&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Using flakes with stable Nix ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
There exists the [https://github.com/edolstra/flake-compat flake-compat] library that you can use to shim &amp;lt;code&amp;gt;default.nix&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;shell.nix&amp;lt;/code&amp;gt; files. It will download the inputs of the flake, pass them to the flake’s &amp;lt;code&amp;gt;outputs&amp;lt;/code&amp;gt; function and return an attribute set containing &amp;lt;code&amp;gt;defaultNix&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;shellNix&amp;lt;/code&amp;gt; attributes. The attributes will contain the output attribute set with an extra &amp;lt;code&amp;gt;default&amp;lt;/code&amp;gt; attribute pointing to current platform’s &amp;lt;code&amp;gt;defaultPackage&amp;lt;/code&amp;gt; (resp. &amp;lt;code&amp;gt;devShell&amp;lt;/code&amp;gt; for &amp;lt;code&amp;gt;shellNix&amp;lt;/code&amp;gt;).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Place the following into &amp;lt;code&amp;gt;default.nix&amp;lt;/code&amp;gt; (for &amp;lt;code&amp;gt;shell.nix&amp;lt;/code&amp;gt;, replace &amp;lt;code&amp;gt;defaultNix&amp;lt;/code&amp;gt; with &amp;lt;code&amp;gt;shellNix&amp;lt;/code&amp;gt;) to use the shim:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
(import (&lt;br /&gt;
  fetchTarball {&lt;br /&gt;
    url = &amp;quot;https://github.com/edolstra/flake-compat/archive/12c64ca55c1014cdc1b16ed5a804aa8576601ff2.tar.gz&amp;quot;;&lt;br /&gt;
    sha256 = &amp;quot;0jm6nzb83wa6ai17ly9fzpqc40wg1viib8klq8lby54agpl213w5&amp;quot;; }&lt;br /&gt;
) {&lt;br /&gt;
  src =  ./.;&lt;br /&gt;
}).defaultNix&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
You can also use the lockfile to make updating the hashes easier using &amp;lt;code&amp;gt;nix flake lock --update-input flake-compat&amp;lt;/code&amp;gt;. Add the following to your &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
  inputs.flake-compat = {&lt;br /&gt;
    url = &amp;quot;github:edolstra/flake-compat&amp;quot;;&lt;br /&gt;
    flake = false;&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
and add &amp;lt;code&amp;gt;flake-compat&amp;lt;/code&amp;gt; to the arguments of &amp;lt;code&amp;gt;outputs&amp;lt;/code&amp;gt; attribute. Then you will be able to use &amp;lt;code&amp;gt;default.nix&amp;lt;/code&amp;gt; like the following:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
(import (&lt;br /&gt;
  let&lt;br /&gt;
    lock = builtins.fromJSON (builtins.readFile ./flake.lock);&lt;br /&gt;
    nodeName = lock.nodes.root.inputs.flake-compat;&lt;br /&gt;
  in&lt;br /&gt;
  fetchTarball {&lt;br /&gt;
    url =&lt;br /&gt;
      lock.nodes.${nodeName}.locked.url&lt;br /&gt;
        or &amp;quot;https://github.com/edolstra/flake-compat/archive/${lock.nodes.${nodeName}.locked.rev}.tar.gz&amp;quot;;&lt;br /&gt;
    sha256 = lock.nodes.${nodeName}.locked.narHash;&lt;br /&gt;
  }&lt;br /&gt;
) { src = ./.; }).defaultNix&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Accessing flakes from Nix expressions ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you want to access a flake from within a regular Nix expression on a system that has flakes enabled, you can use something like &amp;lt;code&amp;gt;(builtins.getFlake &amp;quot;/path/to/directory&amp;quot;).packages.x86_64-linux.default&amp;lt;/code&amp;gt;, where &#039;directory&#039; is the directory that contains your &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Making your evaluations pure ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Nix flakes run in pure evaluation mode, which is underdocumented. Some tips for now:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* fetchurl and fetchtar [https://github.com/NixOS/nix/blob/36c4d6f59247826dde32ad2e6b5a9471a9a1c911/src/libexpr/primops/fetchTree.cc#L201 require] a sha256 argument to be considered pure.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* builtins.currentSystem is non-hermetic and impure. This can usually be avoided by passing the system (i.e., x86_64-linux) explicitly to derivations requiring it.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* Imports from channels like &amp;lt;code&amp;gt;&amp;lt;nixpkgs&amp;gt;&amp;lt;/code&amp;gt; can be made pure by instead importing from the &amp;lt;code&amp;gt;output&amp;lt;/code&amp;gt; function in &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt;, where the arguments provide the store path to the flake&#039;s inputs:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
 outputs = { self, nixpkgs, ... }:&lt;br /&gt;
  {&lt;br /&gt;
    nixosConfigurations.machine = nixpkgs.lib.nixosSystem {&lt;br /&gt;
      modules = [&lt;br /&gt;
        &amp;quot;${nixpkgs}/nixos/modules/&amp;lt;some-module&amp;gt;.nix&amp;quot;&lt;br /&gt;
        ./machine.nix&lt;br /&gt;
      ];&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== The nix flakes command ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The {{ic|nix flake}} subcommand is described in [https://nixos.org/manual/nix/unstable/command-ref/new-cli/nix3-flake.html command reference page of the unstable manual].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Install_packages_with_`nix_profile`&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Установка пакетов с помощью `nix-profile` ==&lt;br /&gt;
&lt;br /&gt;
[https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-profile-install.html &amp;lt;code&amp;gt;nix profile install&amp;lt;/code&amp;gt; в документации]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Using nix flakes with NixOS ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Ic|nixos-rebuild switch}} will read its configuration from &amp;lt;code&amp;gt;/etc/nixos/flake.nix&amp;lt;/code&amp;gt; if it is present.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
A basic nixos flake.nix could look like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  inputs.nixpkgs.url = github:NixOS/nixpkgs/nixos-unstable;&lt;br /&gt;
  outputs = { self, nixpkgs }: {&lt;br /&gt;
    # replace &#039;joes-desktop&#039; with your hostname here.&lt;br /&gt;
    nixosConfigurations.joes-desktop = nixpkgs.lib.nixosSystem {&lt;br /&gt;
      modules = [ ./configuration.nix ];&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you want to pass on the flake inputs to external configuration files, you can use the &amp;lt;code&amp;gt;specialArgs&amp;lt;/code&amp;gt; attribute:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  inputs.nixpkgs.url = github:NixOS/nixpkgs/nixos-unstable;&lt;br /&gt;
  inputs.home-manager.url = github:nix-community/home-manager;&lt;br /&gt;
&lt;br /&gt;
  outputs = { self, nixpkgs, ... }@inputs: {&lt;br /&gt;
    nixosConfigurations.fnord = nixpkgs.lib.nixosSystem {&lt;br /&gt;
      specialArgs = { inherit inputs; };&lt;br /&gt;
      modules = [ ./configuration.nix ];&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Then, you can access the flake inputs from the file &amp;lt;code&amp;gt;configuration.nix&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{ config, lib, inputs, ... }: {&lt;br /&gt;
  # do something with home-manager here, for instance:&lt;br /&gt;
  imports = [ inputs.home-manager.nixosModules.default ];&lt;br /&gt;
  ...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Ic|nixos-rebuild}} also allows to specify different flake using the &amp;lt;code&amp;gt;--flake&amp;lt;/code&amp;gt; flag (# is optional):&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;console&amp;quot;&amp;gt;&lt;br /&gt;
$ sudo nixos-rebuild switch --flake .&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
By default nixos-rebuild will use the currents system hostname to lookup the right nixos configuration in &amp;lt;code&amp;gt;nixosConfigurations&amp;lt;/code&amp;gt;. You can also override this by using appending it to the flake parameter:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;console&amp;quot;&amp;gt;&lt;br /&gt;
$ sudo nixos-rebuild switch --flake /etc/nixos#joes-desktop&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To switch a remote host you can use:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ nixos-rebuild --flake .#mymachine \&lt;br /&gt;
  --target-host mymachine-hostname \&lt;br /&gt;
  --build-host mymachine-hostname --fast \&lt;br /&gt;
  switch&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{warning|Remote building seems to have an issue that&#039;s [https://github.com/NixOS/nixpkgs/issues/134952#issuecomment-1367056358 resolved by setting the &amp;lt;code&amp;gt;--fast&amp;lt;/code&amp;gt; flag].}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Pinning the registry on NixOS ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{ inputs, ... }:&lt;br /&gt;
{&lt;br /&gt;
 nix.registry = {&lt;br /&gt;
    nixpkgs.flake = inputs.nixpkgs;&lt;br /&gt;
  };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To make sure the registry entry is &amp;quot;locked&amp;quot;, use the following:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
  nix.registry = {&lt;br /&gt;
    nixpkgs.to = {&lt;br /&gt;
      type = &amp;quot;path&amp;quot;;&lt;br /&gt;
      path = pkgs.path;&lt;br /&gt;
      narHash = builtins.readFile&lt;br /&gt;
          (pkgs.runCommandLocal &amp;quot;get-nixpkgs-hash&amp;quot;&lt;br /&gt;
            { nativeBuildInputs = [ pkgs.nix ]; }&lt;br /&gt;
            &amp;quot;nix-hash --type sha256 --sri ${pkgs.path} &amp;gt; $out&amp;quot;);&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This has the unfortunate side-effect of requiring import-from-derivation and slowing down build times, however it may greatly speed up almost every eval. Full-time flakes users may be able to just use &amp;lt;code&amp;gt;narHash = pkgs.narHash&amp;lt;/code&amp;gt;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Super_fast_nix-shell&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Супер быстрая nix-shell ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
A feature of the nix Flake edition is that Nix evaluations are cached.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Допустим, в вашем проекте есть файл &amp;lt;code&amp;gt;shell.nix&amp;lt;/code&amp;gt;, который выглядит следующим образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  pkgs ? import &amp;lt;nixpkgs&amp;gt; { },&lt;br /&gt;
}:&lt;br /&gt;
pkgs.mkShell {&lt;br /&gt;
  packages = [ pkgs.nixfmt ];&lt;br /&gt;
&lt;br /&gt;
  shellHook = &#039;&#039;&lt;br /&gt;
    # ...&lt;br /&gt;
  &#039;&#039;;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Running nix-shell can be a bit slow and take 1-3 seconds.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Now create a &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt; file in the same repository:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  inputs.nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/nixpkgs-unstable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
  outputs =&lt;br /&gt;
    { nixpkgs, ... }:&lt;br /&gt;
    {&lt;br /&gt;
      /*&lt;br /&gt;
        This example assumes your system is x86_64-linux&lt;br /&gt;
        change as neccesary&lt;br /&gt;
      */&lt;br /&gt;
      devShells.x86_64-linux =&lt;br /&gt;
        let&lt;br /&gt;
          pkgs = nixpkgs.legacyPackages.x86_64-linux;&lt;br /&gt;
        in&lt;br /&gt;
        {&lt;br /&gt;
          default = pkgs.mkShell {&lt;br /&gt;
            packages = [ pkgs.hello ];&lt;br /&gt;
          };&lt;br /&gt;
        };&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
( If you&#039;re in a git repository run `git add flake.nix` so that Nix recognizes it. )&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
And finally, run &amp;lt;code&amp;gt;nix develop&amp;lt;/code&amp;gt;. This is what replaces the old nix-shell invocation.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Exit and run again, this command should now be super fast.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{warning|TODO: there is an alternative version where the defaultPackage is a pkgs.buildEnv that contains all the dependencies. And then nix shell is used to open the environment.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Automatically_switch_nix_shells_with_nix-direnv&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Автоматическое переключение оболочек nix с nix-direnv ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
You can easily switch nix shells when you cd into different projects with [https://github.com/nix-community/nix-direnv nix-direnv].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Pushing Flakes to Cachix ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
https://docs.cachix.org/pushing#flakes&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To push &#039;&#039;all&#039;&#039; flake outputs automatically, checkout [https://github.com/srid/devour-flake#usage devour-flake].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Build specific attributes in a flake repository ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
When in the repository top-level, run &amp;lt;code&amp;gt;nix build .#&amp;lt;attr&amp;gt;&amp;lt;/code&amp;gt;. It will look in the &amp;lt;code&amp;gt;legacyPackages&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;packages&amp;lt;/code&amp;gt; output attributes for the corresponding derivation.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Eg, in nixpkgs:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=console&amp;gt;&lt;br /&gt;
$ nix build .#hello&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Building flakes from a Git repo url with submodules ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
As per nix 2.9.1, git submodules in package &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt;&#039;s won&#039;t get copied to the nix store, this may cause the build to fail.  To workaround this, use:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;console&amp;quot;&amp;gt;&lt;br /&gt;
nix build &#039;.?submodules=1#hello&#039;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
See: https://github.com/NixOS/nix/pull/5434&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Importing_packages_from_multiple_nixpkgs_branches&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Импорт пакетов из нескольких веток nixpkgs ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
A NixOS config flake could be as follows:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  description = &amp;quot;NixOS configuration with two or more channels&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
 inputs = {&lt;br /&gt;
    nixpkgs.url = &amp;quot;github:NixOS/nixpkgs/nixos-23.11&amp;quot;;&lt;br /&gt;
    nixpkgs-unstable.url = &amp;quot;github:NixOS/nixpkgs/nixos-unstable&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
  outputs =&lt;br /&gt;
    { nixpkgs, nixpkgs-unstable, ... }:&lt;br /&gt;
    {&lt;br /&gt;
      nixosConfigurations.&amp;quot;&amp;lt;hostname&amp;gt;&amp;quot; = nixpkgs.lib.nixosSystem {&lt;br /&gt;
        modules = [&lt;br /&gt;
          {&lt;br /&gt;
            nixpkgs.overlays = [&lt;br /&gt;
              (final: prev: {&lt;br /&gt;
                unstable = nixpkgs-unstable.legacyPackages.${prev.system};&lt;br /&gt;
                # use this variant if unfree packages are needed:&lt;br /&gt;
                # unstable = import nixpkgs-unstable {&lt;br /&gt;
                #   inherit system;&lt;br /&gt;
                #   config.allowUnfree = true;&lt;br /&gt;
                # };&lt;br /&gt;
              })&lt;br /&gt;
            ];&lt;br /&gt;
          }&lt;br /&gt;
          ./configuration.nix&lt;br /&gt;
        ];&lt;br /&gt;
      };&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
# NixOS configuration.nix, can now use &amp;quot;pkgs.package&amp;quot; or &amp;quot;pkgs.unstable.package&amp;quot;&lt;br /&gt;
{ pkgs, ... }:&lt;br /&gt;
{&lt;br /&gt;
  environment.systemPackages = [&lt;br /&gt;
    pkgs.firefox&lt;br /&gt;
    pkgs.unstable.chromium&lt;br /&gt;
  ];&lt;br /&gt;
  # ...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If the variable &amp;lt;code&amp;gt;nixpkgs&amp;lt;/code&amp;gt; points to the flake, you can also define &amp;lt;code&amp;gt;pkgs&amp;lt;/code&amp;gt; with overlays with:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
pkgs = import nixpkgs { system = &amp;quot;x86_64-linux&amp;quot;; overlays = [ /*the overlay in question*/ ]; };&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Getting &#039;&#039;Instant&#039;&#039; System Flakes Repl ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
How to get a nix repl out of your system flake:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
$ nix repl&lt;br /&gt;
&lt;br /&gt;
nix-repl&amp;gt; :lf /path/to/flake&lt;br /&gt;
Added 18 variables.&lt;br /&gt;
&lt;br /&gt;
nix-repl&amp;gt; nixosConfigurations.myHost.config.networking.hostName&lt;br /&gt;
&amp;quot;myHost&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
However, this won&#039;t be instant upon evaluation if any file changes have been done since your last configuration rebuild. Instead, if one puts:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
nix.nixPath = let path = toString ./.; in [ &amp;quot;repl=${path}/repl.nix&amp;quot; &amp;quot;nixpkgs=${inputs.nixpkgs}&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
In their system &amp;lt;code&amp;gt;flake.nix&amp;lt;/code&amp;gt; configuration file, and includes the following file in their root directory flake as &amp;lt;code&amp;gt;repl.nix&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
let&lt;br /&gt;
  flake = builtins.getFlake (toString ./.);&lt;br /&gt;
  nixpkgs = import &amp;lt;nixpkgs&amp;gt; { };&lt;br /&gt;
in&lt;br /&gt;
{ inherit flake; }&lt;br /&gt;
// flake&lt;br /&gt;
// builtins&lt;br /&gt;
// nixpkgs&lt;br /&gt;
// nixpkgs.lib&lt;br /&gt;
// flake.nixosConfigurations&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
(Don&#039;t forget to &amp;lt;code&amp;gt;git add repl.nix &amp;amp;&amp;amp; nixos-rebuild  switch --flake &amp;quot;/etc/nixos&amp;quot;&amp;lt;/code&amp;gt;)&lt;br /&gt;
Then one can run (or bind a shell alias):&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=bash&amp;gt;&lt;br /&gt;
source /etc/set-environment &amp;amp;&amp;amp; nix repl $(echo $NIX_PATH | perl -pe &#039;s|.*(/nix/store/.*-source/repl.nix).*|\1|&#039;)&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This will launch a repl with access to &amp;lt;code&amp;gt;nixpkgs&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;lib&amp;lt;/code&amp;gt;, and the &amp;lt;code&amp;gt;flake&amp;lt;/code&amp;gt; options in a split of a second.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
An alternative approach to the above shell alias is omitting &amp;lt;code&amp;gt;repl&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;nix.nixPath&amp;lt;/code&amp;gt; and creating a shell script:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=nix&amp;gt;&lt;br /&gt;
nix.nixPath = [ &amp;quot;nixpkgs=${inputs.nixpkgs}&amp;quot; ];&lt;br /&gt;
environment.systemPackages = let&lt;br /&gt;
  repl_path = toString ./.;&lt;br /&gt;
  my-nix-fast-repl = pkgs.writeShellScriptBin &amp;quot;my-nix-fast-repl&amp;quot; &#039;&#039;&lt;br /&gt;
    source /etc/set-environment&lt;br /&gt;
    nix repl &amp;quot;${repl_path}/repl.nix&amp;quot; &amp;quot;$@&amp;quot;&lt;br /&gt;
  &#039;&#039;;&lt;br /&gt;
in [&lt;br /&gt;
  my-nix-fast-repl&lt;br /&gt;
];&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Enable_unfree_software&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Включить несвободное ПО ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Refer to [[Unfree software|Unfree Software]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Development_tricks&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Трюки для разработки ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Build a package added in a PR ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight&amp;gt;&lt;br /&gt;
nix build github:nixos/nixpkgs?ref=pull/&amp;lt;PR_NUMBER&amp;gt;/head#&amp;lt;PACKAGE&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
this allows building a package that has not yet been added to nixpkgs.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
note that this will download a full source tarball of nixpkgs.  if you already have a local clone, using that may be faster due to delta compression:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight&amp;gt;&lt;br /&gt;
git fetch upstream pull/&amp;lt;PR_NUMBER&amp;gt;/head &amp;amp;&amp;amp; git checkout FETCH_HEAD &amp;amp;&amp;amp; nix build .#PACKAGE&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
this allows building a package that has not yet been added to nixpkgs.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== How to add a file locally in git but not include it in commits ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
When a git folder exists, flake will only copy files added in git to maximize reproducibility (this way if you forgot to add a local file in your repo, you will directly get an error when you try to compile it). However, for development purpose you may want to create an alternative flake file, for instance containing configuration for your preferred editors as described [https://discourse.nixos.org/t/local-personal-development-tools-with-flakes/22714/8 here]… of course without committing this file since it contains only your own preferred tools. You can do so by doing something like that (say for a file called &amp;lt;code&amp;gt;extra/flake.nix&amp;lt;/code&amp;gt;):&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight&amp;gt;&lt;br /&gt;
git add --intent-to-add extra/flake.nix&lt;br /&gt;
git update-index --skip-worktree --assume-unchanged extra/flake.nix&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Rapid iteration of a direct dependency ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
One common pain point with using Nix as a development environment is the need to completely rebuild dependencies and re-enter the dev shell every time they are updated. The &amp;lt;code&amp;gt;nix develop --redirect &amp;lt;flake&amp;gt; &amp;lt;directory&amp;gt;&amp;lt;/code&amp;gt; command allows you to provide a mutable dependency to your shell as if it were built by Nix.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Consider a situation where your executable, &amp;lt;code&amp;gt;consumexe&amp;lt;/code&amp;gt;, depends on a library, &amp;lt;code&amp;gt;libdep&amp;lt;/code&amp;gt;. You&#039;re trying to work on both at the same time, where changes to &amp;lt;code&amp;gt;libdep&amp;lt;/code&amp;gt; are reflected in real time for &amp;lt;code&amp;gt;consumexe&amp;lt;/code&amp;gt;. This workflow can be achieved like so:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=bash&amp;gt;&lt;br /&gt;
cd ~/libdep-src-checkout/&lt;br /&gt;
nix develop # Or `nix-shell` if applicable.&lt;br /&gt;
export prefix=&amp;quot;./install&amp;quot; # configure nix to install it here&lt;br /&gt;
buildPhase   # build it like nix does&lt;br /&gt;
installPhase # install it like nix does&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Now that you&#039;ve built the dependency, &amp;lt;code&amp;gt;consumexe&amp;lt;/code&amp;gt; can take it as an input. &#039;&#039;&#039;In another terminal&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxHighlight lang=bash&amp;gt;&lt;br /&gt;
cd ~/consumexe-src-checkout/&lt;br /&gt;
nix develop --redirect libdep ~/libdep-src-checkout/install&lt;br /&gt;
echo $buildInputs | tr &amp;quot; &amp;quot; &amp;quot;\n&amp;quot; | grep libdep&lt;br /&gt;
# Output should show ~/libdep-src-checkout/ so you know it worked&lt;br /&gt;
&amp;lt;/syntaxHighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If Nix warns you that your redirected flake isn&#039;t actually used as an input to the evaluated flake, try using the &amp;lt;code&amp;gt;--inputs-from .&amp;lt;/code&amp;gt; flag. If all worked well you should be able to &amp;lt;code&amp;gt;buildPhase &amp;amp;&amp;amp; installPhase&amp;lt;/code&amp;gt; when the dependency changes and rebuild your consumer with the new version &#039;&#039;without&#039;&#039; exiting the development shell.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;See_also&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== См. также ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://nix.dev/concepts/flakes Flakes] - nix.dev&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/NixOS/rfcs/pull/49 RFC 49] (2019) - Original flakes specification&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://jade.fyi/blog/flakes-arent-real/ Flakes aren&#039;t real and can&#039;t hurt you] (Jade Lovelace, 2024)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/ryan4yin/nixos-and-flakes-book NixOS &amp;amp; Flakes Book](Ryan4yin, 2023) - 🛠️ ❤️ An unofficial NixOS &amp;amp; Flakes book for beginners.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://xeiaso.net/blog/nix-flakes-1-2022-02-21 Nix Flakes: an Introduction] (Xe Iaso, 2022)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://serokell.io/blog/practical-nix-flakes Practical Nix Flakes] (Alexander Bantyev, 2021) - Intro article on working with Nix and Flakes&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.tweag.io/blog/2020-05-25-flakes/ Nix Flakes, Part 1: An introduction and tutorial] (Eelco Dolstra, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.tweag.io/blog/2020-06-25-eval-cache/ Nix Flakes, Part 2: Evaluation caching] (Eelco Dolstra, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.tweag.io/blog/2020-07-31-nixos-flakes/ Nix Flakes, Part 3: Managing NixOS systems] (Eelco Dolstra, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://nixos.org/manual/nix/unstable/command-ref/new-cli/nix3-flake.html Nix flake command reference manual] - Many additional details about flakes, and their parts.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://www.youtube.com/watch?v=QXUlhnhuRX4&amp;amp;list=PLgknCdxP89RcGPTjngfNR9WmBgvD_xW0l Nix flakes 101: Introduction to nix flakes] (Jörg Thalheim, 2020)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/NixOS/nix/blob/master/src/nix/flake.md spec describing flake inputs in more detail]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/numtide/flake-utils flake-utils: Library to avoid some boiler-code when writing flakes]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://zimbatm.com/NixFlakes/#direnv-integration zimbat&#039;s direnv article]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://github.com/nix-community/todomvc-nix building Rust and Haskell flakes]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Software]]&lt;br /&gt;
[[Category:Nix]]&lt;br /&gt;
[[Category:Flakes]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Flakes/44/ru&amp;diff=19597</id>
		<title>Translations:Flakes/44/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Flakes/44/ru&amp;diff=19597"/>
		<updated>2025-01-10T20:39:40Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;В которой:&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В которой:&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=VR/ru&amp;diff=19596</id>
		<title>VR/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=VR/ru&amp;diff=19596"/>
		<updated>2025-01-10T20:36:35Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;VR&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Monado ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://monado.freedesktop.org/ Monado] is an open source OpenXR runtime. It offers support for a variety of hardware using its built-in drivers and can be used to run any OpenXR and, with the help of OpenComposite, most OpenVR applications.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Monado can be configured using its NixOS options since 24.05:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|3=services.monado = {&lt;br /&gt;
  enable = true;&lt;br /&gt;
  defaultRuntime = true; # Register as default OpenXR runtime&lt;br /&gt;
};}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
In order to configure Monado, you might want to add additional environment variables:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|3=systemd.user.services.monado.environment = {&lt;br /&gt;
  STEAMVR_LH_ENABLE = &amp;quot;1&amp;quot;;&lt;br /&gt;
  XRT_COMPOSITOR_COMPUTE = &amp;quot;1&amp;quot;;&lt;br /&gt;
};}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Hand Tracking ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
You may notice that running &amp;lt;code&amp;gt;monado-services&amp;lt;/code&amp;gt; will fail due to the lack of hand tracking data.  There are 2 ways to remedy this, either disable hand tracking altogether, or download the hand tracking data.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To disable hand tracking, modify the environment variable to include &amp;lt;code&amp;gt;WMR_HANDTRACKING = &amp;quot;0&amp;quot;;&amp;lt;/code&amp;gt;, so that it will look like this.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|3=systemd.user.services.monado.environment = {&lt;br /&gt;
  STEAMVR_LH_ENABLE = &amp;quot;1&amp;quot;;&lt;br /&gt;
  XRT_COMPOSITOR_COMPUTE = &amp;quot;1&amp;quot;;&lt;br /&gt;
  WMR_HANDTRACKING = &amp;quot;0&amp;quot;;&lt;br /&gt;
};}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To get hand tracking to work, you require &amp;lt;code&amp;gt;git-lfs&amp;lt;/code&amp;gt; to be enabled.  The standard way of enabling &amp;lt;code&amp;gt;git-lfs&amp;lt;/code&amp;gt; is through the configuration below&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|3=programs.git = {&lt;br /&gt;
  enable = true;&lt;br /&gt;
  lfs.enable = true;&lt;br /&gt;
};}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
After making sure &amp;lt;code&amp;gt;git-lfs&amp;lt;/code&amp;gt; is enabled, run these commands and restart &amp;lt;code&amp;gt;monado-service&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Commands|&lt;br /&gt;
$ mkdir -p ~/.local/share/monado&lt;br /&gt;
$ cd ~/.local/share/monado&lt;br /&gt;
$ git clone https://gitlab.freedesktop.org/monado/utilities/hand-tracking-models&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
For further information about available environment variables and tweaks, read the [https://lvra.gitlab.io/docs/fossvr/monado/ Linux VR Adventures wiki] and the [https://monado.freedesktop.org/getting-started.html#environment-variables Monado documentation about environment variables]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== OpenComposite ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://gitlab.com/znixian/OpenOVR OpenComposite] is a compatibility layer for running OpenVR applications on an OpenXR runtime like Monado. It is comparable to tools like DXVK or vkd3d, but for translating OpenVR calls to OpenXR.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
In order to run OpenVR games on anything other than SteamVR, you need to configure the OpenVR runtime path defined in &amp;lt;code&amp;gt;~/.config/openvr/openvrpaths.vrpath&amp;lt;/code&amp;gt;. A reliable way to do this is to use [[Home Manager]] to create this file.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Warning|Older versions of Proton will always query the current OpenVR and OpenXR runtime. If you use OpenComposite, and it fails to initialize an OpenXR context, Proton will fail to launch. A workaround is to delete the ~/.config/openvr/openvrpaths.vrpath file and then retry launching the game.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If this file is not set to read-only, SteamVR will add its runtime path back, hence the use for Home Manager.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
An example configuration for enabling OpenComposite may look like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{file|~/.config/home-manager/home.nix|nix|3=# For Monado:&lt;br /&gt;
xdg.configFile.&amp;quot;openxr/1/active_runtime.json&amp;quot;.source = &amp;quot;${pkgs.monado}/share/openxr/1/openxr_monado.json&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
# For WiVRn:&lt;br /&gt;
xdg.configFile.&amp;quot;openxr/1/active_runtime.json&amp;quot;.source = &amp;quot;${pkgs.wivrn}/share/openxr/1/openxr_wivrn.json&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
xdg.configFile.&amp;quot;openvr/openvrpaths.vrpath&amp;quot;.text = &#039;&#039;&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;config&amp;quot; :&lt;br /&gt;
    [&lt;br /&gt;
      &amp;quot;${config.xdg.dataHome}/Steam/config&amp;quot;&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;external_drivers&amp;quot; : null,&lt;br /&gt;
    &amp;quot;jsonid&amp;quot; : &amp;quot;vrpathreg&amp;quot;,&lt;br /&gt;
    &amp;quot;log&amp;quot; :&lt;br /&gt;
    [&lt;br /&gt;
      &amp;quot;${config.xdg.dataHome}/Steam/logs&amp;quot;&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;runtime&amp;quot; :&lt;br /&gt;
    [&lt;br /&gt;
      &amp;quot;${pkgs.opencomposite}/lib/opencomposite&amp;quot;&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;version&amp;quot; : 1&lt;br /&gt;
  }&lt;br /&gt;
&#039;&#039;;}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you are planning to play any OpenVR game on Steam or OpenXR games through Proton, you will have to use OpenComposite in this manner. In most cases you also have to allow access to the socket path of your OpenXR runtime to Steam&#039;s runtime, by using the following launch options for XR applications on Steam: &amp;lt;code&amp;gt;env PRESSURE_VESSEL_FILESYSTEMS_RW=$XDG_RUNTIME_DIR/monado_comp_ipc %command%&amp;lt;/code&amp;gt;. This example is for Monado, while other XR runtimes might differ.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== WiVRn ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
WiVRn is an OpenXR streaming application built around Monado. It wirelessly connects a standalone VR headset to a Linux computer. If your headset is not wireless, look at [[VR#Monado|Monado]] instead.&lt;br /&gt;
Example usage of the WiVRn module:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{File|/etc/nixos/configuration.nix|nix|3=services.wivrn = {&lt;br /&gt;
  enable = true;&lt;br /&gt;
  openFirewall = true;&lt;br /&gt;
&lt;br /&gt;
  # Write information to /etc/xdg/openxr/1/active_runtime.json, VR applications&lt;br /&gt;
  # will automatically read this and work with WiVRn (Note: This does not currently&lt;br /&gt;
  # apply for games run in Valve&#039;s Proton)&lt;br /&gt;
    defaultRuntime = true;&lt;br /&gt;
&lt;br /&gt;
  # Run WiVRn as a systemd service on startup&lt;br /&gt;
  autoStart = true;&lt;br /&gt;
&lt;br /&gt;
  # Config for WiVRn (https://github.com/WiVRn/WiVRn/blob/master/docs/configuration.md)&lt;br /&gt;
  config = {&lt;br /&gt;
    enable = true;&lt;br /&gt;
    json = {&lt;br /&gt;
      # 1.0x foveation scaling&lt;br /&gt;
      scale = 1.0;&lt;br /&gt;
      # 100 Mb/s&lt;br /&gt;
      bitrate = 100000000;&lt;br /&gt;
      encoders = [&lt;br /&gt;
        {&lt;br /&gt;
          encoder = &amp;quot;vaapi&amp;quot;;&lt;br /&gt;
          codec = &amp;quot;h265&amp;quot;;&lt;br /&gt;
          # 1.0 x 1.0 scaling&lt;br /&gt;
          width = 1.0;&lt;br /&gt;
          height = 1.0;&lt;br /&gt;
          offset_x = 0.0;&lt;br /&gt;
          offset_y = 0.0;&lt;br /&gt;
        }&lt;br /&gt;
      ];&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
};}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Like Monado, you will also have to add the launch argument for WiVRn to allow access to the socket: &amp;lt;code&amp;gt;PRESSURE_VESSEL_FILESYSTEMS_RW=$XDG_RUNTIME_DIR/wivrn/comp_ipc %command%&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Envision ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Envision is an orchestrator for the FOSS VR stack. It handles the building and configuration of Monado, WiVRn, OpenComposite, and other utilities of the FOSS VR stack such as the Lighthouse driver, OpenHMD, Survive, and WMR. You can enable it with the Envision module:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{File|/etc/nixos/configuration.nix|nix|3=programs.envision = {&lt;br /&gt;
  enable = true;&lt;br /&gt;
  openFirewall = true; # This is set true by default&lt;br /&gt;
};}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== SteamVR ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://store.steampowered.com/app/250820/SteamVR/ SteamVR] is a proprietary OpenVR runtime with compatibility for OpenXR. It is part of [[Steam]] and doesn&#039;t need any additional setup on NixOS apart from enabling Steam.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
After installing SteamVR through Steam and plugging in a SteamVR-compatible headset, SteamVR should work for the most part.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
On initial setup, SteamVR will ask for elevated permissions, to set up a file capability for one of its binaries. This is needed to allow asynchronous reprojection to work. Clients need the &amp;lt;code&amp;gt;CAP_SYS_NICE&amp;lt;/code&amp;gt; capability to acquire a high-priority context, which is a requirement for asynchronous reprojection.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Note|Steam is run in a bubblewrap-based FHS environment. This environment runs Steam in a user namespace, which prevents it from using any capabilities or setuid binaries. This means that asynchronous reprojection can not be used on NixOS, without patching the kernel to remove these restrictions completely. See this [https://github.com/NixOS/nixpkgs/issues/217119 Nixpkgs issue]}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Patching AMDGPU to allow high priority queues ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
By applying [https://github.com/Frogging-Family/community-patches/blob/a6a468420c0df18d51342ac6864ecd3f99f7011e/linux61-tkg/cap_sys_nice_begone.mypatch this patch], the AMDGPU kernel driver will ignore process privileges and allow any application to create high priority contexts.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
{{Warning|This removes intentional restrictions from the kernel, and it could cause scheduling issues. While it has not been reported that it does cause issues, this should be considered an unsupported configuration.}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
==== Applying as a NixOS kernel patch ====&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
To workaround the &amp;lt;code&amp;gt;CAP_SYS_NICE&amp;lt;/code&amp;gt; requirement, we can apply a kernel patch using the following NixOS configuration snippet:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{file|/etc/nixos/configuration.nix|nix|3=boot.kernelPatches = [&lt;br /&gt;
  {&lt;br /&gt;
    name = &amp;quot;amdgpu-ignore-ctx-privileges&amp;quot;;&lt;br /&gt;
    patch = pkgs.fetchpatch {&lt;br /&gt;
      name = &amp;quot;cap_sys_nice_begone.patch&amp;quot;;&lt;br /&gt;
      url = &amp;quot;https://github.com/Frogging-Family/community-patches/raw/master/linux61-tkg/cap_sys_nice_begone.mypatch&amp;quot;;&lt;br /&gt;
      hash = &amp;quot;sha256-Y3a0+x2xvHsfLax/uwycdJf3xLxvVfkfDVqjkxNaYEo=&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
  }&lt;br /&gt;
];&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
It is also possible to just patch amdgpu and build it as an out-of-tree module, as described in [[Linux_kernel#Patching_a_single_In-tree_kernel_module]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== wlx-overlay-s ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
[https://github.com/galister/wlx-overlay-s wlx-overlay-s] is a lightweight OpenXR/OpenVR overlay for Wayland and X11 desktops. It works with SteamVR as well as Monado/WiVRn natively.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
==== SteamVR autostart ====&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
When launching wlx-overlay-s in SteamVR (or any OpenVR compositor) it will register an autostart manifest. Currently, this manifest will reference a Nix store path of wlx-overlay-s, which might get garbage collected after rebuilds of your NixOS/Nix profile. A workaround is to regularly run the following command to update the manifest&#039;s store path:{{Commands|&lt;br /&gt;
# Run wlx-overlay-s and replace any running instance&lt;br /&gt;
$ wlx-overlay-s --replace}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== See also ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* [https://lvra.gitlab.io Linux VR Adventures Wiki]&lt;br /&gt;
[[Category:Video]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
[[Category:Desktop]]&lt;br /&gt;
[[Category:Gaming]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:VR/Page_display_title/ru&amp;diff=19595</id>
		<title>Translations:VR/Page display title/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:VR/Page_display_title/ru&amp;diff=19595"/>
		<updated>2025-01-10T20:36:32Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;VR&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;VR&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_as_a_desktop/ru&amp;diff=19594</id>
		<title>NixOS as a desktop/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_as_a_desktop/ru&amp;diff=19594"/>
		<updated>2025-01-10T20:36:05Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;==== Видеопособие ====&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
NixOS может быть использована для разных целей. Если вы желаете использовать её как основную десктопную ОС для повседневного использования ( на реальном железе или [https://twitter.com/mitchellh/status/1346136404682625024 виртуальной машине]), то эта страница для вас. Даже если вы планируете использовать NixOS в облаке или на специально настроенных серверах, вы, возможно, хотите начать с уроков, изложенных здесь, чтобы ближе познакомиться с экосистемой Nix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Installation&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Установка ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Wiki_method&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Метод Wiki ===&lt;br /&gt;
&lt;br /&gt;
Если вы предпочитаете чтение, для начала посмотрите [[NixOS_Installation_Guide/ru|инструкцию по установке]]. Если же видео, пролистайте ниже до секции &amp;quot;Видео инструкции&amp;quot;. Учитывайте, что для десктопной установки, вам потребуется как минимум 30 GiB места на диске, чтобы вместить рабочее окружение (например GNOME, KDE, или XFCE), браузеры (например Firefox), и другие графические утилиты (такие как VSCode), что вполне разумно для повседневного использования. Для минимальной установки, вероятно, хватит и 15 Gib.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Video_guide&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Видео инструкции ===&lt;br /&gt;
&lt;br /&gt;
Для визуальных гайдов, смотрите [[Wil T Nix Guides]](англ). [[Wil_T_Nix_Guides|второе видео]] - лаконичный гайд по установке. Это серия из 8 видео, записанных в начала 2021, также объясняет базы использования NixOS на ПК и конфигурирования по вашему вкусу.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Managing_your_configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Обслуживание своей конфигурации ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
It is possible to manage your entire configuration using the methods documented in the [https://nixos.org/manual/nixos/stable/index.html NixOS official manual]. However, most community members who use NixOS on the desktop prefer to manage their user configurations (e.g. &amp;quot;dotfiles&amp;quot;) using [[Home Manager]] (citation needed). Home Manager is a user oriented tool for declaring what you want installed and how you want it configured, and thus would be used in lieu of most settings you would otherwise put into a [https://nixos.org/manual/nixos/stable/#sec-changing-config configuration.nix] or through [[FAQ#How_can_I_manage_software_with_nix-env_like_with_configuration.nix.3F|nix-env]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Video_guide&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Видео инструкции ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Wil T&#039;s guides are about an even mix of:&lt;br /&gt;
# Hands-on bootstrapping to get to being able to very capably manage your system using Home Manager, git versioning, and eventually Flakes.&lt;br /&gt;
# Conceptual overviews and general exposition of the Nix ecosystem, community, and available resources.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The [[Wil_T_Nix_Guides#NixOS_Installation_Guide|second video]], starting from about 27 minutes in, is also an introduction to and guide to setting up Home Manager.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Modularizing_your_configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Модульная конфигурация ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;With_NixOS_Modules&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== С помощью модулей NixOS ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
configuration.nix is an instance of a [[NixOS modules|NixOS module]], which makes it easy to break your configuration into several files. Modules can:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* Import other modules&lt;br /&gt;
* Declare new options&lt;br /&gt;
* Provide values for options (this is what most of your default configuration.nix does)&lt;br /&gt;
* Reference option values from other modules (via the &amp;lt;code&amp;gt;config&amp;lt;/code&amp;gt; attribute passed to all modules)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
As long as you declare options for any values you want to share between modules, you can divide your configuration however you like into files that get imported, directly or transitively, by your root configuration.nix file. You can also import modules from remote sources, using functions like &amp;lt;code&amp;gt;builtins.fetchTarball&amp;lt;/code&amp;gt;. See the [[NixOS modules|wiki page]] or the [https://nixos.org/manual/nixos/stable/#sec-writing-modules NixOS manual] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;With_Flakes&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== С помощью Flakes ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you want a more composable&amp;lt;sup&amp;gt;[citation needed]&amp;lt;/sup&amp;gt; NixOS configuration setup, the still-experimental [[Flakes]] feature is causing a lot of excitement in the community. Managing flakes requires a good basic understanding and some existing hands on experience with the Nix ecosystem.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;Video_guide&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
==== Видеопособие ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Videos [[Wil_T_Nix_Guides#Intro_to_Flakes|seven]] and [[Wil_T_Nix_Guides#Moving_NixOS_System_Configuration_into_a_Flake|eight]] of Wil T&#039;s original 8-part series are a good overview of what Flakes enable and how to get started with them.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Beyond initial setup ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
After you are familiar with the Nix ecosystem and have a functional desktop install of NixOS, you will likely be interested in customizations and more detailed setup.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Learn by example ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
If you are comfortable managing your system through a git repo using flakes, then there are many repositories you can learn from now!&lt;br /&gt;
&amp;lt;/div&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Check out [[Comparison of NixOS setups]] for a table comparing some popular choices.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
See [[Configuration Collection]] for a long list within the wiki.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
Additionally, the following topic searches on Github should uncover many useful examples.&lt;br /&gt;
* [https://github.com/topics/nix-flake nix-flake]&lt;br /&gt;
* [https://github.com/topics/nixos-configuration nixos-configuration]&lt;br /&gt;
* [https://github.com/topics/nixos-dotfiles nixos-dotfiles]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Desktop]]&lt;br /&gt;
[[Category:Guide]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:NixOS_as_a_desktop/19/ru&amp;diff=19593</id>
		<title>Translations:NixOS as a desktop/19/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:NixOS_as_a_desktop/19/ru&amp;diff=19593"/>
		<updated>2025-01-10T20:36:03Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;==== Видеопособие ====&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Видеопособие ====&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Fzf&amp;diff=19258</id>
		<title>Fzf</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Fzf&amp;diff=19258"/>
		<updated>2024-12-19T09:27:06Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Home-manager integrations&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:fzf}}&lt;br /&gt;
[https://github.com/junegunn/fzf fzf] is a general-purpose command-line fuzzy finder.&lt;br /&gt;
&lt;br /&gt;
= Shell extensions =&lt;br /&gt;
fzf provides additional key bindings (CTRL-T, CTRL-R, and ALT-C) for shells&lt;br /&gt;
&lt;br /&gt;
First install &amp;lt;code&amp;gt;fzf&amp;lt;/code&amp;gt; in your profile, then use one of the following methods:&lt;br /&gt;
&lt;br /&gt;
== Bash ==&lt;br /&gt;
=== With Home-manager ===&lt;br /&gt;
There is option to enable fzf bash integration&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
programs.fzf.enableBashIntegration = true;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Without Home-manager ===&lt;br /&gt;
To enable fzf in bash add the following line to &amp;lt;code&amp;gt;$HOME/.bashrc&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;eval &amp;quot;$(fzf --bash)&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Zsh ==&lt;br /&gt;
You can enable fzf in [[zsh]].&lt;br /&gt;
=== With Home-manager ===&lt;br /&gt;
There is option to enable fzf zsh integration&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
programs.fzf.enableZshIntegration = true;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Without Home-manager ===&lt;br /&gt;
To enable fzf in bash add the following line to &lt;br /&gt;
&amp;lt;code&amp;gt;$HOME/.zshrc&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
eval &amp;quot;$(fzf --zsh)&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fish ==&lt;br /&gt;
To enable fzf in [[fish]].&lt;br /&gt;
=== With Home-manager ===&lt;br /&gt;
There is option to enable fzf fish integration&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;nix&amp;quot;&amp;gt;&lt;br /&gt;
programs.fzf.enableFishIntegration = true;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Without Home-Manager ===&lt;br /&gt;
To enable fzf in fish add the following line to &amp;lt;code&amp;gt;$HOME/.config/fish/functions/fish_user_key_bindings.fish&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fish&amp;quot;&amp;gt;&lt;br /&gt;
fzf --fish | source&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Examples =&lt;br /&gt;
&lt;br /&gt;
== Search all nix packages ==&lt;br /&gt;
&lt;br /&gt;
You can interactively search the list of available packages with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
nix-env -qa | fzf&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Applications]]&lt;br /&gt;
[[Category:Shell]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18583</id>
		<title>NixOS Wiki/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18583"/>
		<updated>2024-11-05T11:38:48Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
__NOTOC__&amp;lt;!-- NOTE: Please don&#039;t change the layout/categorizing without first coordinating with the other editors. --&amp;gt;&amp;lt;!-- NOTE: Feel free to add/edit content though! --&amp;gt;&amp;lt;!-- NOTE: Removing those notes and/or disregarding this is not only rude, but should be considered defacement. --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;row home-panes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-7&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-started|icon=clarifications|Приступаем|&lt;br /&gt;
Это официальная Wiki NixOS.&lt;br /&gt;
Она включает в себя темы, не освещённые в [https://nixos.org/nixos/manual Мануале по NixOS]: руководства пользователя NixOS, примеры конфигурации и советы по устранению неполадок.&lt;br /&gt;
&lt;br /&gt;
NixOS - это операционная система Linux, основанная на менеджере пакетов Nix и репозитории пакетов Nixpkgs.&lt;br /&gt;
&lt;br /&gt;
Новичкам в NixOS рекомендуется прочитать обзорную статью [[Nix Ecosystem|Экосистема Nix]], чтобы получить полное представление. Для более конкретного ознакомления см:&lt;br /&gt;
* [[NixOS]]&lt;br /&gt;
* [[Nix package manager]]&lt;br /&gt;
* Репозиторий пакетов [[Nixpkgs]]&lt;br /&gt;
* [[Overview of the Nix Language |Nix Language]]&lt;br /&gt;
Если вы хотите попробовать Nix в автономном режиме в другом дистрибутиве Linux или на Mac, сделайте первые шаги на [[nix.dev]].&lt;br /&gt;
&lt;br /&gt;
В экосистеме Nix существует множество дополнительных инструментов, таких как:&lt;br /&gt;
&lt;br /&gt;
* [[Home manager|Home-manager]] для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* [[Flakes|Nix Flakes]] вместо nix-channel&lt;br /&gt;
&lt;br /&gt;
Они добавляют сложности и поначалу могут сбить с толку, и вы даже можете решить, что они вам не нужны.&lt;br /&gt;
Начните с простой Nix/NixOS, а Home Manager и/или Flakes интегрируйте в свою систему только после того, как вы уверенно освоите Nix/NixOS и поймете их значение}}.&lt;br /&gt;
&lt;br /&gt;
{{home:box|hosting|icon=cloud|Установка NixOS|&lt;br /&gt;
&amp;lt;!-- once ready: * На вашем компьютере, с помощью [[NixOS Installation Guide]] --&amp;gt;&lt;br /&gt;
* На Персональном Компьютере, с [[NixOS as a desktop]]&lt;br /&gt;
* На ARM, с [[NixOS on ARM]]&lt;br /&gt;
* В облаке, с помощью [[NixOS friendly hosters]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|doctopics|icon=manual|Разделы документации|&lt;br /&gt;
Первым пунктом должны быть [[Resources]], который служит шлюзом к наиболее важной документации. Некоторые основные моменты приведены ниже.&lt;br /&gt;
&lt;br /&gt;
Основные справочные материалы:&lt;br /&gt;
* [https://nixos.org/nixos/manual/ Руководство по NixOS]&lt;br /&gt;
* [https://nixos.org/nix/manual/ Руководство по Nix]&lt;br /&gt;
* [https://nixos.org/nixpkgs/manual/ Руководство по Nixpkgs]&lt;br /&gt;
* [https://nixos.org/hydra/manual/ Руководство Hydra]&lt;br /&gt;
&lt;br /&gt;
Основные категории страниц:&lt;br /&gt;
* [[:{{ns:14}}:Software|Программное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Hardware|Аппаратное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Desktop|Desktop]] - настройка для ПК&lt;br /&gt;
* [[:{{ns:14}}:Server|Server]] - настройка для Сервера&lt;br /&gt;
* [[:{{ns:14}}:Community|Community]] - люди, общение, работа над NixOS&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
См. также:&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet / Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{home:box|wikipages|Служебные страницы|3=&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:SpecialPages}} Overview of special pages]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:AllPages|hideredirects=1}} Все страницы на {{SERVERNAME}}]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Special:Categories|Все категории на {{SERVERNAME}}]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[{{fullurl:Special:RecentChanges|hidebots=1&amp;amp;reviewStatus=unpatrolled}} Непроверенные изменения на {{SERVERNAME}}]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-5&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-in-touch|icon=dialog-hi|Связь|&lt;br /&gt;
&amp;lt;b&amp;gt;С сообществом&amp;lt;/b&amp;gt;&lt;br /&gt;
* [https://nixos.org/ Официальный сайт NixOS]&lt;br /&gt;
* [[Nix Community|Обзор сообщества]]&lt;br /&gt;
* [[Get In Touch|Чаты и форумы]]&lt;br /&gt;
* [[Support|Получить поддержку]]&lt;br /&gt;
* [[Get In Touch#Events|События]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing to the wiki]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18582</id>
		<title>NixOS Wiki/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18582"/>
		<updated>2024-11-05T11:38:39Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
__NOTOC__&amp;lt;!-- NOTE: Please don&#039;t change the layout/categorizing without first coordinating with the other editors. --&amp;gt;&amp;lt;!-- NOTE: Feel free to add/edit content though! --&amp;gt;&amp;lt;!-- NOTE: Removing those notes and/or disregarding this is not only rude, but should be considered defacement. --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;row home-panes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-7&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-started|icon=clarifications|Приступаем|&lt;br /&gt;
Это официальная Wiki NixOS.&lt;br /&gt;
Она включает в себя темы, не освещённые в [https://nixos.org/nixos/manual Мануале по NixOS]: руководства пользователя NixOS, примеры конфигурации и советы по устранению неполадок.&lt;br /&gt;
&lt;br /&gt;
NixOS - это операционная система Linux, основанная на менеджере пакетов Nix и репозитории пакетов Nixpkgs.&lt;br /&gt;
&lt;br /&gt;
Новичкам в NixOS рекомендуется прочитать обзорную статью [[Nix Ecosystem|Экосистема Nix]], чтобы получить полное представление. Для более конкретного ознакомления см:&lt;br /&gt;
* [[NixOS]]&lt;br /&gt;
* [[Nix package manager]]&lt;br /&gt;
* Репозиторий пакетов [[Nixpkgs]]&lt;br /&gt;
* [[Overview of the Nix Language |Nix Language]]&lt;br /&gt;
Если вы хотите попробовать Nix в автономном режиме в другом дистрибутиве Linux или на Mac, сделайте первые шаги на [[nix.dev]].&lt;br /&gt;
&lt;br /&gt;
В экосистеме Nix существует множество дополнительных инструментов, таких как:&lt;br /&gt;
&lt;br /&gt;
* [[Home manager|Home-manager]] для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* [[Flakes|Nix Flakes]] вместо nix-channel&lt;br /&gt;
&lt;br /&gt;
Они добавляют сложности и поначалу могут сбить с толку, и вы даже можете решить, что они вам не нужны.&lt;br /&gt;
Начните с простой Nix/NixOS, а Home Manager и/или Flakes интегрируйте в свою систему только после того, как вы уверенно освоите Nix/NixOS и поймете их значение}}.&lt;br /&gt;
&lt;br /&gt;
{{home:box|hosting|icon=cloud|Установка NixOS|&lt;br /&gt;
&amp;lt;!-- once ready: * На вашем компьютере, с помощью [[NixOS Installation Guide]] --&amp;gt;&lt;br /&gt;
* На Персональном Компьютере, с [[NixOS as a desktop]]&lt;br /&gt;
* На ARM, с [[NixOS on ARM]]&lt;br /&gt;
* В облаке, с помощью [[NixOS friendly hosters]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|doctopics|icon=manual|Разделы документации|&lt;br /&gt;
Первым пунктом должны быть [[Resources]], который служит шлюзом к наиболее важной документации. Некоторые основные моменты приведены ниже.&lt;br /&gt;
&lt;br /&gt;
Основные справочные материалы:&lt;br /&gt;
* [https://nixos.org/nixos/manual/ Руководство по NixOS]&lt;br /&gt;
* [https://nixos.org/nix/manual/ Руководство по Nix]&lt;br /&gt;
* [https://nixos.org/nixpkgs/manual/ Руководство по Nixpkgs]&lt;br /&gt;
* [https://nixos.org/hydra/manual/ Руководство Hydra]&lt;br /&gt;
&lt;br /&gt;
Основные категории страниц:&lt;br /&gt;
* [[:{{ns:14}}:Software|Программное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Hardware|Аппаратное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Desktop|Desktop]] - настройка для ПК&lt;br /&gt;
* [[:{{ns:14}}:Server|Server]] - настройка для Сервера&lt;br /&gt;
* [[:{{ns:14}}:Community|Community]] - люди, общение, работа над NixOS&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
См. также:&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet / Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|wikipages|Служебные страницы|3=&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:SpecialPages}} Overview of special pages]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:AllPages|hideredirects=1}} Все страницы на {{SERVERNAME}}]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Special:Categories|Все категории на {{SERVERNAME}}]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[{{fullurl:Special:RecentChanges|hidebots=1&amp;amp;reviewStatus=unpatrolled}} Непроверенные изменения на {{SERVERNAME}}]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-5&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-in-touch|icon=dialog-hi|Связь|&lt;br /&gt;
&amp;lt;b&amp;gt;С сообществом&amp;lt;/b&amp;gt;&lt;br /&gt;
* [https://nixos.org/ Официальный сайт NixOS]&lt;br /&gt;
* [[Nix Community|Обзор сообщества]]&lt;br /&gt;
* [[Get In Touch|Чаты и форумы]]&lt;br /&gt;
* [[Support|Получить поддержку]]&lt;br /&gt;
* [[Get In Touch#Events|События]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing to the wiki]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18581</id>
		<title>NixOS Wiki/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18581"/>
		<updated>2024-11-05T11:37:26Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
__NOTOC__&amp;lt;!-- NOTE: Please don&#039;t change the layout/categorizing without first coordinating with the other editors. --&amp;gt;&amp;lt;!-- NOTE: Feel free to add/edit content though! --&amp;gt;&amp;lt;!-- NOTE: Removing those notes and/or disregarding this is not only rude, but should be considered defacement. --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;row home-panes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-7&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-started|icon=clarifications|Приступаем|&lt;br /&gt;
Это официальная Wiki NixOS.&lt;br /&gt;
Она включает в себя темы, не освещённые в [https://nixos.org/nixos/manual Мануале по NixOS]: руководства пользователя NixOS, примеры конфигурации и советы по устранению неполадок.&lt;br /&gt;
&lt;br /&gt;
NixOS - это операционная система Linux, основанная на менеджере пакетов Nix и репозитории пакетов Nixpkgs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
Новичкам в NixOS рекомендуется прочитать обзорную статью [[Nix Ecosystem|Экосистема Nix]], чтобы получить полное представление. Для более конкретного ознакомления см:&lt;br /&gt;
* [[NixOS]]&lt;br /&gt;
* [[Nix package manager]]&lt;br /&gt;
* Репозиторий пакетов [[Nixpkgs]]&lt;br /&gt;
* [[Overview of the Nix Language |Nix Language]]&lt;br /&gt;
Если вы хотите попробовать Nix в автономном режиме в другом дистрибутиве Linux или на Mac, сделайте первые шаги на [[nix.dev]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В экосистеме Nix существует множество дополнительных инструментов, таких как:&lt;br /&gt;
&lt;br /&gt;
* [[Home manager|Home-manager]] для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* [[Flakes|Nix Flakes]] вместо nix-channel&lt;br /&gt;
&lt;br /&gt;
Они добавляют сложности и поначалу могут сбить с толку, и вы даже можете решить, что они вам не нужны.&lt;br /&gt;
Начните с простой Nix/NixOS, а Home Manager и/или Flakes интегрируйте в свою систему только после того, как вы уверенно освоите Nix/NixOS и поймете их значение}}.&lt;br /&gt;
&lt;br /&gt;
{{home:box|hosting|icon=cloud|Установка NixOS|&lt;br /&gt;
&amp;lt;!-- once ready: * На вашем компьютере, с помощью [[NixOS Installation Guide]] --&amp;gt;&lt;br /&gt;
* На Персональном Компьютере, с [[NixOS as a desktop]]&lt;br /&gt;
* На ARM, с [[NixOS on ARM]]&lt;br /&gt;
* В облаке, с помощью [[NixOS friendly hosters]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|doctopics|icon=manual|Разделы документации|&lt;br /&gt;
Первым пунктом должны быть [[Resources]], который служит шлюзом к наиболее важной документации. Некоторые основные моменты приведены ниже.&lt;br /&gt;
&lt;br /&gt;
Основные справочные материалы:&lt;br /&gt;
* [https://nixos.org/nixos/manual/ Руководство по NixOS]&lt;br /&gt;
* [https://nixos.org/nix/manual/ Руководство по Nix]&lt;br /&gt;
* [https://nixos.org/nixpkgs/manual/ Руководство по Nixpkgs]&lt;br /&gt;
* [https://nixos.org/hydra/manual/ Руководство Hydra]&lt;br /&gt;
&lt;br /&gt;
Основные категории страниц:&lt;br /&gt;
* [[:{{ns:14}}:Software|Программное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Hardware|Аппаратное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Desktop|Desktop]] - настройка для ПК&lt;br /&gt;
* [[:{{ns:14}}:Server|Server]] - настройка для Сервера&lt;br /&gt;
* [[:{{ns:14}}:Community|Community]] - люди, общение, работа над NixOS&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
См. также:&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet / Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|wikipages|Служебные страницы|3=&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:SpecialPages}} Overview of special pages]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:AllPages|hideredirects=1}} Все страницы на {{SERVERNAME}}]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Special:Categories|Все категории на {{SERVERNAME}}]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[{{fullurl:Special:RecentChanges|hidebots=1&amp;amp;reviewStatus=unpatrolled}} Непроверенные изменения на {{SERVERNAME}}]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-5&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-in-touch|icon=dialog-hi|Связь|&lt;br /&gt;
&amp;lt;b&amp;gt;С сообществом&amp;lt;/b&amp;gt;&lt;br /&gt;
* [https://nixos.org/ Официальный сайт NixOS]&lt;br /&gt;
* [[Nix Community|Обзор сообщества]]&lt;br /&gt;
* [[Get In Touch|Чаты и форумы]]&lt;br /&gt;
* [[Support|Получить поддержку]]&lt;br /&gt;
* [[Get In Touch#Events|События]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing to the wiki]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/12/ru&amp;diff=18580</id>
		<title>Translations:NixOS Wiki/12/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:NixOS_Wiki/12/ru&amp;diff=18580"/>
		<updated>2024-11-05T11:37:22Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Home manager|Home-manager]] для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* [[Flakes|Nix Flakes]] вместо nix-channel&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18579</id>
		<title>NixOS Wiki/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=NixOS_Wiki/ru&amp;diff=18579"/>
		<updated>2024-11-05T11:36:35Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
__NOTOC__&amp;lt;!-- NOTE: Please don&#039;t change the layout/categorizing without first coordinating with the other editors. --&amp;gt;&amp;lt;!-- NOTE: Feel free to add/edit content though! --&amp;gt;&amp;lt;!-- NOTE: Removing those notes and/or disregarding this is not only rude, but should be considered defacement. --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;row home-panes&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-7&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-started|icon=clarifications|Приступаем|&lt;br /&gt;
Это официальная Wiki NixOS.&lt;br /&gt;
Она включает в себя темы, не освещённые в [https://nixos.org/nixos/manual Мануале по NixOS]: руководства пользователя NixOS, примеры конфигурации и советы по устранению неполадок.&lt;br /&gt;
&lt;br /&gt;
NixOS - это операционная система Linux, основанная на менеджере пакетов Nix и репозитории пакетов Nixpkgs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
Новичкам в NixOS рекомендуется прочитать обзорную статью [[Nix Ecosystem|Экосистема Nix]], чтобы получить полное представление. Для более конкретного ознакомления см:&lt;br /&gt;
* [[NixOS]]&lt;br /&gt;
* [[Nix package manager]]&lt;br /&gt;
* Репозиторий пакетов [[Nixpkgs]]&lt;br /&gt;
* [[Overview of the Nix Language |Nix Language]]&lt;br /&gt;
Если вы хотите попробовать Nix в автономном режиме в другом дистрибутиве Linux или на Mac, сделайте первые шаги на [[nix.dev]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В экосистеме Nix существует множество дополнительных инструментов, таких как:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
* Home-manager для управления профилем пользователя и содержимым домашнего каталога&lt;br /&gt;
* Nix Flakes вместо nix-channel&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Они добавляют сложности и поначалу могут сбить с толку, и вы даже можете решить, что они вам не нужны.&lt;br /&gt;
Начните с простой Nix/NixOS, а Home Manager и/или Flakes интегрируйте в свою систему только после того, как вы уверенно освоите Nix/NixOS и поймете их значение}}.&lt;br /&gt;
&lt;br /&gt;
{{home:box|hosting|icon=cloud|Установка NixOS|&lt;br /&gt;
&amp;lt;!-- once ready: * На вашем компьютере, с помощью [[NixOS Installation Guide]] --&amp;gt;&lt;br /&gt;
* На Персональном Компьютере, с [[NixOS as a desktop]]&lt;br /&gt;
* На ARM, с [[NixOS on ARM]]&lt;br /&gt;
* В облаке, с помощью [[NixOS friendly hosters]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{home:box|doctopics|icon=manual|Разделы документации|&lt;br /&gt;
Первым пунктом должны быть [[Resources]], который служит шлюзом к наиболее важной документации. Некоторые основные моменты приведены ниже.&lt;br /&gt;
&lt;br /&gt;
Основные справочные материалы:&lt;br /&gt;
* [https://nixos.org/nixos/manual/ Руководство по NixOS]&lt;br /&gt;
* [https://nixos.org/nix/manual/ Руководство по Nix]&lt;br /&gt;
* [https://nixos.org/nixpkgs/manual/ Руководство по Nixpkgs]&lt;br /&gt;
* [https://nixos.org/hydra/manual/ Руководство Hydra]&lt;br /&gt;
&lt;br /&gt;
Основные категории страниц:&lt;br /&gt;
* [[:{{ns:14}}:Software|Программное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Hardware|Аппаратное обеспечение]]&lt;br /&gt;
* [[:{{ns:14}}:Desktop|Desktop]] - настройка для ПК&lt;br /&gt;
* [[:{{ns:14}}:Server|Server]] - настройка для Сервера&lt;br /&gt;
* [[:{{ns:14}}:Community|Community]] - люди, общение, работа над NixOS&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
См. также:&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
* [[Nix vs. Linux Standard Base|Nix против стандартной базы Linux]]&lt;br /&gt;
* [[Terms and Definitions in Nix Project|Термины и определения в Nix Project]]&lt;br /&gt;
* [[Cheatsheet|Cheatsheet / Сравнение между Ubuntu и NixOS]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-translate-fuzzy&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|wikipages|Служебные страницы|3=&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:SpecialPages}} Overview of special pages]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[{{fullurl:Special:AllPages|hideredirects=1}} Все страницы на {{SERVERNAME}}]&amp;lt;/span&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Special:Categories|Все категории на {{SERVERNAME}}]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[{{fullurl:Special:RecentChanges|hidebots=1&amp;amp;reviewStatus=unpatrolled}} Непроверенные изменения на {{SERVERNAME}}]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;col-md-5&amp;quot;&amp;gt;&lt;br /&gt;
{{home:box|get-in-touch|icon=dialog-hi|Связь|&lt;br /&gt;
&amp;lt;b&amp;gt;С сообществом&amp;lt;/b&amp;gt;&lt;br /&gt;
* [https://nixos.org/ Официальный сайт NixOS]&lt;br /&gt;
* [[Nix Community|Обзор сообщества]]&lt;br /&gt;
* [[Get In Touch|Чаты и форумы]]&lt;br /&gt;
* [[Support|Получить поддержку]]&lt;br /&gt;
* [[Get In Touch#Events|События]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; О Wiki&amp;lt;/b&amp;gt;&lt;br /&gt;
* Чат Matrix для редакторов Wiki&lt;br /&gt;
* [[Contributing to the wiki]]&lt;br /&gt;
}}&lt;br /&gt;
{{home:box|news|Новости|{{NixOS_Wiki:News}}&lt;br /&gt;
[[NixOS_Wiki:News{{!}}... все новостные статьи &amp;amp;rarr;]]&lt;br /&gt;
}}&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17872</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17872"/>
		<updated>2024-10-15T18:49:05Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;System76 Galago Pro - это Linux-ноутбук под управлением System76 Open Firmware (основанной на coreboot+EDK2) от System76.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
System76 Galago Pro - это Linux-ноутбук под управлением System76 Open Firmware (основанной на coreboot+EDK2) от System76.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
* Модуль NixOS Hardware при использовании [[Special:MyLanguage/Flakes|Flakes]]: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
Речь в документации идет о замене и обновлении таких компонентов, как оперативная память и диски.&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/1/ru&amp;diff=17871</id>
		<title>Translations:Hardware/System76/galp5/1/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/1/ru&amp;diff=17871"/>
		<updated>2024-10-15T18:49:03Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;System76 Galago Pro - это Linux-ноутбук под управлением System76 Open Firmware (основанной на coreboot+EDK2) от System76.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;System76 Galago Pro - это Linux-ноутбук под управлением System76 Open Firmware (основанной на coreboot+EDK2) от System76.&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17870</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17870"/>
		<updated>2024-10-15T18:48:44Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;Речь в документации идет о замене и обновлении таких компонентов, как оперативная память и диски.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
* Модуль NixOS Hardware при использовании [[Special:MyLanguage/Flakes|Flakes]]: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
Речь в документации идет о замене и обновлении таких компонентов, как оперативная память и диски.&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/13/ru&amp;diff=17869</id>
		<title>Translations:Hardware/System76/galp5/13/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/13/ru&amp;diff=17869"/>
		<updated>2024-10-15T18:48:43Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;Речь в документации идет о замене и обновлении таких компонентов, как оперативная память и диски.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Речь в документации идет о замене и обновлении таких компонентов, как оперативная память и диски.&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17868</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17868"/>
		<updated>2024-10-15T18:48:00Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
* Модуль NixOS Hardware при использовании [[Special:MyLanguage/Flakes|Flakes]]: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/10/ru&amp;diff=17867</id>
		<title>Translations:Hardware/System76/galp5/10/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/10/ru&amp;diff=17867"/>
		<updated>2024-10-15T18:47:58Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Модуль NixOS Hardware при использовании [[Special:MyLanguage/Flakes|Flakes]]: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17866</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17866"/>
		<updated>2024-10-15T18:46:44Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
* Модуль NixOS Hardware при использовании Flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/10/ru&amp;diff=17865</id>
		<title>Translations:Hardware/System76/galp5/10/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/10/ru&amp;diff=17865"/>
		<updated>2024-10-15T18:46:43Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Модуль NixOS Hardware при использовании Flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17864</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17864"/>
		<updated>2024-10-15T18:46:25Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
* Модуль NixOS Hardware в Flake: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/11/ru&amp;diff=17863</id>
		<title>Translations:Hardware/System76/galp5/11/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/11/ru&amp;diff=17863"/>
		<updated>2024-10-15T18:46:24Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Модуль NixOS Hardware при использовании каналов: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17862</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17862"/>
		<updated>2024-10-15T18:45:58Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;* Модуль NixOS Hardware в Flake: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
* Модуль NixOS Hardware в Flake: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/10/ru&amp;diff=17861</id>
		<title>Translations:Hardware/System76/galp5/10/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/10/ru&amp;diff=17861"/>
		<updated>2024-10-15T18:45:58Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;* Модуль NixOS Hardware в Flake: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Модуль NixOS Hardware в Flake: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17860</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17860"/>
		<updated>2024-10-15T18:45:17Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/7/ru&amp;diff=17859</id>
		<title>Translations:Hardware/System76/galp5/7/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/7/ru&amp;diff=17859"/>
		<updated>2024-10-15T18:45:16Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;За это отвечает пакет firmware-manager, который можно включить в конфигурации следующим образом:&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17858</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17858"/>
		<updated>2024-10-15T18:44:42Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;== Состояние ==&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Status&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Состояние ==&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/2/ru&amp;diff=17857</id>
		<title>Translations:Hardware/System76/galp5/2/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/2/ru&amp;diff=17857"/>
		<updated>2024-10-15T18:44:41Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;== Состояние ==&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Состояние ==&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17856</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17856"/>
		<updated>2024-10-15T18:44:25Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;Устройство загружает NixOS.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Status ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
Устройство загружает NixOS.&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/3/ru&amp;diff=17855</id>
		<title>Translations:Hardware/System76/galp5/3/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/3/ru&amp;diff=17855"/>
		<updated>2024-10-15T18:44:22Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;Устройство загружает NixOS.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Устройство загружает NixOS.&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5&amp;diff=17852</id>
		<title>Hardware/System76/galp5</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5&amp;diff=17852"/>
		<updated>2024-10-15T18:43:35Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Status == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
The device boots NixOS.&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Known issues == &amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Configuration == &amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== BIOS === &amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
{{file|configuration.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== galp5 === &amp;lt;!--T:8--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
==== GTX 1650/1650 Ti ==== &amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== Tech Docs === &amp;lt;!--T:12--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5&amp;diff=17851</id>
		<title>Hardware/System76/galp5</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5&amp;diff=17851"/>
		<updated>2024-10-15T18:43:05Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Status == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
The device boots NixOS.&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Known issues == &amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
== Configuration == &amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== BIOS === &amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:7--&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
{{file|disko-config.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  hardware.system76.enableAll = true;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== galp5 === &amp;lt;!--T:8--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
==== GTX 1650/1650 Ti ==== &amp;lt;!--T:9--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:10--&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:11--&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
=== Tech Docs === &amp;lt;!--T:12--&amp;gt;&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:13--&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17850</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17850"/>
		<updated>2024-10-15T18:40:53Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;=== Техническая документация ===&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Status ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The device boots NixOS.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
  {&lt;br /&gt;
    hardware.system76.enableAll = true;&lt;br /&gt;
  };&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Tech_Docs&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Техническая документация ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/12/ru&amp;diff=17849</id>
		<title>Translations:Hardware/System76/galp5/12/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/12/ru&amp;diff=17849"/>
		<updated>2024-10-15T18:40:52Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;=== Техническая документация ===&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Техническая документация ===&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17848</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17848"/>
		<updated>2024-10-15T18:40:29Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;==== GTX 1650/1650 Ti ====&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Status ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The device boots NixOS.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
  {&lt;br /&gt;
    hardware.system76.enableAll = true;&lt;br /&gt;
  };&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Tech Docs ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/9/ru&amp;diff=17847</id>
		<title>Translations:Hardware/System76/galp5/9/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/9/ru&amp;diff=17847"/>
		<updated>2024-10-15T18:40:24Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;==== GTX 1650/1650 Ti ====&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== GTX 1650/1650 Ti ====&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17846</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17846"/>
		<updated>2024-10-15T18:40:23Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;=== galp5 ===&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Status ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The device boots NixOS.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
  {&lt;br /&gt;
    hardware.system76.enableAll = true;&lt;br /&gt;
  };&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Tech Docs ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/8/ru&amp;diff=17845</id>
		<title>Translations:Hardware/System76/galp5/8/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/8/ru&amp;diff=17845"/>
		<updated>2024-10-15T18:40:22Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;=== galp5 ===&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== galp5 ===&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17844</id>
		<title>Hardware/System76/galp5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Hardware/System76/galp5/ru&amp;diff=17844"/>
		<updated>2024-10-15T18:40:17Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;== Настройка ==&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:System76 Galago Pro}}&lt;br /&gt;
{{Hardware/breadcrumb}}&amp;lt;div class=&amp;quot;infobox&amp;quot;&amp;gt;&lt;br /&gt;
{|class=&amp;quot;table&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|System76 Galago Pro&lt;br /&gt;
|-&lt;br /&gt;
!Manufacturer&lt;br /&gt;
|System76&lt;br /&gt;
|-&lt;br /&gt;
!Architecture&lt;br /&gt;
|x86_64-linux&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot; class=&amp;quot;title&amp;quot;|galp5&lt;br /&gt;
|-&lt;br /&gt;
!Status&lt;br /&gt;
|supported&lt;br /&gt;
|-&lt;br /&gt;
!Maintainer&lt;br /&gt;
|[[User:Ahoneybun|Ahoneybun]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The System76 Galago Pro is a Linux laptop running System76 Open Firmware (based on coreboot+EDK2) from System76&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
== Status ==&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
The device boots NixOS.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;Known_issues&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Известные проблемы ==&lt;br /&gt;
&amp;lt;span id=&amp;quot;Configuration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Настройка ==&lt;br /&gt;
=== BIOS ===&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
These are handled by the firmware-manager package which can be enabled in your configuration like this:&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
  {&lt;br /&gt;
    hardware.system76.enableAll = true;&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== galp5 ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
==== GTX 1650/1650 Ti ====&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for flakes: &amp;lt;code&amp;gt;nixos-hardware.nixosModules.system76-galp5-1650&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
* NixOS Hardware module for channels: &amp;lt;code&amp;gt;&amp;lt;nixos-hardware/system76/galp5-1650&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
=== Tech Docs ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div lang=&amp;quot;en&amp;quot; dir=&amp;quot;ltr&amp;quot; class=&amp;quot;mw-content-ltr&amp;quot;&amp;gt;&lt;br /&gt;
This goes over replacing and upgrading components such as RAM and drives.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
https://tech-docs.system76.com/models/galp5/README.html&lt;br /&gt;
&lt;br /&gt;
[[Category: Incomplete]]&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/5/ru&amp;diff=17843</id>
		<title>Translations:Hardware/System76/galp5/5/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=Translations:Hardware/System76/galp5/5/ru&amp;diff=17843"/>
		<updated>2024-10-15T18:40:17Z</updated>

		<summary type="html">&lt;p&gt;Unabomberlive: Created page with &amp;quot;== Настройка ==&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Настройка ==&lt;/div&gt;</summary>
		<author><name>Unabomberlive</name></author>
	</entry>
</feed>