Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [217.70.183.197]) by nld3-dev1.alpinelinux.org (Postfix) with ESMTPS id 6F8F7781E35 for <~alpine/devel@lists.alpinelinux.org>; Mon, 12 Aug 2019 10:24:55 +0000 (UTC) X-Originating-IP: 146.115.3.75 Received: from [172.16.11.173] (146-115-3-75.ma.subnet.cable.rcncustomer.com [146.115.3.75]) (Authenticated sender: me@cosmoborsky.com) by relay5-d.mail.gandi.net (Postfix) with ESMTPSA id C2D9D1C0003; Mon, 12 Aug 2019 10:24:53 +0000 (UTC) Subject: Re: APKBUILD Optional/Recommended Dependencies To: Rasmus Thomsen Cc: "~alpine/devel@lists.alpinelinux.org" <~alpine/devel@lists.alpinelinux.org> References: <883dca1a-b7f3-6137-059d-f561ef22c126@cosmoborsky.com> =?utf-8?q?=3Cmch7Mc12bGqaHVcY4AXVN6dXa5WTwHDuDHSgNDWNy0GnFvAzKqZcZaQkRA8mTI?= =?utf-8?q?7rZEei4VA8Hw7NQbV=5F5wXqJGkrSL2UqSnQ9DugJLmfFGs=3D=40cogitri=2E?= =?utf-8?q?dev=3E?= From: Cosmo Borsky Openpgp: preference=signencrypt Autocrypt: addr=me@cosmoborsky.com; keydata= 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 Message-ID: Date: Mon, 12 Aug 2019 06:24:49 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: =?utf-8?q?=3Cmch7Mc12bGqaHVcY4AXVN6dXa5WTwHDuDHSgNDWNy0GnFvAzKq?= =?utf-8?q?ZcZaQkRA8mTI7rZEei4VA8Hw7NQbV=5F5wXqJGkrSL2UqSnQ9DugJLmfFGs=3D=40?= =?utf-8?q?cogitri=2Edev=3E?= Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Hello Rasmus, > 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 design this, here are some of my ideas: Thank you for letting me know. Do you know if the logs are available for that channel? It may be useful as a future grep source. > 1. > Have "optional" deps, which are opt-out via a config switch in /etc/apk/* or 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 significant weight attached to them. > > 2. > Have "optional" deps, which have to be opted-into via a config switch in /etc/apk/* or via a CLI switch. This mitigates the previously mentioned problem of having big optional deps pulled in by default, but I personal doubt that 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 installed 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 though 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. To keep with Alpine's goal of being minimal, I feel like a config switch is a little much to start with. Optional dependencies should just be a helper for users to know which packages to install for a certain feature. Not having optional dependencies listed has not inhibited usage in Alpine Linux, and at most required looking at some documentation or code to find the required dependency for a feature. To build off my initial idea, it may be nice to have optional dependencies listed with apk info , and then perhaps just a flag for apk add as a convenience. apk info --depends pkg apk add --install-optional pkg The above should be straight forward to implement, and package maintainers should not be required to add optional dependencies. --- cosmo