Local repository for freebsd-update

I have a number of systems running out of date versions of FreeBSD which I would like to upgrade, but before I do I would like to set up a local repository.

Any guidance on how to do that would be appreciated.

I've come across this - freebsd-update-server but don't know how accurate it is these days.
 
Been there, and gave up.

IMHO:
  • If you use "stock" FreeBSD releases (no custom build options), just use the official servers. If you're worried about unnecessary WAN traffic, maybe a caching proxy might help.
  • If you build yourself with custom options, just share /usr/src and /usr/obj read-only with NFS, and only execute the make installkernel/make installworld steps on the consuming systems. (edit: you have to distribute your /etc/src.conf, and possibly /etc/make.conf, to all the systems for that to work, build options must be the same for the build and install steps)
Other than that, hope for pkgbase to become production-ready ;)
 
Is that related to 'update-packages' in src?
I didn't have a look into pkgbase myself yet (not that I don't like experiments, but there are others more important to me 😏), but as it is already "implemented" in the build system of src, I'd say that's very likely!
 
Any comments?...
Still works. Saves a lot of time. And best off all, you don't have to allow every server access to the internet for updates.

I now have a similar config for nginx, if you prefer to use that.
Code:
    server {
      listen 192.168.X.X:80;
      server_name fbsd-update.example.com;

      root /var/cache/fbsd-update;

      access_log /var/log/nginx/proxy-access.log;

      location / {
        proxy_cache fbsdupdate_cache;
        proxy_cache_lock on;
        proxy_buffering on;
        proxy_http_version 1.1;
        proxy_cache_revalidate  on;
        proxy_cache_valid      200  7d;
        expires max;
        add_header X-Proxy-Cache $upstream_cache_status;

        proxy_pass http://update.freebsd.org;
      }
    }
 
After watching a video showing howto (almost...) create a FreeBSD update server as documented in https://docs.freebsd.org/en/articles/freebsd-update-server/ I'm trying to follow the guide but can't really understand what is required in section 4 where it says:-

The sha256(1) hash key for the desired release, is published within the respective release announcement.
To generate the "End of Life" number for build.conf, refer to the "Estimated EOL" posted on the FreeBSD Security Website. The value of EOL can be derived from the date listed on the web site, using the date(1) utility, for example:
% date -j -f '%Y%m%d-%H%M%S' '20090401-000000' '+%s'

Can anyone point out what I need to do? The guide applies to 7.2-RELEASE amd64. From what I can make out, as of today, 17 Nov 2023, there is no release announcement for 14.0R.

For 13.2-RELEASE, ut looks like I need to copy and paste something out of


but I don't know where to find the Estimated EOL. Where should I look?
 
but I don't know where to find the Estimated EOL. Where should I look?

List doesn't contain 14.0, because it hasn't been 'officially' released yet. You can use an educated guess, if you pick today's date as the "release" date, the estimated EoL date for the entire 14 branch will be 5 years from now. And 14.0 will be EoL at 14.1-RELEASE + 3 months.
 
Back
Top