Рейтинг:2

Portage или Portage-подобная программа для Ubuntu

флаг cn

я видел этот вопрос Могу ли я установить Portage, Pacman или другие менеджеры пакетов на Ubuntu?, что было не очень хорошей идеей устанавливать portage на Ubuntu из-за того, насколько тесно он связан с gentoo. Причина, по которой я хочу установить его, заключается в управлении вещами, которые я компилирую из исходного кода. Я не хочу компилировать все, я просто хочу иметь возможность управлять тем, что я выбираю для компиляции из исходного кода. Я хотел бы иметь возможность указать на сборку репозитория git из него, а затем использовать его. Если позже я решу, что мне больше не нужно это приложение, вместо того, чтобы помнить, где я его установил, я мог использовать менеджер пакетов для его удаления. Также было бы неплохо обновить его, указав выпуск для обновления. Мне было интересно, есть ли такое приложение, которое работало бы для Ubuntu?

user535733 avatar
флаг cn
https://help.ubuntu.com/community/CheckInstall
nedrobme avatar
флаг cn
@user535733 user535733 Означает ли это, что вам нужно удалять все, что вы делаете, и переустанавливать каждый раз, когда выходит обновление?
nedrobme avatar
флаг cn
@user535733 user535733 да, но на самом деле это не дает преимущества make. Если я извлекаю больше файлов из исходного кода для обновления, мне не нужно переделывать все двоичные файлы, мне нужно только переделать двоичные файлы, связанные с обновлением. Это кажется излишним, чтобы удалить его.
user535733 avatar
флаг cn
Вам нужно провести собственное исследование Checkinstall, чтобы решить, подходит ли он вам. Это хорошо задокументировано.
nedrobme avatar
флаг cn
@ user535733 Спасибо за помощь.
user535733 avatar
флаг cn
Кстати: Debian всегда ищет людей, которым нравится процесс сборки. Добровольный мейнтейнер пакетов Debian — ключевой элемент успеха всех дистрибутивов на базе Debian. Это может быть очень полезным хобби.
nedrobme avatar
флаг cn
@ user535733 Я посмотрю на это.
Рейтинг:1
флаг zw

В текущем состоянии технологий вы можете изолировать базовую систему Gentoo внутри своей Ubuntu, используя контейнеры, такие как Docker или chroot/шрут.
Как давний поклонник Gentoo, я буду сопровождать вас в этом процессе.

В приведенном ниже методе объясняется, как реализовать шрут механизм. Нам нужно получить текущий снимок stage3 Gentoo, затем распакуйте его и настройте в соответствии с Справочник по Gentoo но без разметки диска.

sudo apt-получить обновление
sudo apt-get установить schroot -y

кошка <<ЕОФ | sudo тройник /etc/schroot/chroot.d/gentoo.conf
[дженту]
описание=Gentoo
каталог=/srv/chroot/gentoo
root-пользователи=$USER
тип = каталог
пользователи=$USER
EOF

sudo mkdir -p /srv/chroot/gentoo

# добавить пользователя и группу portage
sudo groupadd portage -g 250
sudo useradd -M -g portage -s /bin/false -u 250 portage

компакт-диск ~/Загрузки
wget https://bouncer.gentoo.org/fetch/root/all/releases/amd64/autobuilds/20210630T214504Z/stage3-amd64-20210630T214504Z.tar.xz

sudo tar -xf stage3-amd64-20210630T214504Z.tar.xz -C /srv/chroot/gentoo

Затем вы можете перейти к только что созданному schroot Gentoo с помощью команды ниже:

schroot -c gentoo -u root bash
# сделайте что-нибудь, затем используйте Ctrl+D для выхода в Ubuntu

Чтобы быть уверенным, что вы установили систему Gentoo, вы можете выполнить

schroot -c gentoo cat /etc/os-release

получить

ИМЯ=Gentoo
ID=gentoo
PRETTY_NAME="Gentoo/Linux"
ANSI_COLOR="1;32"
HOME_URL="https://www.gentoo.org/"
SUPPORT_URL="https://www.gentoo.org/support/"
BUG_REPORT_URL="https://bugs.gentoo.org/"

Тогда в качестве примера мы можем скомпилировать небольшой графический хчасы приложение и Midnight Commander по умолчанию make.conf.

schroot -c gentoo -u root -- emerge --sync
schroot -c gentoo -u root -- emerge -qv x11-apps/xclock app-misc/mc

и, наконец, запустите установленный хчасы применение

schroot -c gentoo env DISPLAY=$DISPLAY xclock

Кроме того, вы можете управлять локальными данными с помощью приложений, установленных внутри Gentoo schroot:

  1. активировать schroot с помощью schroot -c Gentoo
  2. затем выполните некоторую команду, например МС
  3. выйти из schroot с помощью выход в том же терминале

Я думаю, вы поняли идею. Используя такой метод, вы можете установить Gentoo внутри своей Ubuntu. Этот внутренний Gentoo можно настроить с помощью USE-флагов, системного профиля и так далее. Он будет использовать Portage так, как вы хотите.


Если вам нравятся приключения, вы даже можете установить полноценную облегченную среду рабочего стола в эту систему Gentoo и запустить ее во вложенной системе X11 под названием Xephyr. Без подробностей это возможно, выполнив следующие действия:

schroot -c gentoo -u root -- монтировать /dev/shm /dev/shm -t tmpfs
schroot -c gentoo -u root -- emerge -atv mate-session-manager --exclude=dev-lang/rust
schroot -c gentoo -u root -- useradd polkitd
schroot -c gentoo -u root -- emerge -qatv mate-base/mate app-office/libreoffice-bin

mkdir ~/.gentoo # создаем новый $HOME для Gentoo
Xephyr — экран 1360x680:1 &
schroot -c gentoo -u $USER env HOME=~/.gentoo DISPLAY=:1 mate-session

чтобы получить что-то вроде

Gentoo mate-сессия на Ubuntu

Ответить или комментировать

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