From nobody Fri Mar 29 09:23:22 2024 X-Original-To: alpine-devel@lists.alpinelinux.org Received: from mail-qk0-f176.google.com (mail-qk0-f176.google.com [209.85.220.176]) by lists.alpinelinux.org (Postfix) with ESMTP id C7BBE5C4C56 for ; Sat, 5 Aug 2017 19:55:22 +0000 (GMT) Received: by mail-qk0-f176.google.com with SMTP id a77so24174045qkb.0 for ; Sat, 05 Aug 2017 12:55:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dereferenced-org.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=8crnUwxe2927hTR+tYwqQ9Hcndq4yKuG2PK7Lrx+cSQ=; b=1Z9lVMo3zx05pVD5RtzFXIoxNe6Axvr4jxz4gnTsxmnwpXUKw6FHFi+mpZ9bpS23Hk nVFifleWZCJsOD3+JQPcwaCphukeT1wu12EbcUVhymk9aCoVP1/VSyN/NkKsgwMKMzR5 s/F4PTAYgJ76U0dpiITuMJlfo9fVs++/fLwqir0bNe3ACPBMvUHT7Xppg+KIF7RizmpB IaURFAszFHbkuVlPMoeRofCKM/a9xCGJ1e0nHZ5ltVhQFDRdL2dICm/EkgkPcx8c3+4y 581Hv3jgcigwm5TXrpD4pYnDjZ8CFx3DGPa5bs2ri7pJ+tJGbvOGBHoJkxQ+297/H/bA 7QBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=8crnUwxe2927hTR+tYwqQ9Hcndq4yKuG2PK7Lrx+cSQ=; b=QrsPf8GyM1asxw35QUEj7wkqA+kkAopwmpymXgyg1li67QXUp6vazzhteV5m25e8Un SOJ5u8KS6WM7LTiLaml6T7TUK/qEOHPtQcsfiB5s4ooDXb3xQGJRQHmD7JeikM5K6Su9 akttp1ColVDLadTZ08Q6pAR0NISsvY+fAC5DsgoUT//dd7dCsbCvPNeKBQCNa0T5mSaM uTlyvoeZBIMlH4tfwfjhnR32FIbgYKiI5Y5mgkn//5llDA8ykcyGVaFByThArwhOQ2C1 +I0EsWqZNF2HwRSsJNOjRbzWUxukStx7EWV4XoaGSXyh6XvSLjXEZ4s27/bvcNPEK5ej X4cA== X-Gm-Message-State: AHYfb5iblcr+EqMDFsMAnfH8mIZHWwujyes+GvbIQeCPX5KMaMRQtOqD pYkgq/U5qe3AXzRTXCMuasvkpqQS9ZEB X-Received: by 10.55.139.68 with SMTP id n65mr7934472qkd.172.1501962922052; Sat, 05 Aug 2017 12:55:22 -0700 (PDT) X-Mailinglist: alpine-devel Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: MIME-Version: 1.0 Received: by 10.200.46.10 with HTTP; Sat, 5 Aug 2017 12:55:21 -0700 (PDT) From: William Pitcock Date: Sat, 5 Aug 2017 14:55:21 -0500 Message-ID: Subject: [alpine-devel] kernel module packaging To: alpine-dev Content-Type: text/plain; charset="UTF-8" Hi, As an initial step towards cleaning up the way we package kernels and modules, I am presently looking at modules. I have some ideas about that: 1. APKBUILD sourcing other APKBUILDs for variables: In this case, we source the kernel APKBUILD to get the kernel version. I think we should clean this up by introducing a function that sources the APKBUILD inside the function and returns the requested variable, so that the APKBUILD data doesn't leak into the main namespace. 2. APKBUILD declares $pkgver as the kernel version it is built for: I believe this was a workaround for a defect in the solver that I corrected last April that caused a broken upgrade transaction to be computed. I believe that this approach is flawed as well, as we still have to update the APKBUILDs when a new kernel is built, so we are better off using the real version of the modules. With the solver bug fixed, declared dependencies on the specific kernel version should result in a depgraph break if the kernel it was built against is unavailable; which means that the kernel and it's modules will be safely excluded from the upgrade transaction. 3. Use of virtuals and provides to select the right modules instead of install_if or similar rules: Different APKBUILDs have different ways of pulling in the modules. I suggest that we have, for example with zfs, zfs-hardened provides zfs-modules while depending on linux-hardened. If zfs depends on zfs-modules, then zfs-hardened will be selected if linux-hardened is installed, which is less expensive than an install_if rule. Let me know your thoughts. William --- Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org Help: alpine-devel+help@lists.alpinelinux.org ---