1 |
Gentoo currently has a number of packages required to run a bitcoin node |
2 |
in its tree, including: |
3 |
* net-libs/libbitcoinconsensus |
4 |
* net-p2p/bitcoin-qt |
5 |
* net-p2p/bitcoind |
6 |
|
7 |
In version 0.21.1, bitcoin included a consensus algorithm changed call |
8 |
taproot. There is no configuration opt-in with this change; bitcoin < |
9 |
0.21.1 does not include taproot, bitcoin >= 0.21.1 does include taproot. |
10 |
|
11 |
A PR [1] was created the bitcoin packaging proxy maintainer (Like |
12 |
Dash-Jr, CC'ed) for the bitcoin 0.21.1 version bump. In that PR, Luke |
13 |
insists that users must explicitly opt-in to the bitcoin 0.21.1 upgrade |
14 |
because of the taproot consensus algorithm change. I encourage |
15 |
interested parties to read the conversation in that PR to get the full |
16 |
context. |
17 |
|
18 |
* This is a minor version bump (assuming semver, this is the "patch" |
19 |
level version change in bitcoin), indicating that upstream does not |
20 |
consider this to be a major/breaking change. |
21 |
* Upstream does not have a mechanism for notifying users or requiring |
22 |
them to opt-in to this change |
23 |
* Upstream does not have a mechanism to opt out of this change. The |
24 |
users only option is to develop their own fork of the bitcoin software |
25 |
or never upgrade the package if they want to avoid taproot. |
26 |
* Taproot was locked by miners, so the network will be upgrading [2] |
27 |
|
28 |
Therefore, I have a few questions for the fellow Gentoo developers: |
29 |
1) Should we require users to explicitly opt-in to this upgrade beyond |
30 |
the usual? |
31 |
2) If so, how do we do that? I have been unable to find any |
32 |
documentation or examples of existing packages that require explicit |
33 |
upgrade opt-in. A REQUIRED_USE or a LICENSE [3] were suggested as well |
34 |
as PROPERTIES="interactive" [4], but such approaches seem like |
35 |
unintended/unconventional abuses of those settings as well as annoying |
36 |
to the user. |
37 |
|
38 |
My suggested approach was to notifying the user of the change in the |
39 |
pkg_pretend phase [5] so they're aware before they actually upgrade; |
40 |
however, the proxy maintainer disagreed and force a revert. [6] |
41 |
|
42 |
Thank you for your consideration and assistance with this issue, |
43 |
~Craig |
44 |
|
45 |
|
46 |
[1] https://github.com/gentoo/gentoo/pull/21490 |
47 |
[2] https://taproot.watch/ |
48 |
[3] https://github.com/gentoo/gentoo/pull/21490#discussion_r663201705 |
49 |
[4] https://github.com/gentoo/gentoo/pull/21490#issuecomment-877542346 |
50 |
[5] |
51 |
https://github.com/gentoo/gentoo/commit/e62b85aae5a2dd70ff120ebc284bf6d461e34b88#diff-e5afbd0e114be010e271302d0807aba076083d0e623ddd611f7e80b4b02a1c82R91 |
52 |
[6] https://github.com/gentoo/gentoo/pull/21490#issuecomment-877531697 |