From: Peter Novodvorsky <nidd@myxomop.com> To: devel-kernel@altlinux.ru Subject: Re: [d-kernel] kernel policy Date: Tue, 15 Apr 2003 22:10:45 +0400 Message-ID: <87he8zljh6.fsf@velvet.po.cs.msu.su> (raw) In-Reply-To: <m37k9vg5vk.fsf@sam-solutions.net> (ed@sam-solutions.net's message of "15 Apr 2003 19:36:02 +0400") ed@sam-solutions.net (Ed V. Bartosh) writes: > n> Есть два вида патчей: > > n> kernel-patch-feat-%{upsteram_name} > n> kernel-patch-fix-%{upstream_name} > Предлагаю убрать patch- из названия: > kernel-feat-%{upsteram_name} > kernel-fix-%{upstream_name} > > По-моему достаточно информативно и короче. это не информативно. это не говорит, что это -- патч. Может ещё -source- убрать? > Предлагаю сделать пакет kernel-build-tools с макросами/скриптами/etc > применяющимися при сборке ядер. > У меня уже есть, что туда положить :) окей. > > n> 1.2 Внешние модули. > n> ------------------- > > n> Внешними модулями называются модули, исходные файлы которых > n> поставляются не в виде патчей и которые можно собрать отдельно от > n> ядра. > > n> Пакеты с такими собранными модулями должны называться > n> kernel-<сокращённое название набора модулей>-<версия ядра с которым > n> собраны модули>-<flavour ядра с которым собраны модули>. > Предлагаю kernel-module-..., соответственно kernel-module-название-headers и > kernel-module-название-source > > И еще - а зачем вообще эти модули нужны ? Предлагаю избавиться от них > или хотя бы минимизировать их количество. > Или описать здесь принципы выноса бинарных модулей в отдельный пакет. > Я как-то до сих пор их не уяснил :( Это те модули которые уже вынесены. См. kernel-alsa-2.4.21pre-std-up src rpm. Нет, не судьба называть их kernel-module. > > n> 1.4 Пакет с ядром. > n> ------------------ > > n> Такой пакет должен называться kernel-image-<версия ядра>-<flavour > n> ядра>. > Что есть flavor в данном случае ? > Может flavor-subflavor (std-up) ? Да-да. > > n> 2. Versioning пакетов. > n> ---------------------- > > n> Пакетам с feat патчами желательно присваивать версии, полученные из > n> upstream. Если upstream не делает versioning, допустимо называть их по > n> дате последнего изменения upstream в формате ddmmyy. > > n> Пакетам с fix патчами обязательно присваивать версии по дате > n> запаковывания в формате ddmmyy. > Здесь можно привести формат имени таких пакетов. secfixes. будут выглядеть именно так. > > n> 3.1 Патчи. > n> ---------- > > n> /usr/src/patches/<имя_патча>/* патчи > /usr/src/kernel/patches/<имя_патча>/* > > n> patches/apply/<имя_патча> программа, которая > /usr/src/kernel/patches/apply/<имя_патча> > окей-окей. > Вместе с патчами могут ставиться и тарболы, предлагаю их > ставить в /usr/src/kernel/patches/src/<имя_патча>/ > В отдельный пакет с сорцами уж точно нет смысла это выносить. Да, но то как патч распологает свои файлы, -- не дело полиси, в этом разбирается скрипт apply. > > n> прикладывает патчи > Считаю, что apply-программы вещь опциональная, а стандартное > приложение патчей должно быть выполнено в виде макроса. > Такой макрос уже есть. Нет, не опциальная. Если нужно, -- можно сделать /usr/lib/kernel-build-tools/apply, а все apply программы будут просто соурсить этот файл. > > n> Патчи внутри каталога могут находиться в любом расположении, это не > n> определяется данным документом. > Предлагаю определить, иначе будет затруднено вынесение общего > функционала в макрос. В среднем, будет один и тот же алгоритм. Но надо оставить за патче-пакето-твроителями полную свободу в том, как и что патчить. > > n> Программа прикладывающая патч, будучи вызванная из каталога с исходными > n> текстами ядра, обязана приложить к ним нужные патчи или возвратить 1 в > n> случае ошибки прикладывания. Программа может пользоваться следующими > n> переменными окружения заданными при запуске в среде: > n> - APPLIED_PATCHES, переменная содержит список названий уже приложенных > n> патчей через запятую. > n> - KVER, версия ядра, к которой нужно приложить патч. > Не уверен, что это нужно. Нужно. Почему не нужно? > > n> 3.2 Пакет с исходными текстами. > n> -------------------------------- > > n> /usr/src/<имя_пакета>-source-<версия>.tar.gz > n> .... > Это для самого ядра и для модулей ? > > Вот мои пожелания, которые я не успел отправить, вернее их часть. > Примите во внимание, плз: > > Принципы сборки/установки: > 1. Тарболы с сорцами ядер устанавливаются в /usr/src > 2. Пачти называются NN-название.patch, где NN определяет порядок приложения. > устанавливаются в /usr/src/kernel/patches/название_пакета/ Это не регулируется policy. > 3. Условное приложение патчей достигается путем установки > патча в каталог /usr/src/kernel/patches/название_пакета/название_required_пакета > Такой патч будет приложен только при условии того, что приложены > патчи из пакета 'название_required_пакета' Это рекоммендованный но не обязательный способ. > 4. При условии успешного приложения пакета патчей в каталоге ./patches > соответствующего дерева kernel sources должен создаваться файл > APPLIED_имя_пакета Это рекоммендация. > 5. Тарболы с сорцами, используемыми пакетом с патчами устанавливаются в > /usr/src/kernel/patches/src/название_пакета/ это рекоммендация. > 6. Стандартные действия по установке патчей производятся с помощью > макроса(ов) из пакета kernel-build-tools шелл-библиотеки из пакета kernel-build-tools, которая соурсится каждым из apply-скриптов. > 7. Нестандартная действия по установке/приложению патчей производятся > в скриптах имя_пакета-apply и устанавливаются в > /usr/src/kernel/patches/apply Не понимаю. Зачем делать условный оператор? > 8. Распаковка sources, приложение патчей производится > при сборке kernel-image Да. > 9. В репозитарии не должно быть бинарных пакетов с модулями, все > модули должны находиться в соответствующем kernel-image Нет. Все модули, которые могут собираться отдельно от ядра собираются отдельно от ядра. как то: alsa, i2c, lm_sensors, и так далее, см. сизиф. Спасибо за комментарии, Пётр. -- Peter Novodvorsky nidd@myxomop.com http://people.altlinux.ru/~nidd Deadheads, unite!
next prev parent reply other threads:[~2003-04-15 18:10 UTC|newest] Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top 2003-04-15 14:40 nidd 2003-04-15 13:56 ` Sviatoslav Sviridov 2003-04-15 16:05 ` [d-kernel] " Sergey Vlasov 2003-04-15 15:36 ` [d-kernel] " Ed V. Bartosh 2003-04-15 18:10 ` Peter Novodvorsky [this message] 2003-04-15 18:54 ` aen 2003-04-16 7:50 ` Ed V. Bartosh 2003-04-16 15:19 ` aen 2003-04-16 14:31 ` Ed V. Bartosh 2003-04-17 6:09 ` Anton Farygin 2003-04-17 7:32 ` Ed V. Bartosh 2003-04-17 8:48 ` Anton Farygin 2003-04-17 8:49 ` Ed V. Bartosh 2003-04-17 10:14 ` Anton Farygin 2003-04-17 10:34 ` Ed V. Bartosh 2003-04-17 12:09 ` Anton Farygin 2003-04-17 11:56 ` Ed V. Bartosh 2003-04-17 13:14 ` Peter Novodvorsky 2003-04-17 10:57 ` aen 2003-04-17 13:16 ` Dmitry V. Levin 2003-04-17 12:36 ` Ed V. Bartosh 2003-04-17 13:12 ` Peter Novodvorsky 2003-04-17 13:24 ` Ed V. Bartosh 2003-04-17 14:41 ` aen 2003-04-17 14:18 ` aen 2003-04-17 10:49 ` Dmitry V. Levin 2003-04-17 10:58 ` [JT] " Anton Farygin 2003-04-17 10:50 ` Ed V. Bartosh 2003-04-17 12:11 ` Anton Farygin 2003-04-17 11:22 ` Dmitry V. Levin 2003-04-17 11:21 ` Anton Farygin 2003-04-24 23:59 ` Michael Shigorin 2003-04-17 10:43 ` Dmitry V. Levin 2003-04-17 10:16 ` Ed V. Bartosh 2003-04-17 13:09 ` Dmitry V. Levin 2003-04-17 12:25 ` Ed V. Bartosh 2003-04-24 23:57 ` Michael Shigorin 2003-04-25 9:35 ` Ed V. Bartosh 2003-04-25 10:41 ` Michael Shigorin 2003-04-25 9:45 ` Ed V. Bartosh 2003-04-25 12:04 ` Michael Shigorin 2003-04-25 11:17 ` Ed V. Bartosh 2003-04-25 13:26 ` Michael Shigorin 2003-04-25 14:34 ` Ed V. Bartosh 2003-04-16 7:44 ` Ed V. Bartosh 2003-04-16 9:28 ` aen 2003-04-16 8:58 ` Ed V. Bartosh 2003-04-16 10:08 ` Peter Novodvorsky 2003-04-16 10:39 ` aen 2003-04-16 10:31 ` Ed V. Bartosh 2003-04-16 9:36 ` Dmitry V. Levin 2003-04-16 10:13 ` Sergey Bolshakov 2003-04-16 10:45 ` aen 2003-04-16 10:01 ` Peter Novodvorsky 2003-04-16 10:15 ` Ed V. Bartosh 2003-04-16 22:10 ` Dmitry V. Levin 2003-04-17 7:21 ` Ed V. Bartosh 2003-04-17 9:21 ` aen 2003-04-17 9:35 ` Peter Novodvorsky 2003-04-17 10:47 ` Ed V. Bartosh 2003-04-17 11:29 ` Dmitry V. Levin 2003-04-17 11:36 ` Sergey Pinaev 2003-04-17 11:55 ` aen 2003-04-15 16:14 ` aen 2003-04-15 16:35 ` [d-kernel] " Vitaly Ostanin 2003-04-15 18:29 ` Peter Novodvorsky 2003-04-15 16:46 ` [d-kernel] " aen 2003-04-16 0:32 ` Denis Smirnov 2003-04-16 2:48 ` Albert R. Valiev 2003-04-16 7:47 ` Ed V. Bartosh 2003-04-16 9:28 ` aen 2003-04-16 8:47 ` aen 2003-04-16 8:42 ` Albert R. Valiev 2003-04-25 0:13 ` Michael Shigorin 2003-04-25 6:12 ` Sviatoslav Sviridov/Lintec Project 2003-04-25 6:41 ` Albert R. Valiev 2003-04-25 6:58 ` Sviatoslav Sviridov/Lintec Project 2003-04-25 6:59 ` Albert R. Valiev 2003-04-16 10:26 ` [d-kernel] " Vitaly Ostanin 2003-04-17 11:34 ` [d-kernel] " Dmitry V. Levin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=87he8zljh6.fsf@velvet.po.cs.msu.su \ --to=nidd@myxomop.com \ --cc=devel-kernel@altlinux.ru \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux kernel packages development This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel-kernel/0 devel-kernel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel-kernel devel-kernel/ http://lore.altlinux.org/devel-kernel \ devel-kernel@altlinux.org devel-kernel@altlinux.ru devel-kernel@altlinux.com public-inbox-index devel-kernel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git