If you're in Quality Assurance, System Administration, or (believe it or
not) media production, you might here some variation of the term "gold
master", "golden image", or "master image" (and so on). It's a term that
has seemingly made its way into the collective consciousness of anyone
involved in creating one *perfect* model of something, and then
producing many many duplicates from that mold. That's what a gold
master, or golden image, is: the virtual mold from which you cast your
distributable models.

In media production, the theory is that a crew is working toward the
gold master. This final product is one-of-a-kind. It looks and sounds
the best a movie or an album (or whatever it is) can possible look and
sound. Copies of this master image are made, compressed, and sent out to
the eager public.

In software, a similar idea is associated with the terms. Once software
has been compiled and tested and re-tested, the perfect build is
declared "gold". No further changes are allowed, and all distributable
copies are generated from this master image (this used to actually mean
something, back when CDs or DVDs were made of software).

And in system administration, you may encounter golden images of an
organization's chosen operating system, with all of the important
settings "baked in", the VPN certificates already in place, incoming
email servers already set in the email client, and so on. Similarly, you
might also hear it in the world of virtual machines, where a *golden
image* of a carefully configured virtual drive is the source from which
all new virtual machines are cloned.

GNOME Boxes
===========

The concept of a gold master is simple, but putting it into practice is
often overlooked. Sometimes, your team is just so happy to have reached
their goal that no one stops to think about designating the achievement
as the authoritative version. Other times, there's simple no mechanism
for it.

A golden image is equal parts historical preservation and a backup plan
in advance. Once you have crafted a perfect model of whatever it is you
have been toiling over, you owe it to yourself to preserve that work,
because it not only marks your progress, but it serves as a fallback
should you stumble as you continue your work.

GNOME Boxes, the virtualization platform that ships with the GNOME
desktop, can provide a simple demonstration. If you've never used GNOME
boxes, you can learn the basics from Alan Formy-Duval in his [Getting
started with GNOME
Boxes](https://opensource.com/article/19/5/getting-started-gnome-boxes-virtualization)
article. Assume you have used GNOME boxes to create a virtual machine
and installed an operating system into it, and you want to try making a
golden image. GNOME Boxes is one step ahead of you: it has already taken
a snapshot of your install which can serve as a golden image for a stock
install of the OS.

With GNOME Boxes open and in the dashboard view, right-click on any
virtual machine and select **Properties**. In the Properties window,
select the **Snapshots** tab. The first snapshot, created automatically
by GNOME Boxes, is the **Just Installed** snapshot. As its name
suggests, this is the operating system as you originally installed it
into its virtual machine.

![](snapshots.jpg)

Should your virtual machine reach a state that you have not intended,
you can always revert to the **Just Installed** image.

Of course, reverting back to the OS after it's just been installed would
be a drastic measure if you've done work to fine-tune the environment
for yourself. That's why it's a common workflow with virtual machines to
first install the OS, then modify it to suit your requirements or
preferences, and then take a snapshot, declaring that snapshot as your
golden image. For instance, if you are using the virtual machine for
[Flatpak](https://opensource.com/business/16/8/flatpak) packaging, then
you might install software and Flatpak development tools, and then
construct your working environment, and then take a snapshot. Once the
snapshot has been created, you can rename the virtual machine to
indicate its true purpose in life.

To rename a virtual machine, right-click on its thumbnail in the
dashboard view, and select **Properties**. In the Properties window,
enter a new name for the image.

![](boxes-rename.jpg)

To make a clone of your golden image, right click on the virtual machine
and select **Clone**.

![](boxes-clone.jpg)

You now have a clone from the latest snapshot of your golden image.

Gold finger
===========

There are few disciplines that can't benefit from golden images. Whether
you're tagging releases in Git, taking snapshots in Boxes, pressing a
prototype vinyl, printing a book for approval, designing a screen print
for mass production, or fashioning a literal mold, the archetype is
everything. It's just one more way that modern technology lets us humans
work smarter rather than harder, so make a golden image of your project,
and generate clones as often as you need.