19:00:39 <wumpus> #startmeeting 19:00:39 <lightningbot> Meeting started Thu Jan 2 19:00:39 2020 UTC. The chair is wumpus. Information about MeetBot at http://wiki.debian.org/MeetBot. 19:00:39 <lightningbot> Useful Commands: #action #agreed #help #info #idea #link #topic. 19:01:01 <hebasto> hi 19:01:04 <sipsorcery> hi 19:01:08 <jonatack> hi 19:01:15 <achow101> HI 19:01:24 <wumpus> #bitcoin-core-dev Meeting: wumpus sipa gmaxwell jonasschnelli morcos luke-jr sdaftuar jtimon cfields petertodd kanzure bluematt instagibbs phantomcircuit codeshark michagogo marcofalke paveljanik NicolasDorier jl2012 achow101 meshcollider jnewbery maaku fanquake promag provoostenator aj Chris_Stewart_5 dongcarl gwillen jamesob ken281221 ryanofsky gleb moneyball kvaciral ariard digi_james amiti fjahr 19:01:26 <wumpus> jeremyrubin lightlike emilengler jonatack 19:01:33 <amiti> hi 19:01:36 <MarcoFalke> hi 19:01:39 <kanzure> hi 19:01:41 <moneyball> happy new year everyone 19:02:16 <promag> hi 19:02:20 <MarcoFalke> travis macOS is fixed thanks to hebasto. I just reset all travis runs. Let me know if I missed one 19:02:22 <wumpus> yes, happy new year everyone 19:02:38 <wumpus> thanks hebasto 19:02:49 <hebasto> nm 19:03:35 <sipa> hi 19:03:38 <wumpus> one proposed topic this week by MarcoFalke : Vanilla debian Bitcoin Core package, #17343 19:03:40 <gribble> https://github.com/bitcoin/bitcoin/issues/17343 | Meta: Packaging Bitcoin Core as vanilla system package · Issue #17343 · bitcoin/bitcoin · GitHub 19:03:59 <wumpus> anything else to discuss? 19:04:15 <luke-jr> HNY 19:04:47 <wumpus> #topic High priroity for review 19:04:48 <bitcoin-git> [13bitcoin] 15MarcoFalke closed pull request #17669: tests: have coins simulation test also use CCoinsViewDB (06master...062019-12-coins-tests) 02https://github.com/bitcoin/bitcoin/pull/17669 19:04:49 <sipa> From Wikipedia, the free encyclopedia. HNY may refer to: Happy New Year (2014 film) Hengyang Nanyue Airport, IATA code HNY. 19:05:04 <gleb> Hi 19:05:08 <bitcoin-git> [13bitcoin] 15MarcoFalke reopened pull request #17669: tests: have coins simulation test also use CCoinsViewDB (06master...062019-12-coins-tests) 02https://github.com/bitcoin/bitcoin/pull/17669 19:05:13 <wumpus> 10 blockers (!), 7 chasing concept ACK https://github.com/bitcoin/bitcoin/projects/8 19:05:15 <luke-jr> sipa: it has to be a film? O.o 19:05:20 <wumpus> better get to reviewing :) 19:05:56 <sipa> new year's resolution: review more PRs (and also, 1080p) 19:06:36 <wumpus> would be nice to get #10785 in soon, it's about time, it's from 2017 19:06:39 <gribble> https://github.com/bitcoin/bitcoin/issues/10785 | Serialization improvements by sipa · Pull Request #10785 · bitcoin/bitcoin · GitHub 19:06:58 <wumpus> I definitely wouldn't have the patience to keep rebasing a PR for that long 19:07:00 <MarcoFalke> sipa, review in 1080 pixel instead of 360 pixel? 19:07:11 <sipa> wumpus: making a minimal initial PR with just 2 commits 19:07:31 <jonatack> i think kallewoof wanted to move #16411 from chasing concept acks over to high-priority 19:07:33 <gribble> https://github.com/bitcoin/bitcoin/issues/16411 | BIP-325: Signet support by kallewoof · Pull Request #16411 · bitcoin/bitcoin · GitHub 19:07:36 <wumpus> sipa: oh, it grew over time 19:07:48 <wumpus> jonatack: ok 19:08:08 <sipa> wumpus: not really, and the recent protobuf purging simplified it a bit, actually 19:08:19 <sipa> but still, it seems there is little appetite to review the whole thing at once 19:08:55 <sipa> in any case, concept ack on moving #16411 from chasing concept ack to blocker 19:08:58 <gribble> https://github.com/bitcoin/bitcoin/issues/16411 | BIP-325: Signet support by kallewoof · Pull Request #16411 · bitcoin/bitcoin · GitHub 19:09:02 <wumpus> well tons of people reviewed it 19:09:23 <wumpus> looking at number of comments at least 19:09:42 <sipa> many ryanofsky reviews mostly, iirc :) 19:10:03 <wumpus> ah couldn't really see due to github comment hiding gymnastics 19:10:34 <luke-jr> XD 19:10:57 <wumpus> #topic Vanilla debian Bitcoin Core package (MarcoFalke) 19:10:58 <sipa> must be heavy on their poor Ruby infrastructure 19:12:08 <sipa> MarcoFalke: ^ 19:12:08 <MarcoFalke> So packaging is still an unsolved problem for Linux distros. We stopped maintaining the Ubuntu PPA due to numerous problems and provided flatpak and snapcraft packages. 19:12:27 <wumpus> oh, the ppa is no longer maintained? 19:12:28 <MarcoFalke> Though, that uncovered other issues 19:12:28 <luke-jr> MarcoFalke: Matt stopped maintaining the PPA. I didn't. 19:12:39 <luke-jr> wumpus: the bitcoin/bitcoin one Matt used to have is unmaintained now 19:13:00 <MarcoFalke> luke-jr: There are still issues with the ppa, even if maintained. 19:13:26 <wumpus> yes, if it was just a matter of maintenance we could try to find someone else to do it 19:13:26 <achow101> what are the issues? 19:13:36 <luke-jr> IMO flatpak/snapcraft aren't comparable, but go on 19:13:49 <luke-jr> (FWIW, my PPA is at https://launchpad.net/~luke-jr/+archive/ubuntu/bitcoincore ) 19:14:38 <wumpus> yes, what are ths issues? 19:14:39 <MarcoFalke> achow101: On the top of my head: * not reproducible builds, no way to verify what happened on the build servers. * People installing the ubuntu ppa on non-ubuntu distros (https://wiki.debian.org/DontBreakDebian ) 19:14:42 <wumpus> except non-determinism 19:14:53 <wumpus> yes I mean non-reproducible 19:15:05 <jamesob> hi 19:15:07 <bitcoin-git> [13bitcoin] 15sipa opened pull request #17850: Serialization improvements (minimal initial commits) (06master...06202001_noncastserial) 02https://github.com/bitcoin/bitcoin/pull/17850 19:15:09 <luke-jr> ok, so no real issues? :P 19:15:22 <luke-jr> (non-determinism isn't an issue IMO since it's built by the distro co) 19:15:27 <wumpus> is there a ppa-like system for debian? 19:15:39 <luke-jr> wumpus: you can manually add repos, but nothing as easy as PPA AFAIK :/ 19:15:49 <MarcoFalke> * The ppa is also updated only after the OS has been released, so upgrading the Ubuntu might lead to issues 19:15:51 <luke-jr> QuickBuild.io provides PPAs for Debian, but in my experience they don't work :/ 19:16:05 <luke-jr> MarcoFalke: I don' 19:16:09 <luke-jr> MarcoFalke: I don't understand what you mean there 19:16:16 <MarcoFalke> * The ppa only supports one version of Bitcoin Core, so (not) updating Bitcoin Core might lead to issues 19:16:51 <wumpus> I'm interested in that problem, yes, auto-update kind of sucks for bitcoin 19:17:11 <wumpus> it should be a user decision to upgrade 19:17:11 <luke-jr> auto-update is the entire point of PPAs, though 19:17:13 <MarcoFalke> luke-jr: The ppa was only compiled for (let's say Ubuntu 18.04 after it has been released. I.e. Apr 18) So it is harder to install it for the Ubuntu Beta? 19:17:22 <wumpus> could we do better? 19:17:34 <luke-jr> MarcoFalke: not if we update the PPA timely 19:17:39 <wumpus> (apart from having a new package for every new release0 19:17:40 <jamesob> Wouldn't it be better just to provide a shell script that people can curl that builds from source than trying to cater to bad distro build infra? 19:18:00 <luke-jr> jamesob: eww, no 19:18:15 <achow101> MarcoFalke: is your suggestion that we also build debs and upload them to bitcoincore.org? 19:18:16 <wumpus> I mean ,we already have binary builds for linux 19:18:22 <wumpus> they should work on most distros 19:18:28 <wumpus> definitely debian and fedora 19:18:35 <luke-jr> I've been keeping an archive of PPA-generated .debs locally FWIW 19:18:52 <jamesob> Yeah, so what's wrong with saying "ppa build infra isn't up to our standards, so go to these other places" 19:18:54 <luke-jr> wumpus: they only work on Ubuntu in my experience; at least not on Gentoo 19:18:57 <wumpus> the only exception really is non-glibc 19:19:01 <MarcoFalke> luke-jr: Are you volunteering to update the PPA timely for the full matrix of distros/version of Bitcoin Core? 19:19:08 <luke-jr> jamesob: I see no problem w/ the build infra 19:19:28 <jamesob> didn't someone say the buids aren't reproducible? 19:19:31 <luke-jr> MarcoFalke: I can only update the PPA for Launchpad-supported distros, but yes, I have been and intend to continue updating it 19:19:37 <luke-jr> jamesob: neither is the rest of the OS 19:19:57 <luke-jr> jamesob: PPAs are Canonical built for Canonical distros 19:20:17 <wumpus> so anyway: what is the proposal here? 19:20:28 <MarcoFalke> And also, PPAs are not friendly for new users (novice linux users). E.g. I avoid them because it is easy to break the whole system with them. 19:20:39 <MarcoFalke> wumpus: My proposal is to have vanilla packages 19:20:46 <wumpus> how would you do that? 19:20:47 <MarcoFalke> in the vanilla package manager of the distro 19:21:00 <luke-jr> MarcoFalke: we explicitly advise distros NOT to do that.. 19:21:04 <wumpus> that's up to the distros, right? 19:21:09 <luke-jr> also, that has the same problems as the PPA? 19:21:12 <MarcoFalke> luke-jr: Why? 19:21:38 <luke-jr> MarcoFalke: 1) their LevelDB packages don't meet consensus-safety standards, and they will not use embedded copies 19:22:01 <luke-jr> MarcoFalke: 2) they won't deploy even minor fixes to stable versions 19:22:04 <fanquake> Hi 19:22:25 * luke-jr looks up our advisement to see if there's anything else 19:22:49 <MarcoFalke> 1) We release versions of Bitcoin Core with different versions of leveldb. So the versioning shouldnt' be an issue. If the packaging is an issue, it can be changed, maybe 19:23:18 <wumpus> bleh, not using the embedded leveldb would really be inadvisable 19:23:27 <luke-jr> for reference, here was our 2013 advisement: http://luke.dashjr.org/tmp/code/20130723-linux-distribution-packaging-and-bitcoin.md.asc 19:23:53 <MarcoFalke> 2) Releasing new versions can be done with "backports", like it is done with clang-8 on Bionic Ubuntu and security fixes are alwasy deployed 19:24:07 <luke-jr> MarcoFalke: backports are no less trouble than PPAs 19:24:18 <luke-jr> PPAs are better because users already have them 19:24:25 <luke-jr> (for the initial install) 19:24:49 <luke-jr> also, the existence of bad PPAs doesn't mean *our* PPAs need to be bad; and not using a PPA ourselves doesn't make the bad ones go away 19:25:34 <MarcoFalke> PPAs are bad pratice in general 19:25:55 <luke-jr> they aren't 19:26:32 <wumpus> I don't think PPAs are bad practice in general, not on ubuntu at least, installing them to other distros like debian is obviously bad 19:26:43 <MarcoFalke> And the bitcoin Core PPA is being used against best practices, so providing one is like encouraging those bad practices 19:27:15 <sipa> MarcoFalke: what do you mean by that (just curious, i know very little about them) 19:27:16 <luke-jr> yes, PPAs target a specific distro/release and shouldn't be used on others 19:27:16 <wumpus> in any case, I think we need to be really careful to reconsider the advisement 19:28:06 <wumpus> we don't want zillions of nodes running years-old software by accident, not because they want to but just because there's no upgrade path 19:28:20 <MarcoFalke> sipa: PPAs are usually compiled for a specific OS version and might break things if installed on a different OS version. E.g. install an Bionic ppa on Ubuntu 19.10 or even Debian 19:28:22 <sipa> agreed 19:28:25 <luke-jr> distro packages are likely to end up with *new* users installing obsolete versions 19:29:16 <sipa> luke-jr: perhaps - but is that really the alternative? given things like snap/flatpak? 19:29:21 <wumpus> MarcoFalke: at least the ppa-add script avoids that, it will only add the ppa for the release that a user has 19:29:42 <MarcoFalke> Ok, so if the preference is to stick with PPAs, we should maintain them 19:29:47 <luke-jr> sipa: that's the topic ;) 19:30:14 <sipa> luke-jr: i think a reasonable conclusion could be that for our use case both distro packages and PPAs are bad 19:30:24 <luke-jr> sipa: PPAs aren't bad though.. :/ 19:30:37 <luke-jr> yes, they're targetted, but that's kinda the point 19:30:38 <sipa> luke-jr: i said for our use case 19:30:40 <wumpus> I'm not convinced PPAs are really bad 19:30:52 <sipa> if they result in people running old unupgradable versions 19:31:00 <luke-jr> sipa: they don't 19:31:03 <wumpus> though I prefer people to use the deterministic binaries from bitcoincore.org 19:31:07 <luke-jr> PPAs can be updated for every release 19:31:20 <wumpus> but distro packages wouldn't improve that 19:31:27 <luke-jr> every Core release* 19:31:49 <MarcoFalke> Well, some people use curl $latest_release, so they end up with no upgrade path through $package_manager update 19:31:57 <luke-jr> sipa: for example, my PPA currently has 0.19.0.1 for every supported Ubuntu version; when 0.19.1 is out, it will get that for all versions too 19:31:58 <wumpus> no, PPAs (at least used to) be updated with every release of core 19:32:10 <sipa> ok 19:32:19 <MarcoFalke> So I don't really like the bitcoincore.org/bin/* either 19:32:32 <wumpus> the bitcoin/bitcoin ones are unmaintained at the moment but that's not a fault in PPA 19:32:52 <wumpus> well, nothing is ideal 19:32:56 <luke-jr> I suppose I could update bitcoin/bitcoin if Matt wants to give me access - I just figured it made more sense to retire it 19:33:03 <MarcoFalke> wumpus: True :) 19:33:17 <luke-jr> perhaps it should be updated with a .txt package saying to switch to another source 19:33:32 <wumpus> packaging bitcoin is a difficult issue 19:33:41 <MarcoFalke> luke-jr: It should be maintained in https://github.com/bitcoin-core/packaging 19:33:58 <luke-jr> (although it might be rude to effectively delete from users' PCs on an update) 19:34:06 <MarcoFalke> There is a debian subfolder, but no one has touched it in years: https://github.com/bitcoin-core/packaging/tree/master/debian 19:34:06 <achow101> I'm pretty sure lots of instructions point to the bitcoin/bitcoin ppa 19:34:07 <luke-jr> MarcoFalke: that's the source code, not the PPA 19:34:18 <achow101> and it would screw with people's existing installs from it 19:34:20 <luke-jr> MarcoFalke: I *think* I'm using it as-is still\ 19:34:38 <wumpus> I think it would be better if someone took over maintenance of the current one instead of retire it 19:34:50 <luke-jr> maybe deleting the bitcoin/bitcoin PPA will work best - it won't uninstall anything, and will give the user an error when they update repos 19:35:09 <MarcoFalke> At least two people should have access (bus factor) or at least a way to reset the credentials 19:35:11 <wumpus> that's also not very friendly 19:35:23 <wumpus> yes 19:35:27 <MarcoFalke> And we should have documentation how to maintain it 19:35:36 <luke-jr> well, Matt isn't here, so we need to defer that discussion I think 19:35:56 <luke-jr> MarcoFalke: I have a gitian yml that updates it for me; I suppose I should add that to the packaging repo 19:36:05 <luke-jr> (it doesn't generate any files, just uploads) 19:36:41 <wumpus> yes, would be good to have the instructions public 19:37:48 <wumpus> any other topics? 19:38:37 <wumpus> #endmeeting