Manjaro Difference between revisions of "Build Manjaro ISOs with buildiso/ru"

Difference between revisions of "Build Manjaro ISOs with buildiso/ru"

From Manjaro
 
(13 intermediate revisions by 2 users not shown)
Line 242: Line 242:
* <code>enable_openrc=</code>: не используйте
* <code>enable_openrc=</code>: не используйте


<div lang="en" dir="ltr" class="mw-content-ltr">
===Packages-Desktop===
===Packages-Desktop===
<div class="toccolours mw-collapsible mw-collapsed">
<div class="toccolours mw-collapsible mw-collapsed">
<span style="color:green">An example `Packages-Desktop` file can be viewed by unfolding this block. It is always best to use the latest version instead of copying this one.</span>
<span style="color:green">Пример файла `Packages-Desktop` можно посмотреть, развернув этот блок. Всегда лучше использовать последнюю версию, а не копировать эту.</span>
<div class="mw-collapsible-content">
<div class="mw-collapsible-content">
<pre>
<pre>
## Network
## Сеть
avahi
avahi
networkmanager
networkmanager
Line 255: Line 254:
networkmanager-pptp
networkmanager-pptp
networkmanager-vpnc
networkmanager-vpnc
nss-mdns # NSS support for mDNS (optdepend for avahi)
nss-mdns # Поддержка NSS для mDNS (зависимость для avahi)
ntp
ntp
mobile-broadband-provider-info
mobile-broadband-provider-info
Line 263: Line 262:
samba
samba
usb_modeswitch
usb_modeswitch
</div>


## Библиотеки для звука/аудио/видео
## Библиотеки для звука/аудио/видео
Line 294: Line 292:
udisks2
udisks2


<div lang="en" dir="ltr" class="mw-content-ltr">
## Поддержка/разработка AUR
## AUR Support/Development
# Отсутствующие пакеты base-devel
# Missing base-devel packages
autoconf
autoconf
automake
automake
Line 312: Line 309:
pkg-config
pkg-config
>multilib lib32-flex
>multilib lib32-flex
# Extra packages for AUR support
# Пакеты extra для поддержки AUR
>extra git
>extra git
>extra patchutils
>extra patchutils
>extra subversion
>extra subversion
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
## Шрифты
## Fonts
cantarell-fonts
cantarell-fonts
# noto-fonts            # default font
# noto-fonts            # шрифт по-умолчанию
# noto-fonts-cjk        # big package, ~76 mb compressed
# noto-fonts-cjk        # большой пакет, сжат до ~76 МБ
# >extra noto-fonts-emoji
# >extra noto-fonts-emoji
terminus-font
terminus-font
ttf-bitstream-vera      # xfce4-terminal default Monospace
ttf-bitstream-vera      # xfce4-terminal по-умолчанию моноширинный
# ttf-dejavu            # Installed as gnome-themes-standard dependency
# ttf-dejavu            # установлен как зависимость для gnome-themes-standard
>extra ttf-inconsolata
>extra ttf-inconsolata
>extra ttf-indic-otf
>extra ttf-indic-otf
>extra ttf-liberation
>extra ttf-liberation
>extra ttf-droid
>extra ttf-droid
</div>


## Игры
## Игры
Line 389: Line 383:
xfwm4-gtk3
xfwm4-gtk3


<div lang="en" dir="ltr" class="mw-content-ltr">
## Extra XFCE
## XFCE Extras
blueman
blueman
ffmpegthumbnailer  # tumbler - for video thumbnails
ffmpegthumbnailer  # tumbler - для эскизов видео
freetype2          # tumbler - for font thumbnails
freetype2          # tumbler - для эскизов шрифтов
gksu
gksu
gnome-keyring      # fix wlan segfault
gnome-keyring      # устраняет неисправность wlan
libgsf            # tumbler - for ODF thumbnails
libgsf            # tumbler - для эскизов ODF
libopenraw        # tumbler - for RAW thumbnails
libopenraw        # tumbler - для эскизов RAW
light-locker
light-locker
network-manager-applet
network-manager-applet
menulibre
menulibre
orage
orage
poppler-glib      # tumbler - for PDF thumbnails
poppler-glib      # tumbler - для эскизов PDF
thunar-archive-plugin
thunar-archive-plugin
file-roller
file-roller
Line 436: Line 429:
xfce4-pulseaudio-plugin
xfce4-pulseaudio-plugin
pavucontrol
pavucontrol
</div>


## Темы
## Темы
Line 507: Line 499:
xf86-input-void
xf86-input-void


<div lang="en" dir="ltr" class="mw-content-ltr">
## Сервер Xorg и графика
## Xorg Server and Graphics
>multilib lib32-libva-intel-driver
>multilib lib32-libva-intel-driver
>multilib lib32-libva-mesa-driver
>multilib lib32-libva-mesa-driver
Line 523: Line 514:
xorg-xinit
xorg-xinit
xorg-xkill
xorg-xkill
</div>


## Инструменты рабочего стола
## Инструменты рабочего стола
Line 557: Line 547:
=manjaro-tools.conf=
=manjaro-tools.conf=


<code>manjaro-tools.conf</code> является центральным конфигурационным файлом для всех инструментов, входящих в состав "manjaro-tools". Отредактируйте только общие сведения и часть "buildiso", чтобы не выходить за рамки этого руководства. Если вы не уверены, что и как нужно редактировать, '''не''' редактируйте это. Вы всегда можете использовать аргументы с помощью команды <code>buildiso</code> позже.  
<code>manjaro-tools.conf</code> является центральным конфигурационным файлом для всех инструментов, входящих в состав ''manjaro-tools''. Отредактируйте только общие сведения и часть "buildiso", чтобы не выходить за рамки этого руководства. Если вы не уверены, что и как нужно редактировать, '''не''' редактируйте это. Вы всегда можете использовать аргументы с помощью команды <code>buildiso</code> позже.  


По умолчанию, общесистемный файл конфигурации устанавливается в
По умолчанию, общесистемный файл конфигурации устанавливается в
Line 567: Line 557:
  ~/.config/manjaro-tools
  ~/.config/manjaro-tools


<div lang="en" dir="ltr" class="mw-content-ltr">
Если userconfig присутствует, ''manjaro-tools''/''buildiso'' загрузит значения userconfig. Лучшая практика - оставить нетронутым общесистемный файл. По умолчанию он закомментирован и отображает только значения инициализации, выполненные в коде.
If the userconfig is present, ''manjaro-tools''/''buildiso'' will load the userconfig values. Best practice is to leave the systemwide file untouched. By default it is commented and shows just initialization values done in code.
</div>


=Создание собственного ISO=
=Создание собственного ISO=
Line 576: Line 564:
Вам необходимо указать имя вашего ISO-профиля после аргумента <code>-p</code>. В данном случае это <код>xfce</code>.
Вам необходимо указать имя вашего ISO-профиля после аргумента <code>-p</code>. В данном случае это <код>xfce</code>.


<div lang="en" dir="ltr" class="mw-content-ltr">
Если процесс сборки завершился с ошибкой, запустите его снова.  
If the build process fails with an error, start it again.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
'''Внимание:''' Процесс сборки занимает не менее 10 минут, а при использовании жестких дисков, медленных процессоров или больших ISO - гораздо больше.
'''Attention:''' The build process needs at least 10 minutes to complete or much longer when you are using HDDs, slow CPUs, or large ISOs.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Когда процесс сборки успешно завершится, ISO-файл и список пакетов появятся в этом каталоге:  
When the build process finishes successfully, the ISO file and the package list will appear in this folder:  
  /var/кэш/manjaro-tools/iso/
  /var/cache/manjaro-tools/iso/
===Пример:===
===Example:===
Вы можете использовать аргументы с командой <code>buildiso</code> для получения дополнительных параметров сборки:
You can use arguments with the <code>buildiso</code> command for more build options:
{{UserCmd|command=buildiso -f -p xfce -b stable}}
{{UserCmd|command=buildiso -f -p xfce -b stable}}
* <code>-f</code> let's you specify if you want the full ISO. If omitted a minimal ISO will be build.
* <code>-f</code> позволяет указать, нужен ли вам полный ISO. Если это не указано - будет создан минимальный ISO.
* <code>-b</code> let's you specify the branch. You can also set this in your <code>manjaro-tools.conf</code> file.
* <code>-b</code> позволяет задать ветку. Вы также можете задать её в файле <code>manjaro-tools.conf</code>.
You can find other examples of builds using different arguments for ''buildiso'' [https://wiki.manjaro.org/index.php?title=Manjaro-tools#buildiso here].
Вы можете найти другие примеры сборок с использованием различных аргументов для ''buildiso'' [[Manjaro-tools/ru#buildiso|здесь]].
</div>


=Очистка жесткого диска=
=Очистка жесткого диска=
Line 633: Line 615:
Если вы предпочтете не изменять это, то всегда можете использовать '''-f''' с buildiso для создания полного профиля.
Если вы предпочтете не изменять это, то всегда можете использовать '''-f''' с buildiso для создания полного профиля.


<div lang="en" dir="ltr" class="mw-content-ltr">
=Смотрите также=
=See also=
* Источник: [https://gitlab.manjaro.org/profiles-and-settings/iso-profiles Manjaro Gitlab ISO Profiles] (ветвь master может быть нестабильной - выберите ветвь для последнего релиза)
* Source: [https://gitlab.manjaro.org/profiles-and-settings/iso-profiles Manjaro Gitlab ISO Profiles] (master branch may be unstable - select the branch for latest release)
* Видео: [https://www.youtube.com/watch?v=B--je--m0VI Building Manjaro ISO by Philip Müller](Обучающее видео)
* Forum: [https://archived.forum.manjaro.org/t/how-to-create-your-own-manjaro-spin-with-manjaro-tools/1355 How to create your own Manjaro spin with Manjaro-Tools]
* Wiki: [[Buildiso with AUR packages: Using buildpkg/ru|Buildiso с пакетами AUR: Использование buildpkg]]
* Forum: [https://archived.forum.manjaro.org/t/howto-build-your-own-manjaro-spin/65821 Philip Müller shows how-to]
* Video: [https://youtu.be/B--je--m0VI Building Manjaro ISO by Philip Müller](Tutorial Video)
* Wiki: [[Buildiso with AUR packages: Using buildpkg]]
</div>
[[Category:Contents Page{{#translation:}}]]
[[Category:Contents Page{{#translation:}}]]
[[Category:Development{{#translation:}}]]
[[Category:Development{{#translation:}}]]
[[Category:ISO{{#translation:}}]]
[[Category:ISO{{#translation:}}]]

Latest revision as of 06:56, 4 July 2024

Other languages:
English • ‎русский • ‎فارسی

Предпосылки

Это подробное описание установки и настройки инструментов и процесса сборки.

Это требование - либо загрузить и установить последнюю версию Manjaro, либо работать с хорошо поддерживаемой системой Manjaro. Важно, чтобы ваша система была обновлена последними версиями ядра и пакетов.

Установка инструментов Manjaro

Для начала работы вам понадобятся следующие пакеты:

user $ pamac install manjaro-tools-iso git COPY TO CLIPBOARD


Мы будем работать с официальным XFCE, чтобы помочь вам понять, что нужно делать.

Профиль ISO

Загрузите последние профили ISO

Последние версии профилей можно найти на gitlab Manjaro. Вы можете загрузить их напрямую, используя команду:

user $ git clone https://gitlab.manjaro.org/profiles-and-settings/iso-profiles.git ~/iso-profiles COPY TO CLIPBOARD


.

Обзор профиля ISO

Профиль ISO для xfce теперь можно найти по адресу

user $ ls -l ~/iso-profiles/manjaro/xfce COPY TO CLIPBOARD


Давайте подробнее рассмотрим каталог профиля XFCE (отмечен выше):

desktop-overlay
live-overlay -> ../../shared/manjaro/live-overlay
Packages-Desktop
Packages-Live -> ../../shared/Packages-Live
Packages-Mhwd -> ../../shared/Packages-Mhwd
Packages-Root -> ../../shared/Packages-Root
profile.conf
  • desktop-overlay: после каждой успешной установки вашего ISO файлы и каталоги, находящиеся здесь, будут скопированы.
  • live-overlay: аналогично desktop-overlay. Файлы и каталоги, находящиеся здесь, будут копироваться только на LiveCD вашего ISO.
  • Packages-Desktop: этот файл содержит пакеты для установки ISO. Все пакеты также будут установлены на LiveCD.
  • Packages-Live: этот файл содержит пакеты, которые будут установлены только на LiveCD.
  • Packages-Mhwd: этот файл содержит пакеты Mhwd, важные для всех установок Manjaro и LiveCD.
  • Packages-Root: этот файл содержит базовые пакеты, важные для всех установок Manjaro и LiveCD.
  • profile.conf содержит основные настройки для вашей установки ISO и LiveCD.

Как вы, вероятно, заметили, некоторые из них являются всего лишь символическими ссылками на ISO-профиль shared. Хорошей практикой является никогда не изменять файлы или каталоги в ISO-профиле shared. Если вы когда-нибудь захотите их изменить - сначала скопируйте их в каталог вашего ISO-профиля и удалите символическую ссылку.

Все каталоги и файлы, специфичные для вашего ISO, выделены полужирным шрифтом. Вы можете изменить их по своему усмотрению.

Изменение профиля ISO

Наиболее распространенными местами для настройки ISO-профиля являются 3 каталога, отмеченные выше: desktop-overlay, profile.conf, Packages-Desktop:

desktop-overlay

Директория desktop-overlay выглядит следующим образом:


$ tree ~/iso-profiles/manjaro/xfce/desktop-overlay/etc

../iso-profiles/manjaro/xfce/desktop-overlay/
├── etc
│   ├── fonts
│   │   └── conf.d
│   │       └── 70-no-bitmaps.conf
│   └── lightdm
│       ├── lightdm.conf
│       └── lightdm-gtk-greeter.conf
└── usr
    └── share
        └── icons
            └── default
                └── index.theme


Перейдите в эту директорию.

user $ cd ~/iso-profiles/manjaro/xfce/desktop-overlay/etc/ COPY TO CLIPBOARD


Затем создайте каталог skel. В нем вы сможете клонировать в ISO все, что видите на экране рабочего стола.

user $ mkdir skel COPY TO CLIPBOARD


После успешной установки ISO все файлы и каталоги из desktop-overlay копируются на установленную систему. Сюда входят файлы настроек/конфигурации, а также темы и фоны/картинки.

Все файлы и каталоги, находящиеся здесь, будут скопированы в домашний каталог. Большинство скрытых файлов и их структура в ~/iso-profiles/manjaro/xfce/desktop-overlay/etc/skel/ должны быть вам уже знакомы, поскольку ваша домашняя директория выглядит очень похоже.

Клонирование пользовательских обоев рабочего стола

Чтобы клонировать ваш рабочий стол с пользовательскими обоями. Откройте новый менеджер файлов и перейдите к этому файлу:

~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml

Измените все каталоги изображений на те, в которых находились ваши пользовательские обои. Например:

 /usr/share/backgrounds/<ВАШЕ ИЗОБРАЖЕНИЕ ЗДЕСЬ>

Пример

A sample `xfce4-desktop.xml` can be viewed by unfolding this block

Перейдите в эту директорию:

user $ cd ~/iso-profiles/manjaro/xfce/desktop-overlay/ COPY TO CLIPBOARD


Затем создайте каталог usr/share/backgrounds и поместите в него свои пользовательские обои.

user $ mkdir ./usr/share/backgrounds COPY TO CLIPBOARD


user $ cp ~/Pictures/Wallpapers/your-wallpaper.png ~/iso-profiles/manjaro/xfce/desktop-overlay/usr/share/backgrounds COPY TO CLIPBOARD


profile.conf

Полное содержание примера profile.conf можно посмотреть, развернув этот блок. Всегда лучше использовать последнюю версию, а не копировать эту.

Этот файл конфигурации содержит опции настройки. Все настройки по умолчанию закомментированы. Если вы хотите их изменить - раскомментируйте (уберите символ # перед ними) и измените их.

Заслуживают внимания следующие параметры:

  • multilib= настройка относится к флагу >multilib в списках пакетов. multilib будет устанавливать основные 32-битные библиотеки на 64-битных системах. Это повышает совместимость 32-разрядных приложений на 64-разрядных системах.
  • displaymanager= устанавливает менеджер дисплея / входа, который использует ваша система. Вам также необходимо указать менеджер дисплея в списке пакетов.
  • nonfree_xorg= относится к проприетарным графическим драйверам.
  • netinstall=: не используйте
  • chrootcfg=: не используйте
  • kernel= позволяет задействовать установленное ядро. Не включайте никакие ядра в список пакетов! Эта настройка - все, что вам нужно.
  • enable_systemd= позволяет задать службы systemd, запускаемые на установленной системе (и с аналогичными настройками на livecd).
  • enable_openrc=: не используйте

Packages-Desktop

Пример файла `Packages-Desktop` можно посмотреть, развернув этот блок. Всегда лучше использовать последнюю версию, а не копировать эту.

Этот файл содержит список пакетов, которые будут установлены на ваш установленный ISO (XFCE) и LiveCD (пакеты в файле Packages-Live устанавливаются только для live ISO). Это список пакетов с пакетами для Xfce (и пакетами, которые вы хотите добавить в свой собственный Manjaro ISO) из нескольких списков в вашем ISO-профиле. Другие списки пакетов являются более общими.

Вы можете добавлять или удалять имена пакетов из этого списка по своему усмотрению. Вам не нужно беспокоиться о зависимостях при добавлении имен пакетов, просто убедитесь, что имя пакета написано правильно и пакет доступен в репозиториях Manjaro.

# помечаются комментарии. Остальная часть строки после символа # игнорируется.

Добавление пакетов AUR

Если вы хотите добавить пакеты AUR в свой ISO, вам нужно создать онлайн-репозиторий и добавить его в файл user-repos.conf рядом с вашим profile.conf.

Используйте только свои собственные репозитории с поддержкой http.

[your-repo-name]
SigLevel = Optional TrustAll
Server = http://repo.server.tld/your-repo-name

Статья Buildiso с пакетами AUR: Использование buildpkg содержит более подробную информацию об этом процессе.


manjaro-tools.conf

manjaro-tools.conf является центральным конфигурационным файлом для всех инструментов, входящих в состав manjaro-tools. Отредактируйте только общие сведения и часть "buildiso", чтобы не выходить за рамки этого руководства. Если вы не уверены, что и как нужно редактировать, не редактируйте это. Вы всегда можете использовать аргументы с помощью команды buildiso позже.

По умолчанию, общесистемный файл конфигурации устанавливается в

/etc/manjaro-tools/manjaro-tools.conf

Лучше всего оставить общесистемный файл нетронутым и скопировать общесистемный конфиг в ваш домашний каталог cюда:

~/.config/manjaro-tools

Если userconfig присутствует, manjaro-tools/buildiso загрузит значения userconfig. Лучшая практика - оставить нетронутым общесистемный файл. По умолчанию он закомментирован и отображает только значения инициализации, выполненные в коде.

Создание собственного ISO

Создайте свой ISO с помощью следующей команды:

user $ buildiso -p xfce COPY TO CLIPBOARD


Вам необходимо указать имя вашего ISO-профиля после аргумента -p. В данном случае это <код>xfce.

Если процесс сборки завершился с ошибкой, запустите его снова.

Внимание: Процесс сборки занимает не менее 10 минут, а при использовании жестких дисков, медленных процессоров или больших ISO - гораздо больше.

Когда процесс сборки успешно завершится, ISO-файл и список пакетов появятся в этом каталоге:

/var/кэш/manjaro-tools/iso/

Пример:

Вы можете использовать аргументы с командой buildiso для получения дополнительных параметров сборки:

user $ buildiso -f -p xfce -b stable COPY TO CLIPBOARD


  • -f позволяет указать, нужен ли вам полный ISO. Если это не указано - будет создан минимальный ISO.
  • -b позволяет задать ветку. Вы также можете задать её в файле manjaro-tools.conf.

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

Очистка жесткого диска

После успешной или неудачной сборки вы можете избавиться от большинства данных ("сырой" ISO со всеми загруженными пакетами), удалив этот каталог:

user $ sudo rm -r /var/lib/manjaro-tools/buildiso/ COPY TO CLIPBOARD


Чтобы очистить систему от файлов пакетов, не установленных в системе (сюда входят все файлы пакетов, загруженные для вашего пользовательского ISO):

user $ sudo paccache -ruk0 COPY TO CLIPBOARD


Вы также можете вручную посмотреть

/var/cache/manjaro-tools/

и удалить каталоги или файлы по своему усмотрению. Если вы хотите удалить все ISO-образы, списки пакетов и кэшированные пакеты Xorg, сделайте это:

user $ sudo rm -r /var/cache/manjaro-tools/ COPY TO CLIPBOARD


Пожалуйста, помните, что все эти пакеты и файлы сохранены для вашего удобства. Если вы очистите систему, как указано выше, вам придется скачать все пакеты и собрать все образы снова, когда вы в следующий раз захотите собрать свой собственный Manjaro ISO.

По умолчанию ваш файл сохранится как manjaro-tools.conf. Если вы хотите удалить его, используйте

user $ rm -r ~/.config/manjaro-tools COPY TO CLIPBOARD



Советы и хитрости

Создание минимального ISO

Минимальный ISO легко создать, изменив запись в файле profile.conf. Найдите раздел

 # использовать пакеты extra, определенные в pkglist, для активации полного профиля
 # extra="false"
 extra="true"

удалите знак # перед extra = "false" и добавьте # перед extra = "true".

Если вы предпочтете не изменять это, то всегда можете использовать -f с buildiso для создания полного профиля.

Смотрите также

Cookies help us deliver our services. By using our services, you agree to our use of cookies.