UP | HOME

Smarter Fetch

Table of Contents

Tool(s?) to aid in speeding up package updates on OpenBSD.

The Problem

As it stands, package updates on OpenBSD are incredibly slow. This is because:

  • No central index.
    • Every update, each tarball file is partially downloaded to check if it needs to be updated.
  • Every request to a tgz is a new call to ftp.

Possible Solutions

Reverse Proxy

Simple reverse proxy that supports keepalives / http/2 would help. I noticed a multi-minute reduction in wait time when using one.

Something like httputil.RevereProxy would work.

Better ftp(1)

A new command that supports:

  • ranged partial gets.
  • persistent connections via HTTP pipelining (or http/2?).

Reduced Update List

Basically passing a list of pre-processed package names to pkg_add.

Reverse Index Proxy

Bolt on package index that is somehow(!?) introduced into pkg_*

Author: Aaron Bieber

Created: 2022-08-23 Tue 13:13

Validate