mirror of
https://github.com/clearlinux/clear-linux-documentation.git
synced 2026-09-06 05:41:44 +00:00
1746 lines
124 KiB
HTML
1746 lines
124 KiB
HTML
|
||
|
||
<!DOCTYPE html>
|
||
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
|
||
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
|
||
<head>
|
||
<meta charset="utf-8">
|
||
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
|
||
<title>mixer — Documentation for Clear Linux* project</title>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<script type="text/javascript" src="../../_static/js/modernizr.min.js"></script>
|
||
|
||
|
||
<script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
|
||
<script type="text/javascript" src="../../_static/jquery.js"></script>
|
||
<script type="text/javascript" src="../../_static/underscore.js"></script>
|
||
<script type="text/javascript" src="../../_static/doctools.js"></script>
|
||
<script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
|
||
|
||
<script type="text/javascript" src="../../_static/js/theme.js"></script>
|
||
|
||
|
||
|
||
|
||
<link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
|
||
<link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
|
||
<link rel="author" title="About these documents" href="../../about.html" />
|
||
<link rel="index" title="Index" href="../../genindex.html" />
|
||
<link rel="search" title="Search" href="../../search.html" />
|
||
<link rel="next" title="OS Security" href="security.html" />
|
||
<link rel="prev" title="ister.py image builder" href="ister.html" />
|
||
|
||
<link rel="stylesheet" href="../../_static/tcs_theme.css" type="text/css" />
|
||
|
||
|
||
</head>
|
||
|
||
<body class="wy-body-for-nav">
|
||
|
||
|
||
<div class="wy-grid-for-nav">
|
||
|
||
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
||
<div class="wy-side-scroll">
|
||
<div class="wy-side-nav-search" style="background: #007ab2" >
|
||
|
||
|
||
|
||
<a href="../../index.html" class="icon icon-home"> Clear Linux* Project Docs
|
||
|
||
|
||
|
||
|
||
<img src="../../_static/clearlinux.png" class="logo" alt="Logo"/>
|
||
|
||
</a>
|
||
|
||
|
||
|
||
|
||
<div role="search">
|
||
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
|
||
<input type="text" name="q" placeholder="Search docs" />
|
||
<input type="hidden" name="check_keywords" value="yes" />
|
||
<input type="hidden" name="area" value="default" />
|
||
</form>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
|
||
|
||
|
||
<div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions">
|
||
<span class="rst-current-version" data-toggle="rst-current-version">
|
||
<span class="fa fa-book"> Clear Linux</span>
|
||
v: latest
|
||
<span class="fa fa-caret-down"></span>
|
||
</span>
|
||
<div class="rst-other-versions">
|
||
<dl>
|
||
<dt>Language Versions</dt>
|
||
|
||
<dd><a href="/clearlinux/latest/guides/clear/mixer.html">English</a></dd>
|
||
|
||
<dd><a href="/clearlinux/latest/zh_CN/guides/clear/mixer.html">Chinese</a></dd>
|
||
|
||
</dl>
|
||
<dl>
|
||
<dt>Document Versions</dt>
|
||
|
||
<dd><a href="/clearlinux/latest/guides/clear/mixer.html">latest</a></dd>
|
||
|
||
<dd><a href="/clearlinux/L19.01/guides/clear/mixer.html">L19.01</a></dd>
|
||
|
||
</dl>
|
||
<dl>
|
||
<dt>clearlinux.org links</dt>
|
||
<dd>
|
||
<a href="https://www.clearlinux.org/">Project Home</a>
|
||
</dd>
|
||
<dd>
|
||
<a href="https://github.com/clearlinux/clear-linux-documentation">GitHub</a>
|
||
</dd>
|
||
</dl>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<ul class="current">
|
||
<li class="toctree-l1"><a class="reference internal" href="../../get-started/get-started.html">Get started</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../get-started/get-started.html#pre-install">Pre-install</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/compatibility-check.html">Check processor and EFI firmware compatibility</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/compatibility-check.html#check-compatibility">Check compatibility</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html">Create a bootable USB drive</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#create-a-bootable-usb-drive-on-linux">Create a bootable USB drive on Linux*</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#create-a-bootable-usb-drive-on-macos">Create a bootable USB drive on macOS*</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#create-a-bootable-usb-drive-on-windows">Create a bootable USB drive on Windows*</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../get-started/get-started.html#install">Install</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html">Install Clear Linux* OS from the live desktop</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#system-requirements">System requirements</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#preliminary-steps">Preliminary steps</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#install-from-live-image">Install from live image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#minimum-installation-requirements">Minimum installation requirements</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#cl-desktop-installer">Clear Linux OS Desktop Installer</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#navigation">Navigation</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#required-options">Required options</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#advanced-options">Advanced options</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#finish-installation">Finish installation</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html">Install Clear Linux* OS on bare metal with live server</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#system-requirements">System requirements</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#download-the-latest-cl-live-server-image">Download the latest Clear Linux OS live server image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#install-cl-on-your-target-system">Install Clear Linux OS on your target system</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#launch-the-cl-installer">Launch the Clear Linux OS Installer</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#minimum-installation-requirements">Minimum installation requirements</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#main-menu">Main Menu</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#navigation">Navigation</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#required-options">Required options</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#recommended-options">Recommended options</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#advanced-options">Advanced options</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#finish-installation">Finish installation</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#troubleshooting">Troubleshooting</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/install-configfile.html">Install using clr-installer and a configuration file</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/install-configfile.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/install-configfile.html#process">Process</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/install-configfile.html#references">References</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../get-started/get-started.html#install-in-a-virtual-machine">Install in a virtual machine</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html">Launch Clear Linux* OS Compute Engine on Google Cloud Platform*</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html#setup-cl-vm-on-gcp">Setup Clear Linux OS VM on GCP</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html">Use Hyper-V*</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#enable-hyper-v">Enable Hyper-V</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#create-a-virtual-network">Create a virtual network</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#create-a-virtual-machine">Create a virtual machine</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html">Run Clear Linux* OS as a KVM guest OS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#install-qemu-kvm">Install QEMU-KVM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#download-and-launch-the-virtual-machine">Download and launch the virtual machine</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#ssh-access-into-the-virtual-machine">SSH access into the virtual machine</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#optional-add-the-gnome-display-manager-gdm">Optional: Add the GNOME Display Manager (GDM)</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html">Install a Clear Linux* OS VM in VirtualBox*</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#download-and-extract-the-cl-installer-iso">Download and extract the Clear Linux OS installer ISO</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#create-a-new-vb-virtual-machine">Create a new VirtualBox virtual machine</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#install-cl-on-the-vb-vm">Install Clear Linux OS on the VirtualBox VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#troubleshooting">Troubleshooting</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html">Install Clear Linux* OS as a VMware* Workstation Player guest OS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#install-the-vmware-workstation-player-hypervisor">Install the VMware Workstation Player hypervisor</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#download-the-latest-cl-installer">Download the latest Clear Linux OS installer</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#install-cl-into-the-new-vm">Install Clear Linux OS into the new VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#detach-the-cl-installer-iso-from-the-vm">Detach the Clear Linux OS installer ISO from the VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#enable-uefi-boot-support">Enable UEFI boot support</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html">Run pre-configured Clear Linux* OS image as a VMware* Workstation Player guest OS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#install-the-vmware-workstation-player-hypervisor">Install the VMware Workstation Player hypervisor</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#download-the-latest-cl-vmware-image">Download the latest Clear Linux OS VMware image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#image-types">Image types</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#attach-the-pre-configured-cl-vmware-image">Attach the pre-configured Clear Linux OS VMware image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#enable-uefi-boot-support">Enable UEFI boot support</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#power-on-the-vm">Power on the VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html">Install Clear Linux* OS as a VMware* ESXi guest OS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#download-the-latest-cl-installer-iso">Download the latest Clear Linux OS installer ISO</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#upload-the-cl-installer-iso-to-the-vmware-server">Upload the Clear Linux OS installer ISO to the VMware server</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#install-cl-into-the-new-vm">Install Clear Linux OS into the new VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#reconfigure-the-vm-s-settings-to-boot-the-newly-installed-cl">Reconfigure the VM’s settings to boot the newly-installed Clear Linux OS</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#power-on-the-vm-and-boot-cl">Power on the VM and boot Clear Linux OS</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html">Run preconfigured Clear Linux* OS image as a VMware* ESXi guest OS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#download-the-latest-cl-vmware-image">Download the latest Clear Linux OS VMware image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#upload-the-cl-image-to-the-vmware-server">Upload the Clear Linux OS image to the VMware server</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#convert-the-cl-image-to-an-esxi-supported-format">Convert the Clear Linux OS image to an ESXi-supported format</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#power-on-the-vm-and-boot-cl">Power on the VM and boot Clear Linux OS</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html">Increase virtual disk size of an image</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#determine-the-partition-order-and-sizes-of-the-prebuilt-image">Determine the partition order and sizes of the prebuilt image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#id1">Increase virtual disk size</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../about.html">About</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../about.html#training">Training</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1 current"><a class="reference internal" href="../guides.html">Guides</a><ul class="current">
|
||
<li class="toctree-l2 current"><a class="reference internal" href="../guides.html#clear-linux">Clear Linux</a><ul class="current">
|
||
<li class="toctree-l3"><a class="reference internal" href="autoproxy.html">Autoproxy</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="autoproxy.html#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="autoproxy.html#how-it-works">How it works</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="autospec.html">autospec</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="autospec.html#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="autospec.html#how-it-works">How it works</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="autospec.html#examples">Examples</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="autospec.html#test-packaged-software">Test packaged software</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="autospec.html#references">References</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="autospec.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="compatible-kernels.html">Kernels</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="compatible-kernels.html#bare-metal-only">Bare metal only</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="compatible-kernels.html#also-compatible-with-vms">Also compatible with VMs</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="compatible-kernels.html#vm-only">VM only</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="debug.html">Debug system</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="debug.html#background">Background</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="debug.html#usage">Usage</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="debug.html#implementation">Implementation</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="ister.html">ister.py image builder</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="ister.html#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="ister.html#examples">Examples</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="ister.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3 current"><a class="current reference internal" href="#">mixer</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="#how-it-works">How it works</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="#examples">Examples</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="#references">References</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="security.html">OS Security</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="security.html#security-in-updates">Security in updates</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="security.html#security-in-software">Security in software</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="security.html#security-in-system-design">Security in system design</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="stateless.html">Stateless</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#file-level-separation">File-level separation</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#software-configuration">Software configuration</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#system-reset">System reset</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#additional-information">Additional information</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="swupd-guide.html">swupd</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="swupd-guide.html#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="swupd-guide.html#how-it-works">How it works</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="swupd-guide.html#examples">Examples</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="swupd-guide.html#quick-reference">Quick reference</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="swupd-guide.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../telemetrics/telem-guide.html">Telemetrics</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#how-to-use">How to use</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#examples">Examples</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#reference">Reference</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../guides.html#maintenance">Maintenance</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/architect-lifecycle.html">Architect the life-cycle of Clear Linux* OS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#content-workflow">Content Workflow</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#release-workflow">Release Workflow</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#implementation">Implementation</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/assign-static-ip.html">Assign a static IP address</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/assign-static-ip.html#identify-which-program-is-managing-the-interface">Identify which program is managing the interface</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/assign-static-ip.html#using-networkmanager">Using NetworkManager</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/assign-static-ip.html#using-systemd-networkd">Using systemd-networkd</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/bulk-provision.html">Bulk provision</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/bulk-provision.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/bulk-provision.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/bulk-provision.html#configuration">Configuration</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/cpu-performance.html">CPU Power and Performance</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#cpu-power-saving-mechanisms">CPU power saving mechanisms</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#linux-cpu-clock-frequency-scaling">Linux CPU clock frequency scaling</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#thermal-management">Thermal management</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/developer-workstation.html">Developer Workstation</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/developer-workstation.html#workstation-setup">Workstation Setup</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/developer-workstation.html#swupd-search">swupd search</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/developer-workstation.html#core-concepts">Core Concepts</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/download-verify-decompress.html">Download, verify, and decompress a Clear Linux* OS image</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#linux-os-steps">Linux OS steps</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#macos-steps">macOS* steps</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#windows-os-steps">Windows* OS steps</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#image-types">Image types</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/enable-user-space.html">Create and enable a new user space</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#create-a-new-user">Create a new user</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#add-the-new-user-to-the-wheel-group">Add the new user to the <em>wheel</em> group</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#install-and-update-the-os-software-to-its-current-version">Install and update the OS software to its current version</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#add-a-bundle">Add a bundle</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#next-steps">Next steps</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/fix-broken-install.html">Fix a broken installation</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#boot-a-live-desktop-image-to-fix-target-system">Boot a live desktop image to fix target system</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#install-from-live-image">Install from live image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#mount-root-partition-verify-and-fix">Mount root partition, verify, and fix</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/hostname.html">Modify hostname</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/hostname.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/hostname.html#set-your-hostname">Set your hostname</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/hostname.html#view-your-hostname">View your hostname</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html">Increase virtual disk size of an image</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#determine-the-partition-order-and-sizes-of-the-prebuilt-image">Determine the partition order and sizes of the prebuilt image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#id1">Increase virtual disk size</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/query-upstream.html">Query package info from upstream repository</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#configure-dnf">Configure DNF</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#dnf-command-usage-examples">DNF command usage examples</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/resource-limits.html">Resource limits</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/resource-limits.html#system-wide-limits">System-wide limits</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/resource-limits.html#per-user-limits">Per-user limits</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/resource-limits.html#service-limits">Service limits</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/restart.html">Restart system services after an OS update</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#how-it-works">How it works</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#basic-options">Basic options</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#monitor-options">Monitor options</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#example">Example</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#telemetry">Telemetry</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#conclusion">Conclusion</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/time.html">Set the time</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../maintenance/validate-signatures.html">Validate signatures</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/validate-signatures.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/validate-signatures.html#image-content-validation">Image content validation</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../maintenance/validate-signatures.html#update-content-validation">Update content validation</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../deploy-at-scale.html">Deploy at Scale</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#pick-a-usage-and-update-strategy">Pick a usage and update strategy</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#pick-an-image-distribution-strategy">Pick an image distribution strategy</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#considerations-with-stateless-systems">Considerations with stateless systems</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../guides.html#network">Network</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../network/custom-clear-container.html">Build a custom Clear Linux* OS based Docker container image</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/custom-clear-container.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/custom-clear-container.html#build-the-base-container-image">Build the base container image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/custom-clear-container.html#manage-bundles-in-a-container">Manage bundles in a container</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../network/dpdk.html">Use DPDK to send packets between platforms</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#install-dpdk-and-build-l3fwd-example-platform-b">Install dpdk and build l3fwd example (Platform B)</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#build-pktgen-platform-a">Build pktgen (Platform A)</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#bind-nics-to-dpdk-kernel-drivers-platforms-a-and-b">Bind NICs to DPDK kernel drivers (Platforms A and B)</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#set-hugepages-platforms-a-and-b">Set hugepages (Platforms A and B)</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#set-up-the-physical-environment-platforms-a-and-b">Set up the physical environment (Platforms A and B)</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#run-l3fwd-application-platform-b">Run l3fwd application (Platform B)</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#run-pktgen-application-platform-a">Run pktgen application (Platform A)</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/dpdk.html#appendix-a-use-pass-through-for-virtual-machines">Appendix A: Use pass-through for virtual machines</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../network/ipxe-install.html">Install over the network with iPXE</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/ipxe-install.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/ipxe-install.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/ipxe-install.html#configuration">Configuration</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../network/network-bonding.html">Combine multiple interfaces with network bonding</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../network/vnc.html">Remote-desktop to a host using VNC</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/vnc.html#install-the-vnc-server-and-misc-components-on-your-host">Install the VNC server and misc. components on your host</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/vnc.html#configure-a-vnc-server-start-method-on-your-host">Configure a VNC-server-start method on your host</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/vnc.html#install-a-vnc-viewer-app-and-an-ssh-client-on-your-client-system">Install a VNC viewer app and an SSH client on your client system</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/vnc.html#establish-a-vnc-connection-to-your-host">Establish a VNC connection to your host</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/vnc.html#terminate-a-vnc-connection-to-your-host">Terminate a VNC connection to your host</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../network/vnc.html#encrypt-vnc-traffic-through-an-ssh-tunnel">Encrypt VNC traffic through an SSH tunnel</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../guides.html#kernel">Kernel</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../kernel/kernel-development.html">Kernel development</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#request-changes-be-included-with-the-cl-kernel">Request changes be included with the Clear Linux OS kernel</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#set-up-kernel-development-environment">Set up kernel development environment</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#customize-the-linux-kernel-source">Customize the Linux kernel source</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#build-and-install-the-kernel">Build and install the kernel</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../kernel/kernel-modules.html">Add kernel modules manually</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#kernel-module-availability">Kernel module availability</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#build-install-and-load-an-out-of-tree-module">Build, install, and load an out-of-tree module</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#examples">Examples</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#related-topic">Related topic</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../kernel/kernel-modules-dkms.html">Add kernel modules with DKMS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#description">Description</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#kernel-module-availability">Kernel module availability</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#install-dkms">Install DKMS</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#build-install-and-load-an-out-of-tree-module">Build, install, and load an out-of-tree module</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#examples">Examples</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../guides.html#stacks">Stacks</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../stacks/dars.html">Data Analytics Reference Stack</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dars.html#the-data-analytics-reference-stack-release">The Data Analytics Reference Stack release</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dars.html#using-the-docker-images">Using the Docker images</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dars.html#building-dars-images">Building DARS images</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../stacks/greengrass.html">Enable AWS Greengrass* and OpenVINO™ toolkit</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#supported-platforms">Supported platforms</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#install-the-os-on-the-edge-device">Install the OS on the edge device</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#configure-aws-greengrass-group">Configure AWS Greengrass group</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#create-and-package-lambda-function">Create and package Lambda function</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#configure-lambda-function">Configure Lambda function</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#deploy-lambda-function">Deploy Lambda function</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#references">References</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../stacks/dlrs/dlrs.html">Deep Learning Reference Stack</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#overview">Overview</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#tensorflow-single-and-multi-node-benchmarks">TensorFlow single and multi-node benchmarks</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#pytorch-single-and-multi-node-benchmarks">PyTorch single and multi-node benchmarks</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#kubeflow-multi-node-benchmarks">Kubeflow multi-node benchmarks</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#use-jupyter-notebook">Use Jupyter Notebook</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#uninstallation">Uninstallation</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/tutorials.html">Tutorials</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/wordpress/wordpress.html">WordPress* on Clear Linux* OS</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html">Set up a LAMP web server on Clear Linux* OS</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-apache">Install Apache</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#change-the-default-configuration-and-data-directory">Change the default configuration and data directory</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-php">Install PHP</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-mariadb">Install MariaDB</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-phpmyadmin">Install phpMyAdmin</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#use-phpmyadmin-to-manage-a-database">Use phpMyAdmin to manage a database</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#next-steps">Next steps</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/wordpress/wp-install.html">Set up WordPress* on a LAMP web server</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/wp-install.html#before-you-begin">Before you begin</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/wp-install.html#create-a-wordpress-server">Create a WordPress server</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html">Use Flatpak* to install applications on Clear Linux* OS</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#before-you-begin">Before you begin</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#install-flatpak-on-your-host-system">Install Flatpak on your host system</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#install-and-run-the-libreoffice-flatpak-image">Install and run the LibreOffice Flatpak image</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#launch-libreoffice">Launch LibreOffice</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html">TensorFlow* machine learning on Clear Linux* OS</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#set-up-a-jupyter-notebook">Set up a Jupyter notebook</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#run-the-jupyter-machine-learning-example-code">Run the Jupyter machine learning example code</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/docker/docker.html">Run Docker* on Clear Linux* OS</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#install-the-containers-basic-bundle">Install the containers-basic bundle</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#integration-with-kata-containers-optional">Integration with Kata Containers* (optional)</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#additional-docker-configuration">Additional Docker configuration</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#pulling-and-running-an-image-from-docker-hub">Pulling and running an image from Docker Hub</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#creating-a-docker-swarm-cluster">Creating a Docker swarm cluster</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/azure.html">Run Clear Linux* OS using Microsoft Azure CLI 2.0</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#install-ms-azure-cli-2-0-on-cl">Install MS Azure CLI 2.0 on Clear Linux OS</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#log-into-your-microsoft-azure-account">Log into your Microsoft Azure account</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#create-a-ms-azure-resource-group">Create a MS Azure resource group</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#create-and-log-into-the-cl-virtual-machine">Create and log into the Clear Linux OS virtual machine</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#stop-and-deallocate-the-cl-vm-and-resources">Stop and deallocate the Clear Linux OS VM and resources</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#next-steps">Next steps</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/hadoop.html">Set up a single node cluster with Hadoop*</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#install-apache-hadoop">Install Apache Hadoop</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#configure-apache-hadoop">Configure Apache Hadoop</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#configure-your-ssh-key">Configure your SSH key</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#run-the-hadoop-daemons">Run the Hadoop daemons</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#run-the-mapreduce-wordcount-example">Run the MapReduce wordcount example</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/fmv.html">Use the function multi-version patch generator</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#install-and-configure-a-cl-host-on-bare-metal">Install and configure a Clear Linux OS host on bare metal</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#detect-loop-vectorization-candidates">Detect loop vectorization candidates</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#generate-the-fmv-patch">Generate the FMV patch</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#fft-project-example-using-fftw">FFT project example using FFTW</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html">Create and launch Clear Linux* OS from Amazon Web Services</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#locate-select-and-launch-the-cl-basic-ami">Locate, select, and launch the Clear Linux OS Basic AMI</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#connect-to-your-clear-linux-os-basic-instance">Connect to your Clear Linux OS Basic instance</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#update-the-cl-instance">Update the Clear Linux OS instance</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#stop-the-cl-instance">Stop the Clear Linux OS instance</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/smb/smb.html">Enable simple file sharing with a Windows* machine using Samba*</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb.html#set-up-file-sharing">Set up file sharing</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb.html#map-cl-drive-in-windows">Map Clear Linux OS drive in Windows</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/smb/smb-desktop.html">Connect to Windows* shared location from Clear Linux* OS desktop</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb-desktop.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb-desktop.html#connect-to-windows-shared-location-with-nautilus">Connect to Windows shared location with Nautilus</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/spark.html">Set up a standalone cluster system using Apache* Spark*</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#install-apache-spark">Install Apache Spark</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#configure-apache-spark">Configure Apache Spark</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#start-the-master-server-and-a-worker-daemon">Start the master server and a worker daemon</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#run-the-spark-wordcount-example">Run the Spark wordcount example</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kata.html">Install Kata Containers*</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#id1">Install Kata Containers</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#run-kata-containers">Run Kata Containers</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#more-information-about-docker">More information about Docker</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/kata.html#troubleshooting">Troubleshooting</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kata_migration.html">Migrate Clear Containers to Kata Containers*</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#stop-clear-containers-instances">Stop Clear Containers instances</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#manually-migrate-customized-configuration-files">Manually migrate customized configuration files</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#enable-kata-containers-as-default">Enable Kata Containers as default</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#run-kata-containers">Run Kata Containers</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html">Run Kubernetes*</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#install-kubernetes-and-cri-runtimes">Install Kubernetes and CRI runtimes</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#configure-kubernetes">Configure Kubernetes</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#configure-and-run-kubernetes">Configure and run Kubernetes</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#configure-and-run-cri-o-kata-runtime">Configure and run CRI-O + kata-runtime</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#install-pod-network-add-on">Install pod network add-on</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#use-your-cluster">Use your cluster</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#related-topics">Related topics</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#cloud-native-setup-automation-optional">Cloud native setup automation (optional)</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#package-configuration-customization-optional">Package configuration customization (optional)</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#proxy-configuration-optional">Proxy configuration (optional)</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#next-steps">Next steps</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#troubleshooting">Troubleshooting</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html">Kubernetes Best Practices on Clear Linux OS</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#use-swupd-to-update-clusters">Use swupd to update clusters</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#update-the-control-plane">Update the control plane</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#update-worker-nodes">Update worker nodes</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/yubikey-u2f.html">Enable YubiKey U2F Support</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#enable-linux-udev-rules-for-yubikey">Enable Linux udev rules for YubiKey</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#enable-u2f-in-mozilla-firefox">Enable U2F in Mozilla Firefox</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/nvidia.html">Install NVIDIA* Drivers</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#install-dkms">Install DKMS</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#download-and-install-the-nvidia-drivers">Download and install the NVIDIA drivers</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#download-the-nvidia-drivers-for-linux">Download the NVIDIA drivers for Linux</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#disable-the-nouveau-driver">Disable the nouveau driver</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#configure-alternative-software-paths">Configure alternative software paths</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#install-the-nvidia-drivers">Install the NVIDIA drivers</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#updating-the-nvidia-drivers">Updating the NVIDIA drivers</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#uninstalling-the-nvidia-drivers">Uninstalling the NVIDIA drivers</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#debugging-installation-of-nvidia-drivers">Debugging installation of NVIDIA drivers</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#additional-resources">Additional resources</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/redis.html">Run Redis on Clear Linux* OS</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#install-the-redis-bundle">Install the redis bundle</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#start-the-redis-server">Start the redis-server</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#example-1-use-the-redis-cli-and-try-commands">Example 1: Use the redis-cli and try commands</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#example-2-run-the-cl-redis-docker-image">Example 2: Run the Clear Linux OS redis docker image</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#next-steps">Next Steps</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/tutorial-proxy.html">Setting up proxy</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#shells-and-programs-in-a-desktop-session">Shells and programs in a desktop session</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#terminal">Terminal</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#wget">wget</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#system-service-docker">System service (Docker)</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#git-over-ssh">git over ssh</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../reference/reference.html">Reference</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/compatible-hardware.html">Compatible Hardware</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/bundle-commands.html">Useful bundle commands</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundle-commands.html#additional-information">Additional information</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/bundles/bundles.html">Available bundles</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/bundles.html#bundle-list">Bundle list</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/bundles/openssh-server.html">openssh-server</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#prerequisites">Prerequisites</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#change-default-port">Change default port</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#enable-sftp">Enable SFTP</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#enable-root-login">Enable root login</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#enable-x11-forwarding">Enable X11-forwarding</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/collaboration/collaboration.html">Documentation guidelines</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#contribution-guidelines">Contribution guidelines</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../reference/collaboration/writing-guide.html">Writing guide: Describes the style we use to keep our documents clear and concise.</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../reference/collaboration/structure-formatting.html">Structure and formatting guide: Explains how we organize and format content, using reStructuredText and Sphinx.</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#how-to-contribute">How to contribute</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#contribute-via-github">Contribute via GitHub</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#references">References</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/system-requirements.html">Recommended minimum system requirements</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/system-requirements.html#installer-requirements">Installer requirements</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/system-requirements.html#id1">System requirements</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../reference/system-requirements.html#recommended-configurations">Recommended configurations</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/image-types.html">Clear Linux* OS image types</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../reference/reference.html#clear-linux-concepts">Clear Linux concepts</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../concepts/autospec-about.html">Autospec</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/autospec-about.html#how-autospec-works">How autospec works</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/autospec-about.html#control-files">Control files</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/autospec-about.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../concepts/bundles-about.html">Bundles</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/bundles-about.html#next-steps">Next steps</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../concepts/mixer-about.html">Mixer</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/mixer-about.html#create-a-mix">Create a mix</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/mixer-about.html#related-topics">Related topics</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../concepts/swupd-about.html">swupd: software updater</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/swupd-about.html#versioning">Versioning</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/swupd-about.html#updating">Updating</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/swupd-about.html#bundles">Bundles</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../concepts/telemetry-about.html">Telemetrics</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/telemetry-about.html#architecture">Architecture</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="../../concepts/telemetry-about.html#next-steps">Next steps</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="stateless.html">Stateless</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#file-level-separation">File-level separation</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#software-configuration">Software configuration</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#system-reset">System reset</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="stateless.html#additional-information">Additional information</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l3"><a class="reference internal" href="security.html">OS Security</a><ul>
|
||
<li class="toctree-l4"><a class="reference internal" href="security.html#security-in-updates">Security in updates</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="security.html#security-in-software">Security in software</a></li>
|
||
<li class="toctree-l4"><a class="reference internal" href="security.html#security-in-system-design">Security in system design</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../FAQ/faq.html">FAQ</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../FAQ/faq.html#general">General</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#why-did-you-make-another-distro">Why did you make another distro?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#can-other-distros-copy-cl-improvements">Can other distros copy Clear Linux OS improvements?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#how-often-do-you-update">How often do you update?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-telemetry-required">Is telemetry required?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#what-is-the-default-firewall">What is the default firewall?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#where-are-the-files-that-i-usually-see-under-etc-like-fstab">Where are the files that I usually see under /etc like fstab?</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../FAQ/faq.html#software-packages">Software packages</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#how-is-software-installed-and-updated">How is software installed and updated?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#does-cl-use-rpms-like-other-distros">Does Clear Linux OS use RPMs like other distros?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#can-i-install-a-software-package-from-another-os-on-cl">Can I install a software package from another OS on Clear Linux OS?</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l2"><a class="reference internal" href="../../FAQ/faq.html#software-availability">Software availability</a><ul>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#what-software-is-available-on-cl">What software is available on Clear Linux OS?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-google-chrome-available">Is Google* Chrome* available?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-ffmpeg-available">Is FFmpeg available?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-zfs-available">Is ZFS* available?</a></li>
|
||
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#can-you-add-a-driver-that-i-need">Can you add a driver that I need?</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
|
||
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
|
||
|
||
|
||
<nav class="wy-nav-top" aria-label="top navigation">
|
||
|
||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
||
<a href="../../index.html">Clear Linux* Project Docs</a>
|
||
|
||
</nav>
|
||
|
||
|
||
<div class="wy-nav-content">
|
||
|
||
<header id="header">
|
||
<div class="padding-md--left-right">
|
||
|
||
<div class="header__site_info">
|
||
<div class="header__site_info_name">
|
||
<a href ="https://clearlinux.org"> Clear Linux* Project</a>
|
||
</div>
|
||
</div>
|
||
<nav class="header__menu">
|
||
<ul class="header__menu_list">
|
||
<li class="header__menu_list_item green ">
|
||
<a tabindex='1' href="https://clearlinux.org/about">About</a>
|
||
</li>
|
||
<li class="header__menu_list_item purple ">
|
||
<a tabindex='1' href="https://clearlinux.org/developer">Developer</a>
|
||
</li>
|
||
<li class="header__menu_list_item blue ">
|
||
<a tabindex='1' href="https://clearlinux.org/software">Software</a>
|
||
</li>
|
||
</ul>
|
||
</nav>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
</header>
|
||
|
||
|
||
|
||
<div class="rst-content">
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<div role="navigation" aria-label="breadcrumbs navigation">
|
||
|
||
<ul class="wy-breadcrumbs">
|
||
|
||
<li><a href="../../index.html">Docs</a> »</li>
|
||
|
||
<li><a href="../guides.html">Guides</a> »</li>
|
||
|
||
<li>mixer</li>
|
||
|
||
|
||
<li class="wy-breadcrumbs-aside">
|
||
|
||
|
||
|
||
<a href="https://github.com/clearlinux/clear-linux-documentation/blob/rtd-theme/source/guides/clear/mixer.rst" class="fa fa-github"> Edit on GitHub</a>
|
||
|
||
|
||
|
||
</li>
|
||
|
||
</ul>
|
||
|
||
|
||
<hr/>
|
||
</div>
|
||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
||
<div itemprop="articleBody">
|
||
|
||
<div class="section" id="mixer">
|
||
<span id="id1"></span><h1>mixer</h1>
|
||
<p><strong>mixer</strong> is the tool used by the Clear Linux* OS team to generate official update
|
||
content and releases. The update content generated by mixer is then consumed
|
||
by swupd on a downstream client. The same mixer tool is available as part of
|
||
Clear Linux OS to create your own customized update content and releases.</p>
|
||
<div class="contents local topic" id="contents">
|
||
<ul class="simple">
|
||
<li><a class="reference internal" href="#description" id="id5">Description</a></li>
|
||
<li><a class="reference internal" href="#how-it-works" id="id6">How it works</a></li>
|
||
<li><a class="reference internal" href="#examples" id="id7">Examples</a></li>
|
||
<li><a class="reference internal" href="#references" id="id8">References</a></li>
|
||
<li><a class="reference internal" href="#related-topics" id="id9">Related topics</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="section" id="description">
|
||
<h2><a class="toc-backref" href="#id5">Description</a></h2>
|
||
<p>mixer uses the following sources as inputs to generate update content:</p>
|
||
<ul class="simple">
|
||
<li>Upstream Clear Linux OS bundles with their corresponding RPM packages</li>
|
||
<li>Locally-defined bundles with their corresponding local RPM packages</li>
|
||
<li>Locally-defined bundles with upstream RPM packages</li>
|
||
</ul>
|
||
<p>Using the mixer tool, you select which set of content from these sources
|
||
will be part of your update. You can select content from each of these sources to make a unique combination of functionality for your custom update content, known as a <strong>mix</strong>.</p>
|
||
<p>The update content that mixer generates consists of various pieces of OS
|
||
content, update metadata, as well as a complete image. The OS content
|
||
includes all files in an update, as well as zero- and delta-packs for improved update performance. The update metadata, stored as manifests, describes all of the bundle information for the update. Update content produced by mixer is then published to a web server and consumed by clients via swupd. Refer to <a class="reference internal" href="swupd-guide.html#swupd-guide"><span class="std std-ref">swupd</span></a> for additional information regarding updates and update content.</p>
|
||
</div>
|
||
<div class="section" id="how-it-works">
|
||
<h2><a class="toc-backref" href="#id6">How it works</a></h2>
|
||
<p>Learn the mixer tool set up and workflow.</p>
|
||
<div class="contents local topic" id="id2">
|
||
<ul class="simple">
|
||
<li><a class="reference internal" href="#prerequisites" id="id10">Prerequisites</a></li>
|
||
<li><a class="reference internal" href="#mix-setup" id="id11">Mix setup</a></li>
|
||
<li><a class="reference internal" href="#create-a-mix" id="id12">Create a mix</a></li>
|
||
<li><a class="reference internal" href="#maintain-or-modify-mix" id="id13">Maintain or modify mix</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="section" id="prerequisites">
|
||
<h3><a class="toc-backref" href="#id10">Prerequisites</a></h3>
|
||
<ul>
|
||
<li><p class="first"><strong class="command">mixer</strong> bundle</p>
|
||
<p>Add the mixer tool with the <strong class="command">mixer</strong> bundle. Refer to
|
||
<a class="reference internal" href="swupd-guide.html#swupd-guide"><span class="std std-ref">swupd</span></a> for more information on installing bundles.</p>
|
||
</li>
|
||
<li><p class="first">Docker* container</p>
|
||
<p>mixer by default runs all build commands in a Docker container to ensure
|
||
the correct tool versions are used. This also allows custom mixes to
|
||
automatically perform downstream format bumps when the upstream releases a
|
||
format bump. See <a class="reference internal" href="#format-version">Format version</a> for additional information regarding
|
||
format bumps.</p>
|
||
<p>Refer to <a class="reference internal" href="#configure-and-enable-docker">Configure and enable Docker</a> for instruction.</p>
|
||
</li>
|
||
<li><p class="first">Docker proxy (optional)</p>
|
||
<p>If you use a proxy server, you must set your proxy environment variables and
|
||
create a proxy configuration file for the Docker daemon and container.</p>
|
||
<p>Consult your IT department for the correct values if you are behind a
|
||
corporate proxy.</p>
|
||
<p>Refer to <a class="reference internal" href="#configure-docker-proxy-info">Configure Docker proxy info</a> for instruction.</p>
|
||
</li>
|
||
<li><p class="first">Location to host the update content and images</p>
|
||
<p>In order for swupd to make use of your mix, the update content for your mix
|
||
must be hosted on a web server. Your mix will be configured with an update
|
||
location URL, which swupd will use to pull down updates.</p>
|
||
<p>Refer to <a class="reference internal" href="#set-up-a-nginx-web-server-for-mixer">Set up a nginx web server for mixer</a> for an simple example of
|
||
setting up an update location.</p>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<div class="section" id="mix-setup">
|
||
<h3><a class="toc-backref" href="#id11">Mix setup</a></h3>
|
||
<p>Follow these steps to create and initialize the mixer workspace. Complete
|
||
the setup before you create a mix.</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Create workspace.</p>
|
||
<p>The mixer tool uses a simple workspace to contain all input and output in a
|
||
basic directory structure. The workspace is simply an empty folder from
|
||
which you execute the mixer commands. Each mix uses its own separate
|
||
workspace.</p>
|
||
</li>
|
||
<li><p class="first">Initialize the workspace and mix.</p>
|
||
<p>Before you create a mix, you must explicitly initialize the mixer workspace.
|
||
During initialization, the mixer workspace is configured and the base for
|
||
your mix is defined. By default, your mix is based on the latest
|
||
upstream version and starts with the minimum set of bundles. Your first custom
|
||
mix version number starts at 10. Alternatively, you can select other
|
||
versions or bundle sets from which to start.</p>
|
||
<p>Initialization creates the directory structure within the workspace and adds
|
||
the <code class="file docutils literal notranslate"><span class="pre">builder.conf</span></code> file, which is used to configure the mixer tool.</p>
|
||
<p>View the <a class="reference external" href="https://github.com/clearlinux/mixer-tools/blob/master/docs/mixer.init.1.rst">mixer.init man page</a> for more information on mixer
|
||
initialization.</p>
|
||
<p>View the list of suitable <a class="reference external" href="https://github.com/clearlinux/clr-bundles/releases">releases</a> from which to mix.</p>
|
||
</li>
|
||
<li><p class="first">Edit builder.conf.</p>
|
||
<p><code class="file docutils literal notranslate"><span class="pre">builder.conf</span></code> tells the mixer tool how to configure the mix. For
|
||
example, it allows you to configure where mixer output is located and where
|
||
swupd update content will be located.</p>
|
||
<p>At minimum, set the URL of your update server so your custom OS knows where
|
||
to get update content.</p>
|
||
<p>Refer to the <a class="reference internal" href="#builder-conf">builder.conf</a> section for more information.</p>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
<div class="section" id="create-a-mix">
|
||
<h3><a class="toc-backref" href="#id12">Create a mix</a></h3>
|
||
<p>A mix is created with the following steps:</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Add custom RPMs and set up local repo (optional).</p>
|
||
<p>If you are adding custom RPMs to your mix, you must add the RPMs to
|
||
your mix workspace and set up a corresponding local repository.</p>
|
||
<p>Go to the <a class="reference internal" href="autospec.html#autospec"><span class="std std-ref">autospec</span></a> guide to learn to build RPMs from
|
||
scratch. If the RPMs are not built on Clear Linux OS, make sure your
|
||
configuration and toolchain builds them correctly for Clear Linux OS. Otherwise there
|
||
is no guarantee they will be compatible.</p>
|
||
<p>Refer to the <a class="reference internal" href="autospec.html#autospec"><span class="std std-ref">autospec</span></a> guide for more information on using autospec to
|
||
build RPMs.</p>
|
||
</li>
|
||
<li><p class="first">Update and build bundles.</p>
|
||
<p>Add, edit, or remove bundles that will be part of your content and build
|
||
them. mixer automatically updates the <code class="file docutils literal notranslate"><span class="pre">mixbundles</span></code> file when you
|
||
update the bundles in your mix.</p>
|
||
<p>View the <a class="reference external" href="https://github.com/clearlinux/mixer-tools/blob/master/docs/mixer.bundle.1.rst">mixer.bundle man page</a> for more information on configuring bundles
|
||
in a mix.</p>
|
||
<p>View the <a class="reference external" href="https://github.com/clearlinux/mixer-tools/blob/master/docs/mixer.build.1.rst">mixer.build man page</a> for more information on building bundles.</p>
|
||
<p>View the <a class="reference internal" href="#bundles">Bundles</a> section for more information on how mixer manages
|
||
bundles.</p>
|
||
</li>
|
||
<li><p class="first">Create the update content.</p>
|
||
<p>mixer creates update content with this step. Zero-packs are created
|
||
automatically, and delta-packs can be optionally created at the same time
|
||
(for all builds after version 0).</p>
|
||
<p>A zero-pack is the full set of content needed to go from mix version 0
|
||
(nothing) to the mix version for which you just built content.</p>
|
||
<p>A delta-pack provides the content <em>delta</em> between a <cite>PAST_VERSION</cite> to a
|
||
<cite>MIX_VERSION</cite> that allows the transition from one mix version to another.</p>
|
||
<p>View <a class="reference internal" href="swupd-guide.html#swupd-guide"><span class="std std-ref">swupd</span></a> for more information on update content.</p>
|
||
</li>
|
||
<li><p class="first">Create image.</p>
|
||
<p>mixer creates a bootable image from your updated content using
|
||
the <a class="reference internal" href="ister.html#ister"><span class="std std-ref">ister.py image builder</span></a> tool. In this step you can specify which bundles you want
|
||
<em>preinstalled</em> in the image. Users can later install other bundles available
|
||
in your mix.</p>
|
||
</li>
|
||
<li><p class="first">Make update available.</p>
|
||
<p>Deploy update content and images to your update server.</p>
|
||
<p>View the <a class="reference internal" href="#example-3-deploy-updates-to-target">Example 3: Deploy updates to target</a> for a simple deployment
|
||
scenario.</p>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
<div class="section" id="maintain-or-modify-mix">
|
||
<h3><a class="toc-backref" href="#id13">Maintain or modify mix</a></h3>
|
||
<p>Update or modify your content to a new version by following the steps to
|
||
create a mix. Increment the mix version number for the next mix.</p>
|
||
</div>
|
||
</div>
|
||
<div class="section" id="examples">
|
||
<h2><a class="toc-backref" href="#id7">Examples</a></h2>
|
||
<p>The following examples are designed to work together and in order. The examples
|
||
use:</p>
|
||
<ul class="simple">
|
||
<li>A stock installation of Clear Linux OS.</li>
|
||
<li>A web server that comes with Clear Linux OS to host the content updates.</li>
|
||
<li>A simple VM that updates against the locally produced content created in
|
||
Example 2.</li>
|
||
</ul>
|
||
<p>Complete all <a class="reference internal" href="#prerequisites">Prerequisites</a> before using these examples.</p>
|
||
<div class="section" id="example-1-mix-set-up">
|
||
<h3>Example 1: Mix set up</h3>
|
||
<p>This example shows the basic steps for the first-time setup of
|
||
mixer for a new mix.</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Create an empty directory to use as a workspace for mixer:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mkdir ~/mixer
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">In your mixer workspace, generate an initial mix based on the latest upstream
|
||
Clear Linux OS version, with minimum bundles. In the initialization output, be aware
|
||
that your initial mix version is set to 10 and that the minimum bundles have
|
||
been added.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="nb">cd</span> ~/mixer
|
||
mixer init
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Edit <code class="file docutils literal notranslate"><span class="pre">builder.conf</span></code> to set the value of CONTENTURL and VERSIONURL to
|
||
the IP address of the nginx* server you set up in the prerequisite
|
||
<a class="reference internal" href="#set-up-a-nginx-web-server-for-mixer">Set up a nginx web server for mixer</a>. For example:</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">CONTENTURL="http://192.168.25.52"</span>
|
||
<span class="go">VERSIONURL="http://192.168.25.52"</span>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
<div class="section" id="example-2-create-a-simple-mix">
|
||
<h3>Example 2: Create a simple mix</h3>
|
||
<p>This example shows how to create a simple custom mix using upstream content.
|
||
We’ll create an image for a QEMU virtual machine that we can use later to test
|
||
our mix.</p>
|
||
<p>We can use the default bundles that were added during initialization, but these
|
||
include the <strong class="command">native-kernel</strong> bundle that is intended to be used on a
|
||
bare metal system instead of a VM. So we will modify the default bundle
|
||
set to get a smaller kernel image, which will also be faster to load.</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Update bundles in mix:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer bundle remove kernel-native
|
||
mixer bundle add kernel-kvm
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">In this case, we will add the <cite>editors</cite> bundle from upstream, but we will
|
||
remove the <cite>joe</cite> editor.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer bundle add editors
|
||
mixer bundle edit editors
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Use an editor and manually remove <cite>joe</cite> from the bundle definition.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="nv">$EDITOR</span> ./local-bundles/editors
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">List the bundles in the mix again to confirm removal.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer bundle list --tree
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Build bundles:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer build bundles
|
||
</pre></div>
|
||
</div>
|
||
<p>Look in ~/mixer/update/image/<mix version>/full for the full chroot after the
|
||
<strong class="command">build</strong> command completes.</p>
|
||
</li>
|
||
<li><p class="first">Build update content. Browse to your http://localhost site and you’ll see
|
||
the web page is now up, but with no update content. Build the update content:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer build update
|
||
</pre></div>
|
||
</div>
|
||
<p>Refresh your http://localhost site and now you can see the update
|
||
content for mix version 10.</p>
|
||
<p>Look in ~/mixer/update/www/<mix version> to see the update content in your
|
||
workspace.</p>
|
||
</li>
|
||
<li><p class="first">Configure image. Edit the ister configuration file for your image to include
|
||
all of the bundles you want preinstalled in the image. If this is the first
|
||
time creating an image, first get a copy of the
|
||
<code class="file docutils literal notranslate"><span class="pre">release-image-config.json</span></code> template file:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>curl -O https://raw.githubusercontent.com/bryteise/ister/master/release-image-config.json
|
||
</pre></div>
|
||
</div>
|
||
<p>For this example, edit <code class="file docutils literal notranslate"><span class="pre">release-image-config.json</span></code> so that the root
|
||
partition size is “5G” and replace the “kernel-native” bundle with
|
||
“kernel-kvm”.</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">{</span>
|
||
<span class="go"> "DestinationType" : "virtual",</span>
|
||
<span class="go"> "PartitionLayout" : [ { "disk" : "release.img", "partition" : 1, "size" : "32M", "type" : "EFI" },</span>
|
||
<span class="go"> { "disk" : "release.img", "partition" : 2, "size" : "16M", "type" : "swap" },</span>
|
||
<span class="go"> { "disk" : "release.img", "partition" : 3, "size" : "5G", "type" : "linux" } ],</span>
|
||
<span class="go"> "FilesystemTypes" : [ { "disk" : "release.img", "partition" : 1, "type" : "vfat" },</span>
|
||
<span class="go"> { "disk" : "release.img", "partition" : 2, "type" : "swap" },</span>
|
||
<span class="go"> { "disk" : "release.img", "partition" : 3, "type" : "ext4" } ],</span>
|
||
<span class="go"> "PartitionMountPoints" : [ { "disk" : "release.img", "partition" : 1, "mount" : "/boot" },</span>
|
||
<span class="go"> { "disk" : "release.img", "partition" : 3, "mount" : "/" } ],</span>
|
||
<span class="go"> "Version": "latest",</span>
|
||
<span class="go"> "Bundles": ["kernel-kvm", "os-core", "os-core-update"]</span>
|
||
<span class="go">}</span>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Build the image.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo mixer build image
|
||
</pre></div>
|
||
</div>
|
||
<p>The output from this step will be <code class="file docutils literal notranslate"><span class="pre">release.img</span></code>, which is a live image.</p>
|
||
</li>
|
||
<li><p class="first">Make the next mix. Create a new version of your mix, for the live image to
|
||
update to. Increment your mix version by 10:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer versions update
|
||
</pre></div>
|
||
</div>
|
||
<p>Repeat steps 1-3 to add the upstream <strong class="command">curl</strong> bundle to the mix:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer bundle add curl
|
||
mixer build bundles
|
||
mixer build update
|
||
</pre></div>
|
||
</div>
|
||
<p>Build optional delta-packs, which helps reduce client update time:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mixer build delta-packs --from <span class="m">10</span> --to <span class="m">20</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>Refresh your http://localhost site to see the update content for
|
||
mix version 20.</p>
|
||
<p>Look in ~/mixer/update/www/<mix version> to see the update content in your
|
||
workspace.</p>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
<div class="section" id="example-3-deploy-updates-to-target">
|
||
<h3>Example 3: Deploy updates to target</h3>
|
||
<p>The image created in Example 2 is directly bootable in QEMU. In this example,
|
||
we’ll boot the image from Example 2 to verify it, and update the image from
|
||
mix version 10 (from which the image was built), to mix version 20.</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Set up the QEMU environment.</p>
|
||
<p>Install the <strong class="command">kvm-host</strong> bundle to your Clear Linux OS:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo swupd bundle-add kvm-host
|
||
</pre></div>
|
||
</div>
|
||
<p>Get the virtual EFI firmware, download the image launch script, and make it
|
||
executable:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>curl -O https://download.clearlinux.org/image/OVMF.fd
|
||
curl -O https://download.clearlinux.org/image/start_qemu.sh
|
||
chmod +x start_qemu.sh
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Start your VM image (created in Example 2):</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo ./start_qemu.sh release.img
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Log in as root and set a password</p>
|
||
</li>
|
||
<li><p class="first">Try out your mix.</p>
|
||
<p>Take a look at the default bundles installed in your mix:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>swupd info
|
||
swupd bundle-list
|
||
swupd bundle-list -a
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Now we will add the <cite>editors</cite> bundle that we modified.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>swupd bundle add editors
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Try to start the <cite>joe</cite> editor. It should not appear because we removed it
|
||
from the original <cite>editors</cite> bundle.</p>
|
||
</li>
|
||
<li><p class="first">Next we will update from version 10 to 20 to capture the newly
|
||
available bundles. Use <strong class="command">swupd</strong> to update your mix:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>swupd check-update
|
||
swupd update
|
||
swupd bundle-list -a
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Now your mix should be at version 20 and curl is now available. Try using
|
||
curl. This will fail because curl is not yet installed:</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">curl: command not found</span>
|
||
<span class="go">To install curl use: swupd bundle-add curl</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>Add the new bundle from your update server to your VM. Retry curl. It works!</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>swupd bundle-add curl
|
||
curl -O https://download.clearlinux.org/image/start_qemu.sh
|
||
</pre></div>
|
||
</div>
|
||
<p>Shutdown your VM:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>poweroff
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
</div>
|
||
<div class="section" id="references">
|
||
<h2><a class="toc-backref" href="#id8">References</a></h2>
|
||
<p>Reference the <a class="reference external" href="https://github.com/clearlinux/mixer-tools/blob/master/docs/mixer.1.rst">mixer man page</a> for details regarding mixer commands and options.</p>
|
||
<div class="contents local topic" id="id3">
|
||
<ul class="simple">
|
||
<li><a class="reference internal" href="#builder-conf" id="id14">builder.conf</a></li>
|
||
<li><a class="reference internal" href="#bundles" id="id15">Bundles</a></li>
|
||
<li><a class="reference internal" href="#configure-and-enable-docker" id="id16">Configure and enable Docker</a></li>
|
||
<li><a class="reference internal" href="#configure-docker-proxy-info" id="id17">Configure Docker proxy info</a></li>
|
||
<li><a class="reference internal" href="#set-up-a-nginx-web-server-for-mixer" id="id18">Set up a nginx web server for mixer</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="content-collapse section" id="builder-conf">
|
||
<h3><a class="toc-backref" href="#id14">builder.conf</a></h3>
|
||
<p>mixer initialization creates a <code class="file docutils literal notranslate"><span class="pre">builder.conf</span></code> that stores the basic
|
||
configuration for the mixer tool. The items of primary interest are CONTENTURL
|
||
and VERSIONURL, which will be used by systems updating against your custom
|
||
content.</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span>builder.conf
|
||
|
||
<span class="gp">#</span>VERSION <span class="m">1</span>.0
|
||
|
||
<span class="go">[Builder]</span>
|
||
<span class="go"> CERT = "/home/clr/mix/Swupd_Root.pem"</span>
|
||
<span class="go"> SERVER_STATE_DIR = "/home/clr/mix/update"</span>
|
||
<span class="go"> VERSIONS_PATH = "/home/clr/mix"</span>
|
||
<span class="go"> YUM_CONF = "/home/clr/mix/.yum-mix.conf"</span>
|
||
|
||
<span class="go">[Swupd]</span>
|
||
<span class="go"> BUNDLE = "os-core-update"</span>
|
||
<span class="go"> CONTENTURL = "<URL where the content will be hosted>"</span>
|
||
<span class="go"> VERSIONURL = "<URL where the version of the mix will be hosted>"</span>
|
||
|
||
<span class="go">[Server]</span>
|
||
<span class="go"> DEBUG_INFO_BANNED = "true"</span>
|
||
<span class="go"> DEBUG_INFO_LIB = "/usr/lib/debug"</span>
|
||
<span class="go"> DEBUG_INFO_SRC = "/usr/src/debug"</span>
|
||
|
||
<span class="go">[Mixer]</span>
|
||
<span class="go"> LOCAL_BUNDLE_DIR = "/home/clr/mix/local-bundles"</span>
|
||
<span class="go"> LOCAL_REPO_DIR = ""</span>
|
||
<span class="go"> LOCAL_RPM_DIR = ""</span>
|
||
<span class="go"> DOCKER_IMAGE_PATH = "clearlinux/mixer"</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>Additional explanation of variables in <code class="file docutils literal notranslate"><span class="pre">builder.conf</span></code> is provided in Table
|
||
1.</p>
|
||
<table border="1" class="docutils">
|
||
<colgroup>
|
||
<col width="35%" />
|
||
<col width="65%" />
|
||
</colgroup>
|
||
<tbody valign="top">
|
||
<tr class="row-odd"><td><strong>Variable</strong></td>
|
||
<td><strong>Explanation</strong></td>
|
||
</tr>
|
||
<tr class="row-even"><td><cite>CERT</cite></td>
|
||
<td><p class="first">Sets the path where mixer stores the certificate file
|
||
used to sign content for verification. mixer
|
||
automatically generates the certificate if you do not
|
||
provide the path to an existing one, and signs the
|
||
<code class="file docutils literal notranslate"><span class="pre">Manifest.MoM</span></code> file to provide security for the
|
||
updated content you create.</p>
|
||
<p>chroot-builder uses the certificate file to sign
|
||
the root <code class="file docutils literal notranslate"><span class="pre">Manifest.MoM</span></code> file to provide
|
||
security for content verification.</p>
|
||
<p>swupd uses this certificate to verify the
|
||
<code class="file docutils literal notranslate"><span class="pre">Manifest.MoM</span></code> file’s signature.</p>
|
||
<p class="last">For now, we strongly recommend that you do not modify
|
||
this variable, as swupd expects a certificate with a
|
||
very specific configuration to sign and verify
|
||
properly.</p>
|
||
</td>
|
||
</tr>
|
||
<tr class="row-odd"><td><cite>CONTENTURL</cite> and <cite>VERSIONURL</cite></td>
|
||
<td><p class="first">Set these variables to the IP address of the web server
|
||
hosting the update content.</p>
|
||
<p>VERSIONURL is the IP address where the swupd client
|
||
looks to determine if a new version is available.</p>
|
||
<p>CONTENTURL is the location from which swupd pulls
|
||
content updates.</p>
|
||
<p>If the web server is on the same machine as the
|
||
SERVER_STATE_DIR directory, you can create a symlink to
|
||
the directory in your web server’s document root to
|
||
easily host the content.</p>
|
||
<p class="last">These URLs are embedded in the images created by mixer.</p>
|
||
</td>
|
||
</tr>
|
||
<tr class="row-even"><td><cite>DOCKER_IMAGE_PATH</cite></td>
|
||
<td>Sets the base name of the docker image that mixer pulls
|
||
down to run builds in the proper container.</td>
|
||
</tr>
|
||
<tr class="row-odd"><td><cite>LOCAL_BUNDLE_DIR</cite></td>
|
||
<td>Sets the path where mixer stores the local bundle
|
||
definition files. The bundle definition files include
|
||
any new, original bundles you create, along with any
|
||
edited versions of upstream bundles.</td>
|
||
</tr>
|
||
<tr class="row-even"><td><cite>SERVER_STATE_DIR</cite></td>
|
||
<td>Sets the path to which mixer outputs content. By
|
||
default, mixer automatically sets the path.</td>
|
||
</tr>
|
||
<tr class="row-odd"><td><cite>VERSIONS_PATH</cite></td>
|
||
<td>Sets the path for the mix version and upstream version’s
|
||
two state files: <code class="file docutils literal notranslate"><span class="pre">mixversion</span></code> and
|
||
<code class="file docutils literal notranslate"><span class="pre">upstreamversion</span></code>. mixer creates both files for
|
||
you when you set up the workspace.</td>
|
||
</tr>
|
||
<tr class="row-even"><td><cite>YUM_CONF</cite></td>
|
||
<td><p class="first">Sets the path where mixer automatically generates the
|
||
<code class="file docutils literal notranslate"><span class="pre">.yum-mix.conf</span></code> file.</p>
|
||
<p class="last">The yum configuration file points the chroot-builder to
|
||
where the RPMs are stored.</p>
|
||
</td>
|
||
</tr>
|
||
<tr class="row-odd"><td colspan="2"><strong>Table 1</strong>: <em>Variables in builder.conf</em></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<div class="section" id="format-version">
|
||
<h4>Format version</h4>
|
||
<p>Compatible versions of an OS are tracked with an OS <em>compatibility epoch</em>.
|
||
Versions of an OS within an epoch are fully compatible and can update to any
|
||
other version within that epoch. The compatibility epoch is set as the
|
||
<cite>Format</cite> variable in the <code class="file docutils literal notranslate"><span class="pre">mixer.state</span></code> file. Variables in the
|
||
<code class="file docutils literal notranslate"><span class="pre">mixer.state</span></code> are used by mixer between executions and should not be
|
||
manually changed.</p>
|
||
<p>A format bump is like modifying the foundation of a house to create a new
|
||
level. If <cite>Format</cite> increments to a new epoch (a “format bump”), the OS has
|
||
changed in such a way that updating from build A in format X to build B in
|
||
format Y will not work.</p>
|
||
<p>A format bump is required when:</p>
|
||
<ul class="simple">
|
||
<li>The software updater, <strong class="command">swupd</strong>, or the software is no longer
|
||
compatible with the previous update scheme</li>
|
||
<li>A package is removed from the update stream and the update must ensure the
|
||
files associated with that package are removed from the system</li>
|
||
</ul>
|
||
<p>Using a format increment, we make sure pre- and co-requisite changes flow out
|
||
with proper ordering. The updated client will only update to the latest
|
||
release in its respective format version, unless overridden by command line
|
||
flags. In this way, we can guarantee that all clients update to the final
|
||
version in their given format.</p>
|
||
<p>The given format <em>must</em> contain all the changes needed to understand the content built in the next format. Only after reaching the final release in the old format can a client continue to update to releases in the new format.</p>
|
||
<p>The format version is incremented only when a compatibility breakage is
|
||
introduced. Normal updates, such as updating a software package, do not require a format increment.</p>
|
||
</div>
|
||
</div>
|
||
<div class="content-collapse section" id="bundles">
|
||
<h3><a class="toc-backref" href="#id15">Bundles</a></h3>
|
||
<p>mixer stores information about the bundles included in a mix in a flat file
|
||
called <code class="file docutils literal notranslate"><span class="pre">mixbundles</span></code>, which is located in the path set by the VERSIONS_PATH variable in <code class="file docutils literal notranslate"><span class="pre">builder.conf</span></code>. <code class="file docutils literal notranslate"><span class="pre">mixbundles</span></code> is automatically created when the mix is initiated. mixer will refresh the file each time you change the bundles in the mix.</p>
|
||
<p>Bundles can include other bundles. Nested bundles can themselves include
|
||
other bundles. If you see an unexpected bundle in your mix, it is likely a
|
||
nested bundle in one of the bundles you explicitly added.</p>
|
||
<p>A bundle will fill into one of two categories: upstream or local. Upstream
|
||
bundles are those provided by Clear Linux OS. Local bundles are either modified upstream bundles or new local bundles.</p>
|
||
<div class="section" id="upstream-bundles">
|
||
<h4>Upstream bundles</h4>
|
||
<p>mixer automatically downloads and caches upstream bundle definition files.
|
||
These definition files are stored in the upstream-bundles directory in the
|
||
workspace. Do not modify the files in this directory. This directory is
|
||
simply a mirror for mixer to use. mixer will automatically delete the
|
||
contents of this directory before repopulating it on-the-fly if a new
|
||
version must be downloaded.</p>
|
||
<p>The mixer tool automatically caches the bundles for the Clear Linux OS version
|
||
configured in the <code class="file docutils literal notranslate"><span class="pre">upstreamversion</span></code> file. mixer also cleans up old
|
||
versions once they are no longer needed.</p>
|
||
</div>
|
||
<div class="section" id="local-bundles">
|
||
<h4>Local bundles</h4>
|
||
<p>Local bundles are bundles that you create, or are edited versions of upstream
|
||
bundles. Local bundle definition files are stored in the local-bundles
|
||
directory in the workspace. The LOCAL_BUNDLE_DIR variable sets the path of this directory in the <code class="file docutils literal notranslate"><span class="pre">builder.conf</span></code> file.</p>
|
||
<p><em>mixer always checks for local bundles first and the upstream bundles
|
||
second.</em> So bundles in the local-bundles directory will always take
|
||
precedence over any upstream bundles that have the same name. This
|
||
precedence enables you to copy upstream bundles locally, and edit into a
|
||
local variation.</p>
|
||
</div>
|
||
<div class="section" id="bundle-configuration">
|
||
<h4>Bundle configuration</h4>
|
||
<p>mixer provides commands to configure the bundles for a mix, such as to add a
|
||
bundle to a mix, to create a new bundle for a mix, or to remove a bundle from a
|
||
mix. View the <a class="reference external" href="https://github.com/clearlinux/mixer-tools/blob/master/docs/mixer.bundle.1.rst">mixer.bundle man page</a> for a full list of commands and more
|
||
information on configuring bundles in a mix.</p>
|
||
<p>Editing an existing local bundle is as simple as opening the bundle definition
|
||
file in your favorite editor, making the desired edits, and saving your changes.</p>
|
||
<div class="admonition note">
|
||
<p class="first admonition-title">Note</p>
|
||
<p>Removing bundles from a mix: By default, removing a bundle will only
|
||
remove the bundle from the mix. The local bundle definition file will
|
||
still remain. To completely remove a bundle, including its local bundle definition file, use the <strong class="command">--local</strong> flag.</p>
|
||
<p class="last">If you remove the bundle definition file for a local, edited version of an
|
||
upstream bundle in a mix, the mix reverts to reference the original upstream version of the bundle.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="content-collapse section" id="configure-and-enable-docker">
|
||
<h3><a class="toc-backref" href="#id16">Configure and enable Docker</a></h3>
|
||
<p>Use these steps to enable Docker for the mixer tool. Make sure to
|
||
<a class="reference internal" href="#configure-docker-proxy-info">Configure Docker proxy info</a> first if needed.</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Start the Docker daemon:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo systemctl start docker
|
||
sudo chmod <span class="m">777</span> /var/run/docker.sock
|
||
sudo docker info
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Add user to the docker group</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo usermod -G docker -a <username>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
</ol>
|
||
<div class="section" id="pull-docker-container-manually-optional">
|
||
<h4>Pull Docker container manually (optional)</h4>
|
||
<p>By default, mixer automatically pulls a Docker container for mixing if one
|
||
does not already exist. If you need to troubleshoot the mixer container, it
|
||
may be useful to manually pull a mixer Docker container.</p>
|
||
<p>Versions of the mixer Docker container are available under the tags for the
|
||
<a class="reference external" href="https://hub.docker.com/r/clearlinux/mixer/tags/">clearlinux/mixer repo</a>
|
||
on Docker Hub. Each version of the mixer Docker container is named after the
|
||
associated Clear Linux OS upstream format version. Refer to <a class="reference internal" href="#format-version">Format version</a> for
|
||
additional information on upstream format versions.</p>
|
||
<p>Use the following steps to manually pull a mixer Docker container:</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Find the version of the container you need by viewing the tags for the
|
||
<a class="reference external" href="https://hub.docker.com/r/clearlinux/mixer/tags/">clearlinux/mixer repo</a>
|
||
on Docker Hub.</p>
|
||
</li>
|
||
<li><p class="first">Pull the latest container version:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker pull clearlinux/mixer:<upstream-format-version>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">View local docker images:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>docker images
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
</div>
|
||
<div class="content-collapse section" id="configure-docker-proxy-info">
|
||
<h3><a class="toc-backref" href="#id17">Configure Docker proxy info</a></h3>
|
||
<p>If needed, use these steps to configure the Docker proxy information.</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Create the Docker daemon proxy config directory:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo mkdir -p /etc/systemd/system/docker.service.d
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Create <code class="file docutils literal notranslate"><span class="pre">/etc/systemd/system/docker.service.d/http-proxy.conf</span></code> and
|
||
add the following using your own proxy values:</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">[Service]</span>
|
||
<span class="go">Environment="HTTP_PROXY=<HTTP proxy URL>:<port number>"</span>
|
||
<span class="go">Environment="HTTPS_PROXY=<HTTPS proxy URL>:<port number>"</span>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Reload the Docker daemon:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo systemctl daemon-reload
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
</ol>
|
||
<p>Configure the Docker container proxies, to pass proxy settings to
|
||
containers:</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Create a directory for your container config:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mkdir ~/.docker
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Create the config file <code class="file docutils literal notranslate"><span class="pre">~/.docker/config.json</span></code> and add the following
|
||
entries, using your own proxy values:</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">{</span>
|
||
<span class="go"> "proxies":</span>
|
||
<span class="go"> {</span>
|
||
<span class="go"> "default":</span>
|
||
<span class="go"> {</span>
|
||
<span class="go"> "httpProxy": "<proxy-url>:<port>",</span>
|
||
<span class="go"> "httpsProxy": "<proxy-url>:<port>"</span>
|
||
<span class="go"> }</span>
|
||
<span class="go"> }</span>
|
||
<span class="go">}</span>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Set ownership and permission on the docker config directory:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo chown <span class="s2">"</span><span class="nv">$USER</span><span class="s2">"</span>:<span class="s2">"</span><span class="nv">$USER</span><span class="s2">"</span> /home/<span class="s2">"</span><span class="nv">$USER</span><span class="s2">"</span>/.docker -R
|
||
sudo chmod g+rwx <span class="s2">"</span><span class="nv">$HOME</span><span class="s2">/.docker"</span> -R
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
</ol>
|
||
<p>Configure proxies to allow mixer to access upstream content from behind
|
||
a firewall.</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Open your <code class="file docutils literal notranslate"><span class="pre">$HOME/.bashrc</span></code> file and add proxy and port values for the
|
||
following:</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">export http_proxy="<proxy-url>:<port>"</span>
|
||
<span class="go">export https_proxy="<proxy-url>:<port>"</span>
|
||
<span class="go">export HTTP_PROXY="<proxy-url>:<port>"</span>
|
||
<span class="go">export HTTPS_PROXY="<proxy-url>:<port>"</span>
|
||
<span class="go">export no_proxy="<...>"</span>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Log out and log back in for the proxies to take effect.</p>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
<div class="content-collapse section" id="set-up-a-nginx-web-server-for-mixer">
|
||
<h3><a class="toc-backref" href="#id18">Set up a nginx web server for mixer</a></h3>
|
||
<p>A web server is needed to host your update content. In this example, we use
|
||
the nginx web server, which comes with Clear Linux OS.</p>
|
||
<p>Set up a nginx web server for mixer with the following steps:</p>
|
||
<ol class="arabic">
|
||
<li><p class="first">Install the <strong class="command">nginx</strong> bundle:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo swupd bundle-add nginx
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Make the directory where mixer updates will reside:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo mkdir -p /var/www
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Create a symbolic link between your workspace updates and the updates on
|
||
the local nginx web server. In this example, <cite>$HOME/mixer</cite> is the
|
||
workspace for the mix.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo ln -sf <span class="nv">$HOME</span>/mixer/update/www /var/www/mixer
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Set up <code class="docutils literal notranslate"><span class="pre">nginx</span></code> configuration:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo mkdir -p /etc/nginx/conf.d
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Copy the default example configuration file:</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo cp -f /usr/share/nginx/conf/nginx.conf.example /etc/nginx/nginx.conf
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Configure the mixer update server. Create and add the following server
|
||
configuration content to <code class="file docutils literal notranslate"><span class="pre">/etc/nginx/conf.d/mixer.conf</span></code> (sudo required):</p>
|
||
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">server {</span>
|
||
<span class="go"> server_name localhost;</span>
|
||
<span class="go"> location / {</span>
|
||
<span class="go"> root /var/www/mixer;</span>
|
||
<span class="go"> autoindex on;</span>
|
||
<span class="go"> }</span>
|
||
<span class="go">}</span>
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Restart the daemon, enable nginx on boot, and start the service.</p>
|
||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo systemctl daemon-reload
|
||
|
||
sudo systemctl <span class="nb">enable</span> nginx
|
||
|
||
sudo systemctl start nginx
|
||
</pre></div>
|
||
</div>
|
||
</li>
|
||
<li><p class="first">Verify the web server is running at http://localhost. At this point
|
||
you should no longer see a “404 Not Found” message.</p>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
</div>
|
||
<div class="section" id="related-topics">
|
||
<h2><a class="toc-backref" href="#id9">Related topics</a></h2>
|
||
<ul class="simple">
|
||
<li><a class="reference internal" href="../../concepts/mixer-about.html#mixer-about"><span class="std std-ref">About mixer</span></a></li>
|
||
<li><a class="reference internal" href="../../concepts/autospec-about.html#autospec-about"><span class="std std-ref">Autospec</span></a></li>
|
||
<li><a class="reference internal" href="../../concepts/bundles-about.html#bundles-about"><span class="std std-ref">Bundles</span></a></li>
|
||
<li><a class="reference internal" href="../../concepts/swupd-about.html#swupd-about"><span class="std std-ref">swupd: software updater</span></a></li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
</div>
|
||
<footer>
|
||
|
||
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
|
||
|
||
<a href="security.html" class="btn btn-neutral float-right" title="OS Security" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
|
||
|
||
|
||
<a href="ister.html" class="btn btn-neutral float-left" title="ister.py image builder" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
|
||
|
||
</div>
|
||
|
||
|
||
<hr/>
|
||
|
||
<div role="contentinfo">
|
||
<p>
|
||
© Copyright 2019, many
|
||
<span class="lastupdated">
|
||
Last updated on Jul 29, 2019.
|
||
</span>
|
||
|
||
</p>
|
||
</div>
|
||
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
|
||
|
||
</footer>
|
||
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
</section>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<script type="text/javascript">
|
||
jQuery(function () {
|
||
SphinxRtdTheme.Navigation.enable(true);
|
||
});
|
||
</script>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<script type="text/javascript" src="../../_static/tcs_theme.js"></script>
|
||
|
||
|
||
|
||
</body>
|
||
</html> |