<commit_before>---
layout: post
title: Простой способ собрать gentoo linux из arch
categories: personal
tags: 
  - gentoo
  - systemd
comments: true
mathjax: null
featured: true
published: true
---

Лично меня Gentoo Linux привлекает из-за его возможностей для безопасности,
а именно его ответвление Hardened Gentoo. Оно существует уже достаточно давно
и в целом стабильно. Когда-то Gentoo получил своё имя от самого быстрого
пингвина. В те далекие времена в ходу была x86 архитектура и процессоры
в массе своей довольно сильно отличались от того что понималось под i686(sse,
новые оптимизации и так далее). Конечно, целевые оптимизации имеют место
и в настоящее время, но былого прироста, как правило, уже не бывает.

ХОТЯ ЕСТЬ ИСКЛЮЧЕНИЯ ДОБАВИТЬ СТАТЬЮ ПРО УБУНДУ

Для начала подготовим место где это будем собирать. Например у меня для этого
сейчас используется ~/src/gentoo

Так что набираем:

mkdir -p ~/src/gentoo ; cd !$

Что ж, начнем с добычи дистрибутива. В данном случае нам пока что понадобится
только stage3. Это подготовленный образ системы. Когда-то ещё поддерживалась
сборка gentoo из stage1 и stage2, но сейчас этот способ оставили для совсем
уж задротов и в хэндбуке он не описан. Связано это скорее всего со сложностью
поддержки, особенностями при сборке компиляторов и тп. В общем идем по ссылке

w3m https://www.gentoo.org/downloads/mirrors/
<commit_msg>fix gentoo article<commit_after>---
layout: post
title: Простой способ собрать gentoo linux из arch
categories: personal
tags: 
  - gentoo
  - systemd
comments: true
mathjax: null
featured: true
published: true
---

Лично меня Gentoo Linux привлекает из-за его возможностей для безопасности,
а именно его ответвление Hardened Gentoo. Оно существует уже достаточно давно
и в целом стабильно. Когда-то Gentoo получил своё имя от самого быстрого
пингвина. В те далекие времена в ходу была x86 архитектура и процессоры
в массе своей довольно сильно отличались от того что понималось под i686(sse,
новые оптимизации и так далее). Конечно, целевые оптимизации имеют место
и в настоящее время, но былого прироста, как правило, уже не бывает.

<!--excerpt-->

Хотя в любом правиле есть исключения и в тех случаях, когда
производительность может сэкономить деньги это может быть полезно. Например
если используется большой кластер для распределенной
компиляции/тестирования/моделирования, а тем более алгоритмического
трейдинга, где низкая латентность очень важна, даже пятипроцентный прирост не
помешает. В действительности использование более крутого компилятора,
например Intel C++ или последних версий GCC с использованием всяких -Ofast,
link time optimization и других экстремальных методов может дать даже больший
прирост, 15% и больше.

Впрочем большинство юзеров Gentoo, в том числе я, считают что gentoo уже
давно не про оптимизации, а про USE-флаги и всякие тонкие кастомизации.
Например из того же арча avahi не выкинуть, даже если оно мне не нравится. На
базе генты, например, довольно удобно строить свой целевой дистрибутив.

Для начала подготовим место где это будем собирать. Например у меня для этого
сейчас используется ~/src/gentoo

Так что набираем:

mkdir -p ~/src/gentoo ; cd !$

Что ж, начнем с добычи дистрибутива. В данном случае нам пока что понадобится
только stage3. Это подготовленный образ системы. Когда-то ещё поддерживалась
сборка gentoo из stage1 и stage2, но сейчас этот способ оставили для совсем
уж задротов и в хэндбуке он не описан. Связано это скорее всего со сложностью
поддержки, особенностями при сборке компиляторов и тп. В общем идем по ссылке

w3m https://www.gentoo.org/downloads/mirrors/

{'fraction_non_alphanumeric': 0.04412989175686927, 'fraction_numerical': 0.005550929780738274, 'mean_word_length': 4.738853503184713, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 4, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1671792', 'n_tokens_mistral': 1446, 'n_tokens_neox': 1728, 'n_words': 509}