<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://matas-noreika.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://matas-noreika.github.io/" rel="alternate" type="text/html" /><updated>2026-04-08T11:35:13+00:00</updated><id>https://matas-noreika.github.io/feed.xml</id><title type="html">Matas Does Things</title><subtitle>This is my personal blogging site to share topics that I am currently exploring.</subtitle><author><name>Matas Noreika</name><email>matassimkus55@gmail.com</email></author><entry><title type="html">Linux Environment With WSL</title><link href="https://matas-noreika.github.io/windows/wsl/2026/03/29/linux-environment-with-wsl.html" rel="alternate" type="text/html" title="Linux Environment With WSL" /><published>2026-03-29T15:33:58+00:00</published><updated>2026-03-29T15:33:58+00:00</updated><id>https://matas-noreika.github.io/windows/wsl/2026/03/29/linux-environment-with-wsl</id><content type="html" xml:base="https://matas-noreika.github.io/windows/wsl/2026/03/29/linux-environment-with-wsl.html"><![CDATA[<p>In this blog post we are going to explore a fun option of maintaining the
best of both worlds from Windows and Linux. I discovered
WSL (Windows Subsystem for Linux) around my second year of college.
I wanted to have a Linux development environment without having to give up
all the support of the windows platform. Historically Windows has always had
some support for a Linux like environment to maintain consistency within the
software world.</p>

<h2 id="how-to-set-up">How to Set Up</h2>

<p>Open up a Powershell terminal in administrator mode and run the following
command:</p>

<pre><code class="language-Shell">wsl --install -d &lt;DistroName&gt;
</code></pre>

<p>In the place of <code class="language-plaintext highlighter-rouge">&lt;DistroName&gt;</code> I chose Debian although if you leave it out by
default Ubuntu is installed (which runs Debian under the hood anyways).</p>

<p>Your PC will need a restart, once that is complete you can move onto the next
step.</p>

<h2 id="using-wsl">Using WSL</h2>

<p>In order to turn on your distributions terminal you can open windows terminal
application and on the Powershell prompt write <code class="language-plaintext highlighter-rouge">wsl</code>. This might prompt a user
configuration on initial use.</p>

<h2 id="additional-tools">Additional Tools</h2>

<p>I suggest for users that develop on embedded systems to install an additional
tool called <code class="language-plaintext highlighter-rouge">usbipd</code> which maps the USB ports virtually into the WSL instance.</p>

<p>Use the following command to install <code class="language-plaintext highlighter-rouge">usbipd</code> using Windows Package Manager
(winget):</p>

<pre><code class="language-Shell">winget install --interactive --exact dorssel.usbipd-win
</code></pre>

<p>Once installed you may use the tool to <code class="language-plaintext highlighter-rouge">list</code>, <code class="language-plaintext highlighter-rouge">bind</code> and <code class="language-plaintext highlighter-rouge">attach</code> the desired devices.
<em>Ensure you run the Powershell in administrator mode you may run the following
command to open administrator from inside a Powershell terminal</em>:</p>

<pre><code class="language-Shell">start prowershell -Verb RunAs
</code></pre>

<p>List Example:</p>

<pre><code class="language-Shell">usbipd list
</code></pre>

<p>Output:</p>

<pre><code class="language-Shell">Connected:
BUSID  VID:PID    DEVICE                                                        STATE
1-7    13d3:54b1  Integrated Camera                                             Shared
1-9    046d:c53f  LIGHTSPEED Receiver, USB Input Device                         Not shared
1-10   8087:0026  Intel(R) Wireless Bluetooth(R)                                Shared

Persisted:
GUID                                  DEVICE
</code></pre>

<p>Binding Example:</p>

<pre><code class="language-Shell">usbipd bind -b &lt;BUSID&gt;
</code></pre>

<p>If you run <code class="language-plaintext highlighter-rouge">list</code> again upon binding device the STATE should show Shared.</p>

<p>Attach Example:</p>

<pre><code class="language-Shell">usbipd attach --wsl -b &lt;BUSID&gt;
</code></pre>

<p>Output:</p>

<pre><code class="language-Shell">usbipd: info: Using WSL distribution 'Debian' to attach; the device will be available in all WSL 2 distributions.
usbipd: info: Detected networking mode 'nat'.
usbipd: info: Using IP address 172.27.128.1 to reach the host.
</code></pre>

<p>If you wish to return the device control to windows run the following command:</p>

<pre><code class="language-Shell">usbipd detach -b &lt;BUSID&gt;
</code></pre>]]></content><author><name>Matas Noreika</name><email>matassimkus55@gmail.com</email></author><category term="windows" /><category term="wsl" /><summary type="html"><![CDATA[In this blog post we are going to explore a fun option of maintaining the best of both worlds from Windows and Linux. I discovered WSL (Windows Subsystem for Linux) around my second year of college. I wanted to have a Linux development environment without having to give up all the support of the windows platform. Historically Windows has always had some support for a Linux like environment to maintain consistency within the software world.]]></summary></entry></feed>