diff --git a/building/development-workflow.md b/developer/building/development-workflow.md
similarity index 100%
rename from building/development-workflow.md
rename to developer/building/development-workflow.md
diff --git a/building/qubes-builder-details.md b/developer/building/qubes-builder-details.md
similarity index 100%
rename from building/qubes-builder-details.md
rename to developer/building/qubes-builder-details.md
diff --git a/building/qubes-builder.md b/developer/building/qubes-builder.md
similarity index 100%
rename from building/qubes-builder.md
rename to developer/building/qubes-builder.md
diff --git a/building/qubes-iso-building.md b/developer/building/qubes-iso-building.md
similarity index 100%
rename from building/qubes-iso-building.md
rename to developer/building/qubes-iso-building.md
diff --git a/basics_dev/code-signing.md b/developer/code/code-signing.md
similarity index 100%
rename from basics_dev/code-signing.md
rename to developer/code/code-signing.md
diff --git a/basics_dev/coding-style.md b/developer/code/coding-style.md
similarity index 100%
rename from basics_dev/coding-style.md
rename to developer/code/coding-style.md
diff --git a/basics_dev/license.md b/developer/code/license.md
similarity index 100%
rename from basics_dev/license.md
rename to developer/code/license.md
diff --git a/basics_dev/source-code.md b/developer/code/source-code.md
similarity index 100%
rename from basics_dev/source-code.md
rename to developer/code/source-code.md
diff --git a/debugging/automated-tests.md b/developer/debugging/automated-tests.md
similarity index 82%
rename from debugging/automated-tests.md
rename to developer/debugging/automated-tests.md
index a50ed96f..96204005 100644
--- a/debugging/automated-tests.md
+++ b/developer/debugging/automated-tests.md
@@ -152,6 +152,59 @@ Again, given the hypothetical `example.py` test:
):
~~~
+### Testing PyQt applications
+
+When testing (Py)QT application, it's useful to create separate QApplication object for each test.
+But QT framework does not allow to have multiple QApplication objects in the same process at the same time.
+This means it's critical to reliably cleanup previous instance before creating the new one.
+This turns out to be non-trivial task, especially if _any_ test uses event loop.
+Failure to perform proper cleanup in many cases results in SEGV.
+Below you can find steps for the proper cleanup:
+
+~~~python
+import asyncio
+import quamash
+import unittest
+import gc
+
+class SomeTestCase(unittest.TestCase):
+ def setUp(self):
+ [...]
+
+ # force "cleanlooks" style, the default one on Xfce (GtkStyle) use
+ # static variable internally and caches pointers to later destroyed
+ # objects (result: SEGV)
+ self.qtapp = QtGui.QApplication(["test", "-style", "cleanlooks"])
+
+ # construct event loop even if this particular test doesn't use it,
+ # otherwise events with qtapp references will be queued there anyway and the
+ # first test that actually use event loop will try to dereference (already
+ # destroyed) objects, resulting in SEGV
+ self.loop = quamash.QEventLoop(self.qtapp)
+
+ def tearDown(self):
+ [...]
+ # process any pending events before destroying the object
+ self.qtapp.processEvents()
+
+ # queue destroying the QApplication object, do that for any other QT
+ # related objects here too
+ self.qtapp.deleteLater()
+
+ # process any pending events (other than just queued destroy), just in case
+ self.qtapp.processEvents()
+
+ # execute main loop, which will process all events, _including just queued destroy_
+ self.loop.run_until_complete(asyncio.sleep(0))
+
+ # at this point it QT objects are destroyed, cleanup all remaining references;
+ # del other QT object here too
+ self.loop.close()
+ del self.qtapp
+ del self.loop
+ gc.collect()
+~~~
+
Installation Tests with openQA
------------------------------
diff --git a/debugging/mount-lvm-image.md b/developer/debugging/mount-lvm-image.md
similarity index 100%
rename from debugging/mount-lvm-image.md
rename to developer/debugging/mount-lvm-image.md
diff --git a/debugging/profiling.md b/developer/debugging/profiling.md
similarity index 100%
rename from debugging/profiling.md
rename to developer/debugging/profiling.md
diff --git a/debugging/safe-remote-ttys.md b/developer/debugging/safe-remote-ttys.md
similarity index 100%
rename from debugging/safe-remote-ttys.md
rename to developer/debugging/safe-remote-ttys.md
diff --git a/debugging/test-bench.md b/developer/debugging/test-bench.md
similarity index 100%
rename from debugging/test-bench.md
rename to developer/debugging/test-bench.md
diff --git a/debugging/vm-interface.md b/developer/debugging/vm-interface.md
similarity index 100%
rename from debugging/vm-interface.md
rename to developer/debugging/vm-interface.md
diff --git a/debugging/windows-debugging.md b/developer/debugging/windows-debugging.md
similarity index 100%
rename from debugging/windows-debugging.md
rename to developer/debugging/windows-debugging.md
diff --git a/basics_dev/devel-books.md b/developer/general/devel-books.md
similarity index 100%
rename from basics_dev/devel-books.md
rename to developer/general/devel-books.md
diff --git a/basics_user/doc-guidelines.md b/developer/general/doc-guidelines.md
similarity index 100%
rename from basics_user/doc-guidelines.md
rename to developer/general/doc-guidelines.md
diff --git a/basics_dev/gsoc.md b/developer/general/gsoc.md
similarity index 100%
rename from basics_dev/gsoc.md
rename to developer/general/gsoc.md
diff --git a/basics_dev/gsod.md b/developer/general/gsod.md
similarity index 100%
rename from basics_dev/gsod.md
rename to developer/general/gsod.md
diff --git a/about/join.md b/developer/general/join.md
similarity index 100%
rename from about/join.md
rename to developer/general/join.md
diff --git a/basics_dev/package-contributions.md b/developer/general/package-contributions.md
similarity index 100%
rename from basics_dev/package-contributions.md
rename to developer/general/package-contributions.md
diff --git a/basics_dev/style-guide.md b/developer/general/style-guide.md
similarity index 89%
rename from basics_dev/style-guide.md
rename to developer/general/style-guide.md
index ada9121c..795a0c5e 100644
--- a/basics_dev/style-guide.md
+++ b/developer/general/style-guide.md
@@ -68,7 +68,10 @@ Currently, all the icons on the Qubes-OS.org website are generated using [FontAw
## Logos
-The following is a collection of various sizes and versions of the Qubes logo used both in the OS itself and on our website. All of these files are licensed GPLv2 and the source can be [downloaded here](https://github.com/QubesOS/qubes-artwork).
+The following is a collection of various sizes and versions of the Qubes logo used both in the OS itself and on our website.
+The artwork is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0).
+The code is licensed under GNU GPLv2.
+GPLv2 and the source code can be [downloaded here](https://github.com/QubesOS/qubes-artwork).
{% for logo in site.data.styleguide.logos %}
diff --git a/basics_dev/usability-ux.md b/developer/general/usability-ux.md
similarity index 100%
rename from basics_dev/usability-ux.md
rename to developer/general/usability-ux.md
diff --git a/releases/1.0/release-notes.md b/developer/releases/1.0/release-notes.md
similarity index 100%
rename from releases/1.0/release-notes.md
rename to developer/releases/1.0/release-notes.md
diff --git a/releases/2.0/release-notes.md b/developer/releases/2.0/release-notes.md
similarity index 100%
rename from releases/2.0/release-notes.md
rename to developer/releases/2.0/release-notes.md
diff --git a/releases/3.0/release-notes.md b/developer/releases/3.0/release-notes.md
similarity index 100%
rename from releases/3.0/release-notes.md
rename to developer/releases/3.0/release-notes.md
diff --git a/releases/3.0/schedule.md b/developer/releases/3.0/schedule.md
similarity index 100%
rename from releases/3.0/schedule.md
rename to developer/releases/3.0/schedule.md
diff --git a/releases/3.1/release-notes.md b/developer/releases/3.1/release-notes.md
similarity index 100%
rename from releases/3.1/release-notes.md
rename to developer/releases/3.1/release-notes.md
diff --git a/releases/3.1/schedule.md b/developer/releases/3.1/schedule.md
similarity index 100%
rename from releases/3.1/schedule.md
rename to developer/releases/3.1/schedule.md
diff --git a/releases/3.2/release-notes.md b/developer/releases/3.2/release-notes.md
similarity index 100%
rename from releases/3.2/release-notes.md
rename to developer/releases/3.2/release-notes.md
diff --git a/releases/3.2/schedule.md b/developer/releases/3.2/schedule.md
similarity index 100%
rename from releases/3.2/schedule.md
rename to developer/releases/3.2/schedule.md
diff --git a/releases/4.0/release-notes.md b/developer/releases/4.0/release-notes.md
similarity index 100%
rename from releases/4.0/release-notes.md
rename to developer/releases/4.0/release-notes.md
diff --git a/releases/4.0/schedule.md b/developer/releases/4.0/schedule.md
similarity index 100%
rename from releases/4.0/schedule.md
rename to developer/releases/4.0/schedule.md
diff --git a/releases/notes.md b/developer/releases/notes.md
similarity index 100%
rename from releases/notes.md
rename to developer/releases/notes.md
diff --git a/releases/schedules.md b/developer/releases/schedules.md
similarity index 100%
rename from releases/schedules.md
rename to developer/releases/schedules.md
diff --git a/releases/todo.md b/developer/releases/todo.md
similarity index 100%
rename from releases/todo.md
rename to developer/releases/todo.md
diff --git a/services/admin-api.md b/developer/services/admin-api.md
similarity index 100%
rename from services/admin-api.md
rename to developer/services/admin-api.md
diff --git a/services/dom0-secure-updates.md b/developer/services/dom0-secure-updates.md
similarity index 100%
rename from services/dom0-secure-updates.md
rename to developer/services/dom0-secure-updates.md
diff --git a/services/dvm-impl.md b/developer/services/dvm-impl.md
similarity index 100%
rename from services/dvm-impl.md
rename to developer/services/dvm-impl.md
diff --git a/services/qfilecopy.md b/developer/services/qfilecopy.md
similarity index 100%
rename from services/qfilecopy.md
rename to developer/services/qfilecopy.md
diff --git a/services/qfileexchgd.md b/developer/services/qfileexchgd.md
similarity index 100%
rename from services/qfileexchgd.md
rename to developer/services/qfileexchgd.md
diff --git a/services/qmemman.md b/developer/services/qmemman.md
similarity index 100%
rename from services/qmemman.md
rename to developer/services/qmemman.md
diff --git a/services/qrexec2.md b/developer/services/qrexec2.md
similarity index 100%
rename from services/qrexec2.md
rename to developer/services/qrexec2.md
diff --git a/services/qrexec3.md b/developer/services/qrexec3.md
similarity index 100%
rename from services/qrexec3.md
rename to developer/services/qrexec3.md
diff --git a/system/architecture.md b/developer/system/architecture.md
similarity index 100%
rename from system/architecture.md
rename to developer/system/architecture.md
diff --git a/system/audio.md b/developer/system/audio.md
similarity index 100%
rename from system/audio.md
rename to developer/system/audio.md
diff --git a/system/gui.md b/developer/system/gui.md
similarity index 100%
rename from system/gui.md
rename to developer/system/gui.md
diff --git a/system/networking.md b/developer/system/networking.md
similarity index 100%
rename from system/networking.md
rename to developer/system/networking.md
diff --git a/system/security-critical-code.md b/developer/system/security-critical-code.md
similarity index 100%
rename from system/security-critical-code.md
rename to developer/system/security-critical-code.md
diff --git a/system/storage-pools.md b/developer/system/storage-pools.md
similarity index 100%
rename from system/storage-pools.md
rename to developer/system/storage-pools.md
diff --git a/basics_dev/system-doc.md b/developer/system/system-doc.md
similarity index 100%
rename from basics_dev/system-doc.md
rename to developer/system/system-doc.md
diff --git a/system/template-implementation.md b/developer/system/template-implementation.md
similarity index 100%
rename from system/template-implementation.md
rename to developer/system/template-implementation.md
diff --git a/doc.md b/doc.md
index 9a5d4f17..42d976e4 100644
--- a/doc.md
+++ b/doc.md
@@ -14,19 +14,17 @@ redirect_from:
- /community/
---
-## User Documentation
-
-### The Basics
+## Introduction
* [What is Qubes OS?](/intro/)
* [Video Tours](/video-tours/)
* [Screenshots](/screenshots/)
- * [Getting Started](/getting-started/)
* [User FAQ](/faq/#users)
+ * [Reporting Bugs and Other Issues](/doc/reporting-bugs/)
* [Help, Support, and Mailing Lists](/support/)
* [How to Contribute](/doc/contributing/)
-### Security Information
+## Project Security
* [Security Center](/security/)
* [Security FAQ](/faq/#general--security)
@@ -34,184 +32,94 @@ redirect_from:
* [Security Bulletins](/security/bulletins/)
* [Canaries](/security/canaries/)
* [Xen Security Advisory (XSA) Tracker](/security/xsa/)
- * [Why and How to Verify Signatures](/security/verifying-signatures/)
+ * [Verifying Signatures](/security/verifying-signatures/)
* [Qubes PGP Keys](https://keys.qubes-os.org/keys/)
+
+## User Documentation
+
+Core documentation for Qubes users.
+
### Choosing Your Hardware
* [System Requirements](/doc/system-requirements/)
* [Certified Hardware](/doc/certified-hardware/)
* [Hardware Compatibility List (HCL)](/hcl/)
-### Installing & Upgrading Qubes
+### Downloading, Installing, and Upgrading Qubes
- * [Qubes Downloads](/downloads/)
- * [Qubes Download Mirrors](/downloads/mirrors/)
+ * [Downloads](/downloads/)
* [Installation Guide](/doc/installation-guide/)
* [Upgrade Guides](/doc/upgrade/)
- * [Why and How to Verify Signatures](/security/verifying-signatures/)
- * [Security Considerations when Installing](/doc/install-security/)
- * [Try Qubes without installing: Qubes Live USB (alpha)](/doc/live-usb/)
* [Supported Versions](/doc/supported-versions/)
* [Version Scheme](/doc/version-scheme/)
- * [Custom Installation](/doc/custom-install/)
- * [Testing new releases and updates](/doc/testing/)
+ * [Testing New Releases and Updates](/doc/testing/)
### Common Tasks
+ * [Getting Started](/getting-started/)
* [Copying and Pasting Text Between Domains](/doc/copy-paste/)
* [Copying and Moving Files Between Domains](/doc/copying-files/)
* [Copying from (and to) dom0](/doc/copy-from-dom0/)
* [Installing and Updating Software in dom0](/doc/software-update-dom0/)
* [Installing and Updating Software in VMs](/doc/software-update-vm/)
* [Backup, Restoration, and Migration](/doc/backup-restore/)
- * [Using DisposableVMs](/doc/disposablevm/)
+ * [DisposableVMs](/doc/disposablevm/)
* [Block (or Storage) Devices](/doc/block-devices/)
* [USB Devices](/doc/usb-devices)
* [PCI Devices](/doc/pci-devices/)
* [Device Handling](/doc/device-handling/)
* [Optical Discs](/doc/optical-discs/)
- * [Managing Application Shortcuts](/doc/managing-appvm-shortcuts/)
- * [Enabling Fullscreen Mode](/doc/full-screen-mode/)
- * [Tips and Tricks](/doc/tips-and-tricks/)
+ * [Application Shortcuts](/doc/managing-appvm-shortcuts/)
+ * [Fullscreen Mode](/doc/full-screen-mode/)
### Managing Operating Systems within Qubes
* [TemplateVMs](/doc/templates/)
- * [Templates: Fedora](/doc/templates/fedora/)
- * [Templates: Fedora Minimal](/doc/templates/fedora-minimal/)
- * [Templates: Debian](/doc/templates/debian/)
- * [Templates: Debian Minimal](/doc/templates/debian-minimal/)
- * [Templates: Archlinux](/doc/templates/archlinux/)
- * [Templates: Ubuntu](/doc/templates/ubuntu/)
- * [Templates: Whonix](/doc/whonix/)
- * [Pentesting](/doc/pentesting/)
- * [Pentesting: BlackArch](/doc/pentesting/blackarch/)
- * [Pentesting: Kali](/doc/pentesting/kali/)
- * [Pentesting: PTF](/doc/pentesting/ptf/)
+ * [Template: Fedora](/doc/templates/fedora/)
+ * [Template: Fedora Minimal](/doc/templates/fedora-minimal/)
+ * [Template: Debian](/doc/templates/debian/)
+ * [Template: Debian Minimal](/doc/templates/debian-minimal/)
* [Windows](/doc/windows/)
- * [Creating and Using HVM Domains](/doc/hvm/)
- * [Tips for Using Linux in an HVM](/doc/linux-hvm-tips/)
- * [Creating a NetBSD VM](/doc/netbsd/)
- * [How to Reinstall a TemplateVM](/doc/reinstall-template/)
+ * [HVM Domains](/doc/hvm/)
+### Security in Qubes
-### Security Guides
-
- * [Qubes OS Project Security Information](/security/)
- * [Security Guidelines](/doc/security-guidelines/)
- * [Understanding Qubes Firewall](/doc/firewall/)
+ * [Qubes Firewall](/doc/firewall/)
* [Understanding and Preventing Data Leaks](/doc/data-leaks/)
- * [Installing Anti Evil Maid](/doc/anti-evil-maid/)
- * [Using Multi-factor Authentication with Qubes](/doc/multifactor-authentication/)
- * [Using GPG more securely in Qubes: Split GPG](/doc/split-gpg/)
- * [The Qubes U2F Proxy](/doc/u2f-proxy/)
- * [How to Set Up a Split Bitcoin Wallet in Qubes](/doc/split-bitcoin/)
- * [[Unofficial] Split dm-crypt](https://github.com/rustybird/qubes-split-dm-crypt)
- * [Configuring YubiKey for user authentication](/doc/yubi-key/)
- * [Security Considerations When Handling Devices](/doc/device-handling-security/)
- * [Note regarding password-less root access in VM](/doc/vm-sudo/)
+ * [Anti Evil Maid](/doc/anti-evil-maid/)
+ * [Split GPG](/doc/split-gpg/)
+ * [U2F Proxy](/doc/u2f-proxy/)
-
-### Privacy Guides
-
- * [Whonix for Privacy & Anonymity](/doc/whonix/)
- * [Running Tails in Qubes](/doc/tails/)
- * [Anonymizing your MAC Address](/doc/anonymizing-your-mac-address/)
- * [Martus](/doc/martus/)
- * [Signal](/doc/signal/)
- * [Reducing the fingerprint of the text-based web browser w3m](/doc/w3m/)
-
-
-### Configuration Guides
+### Advanced Configuration
* [Configuration Files](/doc/config-files/)
- * [How to set up a ProxyVM as a VPN Gateway](/doc/vpn/)
* [Storing AppVMs on Secondary Drives](/doc/secondary-storage/)
- * [Multibooting](/doc/multiboot/)
- * [Resize Disk Image](/doc/resize-disk-image/)
* [RPC Policies](/doc/rpc-policy/)
- * [Changing your Time Zone](/doc/change-time-zone/)
- * [GUI Configuration and Troubleshooting](/doc/gui-configuration/)
- * [Installing ZFS in Qubes](/doc/zfs/)
- * [Mutt Guide](/doc/mutt/)
- * [Postfix Guide](/doc/postfix/)
- * [Fetchmail Guide](/doc/fetchmail/)
- * [Creating Custom NetVMs and ProxyVMs](https://theinvisiblethings.blogspot.com/2011/09/playing-with-qubes-networking-for-fun.html)
- * [How to make proxy for individual tcp connection from networkless VM](https://groups.google.com/group/qubes-devel/msg/4ca950ab6d7cd11a)
- * [Adding Bridge Support to the NetVM (EXPERIMENTAL)](/doc/network-bridge-support/)
* [USB Qubes](/doc/usb-qubes/)
- * [Enabling TRIM for SSD disks](/doc/disk-trim/)
- * [Configuring a Network Printer](/doc/network-printer/)
- * [Using External Audio Devices](/doc/external-audio/)
- * [Rxvt Guide](/doc/rxvt/)
* [Managing VM kernel](/doc/managing-vm-kernel/)
* [Salt management stack](/doc/salt/)
- * [Adding SSD storage cache](https://groups.google.com/d/msgid/qubes-users/a08359c9-9eb0-4d1a-ad92-a8a9bc676ea6%40googlegroups.com)
- * [How to Make a Multimedia TemplateVM](/doc/multimedia/)
-
-
-### Customization Guides
-
* [DisposableVM Customization](/doc/disposablevm-customization/)
- * [Customizing Fedora minimal templates](/doc/fedora-minimal-template-customization/)
- * [Customizing Windows 7 templates](/doc/windows-template-customization/)
- * [Using KDE in dom0](/doc/kde/)
- * [Installing i3 in dom0](/doc/i3/)
- * [Using awesome in dom0](/doc/awesome/)
- * [Language Localization](/doc/language-localization/)
- * [Dark Theme in Dom0 and DomU](/doc/dark-theme/)
* [How to make any file in a TemplateBasedVM persistent using bind-dirs](/doc/bind-dirs/)
- * [Safely Removing TemplateVM Packages (Example: Thunderbird)](/doc/removing-templatevm-packages/)
-
-
-### Troubleshooting
-
- * [Home directory is out of disk space error](/doc/out-of-memory/)
- * [Newer hardware doesn't work](/doc/newer-hardware-troubleshooting/)
- * [Installing on system with new AMD GPU (missing firmware problem)](https://groups.google.com/group/qubes-devel/browse_thread/thread/e27a57b0eda62f76)
- * [How to install an Nvidia driver in dom0](/doc/install-nvidia-driver/)
- * [Nvidia troubleshooting guide](/doc/nvidia-troubleshooting/)
- * [Lenovo ThinkPad Troubleshooting](/doc/thinkpad-troubleshooting/)
- * [Apple MacBook Troubleshooting](/doc/macbook-troubleshooting/)
- * [Getting Sony Vaio Z laptop to work with Qubes](/doc/sony-vaio-tinkering/)
- * [Troubleshooting UEFI related problems](/doc/uefi-troubleshooting/)
- * [Fixing wireless on suspend & resume](/doc/wireless-troubleshooting/)
- * [How to remove VMs manually](/doc/remove-vm-manually/)
- * [Intel Integrated Graphics Troubleshooting](/doc/intel-igfx-troubleshooting/)
-
### Reference Pages
- * [Command-line tools](/doc/tools/)
- * [Glossary of Qubes Terminology](/doc/glossary/)
+ * [Command-line Tools](/doc/tools/)
+ * [Glossary](/doc/glossary/)
* [Qubes Service Framework](/doc/qubes-service/)
* [Command Execution in VMs (and Qubes RPC)](/doc/qrexec/)
- * [Deprecated documentation](https://github.com/QubesOS/qubesos.github.io#deprecated-documentation)
+ * [Deprecated Documentation](https://github.com/QubesOS/qubesos.github.io#deprecated-documentation)
-### Presentation Slides
-
- * [[PDF] LinuxCon 2014 -- Qubes OS R2 Tutorial](/attachment/wiki/slides/LinuxCon_2014_Qubes_Tutorial.pdf)
- * [[PDF] LinuxCon 2014 -- Qubes OS Keynote](/attachment/wiki/slides/LinuxCon_2014_Qubes_Keynote.pdf)
- * [[PDF] RMLL 2016 -- Improving client systems security with Qubes OS](/attachment/wiki/slides/RMLL_2016_Improving-client-systems-security.pdf)
- * [[PDF] Golem and Friends 2017 -- Towards Reasonably Secure Computing in the Decentralized World](/attachment/wiki/slides/Secure_Computing_in_Decentralized_World.pdf)
-
## Developer Documentation
-### The Basics
+Core documentation for Qubes developers and advanced users.
+
+### General
* [Developer FAQ](/faq/#developers)
- * [Report a Security Issue](/security/)
- * [Report a Bug](/doc/reporting-bugs/)
- * [How to Contribute](/doc/contributing/)
* [Package Contributions](/doc/package-contributions/)
- * [Testing new releases and updates](/doc/testing/)
- * [Source Code](/doc/source-code/)
- * [Qubes OS License](/doc/license/)
- * [Coding Guidelines](/doc/coding-style/)
* [Documentation Guidelines](/doc/doc-guidelines/)
- * [Code Signing](/doc/code-signing/)
* [Community-Developed Feature Tracker](/qubes-issues/)
* [Google Summer of Code](/gsoc/)
* [Google Season of Docs](/gsod/)
@@ -219,19 +127,12 @@ redirect_from:
* [Style Guide](/doc/style-guide/)
* [Usability & UX](/doc/usability-ux/)
-### Security Information
+### Code
- * [Security Center](/security/)
- * [Security FAQ](/faq/#general--security)
- * [Security Pack](/security/pack/)
- * [Security Bulletins](/security/bulletins/)
- * [Security Bulletin Checklist](/security/bulletins/checklist/)
- * [Security Bulletin Template](/security/bulletins/template/)
- * [Canaries](/security/canaries/)
- * [Canary Template](/security/canaries/template/)
- * [Xen Security Advisory (XSA) Tracker](/security/xsa/)
- * [Why and How to Verify Signatures](/security/verifying-signatures/)
- * [Qubes PGP Keys](http://keys.qubes-os.org/keys/)
+ * [Source Code](/doc/source-code/)
+ * [Software License](/doc/license/)
+ * [Coding Guidelines](/doc/coding-style/)
+ * [Code Signing](/doc/code-signing/)
### System
@@ -254,7 +155,6 @@ redirect_from:
* [Inter-domain file copying](/doc/qfilecopy/) (deprecates [`qfileexchgd`](/doc/qfileexchgd/))
* [Dynamic memory management in Qubes](/doc/qmemman/)
* [Implementation of DisposableVMs](/doc/dvm-impl/)
- * [Article about DisposableVMs](http://theinvisiblethings.blogspot.com/2010/06/disposable-vms.html)
* [Dom0 secure update mechanism](/doc/dom0-secure-updates/)
### Debugging
@@ -272,11 +172,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-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/)
- * [Building the Whonix Templates](/doc/building-whonix-template/)
- * [How to compile kernels for dom0](https://groups.google.com/d/topic/qubes-users/yBeUJPwKwHM/discussion)
+ * [Qubes Template Configuration Files](https://github.com/QubesOS/qubes-template-configs)
### Releases
@@ -284,3 +180,95 @@ redirect_from:
* [Release schedules](/doc/releases/schedules/)
* [Release checklist](/doc/releases/todo/)
+
+## External Documentation
+
+Unofficial, third-party documentation from the Qubes community and others.
+
+### Operating System Guides
+
+ * [Template: Archlinux](/doc/templates/archlinux/)
+ * [Template: Ubuntu](/doc/templates/ubuntu/)
+ * [Template: Whonix](/doc/whonix/)
+ * [Pentesting](/doc/pentesting/)
+ * [Pentesting: BlackArch](/doc/pentesting/blackarch/)
+ * [Pentesting: Kali](/doc/pentesting/kali/)
+ * [Pentesting: PTF](/doc/pentesting/ptf/)
+ * [Tips for Using Linux in an HVM](/doc/linux-hvm-tips/)
+ * [Creating a NetBSD VM](/doc/netbsd/)
+
+### Security Guides
+
+ * [Security Guidelines](/doc/security-guidelines/)
+ * [Using Multi-factor Authentication with Qubes](/doc/multifactor-authentication/)
+ * [How to Set Up a Split Bitcoin Wallet in Qubes](/doc/split-bitcoin/)
+ * [Split dm-crypt](https://github.com/rustybird/qubes-split-dm-crypt)
+ * [Configuring YubiKey for user authentication](/doc/yubi-key/)
+ * [Security Considerations When Handling Devices](/doc/device-handling-security/)
+ * [Note regarding password-less root access in VM](/doc/vm-sudo/)
+ * [Using OnlyKey with Qubes OS](https://docs.crp.to/qubes.html)
+
+### Privacy Guides
+
+ * [Whonix for Privacy & Anonymity](/doc/whonix/)
+ * [Running Tails in Qubes](/doc/tails/)
+ * [Anonymizing your MAC Address](/doc/anonymizing-your-mac-address/)
+ * [Martus](/doc/martus/)
+ * [Signal](/doc/signal/)
+ * [Reducing the fingerprint of the text-based web browser w3m](/doc/w3m/)
+
+### Configuration Guides
+
+ * [Qubes Tips and Tricks](/doc/tips-and-tricks/)
+ * [How to set up a ProxyVM as a VPN Gateway](/doc/vpn/)
+ * [Multibooting](/doc/multiboot/)
+ * [Resize Disk Image](/doc/resize-disk-image/)
+ * [Changing your Time Zone](/doc/change-time-zone/)
+ * [GUI Configuration and Troubleshooting](/doc/gui-configuration/)
+ * [Installing ZFS in Qubes](/doc/zfs/)
+ * [Mutt Guide](/doc/mutt/)
+ * [Postfix Guide](/doc/postfix/)
+ * [Fetchmail Guide](/doc/fetchmail/)
+ * [Creating Custom NetVMs and ProxyVMs](https://theinvisiblethings.blogspot.com/2011/09/playing-with-qubes-networking-for-fun.html)
+ * [How to make proxy for individual tcp connection from networkless VM](https://groups.google.com/group/qubes-devel/msg/4ca950ab6d7cd11a)
+ * [Adding Bridge Support to the NetVM (EXPERIMENTAL)](/doc/network-bridge-support/)
+ * [Enabling TRIM for SSD disks](/doc/disk-trim/)
+ * [Configuring a Network Printer](/doc/network-printer/)
+ * [Using External Audio Devices](/doc/external-audio/)
+ * [Rxvt Guide](/doc/rxvt/)
+ * [Adding SSD storage cache](https://groups.google.com/d/msgid/qubes-users/a08359c9-9eb0-4d1a-ad92-a8a9bc676ea6%40googlegroups.com)
+ * [How to Make a Multimedia TemplateVM](/doc/multimedia/)
+
+### Customization Guides
+
+ * [Customizing Fedora minimal templates](/doc/fedora-minimal-template-customization/)
+ * [Customizing Windows 7 templates](/doc/windows-template-customization/)
+ * [Using KDE in dom0](/doc/kde/)
+ * [Installing i3 in dom0](/doc/i3/)
+ * [Using awesome in dom0](/doc/awesome/)
+ * [Language Localization](/doc/language-localization/)
+ * [Dark Theme in Dom0 and DomU](/doc/dark-theme/)
+ * [Safely Removing TemplateVM Packages (Example: Thunderbird)](/doc/removing-templatevm-packages/)
+
+### Troubleshooting
+
+ * [Home directory is out of disk space error](/doc/out-of-memory/)
+ * [Newer hardware doesn't work](/doc/newer-hardware-troubleshooting/)
+ * [Installing on system with new AMD GPU (missing firmware problem)](https://groups.google.com/group/qubes-devel/browse_thread/thread/e27a57b0eda62f76)
+ * [How to install an Nvidia driver in dom0](/doc/install-nvidia-driver/)
+ * [Nvidia troubleshooting guide](/doc/nvidia-troubleshooting/)
+ * [Lenovo ThinkPad Troubleshooting](/doc/thinkpad-troubleshooting/)
+ * [Apple MacBook Troubleshooting](/doc/macbook-troubleshooting/)
+ * [Getting Sony Vaio Z laptop to work with Qubes](/doc/sony-vaio-tinkering/)
+ * [Troubleshooting UEFI related problems](/doc/uefi-troubleshooting/)
+ * [Fixing wireless on suspend & resume](/doc/wireless-troubleshooting/)
+ * [How to remove VMs manually](/doc/remove-vm-manually/)
+ * [Intel Integrated Graphics Troubleshooting](/doc/intel-igfx-troubleshooting/)
+
+### Building Guides
+
+ * [Building a TemplateVM based on a new OS (ArchLinux example)](/doc/building-non-fedora-template/)
+ * [Building the Archlinux Template](/doc/building-archlinux-template/)
+ * [Building the Whonix Templates](/doc/building-whonix-template/)
+ * [How to compile kernels for dom0](https://groups.google.com/d/topic/qubes-users/yBeUJPwKwHM/discussion)
+
diff --git a/building/building-archlinux-template.md b/external/building-guides/building-archlinux-template.md
similarity index 100%
rename from building/building-archlinux-template.md
rename to external/building-guides/building-archlinux-template.md
diff --git a/building/building-non-fedora-template.md b/external/building-guides/building-non-fedora-template.md
similarity index 100%
rename from building/building-non-fedora-template.md
rename to external/building-guides/building-non-fedora-template.md
diff --git a/building/building-whonix-template.md b/external/building-guides/building-whonix-template.md
similarity index 100%
rename from building/building-whonix-template.md
rename to external/building-guides/building-whonix-template.md
diff --git a/configuration/change-time-zone.md b/external/configuration-guides/change-time-zone.md
similarity index 100%
rename from configuration/change-time-zone.md
rename to external/configuration-guides/change-time-zone.md
diff --git a/configuration/disk-trim.md b/external/configuration-guides/disk-trim.md
similarity index 100%
rename from configuration/disk-trim.md
rename to external/configuration-guides/disk-trim.md
diff --git a/configuration/external-audio.md b/external/configuration-guides/external-audio.md
similarity index 100%
rename from configuration/external-audio.md
rename to external/configuration-guides/external-audio.md
diff --git a/configuration/fetchmail.md b/external/configuration-guides/fetchmail.md
similarity index 100%
rename from configuration/fetchmail.md
rename to external/configuration-guides/fetchmail.md
diff --git a/configuration/gui-configuration.md b/external/configuration-guides/gui-configuration.md
similarity index 100%
rename from configuration/gui-configuration.md
rename to external/configuration-guides/gui-configuration.md
diff --git a/configuration/multiboot.md b/external/configuration-guides/multiboot.md
similarity index 100%
rename from configuration/multiboot.md
rename to external/configuration-guides/multiboot.md
diff --git a/configuration/multimedia.md b/external/configuration-guides/multimedia.md
similarity index 100%
rename from configuration/multimedia.md
rename to external/configuration-guides/multimedia.md
diff --git a/configuration/mutt.md b/external/configuration-guides/mutt.md
similarity index 100%
rename from configuration/mutt.md
rename to external/configuration-guides/mutt.md
diff --git a/configuration/network-bridge-support.md b/external/configuration-guides/network-bridge-support.md
similarity index 100%
rename from configuration/network-bridge-support.md
rename to external/configuration-guides/network-bridge-support.md
diff --git a/configuration/network-printer.md b/external/configuration-guides/network-printer.md
similarity index 100%
rename from configuration/network-printer.md
rename to external/configuration-guides/network-printer.md
diff --git a/configuration/postfix.md b/external/configuration-guides/postfix.md
similarity index 100%
rename from configuration/postfix.md
rename to external/configuration-guides/postfix.md
diff --git a/configuration/resize-disk-image.md b/external/configuration-guides/resize-disk-image.md
similarity index 100%
rename from configuration/resize-disk-image.md
rename to external/configuration-guides/resize-disk-image.md
diff --git a/configuration/rxvt.md b/external/configuration-guides/rxvt.md
similarity index 100%
rename from configuration/rxvt.md
rename to external/configuration-guides/rxvt.md
diff --git a/common-tasks/tips-and-tricks.md b/external/configuration-guides/tips-and-tricks.md
similarity index 100%
rename from common-tasks/tips-and-tricks.md
rename to external/configuration-guides/tips-and-tricks.md
diff --git a/configuration/vpn.md b/external/configuration-guides/vpn.md
similarity index 100%
rename from configuration/vpn.md
rename to external/configuration-guides/vpn.md
diff --git a/configuration/w3m.md b/external/configuration-guides/w3m.md
similarity index 100%
rename from configuration/w3m.md
rename to external/configuration-guides/w3m.md
diff --git a/configuration/zfs.md b/external/configuration-guides/zfs.md
similarity index 100%
rename from configuration/zfs.md
rename to external/configuration-guides/zfs.md
diff --git a/customization/awesome.md b/external/customization-guides/awesome.md
similarity index 100%
rename from customization/awesome.md
rename to external/customization-guides/awesome.md
diff --git a/customization/dark-theme.md b/external/customization-guides/dark-theme.md
similarity index 100%
rename from customization/dark-theme.md
rename to external/customization-guides/dark-theme.md
diff --git a/customization/fedora-minimal-template-customization.md b/external/customization-guides/fedora-minimal-template-customization.md
similarity index 100%
rename from customization/fedora-minimal-template-customization.md
rename to external/customization-guides/fedora-minimal-template-customization.md
diff --git a/customization/i3.md b/external/customization-guides/i3.md
similarity index 100%
rename from customization/i3.md
rename to external/customization-guides/i3.md
diff --git a/customization/kde.md b/external/customization-guides/kde.md
similarity index 100%
rename from customization/kde.md
rename to external/customization-guides/kde.md
diff --git a/customization/language-localization.md b/external/customization-guides/language-localization.md
similarity index 100%
rename from customization/language-localization.md
rename to external/customization-guides/language-localization.md
diff --git a/customization/removing-templatevm-packages.md b/external/customization-guides/removing-templatevm-packages.md
similarity index 100%
rename from customization/removing-templatevm-packages.md
rename to external/customization-guides/removing-templatevm-packages.md
diff --git a/customization/windows-template-customization.md b/external/customization-guides/windows-template-customization.md
similarity index 100%
rename from customization/windows-template-customization.md
rename to external/customization-guides/windows-template-customization.md
diff --git a/managing-os/templates/archlinux.md b/external/os-guides/archlinux.md
similarity index 100%
rename from managing-os/templates/archlinux.md
rename to external/os-guides/archlinux.md
diff --git a/managing-os/linux-hvm-tips.md b/external/os-guides/linux-hvm-tips.md
similarity index 100%
rename from managing-os/linux-hvm-tips.md
rename to external/os-guides/linux-hvm-tips.md
diff --git a/managing-os/netbsd.md b/external/os-guides/netbsd.md
similarity index 100%
rename from managing-os/netbsd.md
rename to external/os-guides/netbsd.md
diff --git a/managing-os/pentesting.md b/external/os-guides/pentesting.md
similarity index 100%
rename from managing-os/pentesting.md
rename to external/os-guides/pentesting.md
diff --git a/managing-os/pentesting/blackarch.md b/external/os-guides/pentesting/blackarch.md
similarity index 100%
rename from managing-os/pentesting/blackarch.md
rename to external/os-guides/pentesting/blackarch.md
diff --git a/managing-os/pentesting/kali.md b/external/os-guides/pentesting/kali.md
similarity index 100%
rename from managing-os/pentesting/kali.md
rename to external/os-guides/pentesting/kali.md
diff --git a/managing-os/pentesting/ptf.md b/external/os-guides/pentesting/ptf.md
similarity index 100%
rename from managing-os/pentesting/ptf.md
rename to external/os-guides/pentesting/ptf.md
diff --git a/managing-os/templates/ubuntu.md b/external/os-guides/ubuntu.md
similarity index 100%
rename from managing-os/templates/ubuntu.md
rename to external/os-guides/ubuntu.md
diff --git a/managing-os/windows/windows-tools.md b/external/os-guides/windows/windows-tools.md
similarity index 100%
rename from managing-os/windows/windows-tools.md
rename to external/os-guides/windows/windows-tools.md
diff --git a/managing-os/windows/windows-vm.md b/external/os-guides/windows/windows-vm.md
similarity index 100%
rename from managing-os/windows/windows-vm.md
rename to external/os-guides/windows/windows-vm.md
diff --git a/privacy/anonymizing-your-mac-address.md b/external/privacy-guides/anonymizing-your-mac-address.md
similarity index 100%
rename from privacy/anonymizing-your-mac-address.md
rename to external/privacy-guides/anonymizing-your-mac-address.md
diff --git a/privacy/martus.md b/external/privacy-guides/martus.md
similarity index 100%
rename from privacy/martus.md
rename to external/privacy-guides/martus.md
diff --git a/privacy/signal.md b/external/privacy-guides/signal.md
similarity index 100%
rename from privacy/signal.md
rename to external/privacy-guides/signal.md
diff --git a/privacy/tails.md b/external/privacy-guides/tails.md
similarity index 100%
rename from privacy/tails.md
rename to external/privacy-guides/tails.md
diff --git a/privacy/torvm.md b/external/privacy-guides/torvm.md
similarity index 100%
rename from privacy/torvm.md
rename to external/privacy-guides/torvm.md
diff --git a/privacy/whonix.md b/external/privacy-guides/whonix.md
similarity index 100%
rename from privacy/whonix.md
rename to external/privacy-guides/whonix.md
diff --git a/security/device-handling-security.md b/external/security-guides/device-handling-security.md
similarity index 100%
rename from security/device-handling-security.md
rename to external/security-guides/device-handling-security.md
diff --git a/security/multifactor-authentication.md b/external/security-guides/multifactor-authentication.md
similarity index 100%
rename from security/multifactor-authentication.md
rename to external/security-guides/multifactor-authentication.md
diff --git a/security/security-guidelines.md b/external/security-guides/security-guidelines.md
similarity index 100%
rename from security/security-guidelines.md
rename to external/security-guides/security-guidelines.md
diff --git a/security/split-bitcoin.md b/external/security-guides/split-bitcoin.md
similarity index 100%
rename from security/split-bitcoin.md
rename to external/security-guides/split-bitcoin.md
diff --git a/security/vm-sudo.md b/external/security-guides/vm-sudo.md
similarity index 100%
rename from security/vm-sudo.md
rename to external/security-guides/vm-sudo.md
diff --git a/security/yubi-key.md b/external/security-guides/yubi-key.md
similarity index 100%
rename from security/yubi-key.md
rename to external/security-guides/yubi-key.md
diff --git a/troubleshooting/install-nvidia-driver.md b/external/troubleshooting/install-nvidia-driver.md
similarity index 100%
rename from troubleshooting/install-nvidia-driver.md
rename to external/troubleshooting/install-nvidia-driver.md
diff --git a/troubleshooting/intel-igfx-troubleshooting.md b/external/troubleshooting/intel-igfx-troubleshooting.md
similarity index 100%
rename from troubleshooting/intel-igfx-troubleshooting.md
rename to external/troubleshooting/intel-igfx-troubleshooting.md
diff --git a/troubleshooting/macbook-troubleshooting.md b/external/troubleshooting/macbook-troubleshooting.md
similarity index 100%
rename from troubleshooting/macbook-troubleshooting.md
rename to external/troubleshooting/macbook-troubleshooting.md
diff --git a/troubleshooting/newer-hardware-troubleshooting.md b/external/troubleshooting/newer-hardware-troubleshooting.md
similarity index 100%
rename from troubleshooting/newer-hardware-troubleshooting.md
rename to external/troubleshooting/newer-hardware-troubleshooting.md
diff --git a/troubleshooting/nvidia-troubleshooting.md b/external/troubleshooting/nvidia-troubleshooting.md
similarity index 100%
rename from troubleshooting/nvidia-troubleshooting.md
rename to external/troubleshooting/nvidia-troubleshooting.md
diff --git a/troubleshooting/out-of-memory.md b/external/troubleshooting/out-of-memory.md
similarity index 100%
rename from troubleshooting/out-of-memory.md
rename to external/troubleshooting/out-of-memory.md
diff --git a/troubleshooting/remove-vm-manually.md b/external/troubleshooting/remove-vm-manually.md
similarity index 100%
rename from troubleshooting/remove-vm-manually.md
rename to external/troubleshooting/remove-vm-manually.md
diff --git a/troubleshooting/sony-vaio-tinkering.md b/external/troubleshooting/sony-vaio-tinkering.md
similarity index 100%
rename from troubleshooting/sony-vaio-tinkering.md
rename to external/troubleshooting/sony-vaio-tinkering.md
diff --git a/troubleshooting/thinkpad-troubleshooting.md b/external/troubleshooting/thinkpad-troubleshooting.md
similarity index 100%
rename from troubleshooting/thinkpad-troubleshooting.md
rename to external/troubleshooting/thinkpad-troubleshooting.md
diff --git a/troubleshooting/uefi-troubleshooting.md b/external/troubleshooting/uefi-troubleshooting.md
similarity index 100%
rename from troubleshooting/uefi-troubleshooting.md
rename to external/troubleshooting/uefi-troubleshooting.md
diff --git a/troubleshooting/updating-debian-and-whonix.md b/external/troubleshooting/updating-debian-and-whonix.md
similarity index 100%
rename from troubleshooting/updating-debian-and-whonix.md
rename to external/troubleshooting/updating-debian-and-whonix.md
diff --git a/troubleshooting/wireless-troubleshooting.md b/external/troubleshooting/wireless-troubleshooting.md
similarity index 100%
rename from troubleshooting/wireless-troubleshooting.md
rename to external/troubleshooting/wireless-troubleshooting.md
diff --git a/about/code-of-conduct.md b/introduction/code-of-conduct.md
similarity index 100%
rename from about/code-of-conduct.md
rename to introduction/code-of-conduct.md
diff --git a/basics_user/contributing.md b/introduction/contributing.md
similarity index 100%
rename from basics_user/contributing.md
rename to introduction/contributing.md
diff --git a/about/experts.md b/introduction/experts.md
similarity index 100%
rename from about/experts.md
rename to introduction/experts.md
diff --git a/about/faq.md b/introduction/faq.md
similarity index 100%
rename from about/faq.md
rename to introduction/faq.md
diff --git a/basics_user/intro.md b/introduction/intro.md
similarity index 100%
rename from basics_user/intro.md
rename to introduction/intro.md
diff --git a/basics_user/reporting-bugs.md b/introduction/reporting-bugs.md
similarity index 100%
rename from basics_user/reporting-bugs.md
rename to introduction/reporting-bugs.md
diff --git a/about/screenshots.md b/introduction/screenshots.md
similarity index 100%
rename from about/screenshots.md
rename to introduction/screenshots.md
diff --git a/about/statistics.md b/introduction/statistics.md
similarity index 100%
rename from about/statistics.md
rename to introduction/statistics.md
diff --git a/about/support.md b/introduction/support.md
similarity index 100%
rename from about/support.md
rename to introduction/support.md
diff --git a/about/video-tours.html b/introduction/video-tours.html
similarity index 100%
rename from about/video-tours.html
rename to introduction/video-tours.html
diff --git a/security-info/canaries.md b/project-security/canaries.md
similarity index 97%
rename from security-info/canaries.md
rename to project-security/canaries.md
index e91d1bb3..c82eeefe 100644
--- a/security-info/canaries.md
+++ b/project-security/canaries.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Canaries
permalink: /security/canaries/
redirect_from: /doc/canaries/
diff --git a/security-info/canary-checklist.md b/project-security/canary-checklist.md
similarity index 96%
rename from security-info/canary-checklist.md
rename to project-security/canary-checklist.md
index af1fd820..487a8ba3 100644
--- a/security-info/canary-checklist.md
+++ b/project-security/canary-checklist.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Canary Checklist
permalink: /security/canaries/checklist/
---
diff --git a/security-info/canary-template.md b/project-security/canary-template.md
similarity index 98%
rename from security-info/canary-template.md
rename to project-security/canary-template.md
index 6bd9cd20..3aac7bad 100644
--- a/security-info/canary-template.md
+++ b/project-security/canary-template.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Canary Template
permalink: /security/canaries/template/
redirect_from: /doc/canaries/template/
diff --git a/security-info/security-bulletins-checklist.md b/project-security/security-bulletins-checklist.md
similarity index 97%
rename from security-info/security-bulletins-checklist.md
rename to project-security/security-bulletins-checklist.md
index a94883af..03ba2234 100644
--- a/security-info/security-bulletins-checklist.md
+++ b/project-security/security-bulletins-checklist.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Security Bulletin Checklist
permalink: /security/bulletins/checklist/
redirect_from: /doc/security-bulletins/checklist/
diff --git a/security-info/security-bulletins-template.md b/project-security/security-bulletins-template.md
similarity index 98%
rename from security-info/security-bulletins-template.md
rename to project-security/security-bulletins-template.md
index 24289219..f6d41ba6 100644
--- a/security-info/security-bulletins-template.md
+++ b/project-security/security-bulletins-template.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Security Bulletin Template
permalink: /security/bulletins/template/
redirect_from: /doc/security-bulletins/template/
diff --git a/security-info/security-bulletins.md b/project-security/security-bulletins.md
similarity index 98%
rename from security-info/security-bulletins.md
rename to project-security/security-bulletins.md
index 0b2f287e..3f77c891 100644
--- a/security-info/security-bulletins.md
+++ b/project-security/security-bulletins.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Qubes Security Bulletins
permalink: /security/bulletins/
redirect_from:
diff --git a/security-info/security-goals.md b/project-security/security-goals.md
similarity index 98%
rename from security-info/security-goals.md
rename to project-security/security-goals.md
index 5f64e4e1..8e0581a5 100644
--- a/security-info/security-goals.md
+++ b/project-security/security-goals.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Security Goals
permalink: /security/goals/
redirect_from:
diff --git a/security-info/security-pack.md b/project-security/security-pack.md
similarity index 99%
rename from security-info/security-pack.md
rename to project-security/security-pack.md
index e6d34238..e2363bc1 100644
--- a/security-info/security-pack.md
+++ b/project-security/security-pack.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Security Pack
permalink: /security/pack/
redirect_from:
diff --git a/security-info/security.md b/project-security/security.md
similarity index 99%
rename from security-info/security.md
rename to project-security/security.md
index 3935de42..a3ab976e 100644
--- a/security-info/security.md
+++ b/project-security/security.md
@@ -1,5 +1,5 @@
---
-layout: default
+layout: doc
title: Security
permalink: /security/
redirect_from:
diff --git a/security-info/verifying-signatures.md b/project-security/verifying-signatures.md
similarity index 99%
rename from security-info/verifying-signatures.md
rename to project-security/verifying-signatures.md
index 7a55cea4..e7677568 100644
--- a/security-info/verifying-signatures.md
+++ b/project-security/verifying-signatures.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Verifying Signatures
permalink: /security/verifying-signatures/
redirect_from:
diff --git a/security-info/xsa.md b/project-security/xsa.md
similarity index 99%
rename from security-info/xsa.md
rename to project-security/xsa.md
index aba882cb..6341cf6a 100644
--- a/security-info/xsa.md
+++ b/project-security/xsa.md
@@ -1,5 +1,5 @@
---
-layout: security
+layout: doc
title: Xen Security Advisory (XSA) Tracker
permalink: /security/xsa/
---
diff --git a/customization/bind-dirs.md b/user/advanced-configuration/bind-dirs.md
similarity index 100%
rename from customization/bind-dirs.md
rename to user/advanced-configuration/bind-dirs.md
diff --git a/configuration/config-files.md b/user/advanced-configuration/config-files.md
similarity index 100%
rename from configuration/config-files.md
rename to user/advanced-configuration/config-files.md
diff --git a/customization/disposablevm-customization.md b/user/advanced-configuration/disposablevm-customization.md
similarity index 100%
rename from customization/disposablevm-customization.md
rename to user/advanced-configuration/disposablevm-customization.md
diff --git a/configuration/managing-vm-kernel.md b/user/advanced-configuration/managing-vm-kernel.md
similarity index 100%
rename from configuration/managing-vm-kernel.md
rename to user/advanced-configuration/managing-vm-kernel.md
diff --git a/configuration/rpc-policy.md b/user/advanced-configuration/rpc-policy.md
similarity index 100%
rename from configuration/rpc-policy.md
rename to user/advanced-configuration/rpc-policy.md
diff --git a/configuration/salt.md b/user/advanced-configuration/salt.md
similarity index 100%
rename from configuration/salt.md
rename to user/advanced-configuration/salt.md
diff --git a/configuration/secondary-storage.md b/user/advanced-configuration/secondary-storage.md
similarity index 100%
rename from configuration/secondary-storage.md
rename to user/advanced-configuration/secondary-storage.md
diff --git a/configuration/usb-qubes.md b/user/advanced-configuration/usb-qubes.md
similarity index 100%
rename from configuration/usb-qubes.md
rename to user/advanced-configuration/usb-qubes.md
diff --git a/common-tasks/backup-emergency-restore-v2.md b/user/common-tasks/backup-emergency-restore-v2.md
similarity index 100%
rename from common-tasks/backup-emergency-restore-v2.md
rename to user/common-tasks/backup-emergency-restore-v2.md
diff --git a/common-tasks/backup-emergency-restore-v3.md b/user/common-tasks/backup-emergency-restore-v3.md
similarity index 100%
rename from common-tasks/backup-emergency-restore-v3.md
rename to user/common-tasks/backup-emergency-restore-v3.md
diff --git a/common-tasks/backup-emergency-restore-v4.md b/user/common-tasks/backup-emergency-restore-v4.md
similarity index 100%
rename from common-tasks/backup-emergency-restore-v4.md
rename to user/common-tasks/backup-emergency-restore-v4.md
diff --git a/common-tasks/backup-restore.md b/user/common-tasks/backup-restore.md
similarity index 100%
rename from common-tasks/backup-restore.md
rename to user/common-tasks/backup-restore.md
diff --git a/common-tasks/block-devices.md b/user/common-tasks/block-devices.md
similarity index 100%
rename from common-tasks/block-devices.md
rename to user/common-tasks/block-devices.md
diff --git a/common-tasks/copy-from-dom0.md b/user/common-tasks/copy-from-dom0.md
similarity index 100%
rename from common-tasks/copy-from-dom0.md
rename to user/common-tasks/copy-from-dom0.md
diff --git a/common-tasks/copy-paste.md b/user/common-tasks/copy-paste.md
similarity index 100%
rename from common-tasks/copy-paste.md
rename to user/common-tasks/copy-paste.md
diff --git a/common-tasks/copying-files.md b/user/common-tasks/copying-files.md
similarity index 100%
rename from common-tasks/copying-files.md
rename to user/common-tasks/copying-files.md
diff --git a/common-tasks/device-handling.md b/user/common-tasks/device-handling.md
similarity index 100%
rename from common-tasks/device-handling.md
rename to user/common-tasks/device-handling.md
diff --git a/common-tasks/disposablevm.md b/user/common-tasks/disposablevm.md
similarity index 100%
rename from common-tasks/disposablevm.md
rename to user/common-tasks/disposablevm.md
diff --git a/common-tasks/full-screen-mode.md b/user/common-tasks/full-screen-mode.md
similarity index 100%
rename from common-tasks/full-screen-mode.md
rename to user/common-tasks/full-screen-mode.md
diff --git a/basics_user/getting-started.md b/user/common-tasks/getting-started.md
similarity index 100%
rename from basics_user/getting-started.md
rename to user/common-tasks/getting-started.md
diff --git a/common-tasks/managing-appvm-shortcuts.md b/user/common-tasks/managing-appvm-shortcuts.md
similarity index 100%
rename from common-tasks/managing-appvm-shortcuts.md
rename to user/common-tasks/managing-appvm-shortcuts.md
diff --git a/common-tasks/optical-discs.md b/user/common-tasks/optical-discs.md
similarity index 100%
rename from common-tasks/optical-discs.md
rename to user/common-tasks/optical-discs.md
diff --git a/common-tasks/pci-devices.md b/user/common-tasks/pci-devices.md
similarity index 100%
rename from common-tasks/pci-devices.md
rename to user/common-tasks/pci-devices.md
diff --git a/common-tasks/software-update-dom0.md b/user/common-tasks/software-update-dom0.md
similarity index 100%
rename from common-tasks/software-update-dom0.md
rename to user/common-tasks/software-update-dom0.md
diff --git a/common-tasks/software-update-vm.md b/user/common-tasks/software-update-vm.md
similarity index 100%
rename from common-tasks/software-update-vm.md
rename to user/common-tasks/software-update-vm.md
diff --git a/common-tasks/usb-devices.md b/user/common-tasks/usb-devices.md
similarity index 100%
rename from common-tasks/usb-devices.md
rename to user/common-tasks/usb-devices.md
diff --git a/installing/custom-install.md b/user/downloading-installing-upgrading/custom-install.md
similarity index 100%
rename from installing/custom-install.md
rename to user/downloading-installing-upgrading/custom-install.md
diff --git a/about/download-mirrors.md b/user/downloading-installing-upgrading/download-mirrors.md
similarity index 100%
rename from about/download-mirrors.md
rename to user/downloading-installing-upgrading/download-mirrors.md
diff --git a/installing/install-security.md b/user/downloading-installing-upgrading/install-security.md
similarity index 100%
rename from installing/install-security.md
rename to user/downloading-installing-upgrading/install-security.md
diff --git a/installing/installation-guide.md b/user/downloading-installing-upgrading/installation-guide.md
similarity index 96%
rename from installing/installation-guide.md
rename to user/downloading-installing-upgrading/installation-guide.md
index 3620f1e0..9a43acd7 100644
--- a/installing/installation-guide.md
+++ b/user/downloading-installing-upgrading/installation-guide.md
@@ -94,6 +94,8 @@ The installer loads Xen right at the beginning, so chances are high that if you
can see the installer's graphical screen and you pass the compatibility check that
runs immediately after that, Qubes will work on your system. :)
+If you're an advanced user, and you'd like to customize your installation, please see [Custom Installation].
+
Installing to a USB drive
-------------------------
@@ -113,9 +115,7 @@ the disk(s) I selected and return me to the main menu”.
Upgrading
---------
-For instructions in upgrading an existing installation, please see the **Release
-Notes** of the version to which you want to upgrade. All of these release notes
-are available from the main [downloads] page.
+For instructions in upgrading an existing installation, please see [Upgrade Guides].
Getting Help
@@ -141,6 +141,8 @@ Getting Help
[downloads]: /downloads/
[verifying signatures]: /security/verifying-signatures/
[security considerations]: /doc/install-security/
+[Custom Installation]: /doc/custom-install/
+[Upgrade Guides]: /doc/upgrade/
[Rufus]: https://rufus.akeo.ie/
[documentation]: /doc/
[improving]: /doc/doc-guidelines/
diff --git a/installing/live-usb.md b/user/downloading-installing-upgrading/live-usb.md
similarity index 100%
rename from installing/live-usb.md
rename to user/downloading-installing-upgrading/live-usb.md
diff --git a/installing/supported-versions.md b/user/downloading-installing-upgrading/supported-versions.md
similarity index 100%
rename from installing/supported-versions.md
rename to user/downloading-installing-upgrading/supported-versions.md
diff --git a/basics_user/testing.md b/user/downloading-installing-upgrading/testing.md
similarity index 100%
rename from basics_user/testing.md
rename to user/downloading-installing-upgrading/testing.md
diff --git a/installing/upgrade/upgrade-to-r2.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r2.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r2.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r2.md
diff --git a/installing/upgrade/upgrade-to-r2b1.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r2b1.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r2b1.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r2b1.md
diff --git a/installing/upgrade/upgrade-to-r2b2.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r2b2.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r2b2.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r2b2.md
diff --git a/installing/upgrade/upgrade-to-r2b3.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r2b3.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r2b3.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r2b3.md
diff --git a/installing/upgrade/upgrade-to-r3.0.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r3.0.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r3.0.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r3.0.md
diff --git a/installing/upgrade/upgrade-to-r3.1.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r3.1.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r3.1.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r3.1.md
diff --git a/installing/upgrade/upgrade-to-r3.2.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r3.2.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r3.2.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r3.2.md
diff --git a/installing/upgrade/upgrade-to-r4.0.md b/user/downloading-installing-upgrading/upgrade/upgrade-to-r4.0.md
similarity index 100%
rename from installing/upgrade/upgrade-to-r4.0.md
rename to user/downloading-installing-upgrading/upgrade/upgrade-to-r4.0.md
diff --git a/installing/upgrade/upgrade.md b/user/downloading-installing-upgrading/upgrade/upgrade.md
similarity index 100%
rename from installing/upgrade/upgrade.md
rename to user/downloading-installing-upgrading/upgrade/upgrade.md
diff --git a/installing/version-scheme.md b/user/downloading-installing-upgrading/version-scheme.md
similarity index 100%
rename from installing/version-scheme.md
rename to user/downloading-installing-upgrading/version-scheme.md
diff --git a/hardware/certified-hardware.md b/user/hardware/certified-hardware.md
similarity index 100%
rename from hardware/certified-hardware.md
rename to user/hardware/certified-hardware.md
diff --git a/hardware/hcl.html b/user/hardware/hcl.html
similarity index 100%
rename from hardware/hcl.html
rename to user/hardware/hcl.html
diff --git a/hardware/hcl.md b/user/hardware/hcl.md
similarity index 100%
rename from hardware/hcl.md
rename to user/hardware/hcl.md
diff --git a/hardware/system-requirements.md b/user/hardware/system-requirements.md
similarity index 100%
rename from hardware/system-requirements.md
rename to user/hardware/system-requirements.md
diff --git a/managing-os/templates/debian-minimal.md b/user/managing-os/debian/debian-minimal.md
similarity index 100%
rename from managing-os/templates/debian-minimal.md
rename to user/managing-os/debian/debian-minimal.md
diff --git a/managing-os/templates/debian/upgrade-8-to-9.md b/user/managing-os/debian/debian-upgrade-8-to-9.md
similarity index 100%
rename from managing-os/templates/debian/upgrade-8-to-9.md
rename to user/managing-os/debian/debian-upgrade-8-to-9.md
diff --git a/managing-os/templates/debian.md b/user/managing-os/debian/debian.md
similarity index 100%
rename from managing-os/templates/debian.md
rename to user/managing-os/debian/debian.md
diff --git a/managing-os/templates/fedora-minimal.md b/user/managing-os/fedora/fedora-minimal.md
similarity index 100%
rename from managing-os/templates/fedora-minimal.md
rename to user/managing-os/fedora/fedora-minimal.md
diff --git a/managing-os/templates/fedora/upgrade-26-to-27.md b/user/managing-os/fedora/fedora-upgrade-26-to-27.md
similarity index 100%
rename from managing-os/templates/fedora/upgrade-26-to-27.md
rename to user/managing-os/fedora/fedora-upgrade-26-to-27.md
diff --git a/managing-os/templates/fedora/upgrade-27-to-28.md b/user/managing-os/fedora/fedora-upgrade-27-to-28.md
similarity index 100%
rename from managing-os/templates/fedora/upgrade-27-to-28.md
rename to user/managing-os/fedora/fedora-upgrade-27-to-28.md
diff --git a/managing-os/templates/fedora/upgrade-28-to-29.md b/user/managing-os/fedora/fedora-upgrade-28-to-29.md
similarity index 100%
rename from managing-os/templates/fedora/upgrade-28-to-29.md
rename to user/managing-os/fedora/fedora-upgrade-28-to-29.md
diff --git a/managing-os/templates/fedora.md b/user/managing-os/fedora/fedora.md
similarity index 100%
rename from managing-os/templates/fedora.md
rename to user/managing-os/fedora/fedora.md
diff --git a/managing-os/templates/fedora/upgrade-29-to-30.md b/user/managing-os/fedora/upgrade-29-to-30.md
similarity index 100%
rename from managing-os/templates/fedora/upgrade-29-to-30.md
rename to user/managing-os/fedora/upgrade-29-to-30.md
diff --git a/managing-os/hvm.md b/user/managing-os/hvm.md
similarity index 100%
rename from managing-os/hvm.md
rename to user/managing-os/hvm.md
diff --git a/managing-os/reinstall-template.md b/user/managing-os/reinstall-template.md
similarity index 100%
rename from managing-os/reinstall-template.md
rename to user/managing-os/reinstall-template.md
diff --git a/managing-os/templates.md b/user/managing-os/templates.md
similarity index 100%
rename from managing-os/templates.md
rename to user/managing-os/templates.md
diff --git a/managing-os/windows.md b/user/managing-os/windows.md
similarity index 100%
rename from managing-os/windows.md
rename to user/managing-os/windows.md
diff --git a/reference/glossary.md b/user/reference/glossary.md
similarity index 100%
rename from reference/glossary.md
rename to user/reference/glossary.md
diff --git a/reference/qubes-service.md b/user/reference/qubes-service.md
similarity index 100%
rename from reference/qubes-service.md
rename to user/reference/qubes-service.md
diff --git a/about/research.md b/user/reference/research.md
similarity index 100%
rename from about/research.md
rename to user/reference/research.md
diff --git a/reference/tools.md b/user/reference/tools.md
similarity index 100%
rename from reference/tools.md
rename to user/reference/tools.md
diff --git a/security/anti-evil-maid.md b/user/security-in-qubes/anti-evil-maid.md
similarity index 100%
rename from security/anti-evil-maid.md
rename to user/security-in-qubes/anti-evil-maid.md
diff --git a/security/data-leaks.md b/user/security-in-qubes/data-leaks.md
similarity index 100%
rename from security/data-leaks.md
rename to user/security-in-qubes/data-leaks.md
diff --git a/security/firewall.md b/user/security-in-qubes/firewall.md
similarity index 100%
rename from security/firewall.md
rename to user/security-in-qubes/firewall.md
diff --git a/security/split-gpg.md b/user/security-in-qubes/split-gpg.md
similarity index 100%
rename from security/split-gpg.md
rename to user/security-in-qubes/split-gpg.md
diff --git a/security/u2f-proxy.md b/user/security-in-qubes/u2f-proxy.md
similarity index 100%
rename from security/u2f-proxy.md
rename to user/security-in-qubes/u2f-proxy.md