LINUX.ORG.RU

Бедолаги фришники не могут портировать launchd из своей дочки, OS X, про какой systemd может идти речь? Они там только пару лет назад убрали RH-специфичные вещи, т.е. оно даже на других дистрах Linux не работало. На столько всё запущено.

Давайте лучше форкним все BSD-сборки под GPLv3!

yurikoles ★★★ ()
Последнее исправление: yurikoles (всего исправлений: 2)

Ты или тролль или невежда. Ненужнод умышленно прибит гвоздями к лялиху. Ни на одной другой платформе запустить его не представляется возможным. Что, в прочем, есть хорошо.

beastie ★★★★★ ()

systemd слишком сильно завязан на среде GNU/Linux.

Deleted ()

А запустить пробовали вы под DragonFly BSD systemd

fixed

trueshell ★★★★★ ()
Ответ на: комментарий от yurikoles

Пардон, что не работало на других дистрах Linux?

intelfx ★★★★★ ()
Ответ на: комментарий от yurikoles

Если ты прочтёшь содержимое патча, то поймёшь, что там речь о конфигурации сборочной системы и прописывании разных путей. Что и понятно: в начале существования systemd дистрибутивы были устроены кто во что горазд. Сейчас — в сильно меньшей степени. Благодаря systemd.

Так что тон вида «посмотрите на этих ушлёпков, они не могут даже писать обобщённо от конкретного дистрибутива» совершенно неуместен.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)

Да я даже под Linux запускать его не пробовал.

hateyoufeel ★★★★★ ()
Ответ на: комментарий от intelfx

Ответь на вопрос: оно собиралось на $vasya_pupkin distro из коробки?

Вот такое говно? https://github.com/systemd/systemd/commit/0571e0111d76cf96aa4069d9c7a6e24d97a...

+case $with_distro in
+        fedora)
+                SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
+                SYSTEM_SYSVRCND_PATH=/etc/rc.d
+                ;;
+        suse)
+                SYSTEM_SYSVINIT_PATH=/etc/init.d
+                SYSTEM_SYSVRCND_PATH=/etc/init.d
+                ;;
+        debian)
+                SYSTEM_SYSVINIT_PATH=/etc/init.d
+                SYSTEM_SYSVRCND_PATH=/etc
+                ;;
+        none)
+                SYSTEM_SYSVINIT_PATH=/etc/fix/the/configure/script
+                SYSTEM_SYSVRCND_PATH=/etc/fix/the/configure/script
+                ;;
+        *)
+                AC_MSG_ERROR([Your distribution (${with_distro}) is not yet supported, SysV init scripts could not be found! (patches welcome); you can specify --with-distro=none to skip this check])
+                ;;
+esac
Нормальные программы можно собрать и запустить на системах, о которых авторы даже и не слышали никогда. А это говно жёстко прописывало поддерживаемые дистры?

Или вот в этом коммите Лёня просит патчить код на C, даже не сборочный скрипт? для определения дистра.
commit eb10a76494542fb560efd09c16b40826fc37bc5f
Author: Lennart Poettering <lennart@poettering.net>
Date:   Mon May 17 01:39:51 2010 +0200

    docs: add terse distribution porting guide

diff --git a/DISTRO_PORTING b/DISTRO_PORTING
new file mode 100644
index 0000000..4190538
--- /dev/null
+++ b/DISTRO_PORTING
@@ -0,0 +1,36 @@
+Porting systemd To New Distributions
+
+        You need to make the follow changes to adapt systemd to your
+        distribution:
+
+        0) Make your distribution recognized via the autoconf checks
+        in configure.ac. Grep for the word "fedora" (case
+        insensitively) and you should be able to find the places where
+        you need to add/change things.
+
+        1) Patch src/hostname-setup.c so that systemd knows where to
+        read your host name from.
+
+        2) Check the unit files in units/ if they match your
+        distribution. Most likely you will have to make additions to
+        units/*.m4 and create a copy of units/fedora/ with changes for
+        your distribution.
+
+        3) Adjust Makefile.am to register the unit files you added in
+        step 2. Also you might need to update the m4 invocation in
+        Makefile.am. Grep for the word "fedora" (case insensitively)
+        and you should be able to find the places where you need to
+        add/change things.
+
+        4) Try it out.
+

yurikoles ★★★ ()
Последнее исправление: yurikoles (всего исправлений: 1)
Ответ на: комментарий от intelfx

Благодаря systemd.

Мы наверное после каждой загрузки должны петь «Ave Lennart»?

yurikoles ★★★ ()
Ответ на: комментарий от hateyoufeel

Ничего, через пару лет появится commit, в котором переименуют systemd в skynetd, тогда-то мы заживём!

yurikoles ★★★ ()
Ответ на: комментарий от yurikoles

Ответь на вопрос: оно собиралось на $vasya_pupkin distro из коробки?

Нет, конечно. И не должно было. Самому-то не смешно?

case $with_distro in

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

Тебе знакомо такое понятие, как автодетект распространённых частных случаев? Для всего остального ./configure.sh --with-sysvinit-path --with-sysvrcnd-path в помощь.

Или вот в этом коммите Лёня просит патчить код на C, даже не сборочный скрипт? для определения дистра.

Date: Mon May 17 01:39:51 2010 +0200

Ты бы ещё самый первый коммит взял и спросил, почему оно не варит тебе кофе. Учись троллить тоньше.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Ты бы ещё самый первый коммит взял и спросил, почему оно не варит тебе кофе. Учись троллить тоньше.

Этот текст удалён только в

commit bc2708414babc5c99bb8000e63c84e87606cc15d
Author: Lennart Poettering <lennart@poettering.net>
Date:   Fri Jan 4 23:24:38 2013 +0100
Что было как раз

пару лет назад

Как я уже об этом говорил в начале темы. Нет?

yurikoles ★★★ ()
Последнее исправление: yurikoles (всего исправлений: 1)
Ответ на: комментарий от yurikoles

Система инициализации очень сильно лезет в потроха системы в отличии от текстового редактора или браузера. А в дистрибутивах до недавнего времени был полный зоопарк в плане систем инициализации и хранения некоторых конфигов. Так что без обработки частных случаев задача в принципе не решалась.

Ты ещё возмутись, что драйвера для оборудования имеют разные сборочные скрипты (а как правило вообще разный код) для разных ОС.

KivApple ★★★★★ ()
Последнее исправление: KivApple (всего исправлений: 1)
Ответ на: комментарий от yurikoles

Этот текст удалён только в <...>

И что? Вплоть до 2013 года они тащили поддержку дистроспецифичного легаси, которое (внезапно) не описывается декларативно. Потом решили убрать и оставить только унифицированную схему, которую толкали в массы с самого начала.

intelfx ★★★★★ ()
Ответ на: комментарий от intelfx

Поведай же нам, Иван, когда оно научилось cross-platform в рамках Linux, больше 2х лет назад? Я так понимаю, ПОСЛЕ того как все ввели то, что просил Ленни Поттер? Ну это же красная шапка, она даже Демьяна с Марком нагнула, один Патрик ещё держится, хотя всем плевать на него. Ну и в Gentoo по-умолчанию OpenRC, но systemd ставится в 2 команды, но это у них фича такая, гибкость. Ну и Amazon AMI до следующего Ubuntu LTS.

yurikoles ★★★ ()
Последнее исправление: yurikoles (всего исправлений: 2)
Ответ на: комментарий от yurikoles

О, да, я забыл тебе ответить.

Давай посмотрим. Впервые systemd появился в Fedora 15 (чей релиз случился в 2011-05-24 и имел там версию 26 (чей релиз состоялся в 2011-04-30).

В арче systemd появился (в extra) в 2012-01-12 на версии 38 и был перемещён в core через полгода (2012-06-01) на версии 184 (т. е. уже после слияния с udev).

В дебиане (надо полагать, самый нетривиальный порт) systemd появился в experimental с самого начала (2010-05-30), в unstable с версии 29 в 2011-06-08 и, наконец, принял окончательную версию 44 (которая так и осталась в wheezy) в 2012-05-03. Вот тебе чейнджлог.

Так что да, оно научилось в кросс-платформу сильно больше двух лет назад. Предвосхищая контраргумент насчёт «так его наверняка пропатчили с ног до головы» — так нет, арчовские PKGBUILD'ы вполне себе чисты и аккуратны, дебиановские исходники вроде тоже.

При этом пресловутое --with-distro никуда не делось, но на версии 44 этот флаг отвечал ровно за две вещи: автоуказание путей до легаси-инитскриптов и выбор в коде специальных дистроспецифичных имён целей и ранлевелов, опять же, внутри слоя совместимости с легаси. Т. е. как я и говорил — все дистроспецифичные куски кода, насчёт которых ты негодовал, на указанный момент относились исключительно к обеспечению совместимости с дистроспецифичными же скриптами, которые каждый дистрибутив лепил кто во что горазд. А это камень в огород sysvinit, не systemd.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.