[[!template id=project
title="System upgrade"
contact="""
[tech-userlevel](mailto:tech-userlevel@NetBSD.org)
"""
mentors="""
[Brett Lymn](mailto:blymn@NetBSD.org)
"""
category="userland"
difficulty="easy"
duration="3 months"
done_by="gnrp"
description="""
Currently, the update process of NetBSD is rather tiring, though it could be
made easy. [freebsd-update(8)](http://mdoc.su/f/8/freebsd-update) does the same
for FreeBSD, but it requires a special structure on the server to run.
Either porting freebsd-update, or writing our own update client is the goal of
this task.
Though there is already
[sysupgrade](http://blog.netbsd.org/tnf/entry/introducing_sysbuild_and_sysupgrade)
by jmmv, it has some shortcomings you should overcome. The new tool should be
easy to use, able to check if there are actually upgrades, and be implemented in
daily(8).
This task is not only about writing code (which will actually be rather small),
but about testing it, and researching what you have to take care of to make the
upgrade run smooth.
You should also have a look at the [[projects/project/live-upgrade]] project,
which aims higher than this one, but is different: A system upgrade is actually
about performing binary upgrades of the system, while a live upgrade should only
perform the wrapping around making an upgrade directly bootable and saving the
old system.
"""
]]
[[!tag gsoc]]