Received: from mail-40132.protonmail.ch (mail-40132.protonmail.ch [185.70.40.132]) by nld3-dev1.alpinelinux.org (Postfix) with ESMTPS id 39DEA781A36 for <~alpine/devel@lists.alpinelinux.org>; Mon, 12 Aug 2019 10:06:21 +0000 (UTC) Date: Mon, 12 Aug 2019 10:06:18 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogitri.dev; s=protonmail; t=1565604380; bh=QbzRdKcqfl7Q3FlgNxlYd2+u92rkBXg7C+nV55GjExw=; h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References: Feedback-ID:From; b=a1jIRpQuuawOxBzEw0EBRSBl5/PsuTA/Q6XpzsQSEg4oLQ1mGQieYfBWDem0z8J7B I6mRKLe5YxMwi3MRieGCBuWFGECLdrhXI25Av7fmaYUNcrOARuqdeYSa+f/M4PQ4S6 dttY9TnBfi4CmjaV+kg3j3IobI8eFtHNWiEYlv8Y= To: Cosmo Borsky From: Rasmus Thomsen Cc: "~alpine/devel@lists.alpinelinux.org" <~alpine/devel@lists.alpinelinux.org> Reply-To: Rasmus Thomsen Subject: Re: APKBUILD Optional/Recommended Dependencies Message-ID: =?utf-8?q?=3Cmch7Mc12bGqaHVcY4AXVN6dXa5WTwHDuDHSgNDWNy0GnFvAzKqZ?= =?utf-8?q?cZaQkRA8mTI7rZEei4VA8Hw7NQbV=5F5wXqJGkrSL2UqSnQ9DugJLmfFGs=3D=40c?= =?utf-8?q?ogitri=2Edev=3E?= In-Reply-To: <883dca1a-b7f3-6137-059d-f561ef22c126@cosmoborsky.com> References: <883dca1a-b7f3-6137-059d-f561ef22c126@cosmoborsky.com> Feedback-ID: =?utf-8?q?LZW2MXNaH7NSG88i8lGpebeqB0wmcl0-3TbzkSuzsmAwEQspn4GI-?= =?utf-8?q?WRe8j3PhRL4SBmua4rQWq6fadPcLS5uxQ=3D=3D=3AExt=3AProtonMail?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.2 required=7.0 tests=ALL_TRUSTED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mail.protonmail.ch Hello, we've had a discussion about that on #alpine-devel some time ago. I'd also = welcome adding optional dependencies, but I'm unsure how we'd want to desig= n this, here are some of my ideas: 1. Have "optional" deps, which are opt-out via a config switch in /etc/apk/* o= r via a CLI switch. There were some concerns that this would conflict with = Alpine's goal of being minimal since optional deps might have some signific= ant weight attached to them. 2. Have "optional" deps, which have to be opted-into via a config switch in /e= tc/apk/* or via a CLI switch. This mitigates the previously mentioned probl= em of having big optional deps pulled in by default, but I personal doubt t= hat many people would flip the switch to actually make this useful. Maybe a= switch in the installer would be sufficient for this though. 3. Have "optional" and "recommended" dependencies. Optional deps wouldn't be i= nstalled by default (and could be enabled as previously outlined, as opt-in= ), whereas recommended ones would be opt-out (also via a config/CLI switch)= . We'd need some guidelines as to what's recommended and what's optional th= ough and how apk should handle either of them being removed while the main = package is installed. I think I personally like the 3rd option the best and it seems to (somewhat= ) align with what you've suggested too. Rasmus =E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90 Original Me= ssage =E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90 On Monday, August 12, 2019 11:16 AM, Cosmo Borsky wrot= e: > I've started to move over to Alpine for my systems, and noticed there's > nothing in the APKBUILD specification about listing optional dependencies= . > > https://wiki.alpinelinux.org/wiki/APKBUILD_Reference > > I did a basic search through the mailing lists along with a grep on > aports, with no results. > > Arch Linux's PKGBUILD has an `optdepends` flag that provides a way to > list packages that provide additional features to the software. > > https://wiki.archlinux.org/index.php/PKGBUILD#optdepends > > My initial thoughts would be to add in a variable such as > `depends_recommended` or `depends_optional` to allow package > creators/maintainers to list recommended packages. > > `apk add --install-recommended pkg` > > Has this been discussed before? Does anyone think this would be a useful > addition? > I'd be happy to work on a patch to abuild if it could be desired.