Control: tags -1 - patch Hi, On Fri, Jan 30, 2015 at 11:01:08AM +0100, Weller wrote: > Replacing the hashing methods with the ones provided by libnettle, which > apt is already indirectly linked against via libcurl-gnutls resulted in a apt does not link indirectly to libnettle nor to libcurl-gnutls. The optinal apt-transport-https does. That is a big difference for bootstrappers as it means they can ignore -https for the time being until the base system is up and running and can then be used to build "proper" packages. > In the process of finding the culprit I also replaced the http method > with a new version using libcurl. Similiar to the https method. This > change does not provide any measurable speed boost as of yet, as the > whole process is still waiting for the hashing to complete. I attached > the patch nonetheless as it removes a lot of redudant code. Same problem. http is in apt directly as 99% of all mirrors are http-only, so it is how you usually operate apt, -https is used by… very few people/mirrors. So, big thanks for the patch, but I have to pull the marker as we can't apply it as is. What could be done maybe is dlopen libnettle (and/or others if available) and use them and otherwise fallback to our own slower but always available code. We could then Recommends libnettle and make everyone happy, I guess… just, libnettle seems to be a bit too unstable in its ABI, which is another problem with this patch ATM as every ABI break in nettle means we are required to make one in libapt-pkg, too, entangling use in their transition… Caused by e.g. SHA256Summation having a struct sha256_ctx member, which could have a size change in a newer libnettle abi, so the size of SHA256Summation would change, too (that could be avoided through via the use of a d-pointer). Best regards David Kalnischkies
Attachment:
signature.asc
Description: Digital signature