From d63bdb4c741f92cbe4728c179769c1181b02c033 Mon Sep 17 00:00:00 2001 From: awokd <34515595+awokd@users.noreply.github.com> Date: Sat, 6 Apr 2019 15:08:35 +0000 Subject: [PATCH 1/7] Rename qubes-r3-building.md to qubes-iso-building.md --- building/{qubes-r3-building.md => qubes-iso-building.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename building/{qubes-r3-building.md => qubes-iso-building.md} (100%) diff --git a/building/qubes-r3-building.md b/building/qubes-iso-building.md similarity index 100% rename from building/qubes-r3-building.md rename to building/qubes-iso-building.md From 72b145e3007e05d5fa7d39e68111702abe888bc8 Mon Sep 17 00:00:00 2001 From: awokd <34515595+awokd@users.noreply.github.com> Date: Sat, 6 Apr 2019 17:15:56 +0000 Subject: [PATCH 2/7] update versions and ./setup steps --- building/qubes-iso-building.md | 39 +++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/building/qubes-iso-building.md b/building/qubes-iso-building.md index 95ec587d..20013cf5 100644 --- a/building/qubes-iso-building.md +++ b/building/qubes-iso-building.md @@ -1,9 +1,10 @@ --- layout: doc title: Qubes ISO Building -permalink: /doc/qubes-r3-building/ +permalink: /doc/qubes-iso-building/ redirect_from: - /en/doc/qubes-r3-building/ +- /en/doc/qubes-iso-building/ - /doc/QubesR3Building/ - /wiki/QubesR3Building/ --- @@ -14,27 +15,26 @@ Building Qubes OS ISO Build Environment ----------------- -Fedora 26 has been successfully used to build Qubes R3.2 and R4.0 with the below steps. +Fedora 29 has been successfully used to build Qubes R4.0 with the below steps. Other rpm-based operating systems may also work. -Travis-CI also uses Ubuntu 14.04 to perform test builds, except it can not test the `./setup` script. +Travis-CI uses Ubuntu 14.04 to perform test builds, except it can not test the `./setup` script. -In `dom0`, install the Fedora 26 template if you don't already have it. +In `dom0`, install the Fedora 29 template if you don't already have it. ~~~ -sudo qubes-dom0-update qubes-template-fedora-26 +sudo qubes-dom0-update qubes-template-fedora-29 ~~~ -Create a standalone appVM from the Fedora 26 template. -You may choose your own name, but this document will refer to it as `dev26`. +Create a standalone AppVM from the Fedora 29 template. Set private storage to at least 60 GB if you will be building only the default templates; 100 GB or more if you plan on additional. It's not required, but if you allocate additional CPU cores, the build process can utilize them at some steps such as the kernel build. Likewise, more memory (up to 16 GB) can help. -Last, you may want to disable memory balancing on `dev26` but keep in mind the impact on your other qubes. +Last, you may want to disable memory balancing, but keep in mind the impact on your other qubes. -Once you've built `dev26`, open a Terminal window to it and install the necessary dependencies (see [QubesBuilder](/doc/qubes-builder/) for more info): +Once you've built the development AppVM, open a Terminal window to it and install the necessary dependencies (see [QubesBuilder](/doc/qubes-builder/) for more info): ~~~ -$ sudo dnf install gnupg git createrepo rpm-build make wget rpmdevtools python2-sh dialog rpm-sign dpkg-dev debootstrap PyYAML devscripts perl-Digest-MD5 perl-Digest-SHA +$ sudo dnf install perl-Digest-SHA rpmdevtools rpm-build dialog rpm-sign python2-sh dpkg-dev debootstrap devscripts ~~~ Get the necessary keys to verify the sources (run these and other commands below as a regular user, not root): @@ -71,20 +71,29 @@ The builder will do that for us for each component, every time we build, even fo Build using setup script ----------------- -Let's configure the builder first (see [procedure](/doc/qubes-r3-building/#build-using-manual-steps) at bottom if you would prefer to manually configure): +Let's configure the builder first (see [procedure](/doc/qubes-iso-building/#build-using-manual-steps) at bottom if you would prefer to manually configure): ~~~ cd ~/qubes-builder ./setup # Select Yes to add Qubes Master Signing Key # Select Yes to add Qubes OS Signing Key -# Select 3.2 or 4.0 for version +# Select 4.0 for version # Stable +# Select Current (if you want to use pre-built packages instead of compiling for hours) # No (we want a full build) -# Select builder-fedora, builder-debian, template-whonix, mgmt-salt -# Choose Yes to add adrelanos's third party key +# Select fc29 and stretch (for the currently shipping templates) +# Select builder-rpm, builder-debian, template-whonix, mgmt-salt # Yes (to download) -# Select fc26, stretch, whonix-gateway, whonix-workstation (for the currently shipping templates) +~~~ + +Once it completes downloading, re-run `setup` to add the Whonix templates: + +~~~ +./setup +# Choose the same options as above, except at templates select: +# fc29, stretch, whonix-gateway-14, whonix-workstation-14 +# If prompted, choose Yes to add adrelanos's third party key ~~~ Continue the build process with: From 7dda72c5997a4c1f17408b96ac46b8844fd0f3c0 Mon Sep 17 00:00:00 2001 From: awokd <34515595+awokd@users.noreply.github.com> Date: Sat, 6 Apr 2019 17:18:53 +0000 Subject: [PATCH 3/7] update qubes-iso-build link --- building/qubes-builder.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/building/qubes-builder.md b/building/qubes-builder.md index 0aefb037..367105f5 100644 --- a/building/qubes-builder.md +++ b/building/qubes-builder.md @@ -8,7 +8,7 @@ redirect_from: - /wiki/QubesBuilder/ --- -**Note: The build system has been improved since this how-to was last updated. The [ISO building instructions](/doc/qubes-r3-building/) contain more up-to-date information on how to use the build system.** +**Note: See [ISO building instructions](/doc/qubes-iso-building/) for a streamlined overview on how to use the build system.** Building Qubes from scratch =========================== From 5b5d320cdf58224212b4c37654afe834b2984de7 Mon Sep 17 00:00:00 2001 From: awokd <34515595+awokd@users.noreply.github.com> Date: Sat, 6 Apr 2019 17:20:56 +0000 Subject: [PATCH 4/7] update qubes-iso-build link --- doc.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc.md b/doc.md index e6312a44..4d224077 100644 --- a/doc.md +++ b/doc.md @@ -271,7 +271,7 @@ redirect_from: * [Building Qubes](/doc/qubes-builder/) (["API" Details](/doc/qubes-builder-details/)) * [Development Workflow](/doc/development-workflow/) - * [Building Qubes OS ISO](/doc/qubes-r3-building/) + * [Building Qubes OS ISO](/doc/qubes-iso-building/) * [Building Qubes Templates](https://github.com/QubesOS/qubes-template-configs) * [Building a TemplateVM based on a new OS (ArchLinux example)](/doc/building-non-fedora-template/) * [Building the Archlinux Template](/doc/building-archlinux-template/) From 165f268514f3188b15018933b77687249d83fddc Mon Sep 17 00:00:00 2001 From: awokd <34515595+awokd@users.noreply.github.com> Date: Sat, 6 Apr 2019 18:35:18 +0000 Subject: [PATCH 5/7] update ./setup steps and qubes-iso-building link --- building/building-whonix-template.md | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/building/building-whonix-template.md b/building/building-whonix-template.md index 6588b973..f01b02d8 100644 --- a/building/building-whonix-template.md +++ b/building/building-whonix-template.md @@ -24,15 +24,23 @@ cd ~/qubes-builder ./setup # Select Yes to add Qubes Master Signing Key # Select Yes to add Qubes OS Signing Key -# Select 3.2 or 4.0 for version +# Select 4.0 for version # Stable +# Select Current (if you want to use pre-built packages instead of compiling for hours) # Yes (we want to build only templates) -# Select builder-fedora, builder-debian, template-whonix, mgmt-salt (setup won't let you continue if you don't include builder-fedora, but we don't actually use it) -# Choose Yes to add adrelanos's third party key -# Yes (to download sources) -# Select whonix-gateway, whonix-workstation (for the currently shipping templates) +# Select fc29 and stretch (for the currently shipping templates) +# Select builder-rpm, builder-debian, template-whonix, mgmt-salt +# Yes (to download) ~~~ +Once it completes downloading, re-run `setup` to add the Whonix templates: + +~~~ +./setup +# Choose the same options as above, except at templates select: +# whonix-gateway-14, whonix-workstation-14 +# If prompted, choose Yes to add adrelanos's third party key +~~~ Continue the build process with: ~~~ @@ -71,7 +79,7 @@ make qubes-vm make template ~~~ -Once the build is complete, the install packages for your newly built templates will be located in `/qubes-builder/qubes-src/linux-template-builder/rpm/noarch`. +Once the build is complete, the install packages for your newly built templates will be located in `~/qubes-builder/qubes-src/linux-template-builder/rpm/noarch`. Copy them from there to dom0 and install: ~~~ From 5aa255cb96bbc9f0787e3ae02cf87eb82656703f Mon Sep 17 00:00:00 2001 From: awokd <34515595+awokd@users.noreply.github.com> Date: Sat, 6 Apr 2019 18:54:33 +0000 Subject: [PATCH 6/7] correct qubes-iso-building link --- building/building-whonix-template.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/building/building-whonix-template.md b/building/building-whonix-template.md index f01b02d8..74cfeff2 100644 --- a/building/building-whonix-template.md +++ b/building/building-whonix-template.md @@ -15,7 +15,7 @@ Many other Qubes templates can also be built by following this procedure. Simply choose the appropriate builder(s) and template(s) you wish to build in the `./setup` procedure below. Always include the `mgmt-salt` builder. -First, set up the [Build Environment](/doc/qubes-r3-building/#build-environment) (follow the build environment section only). +First, set up the [Build Environment](/doc/qubes-iso-building/#build-environment) (follow the build environment section only). Next, configure the builder: From 6df8083bf97fd9b1fb1474249f744f7645559bcf Mon Sep 17 00:00:00 2001 From: awokd <34515595+awokd@users.noreply.github.com> Date: Sat, 6 Apr 2019 21:12:48 +0000 Subject: [PATCH 7/7] add redirect_from /doc/qubes-r3-building/ --- building/qubes-iso-building.md | 1 + 1 file changed, 1 insertion(+) diff --git a/building/qubes-iso-building.md b/building/qubes-iso-building.md index 20013cf5..f5fa773b 100644 --- a/building/qubes-iso-building.md +++ b/building/qubes-iso-building.md @@ -3,6 +3,7 @@ layout: doc title: Qubes ISO Building permalink: /doc/qubes-iso-building/ redirect_from: +- /doc/qubes-r3-building/ - /en/doc/qubes-r3-building/ - /en/doc/qubes-iso-building/ - /doc/QubesR3Building/