summaryrefslogtreecommitdiff
path: root/feed.xml
diff options
context:
space:
mode:
authorYour Name <you@example.com>2025-04-03 20:01:36 -0600
committerYour Name <you@example.com>2025-04-03 20:01:36 -0600
commit8d309902d90d85bd0ec99f2af3f95909aa640b04 (patch)
tree3a0f641487ad4632835c58f3e3475e3e594f7a21 /feed.xml
parentc3237274155e4791749b4761954ee156dabede93 (diff)
rss
Diffstat (limited to 'feed.xml')
-rw-r--r--feed.xml570
1 files changed, 278 insertions, 292 deletions
diff --git a/feed.xml b/feed.xml
index db85ed0..8b48e2b 100644
--- a/feed.xml
+++ b/feed.xml
@@ -14,8 +14,8 @@
<link></link>
<description><![CDATA[]]></description>
<language>en</language>
- <pubDate>Thu, 03 Apr 2025 05:47:18 -0600</pubDate>
- <lastBuildDate>Thu, 03 Apr 2025 05:47:18 -0600</lastBuildDate>
+ <pubDate>Thu, 03 Apr 2025 20:01:20 -0600</pubDate>
+ <lastBuildDate>Thu, 03 Apr 2025 20:01:20 -0600</lastBuildDate>
<generator>Emacs 29.4 Org-mode 9.7.22</generator>
<webMaster>user@emacs-org (nil)</webMaster>
<image>
@@ -28,14 +28,13 @@
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
- <li><a href="#org1557f2b">3 Browser extensions I almost always install&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span></span></a></li>
- <li><a href="#orgd12aa6a">I added a cute table of links&#xa0;&#xa0;&#xa0;<span class="tag"><span class="note">note</span>&#xa0;<span class="skylarcloud">skylarcloud</span></span></a></li>
- <li><a href="#orge357a5b">Prepping for v2 of my salt repo&#xa0;&#xa0;&#xa0;<span class="tag"><span class="note">note</span>&#xa0;<span class="qubes">qubes</span></span></a></li>
- <li><a href="#orgea64317">Methods of installing software in QubesOS with Saltstack&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span>&#xa0;<span class="qubes">qubes</span></span></a></li>
- <li><a href="#orga111957">Website update&#xa0;&#xa0;&#xa0;<span class="tag"><span class="note">note</span>&#xa0;<span class="skylarcloud">skylarcloud</span></span></a></li>
- <li><a href="#org535011c">Convenient torrenting with qBittorrent&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span></span></a></li>
- <li><a href="#org13ab066">QubesOS Saltstack configuration v1&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span>&#xa0;<span class="qubes">qubes</span></span></a></li>
- <li><a href="#orgf5943ec">Create an anonymous Whonix environment with KVM + NixOS&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span></span></a></li>
+ <li><a href="#org3add3f3">3 Browser extensions I almost always install&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span></span></a></li>
+ <li><a href="#orgb2609a4">Prepping for v2 of my salt repo&#xa0;&#xa0;&#xa0;<span class="tag"><span class="note">note</span>&#xa0;<span class="qubes">qubes</span></span></a></li>
+ <li><a href="#org26fdb4f">Methods of installing software in QubesOS with Saltstack&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span>&#xa0;<span class="qubes">qubes</span></span></a></li>
+ <li><a href="#org4b6cbd3">Website update&#xa0;&#xa0;&#xa0;<span class="tag"><span class="note">note</span>&#xa0;<span class="skylarcloud">skylarcloud</span></span></a></li>
+ <li><a href="#org31bbfc2">Convenient torrenting with qBittorrent&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span></span></a></li>
+ <li><a href="#org6ddd067">QubesOS Saltstack configuration v1&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span>&#xa0;<span class="qubes">qubes</span></span></a></li>
+ <li><a href="#org273106a">Create an anonymous Whonix environment with KVM + NixOS&#xa0;&#xa0;&#xa0;<span class="tag"><span class="post">post</span></span></a></li>
</ul>
</div>
</div>
@@ -53,39 +52,39 @@
</colgroup>
<tbody>
<tr>
- <td class="org-left"><a href="https://skylarcloud.xyz">🚀 Home</a></td>
+ <td class="org-left"><a href="https://skylarcloud.xyz">🌎 Home</a></td>
<td class="org-left"><a href="https://skylarcloud.xyz/feed.html">📡 My feed</a></td>
- <td class="org-left"><a href="https://searx.skylarcloud.xyz">🌠 SearXNG</a></td>
+ <td class="org-left"><a href="https://searx.skylarcloud.xyz">🔭 SearXNG</a></td>
<td class="org-left"><a href="https://git.skylarcloud.xyz">⚙️ Git Repos</a></td>
</tr>
</tbody>
</table>
<item>
<title>3 Browser extensions I almost always install</title>
- <link>./feed.html#org1557f2b</link>
+ <link>./feed.html#org3add3f3</link>
<author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#org1557f2b</guid>
+ <guid isPermaLink="false">./feed.html#org3add3f3</guid>
<pubDate>Thu, 03 Apr 2025 05:40:00 -0600</pubDate>
<category><![CDATA[post]]></category>
- <description><![CDATA[<div id="outline-container-org8bdea32" class="outline-3">
- <h3 id="org8bdea32">Vimium C</h3>
- <div class="outline-text-3" id="text-org8bdea32">
+ <description><![CDATA[<div id="outline-container-org225bec0" class="outline-3">
+ <h3 id="org225bec0">Vimium C</h3>
+ <div class="outline-text-3" id="text-org225bec0">
<p>
This lets do basic navigation in your browser with vim-like keybindings. You can click links, scroll, go back and forth between tabs and through your history, select/copy/search text and more with your keyboard.
</p>
</div>
</div>
- <div id="outline-container-org54a563d" class="outline-3">
- <h3 id="org54a563d">Dark Reader</h3>
- <div class="outline-text-3" id="text-org54a563d">
+ <div id="outline-container-org70dedce" class="outline-3">
+ <h3 id="org70dedce">Dark Reader</h3>
+ <div class="outline-text-3" id="text-org70dedce">
<p>
Makes all websites default to a mode, and provides an easy toggle.
</p>
</div>
</div>
- <div id="outline-container-org975f37b" class="outline-3">
- <h3 id="org975f37b">uBlock Origin</h3>
- <div class="outline-text-3" id="text-org975f37b">
+ <div id="outline-container-org6a02935" class="outline-3">
+ <h3 id="org6a02935">uBlock Origin</h3>
+ <div class="outline-text-3" id="text-org6a02935">
<p>
The most ubiquitous content/ad blocker, reliable as ever.
</p>
@@ -94,23 +93,10 @@
]]></description>
</item>
<item>
- <title>I added a cute table of links</title>
- <link>./feed.html#orgd12aa6a</link>
- <author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#orgd12aa6a</guid>
- <pubDate>Thu, 03 Apr 2025 05:40:00 -0600</pubDate>
- <category><![CDATA[note]]></category>
- <category><![CDATA[skylarcloud]]></category>
- <description><![CDATA[<p>
- There's a new table of links at the top of my feed and homepage. It's just an org table with some options to give it a border, and some hyperlinks with emojis. I used these options for the table: <code>#+ATTR_HTML: :rules all :frame border :align center</code>
- </p>
- ]]></description>
- </item>
- <item>
<title>Prepping for v2 of my salt repo</title>
- <link>./feed.html#orge357a5b</link>
+ <link>./feed.html#orgb2609a4</link>
<author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#orge357a5b</guid>
+ <guid isPermaLink="false">./feed.html#orgb2609a4</guid>
<pubDate>Wed, 02 Apr 2025 22:34:00 -0600</pubDate>
<category><![CDATA[note]]></category>
<category><![CDATA[qubes]]></category>
@@ -121,73 +107,54 @@
</item>
<item>
<title>Methods of installing software in QubesOS with Saltstack</title>
- <link>./feed.html#orgea64317</link>
+ <link>./feed.html#org26fdb4f</link>
<author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#orgea64317</guid>
+ <guid isPermaLink="false">./feed.html#org26fdb4f</guid>
<pubDate>Wed, 02 Apr 2025 22:34:00 -0600</pubDate>
<category><![CDATA[post]]></category>
<category><![CDATA[qubes]]></category>
<description><![CDATA[<p>
Here are some various methods of installing software that I've used in my personal salt configuration
</p>
- <div id="outline-container-org823043d" class="outline-3">
- <h3 id="org823043d">pkg.installed</h3>
- <div class="outline-text-3" id="text-org823043d">
+ <div id="outline-container-org28ff87e" class="outline-3">
+ <h3 id="org28ff87e">pkg.installed</h3>
+ <div class="outline-text-3" id="text-org28ff87e">
<p>
Here&rsquo;s <code>/srv/user_salt/pkgs/accounting.sls</code> as an example. It uses the simplest way of installing programs, which is just listing them under <code>pkg.installed</code> which pulls them from your distros main repositories. This is the most preferable way to install software if it&rsquo;s available.
</p>
<div class="org-src-container">
- <pre class="src src-salt"><span style="color: #928374;"># </span><span style="color: #928374;">Install accounting tools</span>
- <span style="color: #d3869b;">accounting--install-apps</span>:
- <span style="color: #b8bb26;">pkg.installed</span>:
- - <span style="color: #83a598;">pkgs</span>:
- - hledger <span style="color: #928374;"># </span><span style="color: #928374;">Command-line plain text accounting</span>
- - gnucash <span style="color: #928374;"># </span><span style="color: #928374;">Graphical GNU accounting suite</span>
- </pre>
- </div>
- </div>
- </div>
- <div id="outline-container-org4903658" class="outline-3">
- <h3 id="org4903658">move a binary file into /usr/bin</h3>
- <div class="outline-text-3" id="text-org4903658">
- <p>
- Here&rsquo;s <code>/srv/user_salt/pkgs/st.sls</code> as an example. It takes a binary file that&rsquo;s part of this salt repository, and moves it into the ~/usr/bin/ directory in a qube.
- </p>
-
- <div class="org-src-container">
- <pre class="src src-salt"><span style="color: #928374;"># </span><span style="color: #928374;">Installs my build of st terminal</span>
- <span style="color: #d3869b;">/usr/bin/st</span>:
- <span style="color: #b8bb26;">file.managed</span>:
- - <span style="color: #83a598;">source</span>: <span style="color: #fe8019;">salt://</span>pkgs/bin/st.bin
- - <span style="color: #83a598;">user</span>: root
- - <span style="color: #83a598;">group</span>: root
- - <span style="color: #83a598;">mode</span>: 777
+ <pre class="src src-salt"><span style="color: #555556;"># </span><span style="color: #555556;">Install accounting tools</span>
+ <span style="color: #fd971f;">accounting--install-apps</span>:
+ <span style="color: #b6e63e;">pkg.installed</span>:
+ - <span style="color: #fd971f;">pkgs</span>:
+ - hledger <span style="color: #555556;"># </span><span style="color: #555556;">Command-line plain text accounting</span>
+ - gnucash <span style="color: #555556;"># </span><span style="color: #555556;">Graphical GNU accounting suite</span>
</pre>
</div>
</div>
</div>
- <div id="outline-container-org57501ae" class="outline-3">
- <h3 id="org57501ae">Install from third-party repo with a script</h3>
- <div class="outline-text-3" id="text-org57501ae">
+ <div id="outline-container-org873c775" class="outline-3">
+ <h3 id="org873c775">Install from third-party repo with a script</h3>
+ <div class="outline-text-3" id="text-org873c775">
<p>
- Here&rsquo;s <code>/srv/user_salt/pkgs/signal.sls</code> as an example. It starts by installing some dependencies using the most common <code>pkg.installed</code> method, then moves an install script <code>/srv/user_salt/pkgs/install-scripts/signal-repo.sh</code> into a qube and executes it to install the Signal messenger.
+ Here&rsquo;s <code>/srv/user_salt/pkgs/signal.sls</code> as an example. It places an installation script, <code>/srv/user_salt/pkgs/install-scripts/signal-repo.sh</code> into a qube and executes it to install the Signal messenger.
</p>
<div class="org-src-container">
- <pre class="src src-salt"><span style="color: #928374;">...</span>
-
- <span style="color: #d3869b;">signal--repo-script</span>:
- <span style="color: #b8bb26;">file.managed</span>: <span style="color: #928374;"># </span><span style="color: #928374;">file.managed lets you place files from your salt repo into qubes</span>
- - <span style="color: #fe8019;">name</span>: /usr/bin/install-repo <span style="color: #928374;"># </span><span style="color: #928374;">this is where the installation script is placed</span>
- - <span style="color: #83a598;">source</span>: <span style="color: #fe8019;">salt://</span>pkgs/install-scripts/signal-repo.sh <span style="color: #928374;"># </span><span style="color: #928374;">This is where the installation script was sourced</span>
- - <span style="color: #83a598;">user</span>: root <span style="color: #928374;"># </span><span style="color: #928374;">sets the owner of the file, you can usually default to root</span>
- - <span style="color: #83a598;">group</span>: root <span style="color: #928374;"># </span><span style="color: #928374;">sets the group of the file, you can usually default to root</span>
- - <span style="color: #83a598;">mode</span>: 777 <span style="color: #928374;"># </span><span style="color: #928374;">sets the permissions of the file, you can usually default to 777 (any user on the qube has permissions)</span>
-
- <span style="color: #928374;"># </span><span style="color: #928374;">This simply executes the install-repo script in a qube</span>
- <span style="color: #b8bb26;">'install-repo'</span>:
- <span style="color: #b8bb26;">cmd.run</span>
+ <pre class="src src-salt"><span style="color: #555556;">...</span>
+
+ <span style="color: #fd971f;">signal--repo-script</span>:
+ <span style="color: #b6e63e;">file.managed</span>:
+ - <span style="color: #fd971f;">name</span>: /usr/bin/install-repo <span style="color: #555556;"># </span><span style="color: #555556;">this is where the installation script is placed</span>
+ - <span style="color: #fd971f;">source</span>: <span style="color: #fd971f;">salt://</span>pkgs/install-scripts/signal-repo.sh <span style="color: #555556;"># </span><span style="color: #555556;">This is where the installation script was sourced</span>
+ - <span style="color: #fd971f;">user</span>: root <span style="color: #555556;"># </span><span style="color: #555556;">sets the owner of the file, you can usually default to root</span>
+ - <span style="color: #fd971f;">group</span>: root <span style="color: #555556;"># </span><span style="color: #555556;">sets the group of the file, you can usually default to root</span>
+ - <span style="color: #fd971f;">mode</span>: 777 <span style="color: #555556;"># </span><span style="color: #555556;">sets the permissions of the file, you can usually default to 777 (any user on the qube has permissions)</span>
+
+ <span style="color: #555556;"># </span><span style="color: #555556;">This simply executes the install-repo script in a qube</span>
+ <span style="color: #e2c770;">'install-repo'</span>:
+ <span style="color: #b6e63e;">cmd.run</span>
</pre>
</div>
@@ -195,32 +162,51 @@
Here&rsquo;s the installation script that&rsquo;s ran:
</p>
</div>
- <div id="outline-container-orgcf35ff9" class="outline-4">
- <h4 id="orgcf35ff9"><code>/srv/user_salt/pkgs/install-scripts/signal-repo.sh</code></h4>
- <div class="outline-text-4" id="text-orgcf35ff9">
+ <div id="outline-container-orgcb48329" class="outline-4">
+ <h4 id="orgcb48329"><code>/srv/user_salt/pkgs/install-scripts/signal-repo.sh</code></h4>
+ <div class="outline-text-4" id="text-orgcb48329">
<div class="org-src-container">
- <pre class="src src-bash"><span style="color: #928374;"># </span><span style="color: #928374;">Retrieves Signal's key for verifying the package</span>
- <span style="color: #928374;"># </span><span style="color: #928374;">The request is proxied through 127.0.0.1:8082 to allow the template qube to access the internet</span>
- <span style="color: #fabd2f;">sudo</span> <span style="color: #fabd2f;">curl</span> --proxy 127.0.0.1:8082 -s https://updates.signal.org/desktop/apt/keys.asc | gpg --dearmor | <span style="color: #fabd2f;">sudo</span> tee -a /usr/share/keyrings/signal-desktop-keyring.gpg &gt; /dev/null
+ <pre class="src src-bash"><span style="color: #555556;"># </span><span style="color: #555556;">Retrieves Signal's key for verifying the package</span>
+ <span style="color: #555556;"># </span><span style="color: #555556;">The request is proxied through 127.0.0.1:8082 to allow the template qube to access the internet</span>
+ <span style="color: #66d9ef;">sudo</span> <span style="color: #66d9ef;">curl</span> --proxy 127.0.0.1:8082 -s https://updates.signal.org/desktop/apt/keys.asc | gpg --dearmor | <span style="color: #66d9ef;">sudo</span> tee -a /usr/share/keyrings/signal-desktop-keyring.gpg &gt; /dev/null
- <span style="color: #928374;"># </span><span style="color: #928374;">Defines Signal's repo in /etc/apt/sources.list.d/</span>
- <span style="color: #fabd2f;">echo</span> <span style="color: #b8bb26;">'deb [arch=amd64 signed-by=/usr/share/keyrings/signal-desktop-keyring.gpg] https://updates.signal.org/desktop/apt xenial main'</span> | tee /etc/apt/sources.list.d/signal-xenial.list
+ <span style="color: #555556;"># </span><span style="color: #555556;">Defines Signal's repo in /etc/apt/sources.list.d/</span>
+ <span style="color: #66d9ef;">echo</span> <span style="color: #e2c770;">'deb [arch=amd64 signed-by=/usr/share/keyrings/signal-desktop-keyring.gpg] https://updates.signal.org/desktop/apt xenial main'</span> | tee /etc/apt/sources.list.d/signal-xenial.list
- <span style="color: #928374;"># </span><span style="color: #928374;">Updates packages and installs signal-desktop through the newly configured repository</span>
- <span style="color: #fabd2f;">sudo</span> apt update
- <span style="color: #fabd2f;">sudo</span> apt install signal-desktop -y
+ <span style="color: #555556;"># </span><span style="color: #555556;">Updates packages and installs signal-desktop through the newly configured repository</span>
+ <span style="color: #66d9ef;">sudo</span> apt update
+ <span style="color: #66d9ef;">sudo</span> apt install signal-desktop -y
</pre>
</div>
</div>
</div>
</div>
+ <div id="outline-container-org827838a" class="outline-3">
+ <h3 id="org827838a">Move a binary file into /usr/bin</h3>
+ <div class="outline-text-3" id="text-org827838a">
+ <p>
+ Here&rsquo;s <code>/srv/user_salt/pkgs/st.sls</code> as an example. It takes a binary file that&rsquo;s part of this salt repository, and moves it into the ~/usr/bin/ directory in a qube.
+ </p>
+
+ <div class="org-src-container">
+ <pre class="src src-salt"><span style="color: #555556;"># </span><span style="color: #555556;">Installs my build of st terminal</span>
+ <span style="color: #fd971f;">/usr/bin/st</span>:
+ <span style="color: #b6e63e;">file.managed</span>:
+ - <span style="color: #fd971f;">source</span>: <span style="color: #fd971f;">salt://</span>pkgs/bin/st.bin
+ - <span style="color: #fd971f;">user</span>: root
+ - <span style="color: #fd971f;">group</span>: root
+ - <span style="color: #fd971f;">mode</span>: 777
+ </pre>
+ </div>
+ </div>
+ </div>
]]></description>
</item>
<item>
<title>Website update</title>
- <link>./feed.html#orga111957</link>
+ <link>./feed.html#org4b6cbd3</link>
<author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#orga111957</guid>
+ <guid isPermaLink="false">./feed.html#org4b6cbd3</guid>
<pubDate>Sat, 01 Mar 2025 10:14:00 -0700</pubDate>
<category><![CDATA[note]]></category>
<category><![CDATA[skylarcloud]]></category>
@@ -243,22 +229,22 @@
</item>
<item>
<title>Convenient torrenting with qBittorrent</title>
- <link>./feed.html#org535011c</link>
+ <link>./feed.html#org31bbfc2</link>
<author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#org535011c</guid>
+ <guid isPermaLink="false">./feed.html#org31bbfc2</guid>
<pubDate>Fri, 28 Feb 2025 14:30:00 -0700</pubDate>
<category><![CDATA[post]]></category>
- <description><![CDATA[<div id="outline-container-orgc1c97d6" class="outline-3">
- <h3 id="orgc1c97d6">Introduction</h3>
- <div class="outline-text-3" id="text-orgc1c97d6">
+ <description><![CDATA[<div id="outline-container-org5c580f4" class="outline-3">
+ <h3 id="org5c580f4">Introduction</h3>
+ <div class="outline-text-3" id="text-org5c580f4">
<p>
Your access to media should not be limited by money, nor should it be limited by technical ability. I want to demonstrate with this quick guide that torrenting is as accessible and easy as it&rsquo;s ever been, using Free and open-source software.
</p>
</div>
</div>
- <div id="outline-container-orgaa139f4" class="outline-3">
- <h3 id="orgaa139f4">Install qBittorrent</h3>
- <div class="outline-text-3" id="text-orgaa139f4">
+ <div id="outline-container-org0b8fbc3" class="outline-3">
+ <h3 id="org0b8fbc3">Install qBittorrent</h3>
+ <div class="outline-text-3" id="text-org0b8fbc3">
<p>
qBittorrent is a Free and open-source BitTorrent client that supports tons of features, but you need to know much at all to get started. To install it, go to their downloads page website at <a href="https://www.qbittorrent.org/download">https://www.qbittorrent.org/download</a> and select the right option for your computer. It supports Windows, MacOS, and can be installed through most common package managers on Linux.
</p>
@@ -268,9 +254,9 @@
</p>
</div>
</div>
- <div id="outline-container-org0197d52" class="outline-3">
- <h3 id="org0197d52">Enable the search engine</h3>
- <div class="outline-text-3" id="text-org0197d52">
+ <div id="outline-container-org7e3b5b9" class="outline-3">
+ <h3 id="org7e3b5b9">Enable the search engine</h3>
+ <div class="outline-text-3" id="text-org7e3b5b9">
<p>
To let us search for media, we need to turn on qBittorrent&rsquo;s search engine.
</p>
@@ -285,9 +271,9 @@
</ul>
</div>
</div>
- <div id="outline-container-orgcfd0c2c" class="outline-3">
- <h3 id="orgcfd0c2c">Search for and download some media</h3>
- <div class="outline-text-3" id="text-orgcfd0c2c">
+ <div id="outline-container-org4fa5025" class="outline-3">
+ <h3 id="org4fa5025">Search for and download some media</h3>
+ <div class="outline-text-3" id="text-org4fa5025">
<ul class="org-ul">
<li>In the &ldquo;Search&rdquo; tab, click on the search bar, enter the name of some movie, and press Return. Very quickly, you should see many results, with slightly different titles, sizes, and numbers of &ldquo;Seeders&rdquo;, among other things.</li>
</ul>
@@ -300,9 +286,9 @@
</ul>
</div>
</div>
- <div id="outline-container-org64437eb" class="outline-3">
- <h3 id="org64437eb">Now just wait</h3>
- <div class="outline-text-3" id="text-org64437eb">
+ <div id="outline-container-org1f17162" class="outline-3">
+ <h3 id="org1f17162">Now just wait</h3>
+ <div class="outline-text-3" id="text-org1f17162">
<p>
You can track the progress of torrents being downloaded in the &ldquo;Transfers&rdquo; tab. When it&rsquo;s 100% complete, you can right-click the file, and click &ldquo;Preview file&rdquo; to have it play in your default media player.
</p>
@@ -312,21 +298,21 @@
</p>
</div>
</div>
- <div id="outline-container-org3660635" class="outline-3">
- <h3 id="org3660635">Extra tips</h3>
- <div class="outline-text-3" id="text-org3660635">
+ <div id="outline-container-org1f6f688" class="outline-3">
+ <h3 id="org1f6f688">Extra tips</h3>
+ <div class="outline-text-3" id="text-org1f6f688">
</div>
- <div id="outline-container-org6a58c3a" class="outline-4">
- <h4 id="org6a58c3a">Consider using a VPN</h4>
- <div class="outline-text-4" id="text-org6a58c3a">
+ <div id="outline-container-org981d293" class="outline-4">
+ <h4 id="org981d293">Consider using a VPN</h4>
+ <div class="outline-text-4" id="text-org981d293">
<p>
Some copyright holders use bots to detects users downloading their media. If you&rsquo;re not using a VPN, these companies can see your IP and potentially send complaints to your ISP. If you download many things and want to keep your ISP happy, using a VPN will ensure your torrenting can&rsquo;t be traced to your IP address. I personally use and recommend Mullvad ($5/month for 5 devices), but there are other reputable ones like Proton and IVPN.
</p>
</div>
</div>
- <div id="outline-container-orgc9d2e27" class="outline-4">
- <h4 id="orgc9d2e27">Stream Media</h4>
- <div class="outline-text-4" id="text-orgc9d2e27">
+ <div id="outline-container-org95882d3" class="outline-4">
+ <h4 id="org95882d3">Stream Media</h4>
+ <div class="outline-text-4" id="text-org95882d3">
<p>
When you go to download a torrent and the download prompt pops up, you can optionally select &ldquo;Download first and last pieces first&rdquo; and &ldquo;Download in sequential order&rdquo;.
</p>
@@ -336,9 +322,9 @@
</p>
</div>
</div>
- <div id="outline-container-org62e4edc" class="outline-4">
- <h4 id="org62e4edc">Hosting a media server with Jellyfin</h4>
- <div class="outline-text-4" id="text-org62e4edc">
+ <div id="outline-container-orgd8b0ae9" class="outline-4">
+ <h4 id="orgd8b0ae9">Hosting a media server with Jellyfin</h4>
+ <div class="outline-text-4" id="text-orgd8b0ae9">
<p>
Jellyfin is a Free and open-source media-hosting server you can run on your computer. It&rsquo;ll let you sign in to your library on a smart TV, other devices on your local network, or in a browser.
</p>
@@ -357,23 +343,23 @@
</item>
<item>
<title>QubesOS Saltstack configuration v1</title>
- <link>./feed.html#org13ab066</link>
+ <link>./feed.html#org6ddd067</link>
<author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#org13ab066</guid>
+ <guid isPermaLink="false">./feed.html#org6ddd067</guid>
<pubDate>Fri, 28 Feb 2025 14:30:00 -0700</pubDate>
<category><![CDATA[post]]></category>
<category><![CDATA[qubes]]></category>
- <description><![CDATA[<div id="outline-container-org365488e" class="outline-3">
- <h3 id="org365488e">Notice:</h3>
- <div class="outline-text-3" id="text-org365488e">
+ <description><![CDATA[<div id="outline-container-orgb83f952" class="outline-3">
+ <h3 id="orgb83f952">Notice:</h3>
+ <div class="outline-text-3" id="text-orgb83f952">
<p>
<b>The repository is now hosted on this site at <a href="https://git.skylarcloud.xyz">https://git.skylarcloud.xyz</a>, not Github! For up-to-date instructions, refer to the new README.org in the new repo, there have been lots of changes since the publishing of this post.</b>
</p>
</div>
</div>
- <div id="outline-container-org245ff19" class="outline-3">
- <h3 id="org245ff19">Intro</h3>
- <div class="outline-text-3" id="text-org245ff19">
+ <div id="outline-container-orgd5dd326" class="outline-3">
+ <h3 id="orgd5dd326">Intro</h3>
+ <div class="outline-text-3" id="text-orgd5dd326">
<p>
I&rsquo;m publishing the janky V1 of my QubesOS configuration written with Saltstack. It&rsquo;ll help set up a window manager, a couple of handy qubes, Doom Emacs, and the 3isec repo to jump-start your QubesOS experience.
</p>
@@ -386,42 +372,42 @@
You can use my configuration almost as-is (just change the username references!) and it does work, but it&rsquo;s not very feature-filled or optimized, and it&rsquo;s probable that the next versions will conflict with it.
</p>
</div>
- <div id="outline-container-org930a769" class="outline-4">
- <h4 id="org930a769">Link to repo on Github</h4>
- <div class="outline-text-4" id="text-org930a769">
+ <div id="outline-container-org6d8dca0" class="outline-4">
+ <h4 id="org6d8dca0">Link to repo on Github</h4>
+ <div class="outline-text-4" id="text-org6d8dca0">
<p>
<del><a href="https://github.com/bumbleoats/My-QubesOS-Configuration">https://github.com/bumbleoats/My-QubesOS-Configuration</a></del> &lt;- See the notice at the top of this post
</p>
</div>
</div>
- <div id="outline-container-org1a2a3d4" class="outline-4">
- <h4 id="org1a2a3d4">Installation</h4>
- <div class="outline-text-4" id="text-org1a2a3d4">
+ <div id="outline-container-org681cfe2" class="outline-4">
+ <h4 id="org681cfe2">Installation</h4>
+ <div class="outline-text-4" id="text-org681cfe2">
<p>
Make sure <code>state.user-dirs</code> is active, then just move the repo to <code>/srv/user_salt/</code> in dom0, and apply with <code>sudo qubesctl --all state.apply</code>
</p>
</div>
<ul class="org-ul">
- <li><a id="org3884587"></a>Resources for installation<br />
- <div class="outline-text-5" id="text-org3884587">
+ <li><a id="org9f0e550"></a>Resources for installation<br />
+ <div class="outline-text-5" id="text-org9f0e550">
</div>
<ul class="org-ul">
- <li><a id="org790a12b"></a>Community user guide for user-salt<br />
- <div class="outline-text-6" id="text-org790a12b">
+ <li><a id="org8cce602"></a>Community user guide for user-salt<br />
+ <div class="outline-text-6" id="text-org8cce602">
<ul class="org-ul">
<li><a href="https://forum.qubes-os.org/t/qubes-salt-beginners-guide/20126">https://forum.qubes-os.org/t/qubes-salt-beginners-guide/20126</a></li>
<li>This was the best resource I found as a beginner, I wasn&rsquo;t able to get anything working until I stumbled on it</li>
</ul>
</div>
</li>
- <li><a id="org0f5a58e"></a>Issue I sometimes run into from a fresh QubesOS install<br />
- <div class="outline-text-6" id="text-org0f5a58e">
+ <li><a id="orgf92682f"></a>Issue I sometimes run into from a fresh QubesOS install<br />
+ <div class="outline-text-6" id="text-orgf92682f">
<ul class="org-ul">
<li><a href="https://github.com/QubesOS/qubes-issues/issues/8491">https://github.com/QubesOS/qubes-issues/issues/8491</a></li>
<li>TL;DR: This is the solution that&rsquo;s worked for me, pulled from the discussion:</li>
</ul>
<div class="org-src-container">
- <pre class="src src-bash"><span style="color: #fabd2f;">ln</span> -s /srv/salt/qubes/user-dirs.top /srv/salt/_tops/base/user-dirs.top
+ <pre class="src src-bash"><span style="color: #66d9ef;">ln</span> -s /srv/salt/qubes/user-dirs.top /srv/salt/_tops/base/user-dirs.top
</pre>
</div>
</div>
@@ -431,9 +417,9 @@
</ul>
</div>
</div>
- <div id="outline-container-org3d1d5d4" class="outline-3">
- <h3 id="org3d1d5d4">Programs in dom0</h3>
- <div class="outline-text-3" id="text-org3d1d5d4">
+ <div id="outline-container-org36405af" class="outline-3">
+ <h3 id="org36405af">Programs in dom0</h3>
+ <div class="outline-text-3" id="text-org36405af">
<p>
My configuration will install a few programs in dom0. It&rsquo;s important that I put this at the top because generally, you want to limit the number of packages in dom0. Every new package is more attack surface on your most critical qube. I trust the programs I&rsquo;ve chosen to add, and by using my configuration, you&rsquo;re implicitly trusting them too.
</p>
@@ -443,20 +429,20 @@
</p>
</div>
</div>
- <div id="outline-container-orgc4e6e9d" class="outline-3">
- <h3 id="orgc4e6e9d">Window Management</h3>
- <div class="outline-text-3" id="text-orgc4e6e9d">
+ <div id="outline-container-org7d03068" class="outline-3">
+ <h3 id="org7d03068">Window Management</h3>
+ <div class="outline-text-3" id="text-org7d03068">
</div>
- <div id="outline-container-orgc23fe61" class="outline-4">
- <h4 id="orgc23fe61">i3</h4>
- <div class="outline-text-4" id="text-orgc23fe61">
+ <div id="outline-container-org308f8f6" class="outline-4">
+ <h4 id="org308f8f6">i3</h4>
+ <div class="outline-text-4" id="text-org308f8f6">
<p>
i3 is a tiling window manager. It&rsquo;s used primarily through the keyboard, so muscle memory can operate everything very quickly once you get used to it. When a window is opened, it will be &rsquo;tiled&rsquo;, maximizing screen space. To open windows, rofi is used to search for applications and qubes.
</p>
</div>
<ul class="org-ul">
- <li><a id="orge248802"></a>Keybindings<br />
- <div class="outline-text-5" id="text-orge248802">
+ <li><a id="org6314c23"></a>Keybindings<br />
+ <div class="outline-text-5" id="text-org6314c23">
<p>
You can navigate i3 with &rsquo;vim-like&rsquo; keybindings, inspired by the vi text editor. Some basic keybindings are shown below, and you can see many more by reading i3&rsquo;s config file at <code>/srv/user_salt/dots/i3</code>
</p>
@@ -511,9 +497,9 @@
</li>
</ul>
</div>
- <div id="outline-container-org0dbbc7d" class="outline-4">
- <h4 id="org0dbbc7d">Misc</h4>
- <div class="outline-text-4" id="text-org0dbbc7d">
+ <div id="outline-container-orga2000a6" class="outline-4">
+ <h4 id="orga2000a6">Misc</h4>
+ <div class="outline-text-4" id="text-orga2000a6">
<p>
<code>wm.sls</code> will do a few other smaller things:
</p>
@@ -528,13 +514,13 @@
</div>
</div>
</div>
- <div id="outline-container-org79f9dfc" class="outline-3">
- <h3 id="org79f9dfc">My qubes</h3>
- <div class="outline-text-3" id="text-org79f9dfc">
+ <div id="outline-container-org9abb24a" class="outline-3">
+ <h3 id="org9abb24a">My qubes</h3>
+ <div class="outline-text-3" id="text-org9abb24a">
</div>
- <div id="outline-container-org900f87f" class="outline-4">
- <h4 id="org900f87f">Emacs</h4>
- <div class="outline-text-4" id="text-org900f87f">
+ <div id="outline-container-org3c966c0" class="outline-4">
+ <h4 id="org3c966c0">Emacs</h4>
+ <div class="outline-text-4" id="text-org3c966c0">
<p>
If you&rsquo;re a Doom Emacs user (there are dozens of us!) this will hopefully make your life slightly easier.
</p>
@@ -548,9 +534,9 @@
</p>
</div>
</div>
- <div id="outline-container-org1566085" class="outline-4">
- <h4 id="org1566085">Torrenting</h4>
- <div class="outline-text-4" id="text-org1566085">
+ <div id="outline-container-orgde33038" class="outline-4">
+ <h4 id="orgde33038">Torrenting</h4>
+ <div class="outline-text-4" id="text-orgde33038">
<p>
A template and app qube for qBittorrent will be created. The gruxbox theme that I use will be moved from dom0 to the app qube so it&rsquo;s easy to apply.
</p>
@@ -569,8 +555,8 @@
</ol>
</div>
<ul class="org-ul">
- <li><a id="orgdf1421c"></a>VPN use<br />
- <div class="outline-text-5" id="text-orgdf1421c">
+ <li><a id="org6b0ccda"></a>VPN use<br />
+ <div class="outline-text-5" id="text-org6b0ccda">
<p>
If you&rsquo;re downloading copyrighted content in an area where it&rsquo;s illegal, I would strongly urge you consider using a VPN to hide your IP address. LE is unlikely to bust down your door for watching Spongebob, but copyright holders can and will send letters to your ISP, which can eventually get your internet service shut off if you continue. Tor can be used, but it&rsquo;s extremely slow, and hogs a lot of bandwidth on the network.
</p>
@@ -582,18 +568,18 @@
</li>
</ul>
</div>
- <div id="outline-container-org67d5c70" class="outline-4">
- <h4 id="org67d5c70">Personal/work email</h4>
- <div class="outline-text-4" id="text-org67d5c70">
+ <div id="outline-container-org04692c2" class="outline-4">
+ <h4 id="org04692c2">Personal/work email</h4>
+ <div class="outline-text-4" id="text-org04692c2">
<p>
A template for email will be created, and two app qubes, &ldquo;email-personal&rdquo; and &ldquo;email-work&rdquo;. These just have the Thunderbird email client installed so you can sign into your accounts.
</p>
</div>
</div>
</div>
- <div id="outline-container-org346e2c8" class="outline-3">
- <h3 id="org346e2c8">3isec</h3>
- <div class="outline-text-3" id="text-org346e2c8">
+ <div id="outline-container-org6570ace" class="outline-3">
+ <h3 id="org6570ace">3isec</h3>
+ <div class="outline-text-3" id="text-org6570ace">
<p>
The 3isec repo is a handy repository of salt files with some miscellaneous utilities. The repository will be added to dom0, their gpg key will be added from this salt repository, and their graphical interface for it will be installed in dom0. You can start it with &rsquo;qubes-task-gui&rsquo; in dom0.
</p>
@@ -603,9 +589,9 @@
</p>
</div>
</div>
- <div id="outline-container-orgff458ab" class="outline-3">
- <h3 id="orgff458ab">Post install</h3>
- <div class="outline-text-3" id="text-orgff458ab">
+ <div id="outline-container-orga443225" class="outline-3">
+ <h3 id="orga443225">Post install</h3>
+ <div class="outline-text-3" id="text-orga443225">
<p>
Almost everything will be done out of the box, but here are some recommended finishing touches:
</p>
@@ -617,9 +603,9 @@
</ul>
</div>
</div>
- <div id="outline-container-org2918b7b" class="outline-3">
- <h3 id="org2918b7b">What&rsquo;s next?</h3>
- <div class="outline-text-3" id="text-org2918b7b">
+ <div id="outline-container-org1dd7207" class="outline-3">
+ <h3 id="org1dd7207">What&rsquo;s next?</h3>
+ <div class="outline-text-3" id="text-org1dd7207">
<p>
This project will develop over time as I learn more about Saltstack and continue to work on my personal configuration. I have lots of plans:
</p>
@@ -639,14 +625,14 @@
</item>
<item>
<title>Create an anonymous Whonix environment with KVM + NixOS</title>
- <link>./feed.html#orgf5943ec</link>
+ <link>./feed.html#org273106a</link>
<author>user@emacs-org (nil)</author>
- <guid isPermaLink="false">./feed.html#orgf5943ec</guid>
+ <guid isPermaLink="false">./feed.html#org273106a</guid>
<pubDate>Fri, 28 Feb 2025 14:30:00 -0700</pubDate>
<category><![CDATA[post]]></category>
- <description><![CDATA[<div id="outline-container-org432963e" class="outline-3">
- <h3 id="org432963e">The why</h3>
- <div class="outline-text-3" id="text-org432963e">
+ <description><![CDATA[<div id="outline-container-orgd4c6d11" class="outline-3">
+ <h3 id="orgd4c6d11">The why</h3>
+ <div class="outline-text-3" id="text-orgd4c6d11">
<p>
I&rsquo;ve spent significant time using QubesOS on various computers, and I&rsquo;ve been thoroughly spoiled by the VM magic Zen and the Qubes team have enabled. For a few reasons though, I&rsquo;ve recently switched my main laptop from running QubesOS to NixOS. NixOS is great: it&rsquo;s declaratively managed, fast, stable, has tons of fresh packages, but I can&rsquo;t help but feel like my trust in the system has decreased a little bit due to the lack of isolation via virtualization that QubesOS provides.
</p>
@@ -664,9 +650,9 @@
</p>
</div>
</div>
- <div id="outline-container-org96aeff6" class="outline-3">
- <h3 id="org96aeff6">What&rsquo;s Whonix?</h3>
- <div class="outline-text-3" id="text-org96aeff6">
+ <div id="outline-container-orgc554268" class="outline-3">
+ <h3 id="orgc554268">What&rsquo;s Whonix?</h3>
+ <div class="outline-text-3" id="text-orgc554268">
<p>
Whonix is a 2-VM setup for compartmentalizing your computing, and uses the Tor Network to keep your activity anonymous. It runs on KickSecure (hardened Debian).
</p>
@@ -680,53 +666,53 @@
</p>
</div>
</div>
- <div id="outline-container-org3e16785" class="outline-3">
- <h3 id="org3e16785">KVM vs VirtualBox</h3>
- <div class="outline-text-3" id="text-org3e16785">
+ <div id="outline-container-orge52a6b2" class="outline-3">
+ <h3 id="orge52a6b2">KVM vs VirtualBox</h3>
+ <div class="outline-text-3" id="text-orge52a6b2">
<p>
Whonix supports 2 type-2 hypervisors: KVM and VirtualBox. KVM is build into the Linux kernel, and is thus fully <a href="https://www.gnu.org/philosophy/free-sw.en.html">Free Software</a>. VirtualBox is developed and maintained by Oracle, and is not Free software. I&rsquo;ll be using KVM for these examples, but there&rsquo;s a <a href="https://www.whonix.org/wiki/VirtualBox">convenient guide for VirtualBox</a>.
</p>
</div>
</div>
- <div id="outline-container-orgc2fe959" class="outline-3">
- <h3 id="orgc2fe959">KVM vs QubesOS Zen</h3>
- <div class="outline-text-3" id="text-orgc2fe959">
+ <div id="outline-container-org1ecabc2" class="outline-3">
+ <h3 id="org1ecabc2">KVM vs QubesOS Zen</h3>
+ <div class="outline-text-3" id="text-org1ecabc2">
</div>
- <div id="outline-container-org8a2e740" class="outline-4">
- <h4 id="org8a2e740">Hypervisor simplicity</h4>
- <div class="outline-text-4" id="text-org8a2e740">
+ <div id="outline-container-org39b0c83" class="outline-4">
+ <h4 id="org39b0c83">Hypervisor simplicity</h4>
+ <div class="outline-text-4" id="text-org39b0c83">
<p>
KVM is part of the Linux kernel, meaning that the virtualization is being done by a larger, monolithic program than a type-1 hypervisor like Zen, with a larger attack surface.
</p>
</div>
</div>
- <div id="outline-container-orgdc30e0a" class="outline-4">
- <h4 id="orgdc30e0a">Type-1 vs type-2 hypervisor</h4>
- <div class="outline-text-4" id="text-orgdc30e0a">
+ <div id="outline-container-orgb9fbc2f" class="outline-4">
+ <h4 id="orgb9fbc2f">Type-1 vs type-2 hypervisor</h4>
+ <div class="outline-text-4" id="text-orgb9fbc2f">
<p>
KVM runs on a host Linux system, and therefor the contents of the VM are only as secure as the host system. This is perhaps the biggest downside to running this KVM setup over Qubes in terms of security. I&rsquo;d recommend delegating any risky activity to VMs like Whonix to try to mitigate the risk of malware running on your host system.
</p>
</div>
</div>
- <div id="outline-container-orgcec5bda" class="outline-4">
- <h4 id="orgcec5bda">No sys-net/firewall/usb/audio/etc.</h4>
- <div class="outline-text-4" id="text-orgcec5bda">
+ <div id="outline-container-org37e8036" class="outline-4">
+ <h4 id="org37e8036">No sys-net/firewall/usb/audio/etc.</h4>
+ <div class="outline-text-4" id="text-org37e8036">
<p>
QubesOS uses VMs to compartmentalize the hardware, and running Whonix on a Linux host keeps those in the domain of the large Linux kernel.
</p>
</div>
</div>
- <div id="outline-container-org1c61c9a" class="outline-4">
- <h4 id="org1c61c9a">Performance</h4>
- <div class="outline-text-4" id="text-org1c61c9a">
+ <div id="outline-container-org19c60de" class="outline-4">
+ <h4 id="org19c60de">Performance</h4>
+ <div class="outline-text-4" id="text-org19c60de">
<p>
Whonix on KVM performs about as well as on QubesOS (varying based on how much virtual CPU/memory you allocate of course), but a big benefit of having a Linux host is that the applications ran in it won&rsquo;t be slowed down by virtualization. Risky activities can be compartmentalized while keeping the main system fast and convenient to use.
</p>
</div>
</div>
- <div id="outline-container-org3670d62" class="outline-4">
- <h4 id="org3670d62">Relevant Whonix security documentation</h4>
- <div class="outline-text-4" id="text-org3670d62">
+ <div id="outline-container-org3a2b46d" class="outline-4">
+ <h4 id="org3a2b46d">Relevant Whonix security documentation</h4>
+ <div class="outline-text-4" id="text-org3a2b46d">
<p>
The advantages QubesOS has over KVM listed above are just a few basic examples. QubesOS has a much more robust security model in many ways, and if your security is <b>essential</b>, you should understand the downsides:
</p>
@@ -736,9 +722,9 @@
</div>
</div>
</div>
- <div id="outline-container-orgd7acde3" class="outline-3">
- <h3 id="orgd7acde3">Installing Whonix on KVM</h3>
- <div class="outline-text-3" id="text-orgd7acde3">
+ <div id="outline-container-org64cfa58" class="outline-3">
+ <h3 id="org64cfa58">Installing Whonix on KVM</h3>
+ <div class="outline-text-3" id="text-org64cfa58">
<p>
Make sure to check the relevant NixOS and Whonix documentation to ensure these examples are up-to-date. Always be weary of executing commands from a random blog on the internet, and go to the source whenever possible.
</p>
@@ -752,9 +738,9 @@
Some of this setup (packages, user groups, dconf settings, the actual virtualization setup) is declaratively configured, but many of the commands to set up Whonix are not. On a fresh NixOS system build with your configuration.nix, you&rsquo;ll still need to download the Whonix images and set them up with the commands outlined below. It&rsquo;s possible more (or even all?) of this could be done declaratively with more NixOS knowledge.
</p>
</div>
- <div id="outline-container-orgb454273" class="outline-4">
- <h4 id="orgb454273">Installing KVM + Virt-manager</h4>
- <div class="outline-text-4" id="text-orgb454273">
+ <div id="outline-container-orgd1e5da5" class="outline-4">
+ <h4 id="orgd1e5da5">Installing KVM + Virt-manager</h4>
+ <div class="outline-text-4" id="text-orgd1e5da5">
<p>
Enable libvirtd and virt-manager
</p>
@@ -804,16 +790,16 @@
</p>
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Start qemu networking</span>
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-autostart default
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-start default
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Start qemu networking</span>
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-autostart default
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-start default
</pre>
</div>
</div>
</div>
- <div id="outline-container-org80f9c71" class="outline-4">
- <h4 id="org80f9c71">Download the Whonix XFCE .qcow archive</h4>
- <div class="outline-text-4" id="text-org80f9c71">
+ <div id="outline-container-org593904f" class="outline-4">
+ <h4 id="org593904f">Download the Whonix XFCE .qcow archive</h4>
+ <div class="outline-text-4" id="text-org593904f">
<ul class="org-ul">
<li>You can the most up-to-date versions directly from their website:
<ul class="org-ul">
@@ -823,30 +809,30 @@
</ul>
</div>
</div>
- <div id="outline-container-orgf2cbf5f" class="outline-4">
- <h4 id="orgf2cbf5f">Extract the archive</h4>
- <div class="outline-text-4" id="text-orgf2cbf5f">
+ <div id="outline-container-org7295164" class="outline-4">
+ <h4 id="org7295164">Extract the archive</h4>
+ <div class="outline-text-4" id="text-org7295164">
<p>
- Make sure your working directory and archive are both in your home directory. (You may need to <code class="src src-sh"><span style="color: #fabd2f;">mv</span> ~/Downloads/Whonix* ~/</code>)
+ Make sure your working directory and archive are both in your home directory. (You may need to <code class="src src-sh"><span style="color: #66d9ef;">mv</span> ~/Downloads/Whonix* ~/</code>)
</p>
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Unpacking archive with gnu tar</span>
- <span style="color: #fe8019;">[</span>~/<span style="color: #fe8019;">]</span>$ tar -xvf Whonix*.libvirt.xz
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Unpacking archive with gnu tar</span>
+ <span style="color: #fb2874;">[</span>~/<span style="color: #fb2874;">]</span>$ tar -xvf Whonix*.libvirt.xz
</pre>
</div>
</div>
</div>
- <div id="outline-container-orgca23ff0" class="outline-4">
- <h4 id="orgca23ff0">Agree to the Whonix Binary License Agreement</h4>
- <div class="outline-text-4" id="text-orgca23ff0">
+ <div id="outline-container-org47154c4" class="outline-4">
+ <h4 id="org47154c4">Agree to the Whonix Binary License Agreement</h4>
+ <div class="outline-text-4" id="text-org47154c4">
<p>
To read the agreement, use:
</p>
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Prints the license agreement</span>
- <span style="color: #fe8019;">[</span>~/<span style="color: #fe8019;">]</span>$ more WHONIX_BINARY_LICENSE_AGREEMENT
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Prints the license agreement</span>
+ <span style="color: #fb2874;">[</span>~/<span style="color: #fb2874;">]</span>$ more WHONIX_BINARY_LICENSE_AGREEMENT
</pre>
</div>
@@ -855,73 +841,73 @@
</p>
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Creates an empty file "..._accepted" that tells Whonix you agree</span>
- <span style="color: #fe8019;">[</span>~/<span style="color: #fe8019;">]</span>$ <span style="color: #fabd2f;">touch</span> WHONIX_BINARY_LICENSE_AGREEMENT_accepted
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Creates an empty file "..._accepted" that tells Whonix you agree</span>
+ <span style="color: #fb2874;">[</span>~/<span style="color: #fb2874;">]</span>$ <span style="color: #66d9ef;">touch</span> WHONIX_BINARY_LICENSE_AGREEMENT_accepted
</pre>
</div>
</div>
</div>
- <div id="outline-container-orgec17fff" class="outline-4">
- <h4 id="orgec17fff">Setup Whonix virtual networks</h4>
- <div class="outline-text-4" id="text-orgec17fff">
+ <div id="outline-container-orgdd9c86a" class="outline-4">
+ <h4 id="orgdd9c86a">Setup Whonix virtual networks</h4>
+ <div class="outline-text-4" id="text-orgdd9c86a">
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Add virtual networks</span>
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-define Whonix_external*.xml
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-define Whonix_internal*.xml
-
- <span style="color: #928374;"># </span><span style="color: #928374;">Activate the networks</span>
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-autostart Whonix-External
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-start Whonix-External
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-autostart Whonix-Internal
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system net-start Whonix-Internal
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Add virtual networks</span>
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-define Whonix_external*.xml
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-define Whonix_internal*.xml
+
+ <span style="color: #555556;"># </span><span style="color: #555556;">Activate the networks</span>
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-autostart Whonix-External
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-start Whonix-External
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-autostart Whonix-Internal
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system net-start Whonix-Internal
</pre>
</div>
</div>
</div>
- <div id="outline-container-org0d05ec2" class="outline-4">
- <h4 id="org0d05ec2">Import Whonix Gateway and Workstation images</h4>
- <div class="outline-text-4" id="text-org0d05ec2">
+ <div id="outline-container-org12cc717" class="outline-4">
+ <h4 id="org12cc717">Import Whonix Gateway and Workstation images</h4>
+ <div class="outline-text-4" id="text-org12cc717">
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Creates two qemu profiles for the Whonix VMs</span>
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system define Whonix-Gateway*.xml
- <span style="color: #fabd2f;">sudo</span> virsh -c qemu:///system define Whonix-Workstation*.xml
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Creates two qemu profiles for the Whonix VMs</span>
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system define Whonix-Gateway*.xml
+ <span style="color: #66d9ef;">sudo</span> virsh -c qemu:///system define Whonix-Workstation*.xml
</pre>
</div>
</div>
</div>
- <div id="outline-container-orgf4e6236" class="outline-4">
- <h4 id="orgf4e6236">Image File Installation</h4>
- <div class="outline-text-4" id="text-orgf4e6236">
+ <div id="outline-container-org37743e9" class="outline-4">
+ <h4 id="org37743e9">Image File Installation</h4>
+ <div class="outline-text-4" id="text-org37743e9">
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Assigns those qemu VMs to the Whonix .qcow2 images</span>
- <span style="color: #fe8019;">[</span>~/<span style="color: #fe8019;">]</span>$ <span style="color: #fabd2f;">sudo</span> <span style="color: #fabd2f;">mv</span> Whonix-Gateway*.qcow2 /var/lib/libvirt/images/Whonix-Gateway.qcow2
- <span style="color: #fe8019;">[</span>~/<span style="color: #fe8019;">]</span>$ <span style="color: #fabd2f;">sudo</span> <span style="color: #fabd2f;">mv</span> Whonix-Workstation*.qcow2 /var/lib/libvirt/images/Whonix-Workstation.qcow2
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Assigns those qemu VMs to the Whonix .qcow2 images</span>
+ <span style="color: #fb2874;">[</span>~/<span style="color: #fb2874;">]</span>$ <span style="color: #66d9ef;">sudo</span> <span style="color: #66d9ef;">mv</span> Whonix-Gateway*.qcow2 /var/lib/libvirt/images/Whonix-Gateway.qcow2
+ <span style="color: #fb2874;">[</span>~/<span style="color: #fb2874;">]</span>$ <span style="color: #66d9ef;">sudo</span> <span style="color: #66d9ef;">mv</span> Whonix-Workstation*.qcow2 /var/lib/libvirt/images/Whonix-Workstation.qcow2
</pre>
</div>
</div>
</div>
- <div id="outline-container-orgd625a00" class="outline-4">
- <h4 id="orgd625a00">Remove Whonix home clutter</h4>
- <div class="outline-text-4" id="text-orgd625a00">
+ <div id="outline-container-org9c33d8a" class="outline-4">
+ <h4 id="org9c33d8a">Remove Whonix home clutter</h4>
+ <div class="outline-text-4" id="text-org9c33d8a">
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">WARNING: running this command will delete every file that starts with "Whonix" or "WHONIX" in your working directory.</span>
- <span style="color: #fe8019;">[</span>~/<span style="color: #fe8019;">]</span>$ <span style="color: #fabd2f;">rm</span> Whonix*
- <span style="color: #fe8019;">[</span>~/<span style="color: #fe8019;">]</span>$ <span style="color: #fabd2f;">rm</span> -r WHONIX*
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">WARNING: running this command will delete every file that starts with "Whonix" or "WHONIX" in your working directory.</span>
+ <span style="color: #fb2874;">[</span>~/<span style="color: #fb2874;">]</span>$ <span style="color: #66d9ef;">rm</span> Whonix*
+ <span style="color: #fb2874;">[</span>~/<span style="color: #fb2874;">]</span>$ <span style="color: #66d9ef;">rm</span> -r WHONIX*
</pre>
</div>
</div>
</div>
</div>
- <div id="outline-container-orgfe6696e" class="outline-3">
- <h3 id="orgfe6696e">Post-installation</h3>
- <div class="outline-text-3" id="text-orgfe6696e">
+ <div id="outline-container-org28e44a3" class="outline-3">
+ <h3 id="org28e44a3">Post-installation</h3>
+ <div class="outline-text-3" id="text-org28e44a3">
<p>
Use the virt-manager application to start Whonix-Gateway, and open its terminal. We&rsquo;ll use setup-dist to create your Tor connection and otherwise prepare Whonix for use.
</p>
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Whonix Gateway VM</span>
- <span style="color: #fe8019;">[</span>gateway user ~<span style="color: #fe8019;">]</span>% <span style="color: #fabd2f;">sudo</span> setup-dist
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Whonix Gateway VM</span>
+ <span style="color: #fb2874;">[</span>gateway user ~<span style="color: #fb2874;">]</span>% <span style="color: #66d9ef;">sudo</span> setup-dist
</pre>
</div>
@@ -930,8 +916,8 @@
</p>
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Whonix Gateway VM</span>
- <span style="color: #fe8019;">[</span>gateway user ~<span style="color: #fe8019;">]</span>% <span style="color: #fabd2f;">sudo</span> apt-get dist-upgrade
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Whonix Gateway VM</span>
+ <span style="color: #fb2874;">[</span>gateway user ~<span style="color: #fb2874;">]</span>% <span style="color: #66d9ef;">sudo</span> apt-get dist-upgrade
</pre>
</div>
@@ -940,26 +926,26 @@
</p>
<div class="org-src-container">
- <pre class="src src-sh"><span style="color: #928374;"># </span><span style="color: #928374;">Whonix Workstation VM</span>
- <span style="color: #fe8019;">[</span>workstation user ~<span style="color: #fe8019;">]</span>% <span style="color: #fabd2f;">sudo</span> apt-get dist-upgrade
+ <pre class="src src-sh"><span style="color: #555556;"># </span><span style="color: #555556;">Whonix Workstation VM</span>
+ <span style="color: #fb2874;">[</span>workstation user ~<span style="color: #fb2874;">]</span>% <span style="color: #66d9ef;">sudo</span> apt-get dist-upgrade
</pre>
</div>
</div>
</div>
- <div id="outline-container-org3a97a87" class="outline-3">
- <h3 id="org3a97a87">Using Whonix</h3>
- <div class="outline-text-3" id="text-org3a97a87">
+ <div id="outline-container-org85272b6" class="outline-3">
+ <h3 id="org85272b6">Using Whonix</h3>
+ <div class="outline-text-3" id="text-org85272b6">
<p>
Assuming the VMs are booting properly and can receive updates, you should be good to go! You now have a compartmentalized environment where your traffic will be anonymized, and any malware should generally be contained to the VM (sophisticated enough malware could theoretically jump the KVM hypervisor, but if that&rsquo;s part of your threat model you probably shouldn&rsquo;t be getting security advice from this blog :P)
</p>
</div>
- <div id="outline-container-org3681f9d" class="outline-4">
- <h4 id="org3681f9d">Some tips</h4>
- <div class="outline-text-4" id="text-org3681f9d">
+ <div id="outline-container-org666134d" class="outline-4">
+ <h4 id="org666134d">Some tips</h4>
+ <div class="outline-text-4" id="text-org666134d">
</div>
<ul class="org-ul">
- <li><a id="org73f9953"></a>Basic applications<br />
- <div class="outline-text-5" id="text-org73f9953">
+ <li><a id="orgf024b78"></a>Basic applications<br />
+ <div class="outline-text-5" id="text-orgf024b78">
<ul class="org-ul">
<li>Tor Browser: Fingerprinting-resistant browser made for anonymous internet use</li>
<li>VLC: Video player capable of playing almost media file you throw at it</li>
@@ -971,8 +957,8 @@
</ul>
</div>
</li>
- <li><a id="orgdcddccc"></a>Staying secure and anonymous<br />
- <div class="outline-text-5" id="text-orgdcddccc">
+ <li><a id="org1c72784"></a>Staying secure and anonymous<br />
+ <div class="outline-text-5" id="text-org1c72784">
<p>
Think before you act! Whonix gives you a good platform for staying anonymous, but you can absolutely de-anonymize yourself if you&rsquo;re not careful.
</p>
@@ -990,8 +976,8 @@
</p>
</div>
<ul class="org-ul">
- <li><a id="org2b1700b"></a>Use a live system when possible<br />
- <div class="outline-text-6" id="text-org2b1700b">
+ <li><a id="org1ed5669"></a>Use a live system when possible<br />
+ <div class="outline-text-6" id="text-org1ed5669">
<p>
When you&rsquo;re booting the Workstation VM, you can select the option to run it &rsquo;live&rsquo;. This means that when you shutdown the VM, everything you did during the session is erased.
</p>
@@ -1005,8 +991,8 @@
</p>
</div>
</li>
- <li><a id="orgf4c4ff7"></a>Optionally disable Javascript in Tor Browser<br />
- <div class="outline-text-6" id="text-orgf4c4ff7">
+ <li><a id="org94e21d5"></a>Optionally disable Javascript in Tor Browser<br />
+ <div class="outline-text-6" id="text-org94e21d5">
<p>
Javascript adds a massive attack surface to your browser, and disabling it can remove entire categories of browser-based malware. But, many many sites rely on Javascript for basic functionality.
</p>