From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,RP_MATCHES_RCVD autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1792704627; bh=RfmsPQYnDuc4JDSq+hxBOr1KUt3vRbiy9g8n8k2pdo0=; h=Date:From:To:Subject:References:In-Reply-To; b=RK8xFy7lJa/vpKYaOzmvzOFvAJoYUPIj/B/n3dwRaQyDtl346kQ2+L2pAovoXfcwA 6tNjyCe3VO6jRWYqtgK7RlTV5tuQ4wzLKzsgpIp9gzBv9ZQa92zIqJUzpcONVZs6QF 4pInGNIolC94GR2nVMDxDwKaa+Y3t8k5gzsHGU+2uCbYdoD4mdphqfj+Bdoegn33IY pKrfCqVtgdv57o2ZL7la74/LM1vWO7uXOTp3yCyRRq5eKBWe7GC1uVhYBOxU+hsMcl ctAPs+uGFbKgQwrGvvb9yUDZCcpVyaH4Hhtu+jzvzh1tb9MjzC/Z88+OTrJB2clpi7 UxeyFsPKC0wug== Date: Thu, 22 Oct 2026 23:30:23 +0200 From: Alexey Gladkov To: make-initrd@lists.altlinux.org Message-ID: References: <7f3a9b2e-2cf2-4a83-bb45-747312663710@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <7f3a9b2e-2cf2-4a83-bb45-747312663710@gmail.com> Subject: Re: [make-initrd] =?utf-8?b?0JLQtdGA0YHQuNGPICBtYWtlLWluaXRyZA==?= X-BeenThere: make-initrd@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: make-initrd@lists.altlinux.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Oct 2026 21:30:31 -0000 Archived-At: List-Archive: On Thu, Oct 22, 2026 at 10:48:13PM +0300, Leonid Krivoshein wrote: > > Сейчас есть только /etc/initrd-release. Там есть $VERSION_ID. > > > > Почему его не достаточно ? > > > > Версию оттуда извлечь можно, не спорю. Gemini считает make-initrd одним из > двух генераторов initramfs, где узнать версию в рантайме довольно просто. Во > многих других это невозможно или очень сложно сделать. Хочу заметить, что /etc/initrd-release вполне документированный формат os-release(5). Это как бы стандартный API. > Но make-initrd имеет более 60 встроенных фич и кто знает, сколько ещё > внешних, предоставляет им некий API, некоторые фичи также предоставляют API. > Все эти API со временем меняются. Понятно, что я сам могу написать > реализацию двух упомянутых функций. Но вполне ожидаемо для *ЛЮБОЙ* > библиотеки предоставлять такие функции в уже готовом виде. Просто, чтобы > авторы фич make-initrd не занимались собственным велосипедо-творчеством. > > if initrd_version_compare 2.36.0; then > # ...можно делать сброс rootdelay... > fi В данном конкретном примере c "...можно делать сброс rootdelay..." если версия make-initrd 2.36.0 это ещё хоть как-то катит. Но вот ты упомянул другие внешние фичи, которые предоставляют API и вот это никак не ложится в твою идею с версией make-initrd. Тут нужна версия фичи. Можно внутри всех /bin/*-sh-functions обязательно держать версию API a-ля soname. Тогда можно проверить версию API конкретного интерфейса. Вообще я не большой поклонник проверки версий. Любой бэкпорт функционала на старую версию ломает эти проверки. -- Rgrds, legion