Upgrade apt bitcoin-core package – Bitcoin Stack Exchange

I originally set up my bitcoin-core node on Ubuntu 16.04 Xenial using apt.

The ppa:/bitcoin/bitcoin package repository that I used isn’t maintained beyond version 0.15.0, so I need a different way to upgrade to the latest version.

Options seem to be to use either snap or compile from source.

Would appreciate any advise on options. I have full blockchain and I don’t want to do anything stupid like deleting it.

Right now, everything is in /root/.bitcoin. Ideally, I’d prefer to switch to source compiling, so as not to run into this issue again.

apt – Error when installing mysql-server – now I cannot install any package

I have Ubuntu 20.04. mysql-server failed to install.
Now, when I run sudo apt install -f I get

$ sudo apt install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up mysql-server-8.0 (8.0.20-0ubuntu0.20.04.1) ...
update-alternatives: error: alternative path /etc/mysql/mysql.cnf doesn't exist
dpkg: error processing package mysql-server-8.0 (--configure):
 installed mysql-server-8.0 package post-installation script subprocess returned error exit status 2
dpkg: dependency problems prevent configuration of mysql-server:
 mysql-server depends on mysql-server-8.0; however:
  Package mysql-server-8.0 is not configured yet.

dpkg: error processing package mysql-server (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
                                                                                                          Errors were encountered while processing:
 mysql-server-8.0
 mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

sudo dpkg ––configure –a doesn’t work either.
I cannot install any package.

Package Request

Site URL: https://envyforums.net
Package: Garnet
Total posts your site: 922 posts
Packager Preference: N/A
Preferred posting location: Entertainment & Gaming
Would you like to upgrade all replies to threads?: Yes
Do you permit our packagers to promote Forum Promotion on your site?: Yes
Extra Notes: N/A

Revillution posting package.

Site URL: https://www.revillution.net/forums
Package: Ruby
Total posts your site: 3,100
Packager Preference: Any.
Preferred posting location: Gaming forums, Technology forum or Life section.
Would you like to upgrade all replies to threads?: No.
Do you permit our packagers to promote Forum Promotion on your site?: Yes
Extra Notes: Have fun.

libraries – CLI and Lib package, where to put module loading code

My Software contains a lib package, a cli package and an arbitrary number of plugin packages.

The plugin packages do the algorithmic work.

The lib package basically just executes the plugins and passes the result of each plugin to the next plugin and exposes the libs functionality to the cli package. The cli package reads the configuration file and passes the configuration(which plugins to execute in which order) to the lib package. The lib is basically a single line of typescript code that uses the compose/pipe/flow function from functional programming and looks like this:

export const bumpup: (plugins: Plugin())=> BumpupData = (plugins) => flow(...plugins)();

The reason for making an extra package for a single line is

  1. Eventually the lib should be usable without the cli by other packages
  2. The lib provides the interfaces for plugins and I don’t want plugin authors to depend on the cli package to write their plugins, especially for the case where the lib is used without the cli

The plugins are read from the configuration and are loaded dynamically at runtime from the node_modules folder with the dynamic import from ES6.

That module loading code takes the name of the package that should be loaded and returns a function complying to the plugin interface that can be passed to the lib function.

In which package does the code for loading the modules belong and why?
What are reason for and against putting that code in one of the packages.
I have the feeling that the pattern of separating software in cliand lib package is very common, is there a name for that pattern so I can read more on that pattern?

Package for GZ

Site URL: https://geezezone.com
Package: Garnet
Total posts your site: 4,709
Packager Preference: As long as its relevant.
Preferred posting location: none
Would you like to upgrade all replies to threads?: no
Do you permit our packagers to promote Forum Promotion on your site?: no
Extra Notes: none.

Ruby Package – Ruby package for SGN | Forum Promotion

Site URL: https://strategygaming.net
Package: Ruby
Total posts your site: 274
Packager Preference: no preference
Preferred posting location: STRATEGY GAMING NEWS, STRATEGY GAMING REVIEWS AND ARTICLES, STRATEGY GAMING DISCUSSION
Would you like to upgrade all replies to threads?: No thanks
Do you permit our packagers to promote Forum Promotion on your site?: I’d prefer not. I would like to keep it organic looking.
Extra Notes: Please use a different username than what you use here. If we already have an existing post package underway please use a new account/username.

T H A N K Y O U :cool: