<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Linux on Unnamed Website</title><link>https://unnamed.website/tags/linux/</link><description>Recent content in Linux on Unnamed Website</description><generator>Hugo</generator><language>en-us</language><managingEditor>Anthony Wang</managingEditor><webMaster>Anthony Wang</webMaster><lastBuildDate>Wed, 11 Dec 2024 11:45:43 -0500</lastBuildDate><atom:link href="https://unnamed.website/tags/linux/index.xml" rel="self" type="application/rss+xml"/><item><title>Inessential XVM</title><link>https://unnamed.website/posts/inessential-xvm/</link><pubDate>Wed, 11 Dec 2024 11:45:43 -0500</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/inessential-xvm/</guid><description>&lt;p&gt;Like free stuff? If you&amp;rsquo;re an MIT student, did you know you can get a free virtual machine, courtesy of &lt;a href="https://sipb.mit.edu"&gt;SIPB&lt;/a&gt;&amp;rsquo;s XVM project? (And if you&amp;rsquo;re not an MIT student, well sorry, this guide probably won&amp;rsquo;t be very useful then.) That&amp;rsquo;s right, your own tiny VM, for free! Mandatory disclaimer: the VMs are indeed&amp;hellip; very tiny, with only one core and 512 MiB of RAM, and XVM has some quirks. But you can still do a lot of cool stuff with it!&lt;/p&gt;</description></item><item><title>An Obscure Chinese OS Saved My Computer From Saddam Hussein's LinkedIn</title><link>https://unnamed.website/posts/saddam-linkedin-aosc/</link><pubDate>Sun, 03 Nov 2024 16:25:20 -0500</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/saddam-linkedin-aosc/</guid><description>&lt;p&gt;I wish this was a joke, but it isn&amp;rsquo;t. Saddam Hussein&amp;rsquo;s LinkedIn caused me to delete all my Firefox browser data. Yeah, for real.&lt;/p&gt;
&lt;p&gt;Yesterday, a friend of mine made a &lt;a href="https://parallax.unnamed.website"&gt;website&lt;/a&gt; with some cool CSS and JS tricks, and everything was great and awesome and then my computer froze and I had to hard shutdown it! For whatever reason, resizing the Firefox window while visiting that site causes a freeze? Weird.&lt;/p&gt;</description></item><item><title>Automatically Switching the Virtual Keyboard in KDE Plasma</title><link>https://unnamed.website/posts/switch-virtual-keyboard/</link><pubDate>Wed, 25 Sep 2024 21:54:00 -0400</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/switch-virtual-keyboard/</guid><description>&lt;p&gt;Welcome back to yet another episode of solving extremely obscure Linux problems that probably zero other people worldwide are suffering from! This time, the problem is that on my convertible laptop, I sometimes use both Fcitx 5 for typing Chinese and Maliit Keyboard as a touchscreen keyboard. In Wayland, both of these use the &lt;a href="https://wayland.app/protocols/virtual-keyboard-unstable-v1"&gt;same virtual keyboard protocol&lt;/a&gt; and thus only one of them can be active at the same time. I&amp;rsquo;m not a Wayland expert so this actually might be a limitation in KWin, not in the Wayland protocol. (I have a friend who&amp;rsquo;s a Wayland expert but that&amp;rsquo;s because he lives there. Wayland the town, not the protocol.) Fortunately, I only use Fcitx 5 when the laptop is in its normal mode with the physical keyboard accessible, and Maliit Keyboard when the laptop is in tablet mode with the physical keyboard folded back. So there lies the problem: How do I switch the virtual keyboard when entering and exiting tablet mode?&lt;/p&gt;</description></item><item><title>PAM Authentication Without Access to /etc/shadow</title><link>https://unnamed.website/posts/pam-auth-without-access-etc-shadow/</link><pubDate>Thu, 09 May 2024 13:20:14 -0400</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/pam-auth-without-access-etc-shadow/</guid><description>&lt;p&gt;Hello and welcome back to extremely obscure solutions to extremely obscure Linux problems! PAM is the thing in Linux that handles authentication whenever you log into your machine. Forgejo has a nice feature where you can compile it with PAM support and use PAM for authentication so you don&amp;rsquo;t have to manually add users to your Forgejo instance if they already have a normal Linux account on your machine. However, &lt;code&gt;pam_unix.so&lt;/code&gt;, the PAM plugin used for authenticating Linux users, can only check if a password is correct for the user running the process. Basically, if you run Forgejo as the &lt;code&gt;forgejo&lt;/code&gt; user, you can only verify passwords for the &lt;code&gt;forgejo&lt;/code&gt; user. Two simple solutions: run Forgejo as root (please please please don&amp;rsquo;t) and give Forgejo access to the &lt;code&gt;/etc/shadow&lt;/code&gt; file which stores password hashes. The second option is less bad but still worrisome because you&amp;rsquo;re basically handing out the crown jewels to all the code in Forgejo!&lt;/p&gt;</description></item><item><title>Plasma 6 Fingerprint Bug</title><link>https://unnamed.website/posts/plasma-6-fingerprint-bug/</link><pubDate>Tue, 19 Mar 2024 20:33:11 -0400</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/plasma-6-fingerprint-bug/</guid><description>&lt;p&gt;KDE released Plasma 6 a few weeks ago and it&amp;rsquo;s extremely awesome and also quite buggy. One of the most annoying bugs has been that the lockscreen is sometimes missing the fingerprint login option after resuming from sleep, so I have to type in my password instead. Of course there&amp;rsquo;s the big question about the security of fingerprint login, but I think it&amp;rsquo;s more likely for someone to shoulder surf me rather than knock me unconscious and tap my finger to the sensor. Also, fingerprint login is more convenient. Anyways, I&amp;rsquo;m just going to ignore that question and focus on this bug instead.&lt;/p&gt;</description></item><item><title>A Useful Command</title><link>https://unnamed.website/posts/a-useful-command/</link><pubDate>Thu, 29 Feb 2024 17:20:58 -0500</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/a-useful-command/</guid><description>&lt;p&gt;Today my friend wrote a &lt;a href="https://awestover.github.io/skyspace/posts/systems/02-29-24.html"&gt;blog post&lt;/a&gt; titled &amp;ldquo;A Useful Command&amp;rdquo;, which inspired me to do the same. Except instead of one command, you get six! And I know one of my &lt;a href="https://unnamed.website/posts/best-cli-tools/"&gt;first blog posts&lt;/a&gt; was about a similar topic, but this post has completely different commands.&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Command&lt;/th&gt;
 &lt;th&gt;Description&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;time read&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Simple stopwatch&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;gdu&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Really fast disk usage analyzer&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;sd&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Insanely fast flash cards app (&lt;a href="https://git.unnamed.website/sdc"&gt;shameless self-promotion&lt;/a&gt;)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;scrcpy&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Mirror and control an Android device from a computer&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;systemd-nspawn&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Container tool that you probably already have installed&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;inotifywait&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Wait for file change (useful in scripts)&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;</description></item><item><title>Abusing systemd-nspawn With Nested Containers</title><link>https://unnamed.website/posts/abusing-systemd-nspawn-with-nested-containers/</link><pubDate>Wed, 01 Mar 2023 04:03:13 +0000</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/abusing-systemd-nspawn-with-nested-containers/</guid><description>&lt;p&gt;systemd-nspawn is some pretty insane stuff that you probably already have installed on your computer. Today&amp;rsquo;s mission to wreck havoc will be to replicate an old project I did a few years ago, &lt;a href="https://git.unnamed.website/arch-all-the-way-down"&gt;Arch All the Way Down&lt;/a&gt;, but using some real power tools. I was able to achieve 4 nested containers with Docker and my old laptop. It shouldn&amp;rsquo;t be too hard to improve that!&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s a really &lt;a href="https://0pointer.net/blog/running-an-container-off-the-host-usr.html"&gt;cool trick you can do with systemd-nspawn&lt;/a&gt; where you can almost instantly create a container based on your existing root directory:&lt;/p&gt;</description></item><item><title>Laptop Necromancy</title><link>https://unnamed.website/posts/laptop-necromancy/</link><pubDate>Thu, 24 Nov 2022 21:21:40 +0000</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/laptop-necromancy/</guid><description>&lt;p&gt;I don&amp;rsquo;t think my blog has any regular readers, but if you are, you&amp;rsquo;re about to be disappointed. After a three-month drought of posts, I&amp;rsquo;m finally back, with some boring stuff.&lt;/p&gt;
&lt;p&gt;OK, it&amp;rsquo;s not that boring I guess, but I&amp;rsquo;m mostly just blogging for the sake of blogging, not because I have anything interesting to say.&lt;/p&gt;
&lt;p&gt;That aside, let&amp;rsquo;s get started with the story.&lt;/p&gt;
&lt;h2 id="trash"&gt;Trash&lt;/h2&gt;
&lt;p&gt;How often do you replace your smartphone? Everyone knows that people just throw away perfectly good electronics, which makes me wonder what kind of supercomputing cluster you could build out of all that e-waste (Maybe you could crack &lt;a href="https://en.wikipedia.org/wiki/RSA_numbers#RSA-1024"&gt;RSA-1024&lt;/a&gt;). Even at MIT, people throw out mounds of electronics: literally mounds! In the basement of building 32 (In Unix, everything is a file; at MIT, everything is a number), there&amp;rsquo;s a e-waste disposal site with huge piles of discarded electronics. Sadly, the electronics are all haphazardly dumped there so they&amp;rsquo;ve suffered physical damage, but there&amp;rsquo;s still plenty of functional trash. There&amp;rsquo;s even a former biohazard-storage refrigerator, which has a sticker on it assuring me it&amp;rsquo;s been properly decontaminated, but I&amp;rsquo;m not sure how I&amp;rsquo;d haul it to my room. (I&amp;rsquo;d totally try storing food in it. I&amp;rsquo;d like to see if the food turns green and mutant.)&lt;/p&gt;</description></item><item><title>Installing Every Arch Package</title><link>https://unnamed.website/posts/installing-every-arch-package/</link><pubDate>Wed, 26 Jan 2022 21:52:58 -0600</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/installing-every-arch-package/</guid><description>&lt;p&gt;&lt;img src="https://unnamed.website/img/install-every-arch-package-matrix.png" alt="A stupid idea on Matrix"&gt;&lt;/p&gt;
&lt;p&gt;Challenge accepted. Let&amp;rsquo;s do it!&lt;/p&gt;
&lt;p&gt;First things first, let&amp;rsquo;s generate a list of &lt;a href="https://archlinux.org/packages/"&gt;all official Arch Linux packages&lt;/a&gt;. Fortunately, &lt;code&gt;pacman&lt;/code&gt;, the best pragmatic package manager in existence, makes this a breeze.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pacman -Sql
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Great, now let&amp;rsquo;s install it all!&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo pacman -S &lt;span style="color:#66d9ef"&gt;$(&lt;/span&gt;pacman -Sql&lt;span style="color:#66d9ef"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;10 seconds later, you&amp;rsquo;ll find yourself with&amp;hellip; unresolvable package conflicts detected?&lt;/p&gt;
&lt;p&gt;OK, fine, let&amp;rsquo;s disable dependency checking then:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo pacman -Sdd &lt;span style="color:#66d9ef"&gt;$(&lt;/span&gt;pacman -Sql&lt;span style="color:#66d9ef"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Nope, didn&amp;rsquo;t work. We have to do something about the conflicting packages!&lt;/p&gt;</description></item><item><title>Make Wayland Scaling Less Painful</title><link>https://unnamed.website/posts/make-wayland-scaling-less-painful/</link><pubDate>Sat, 01 Jan 2022 20:51:58 -0600</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/make-wayland-scaling-less-painful/</guid><description>&lt;p&gt;&lt;strong&gt;This post is outdated. KDE Plasma 5.27 supports letting XWayland applications apply scaling themselves so they are no longer blurry.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Wayland is awesome. It supports my 4K 60Hz monitor out-of-the-box without any Xorg configuration or custom EDID file hackery. Even &lt;a href="https://zamundaaa.github.io/wayland/2021/12/14/about-gaming-on-wayland.html"&gt;gaming on Wayland&lt;/a&gt; more or less works.&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s only one problem or I would have ditched Xorg forever.&lt;/p&gt;
&lt;p&gt;Everything on the 4K monitor is really really tiny! You might say, why not just apply some scaling? After all, KDE Plasma has great fraction scaling support and just works™ on Xorg. The problem is that Wayland apps scale perfectly but XWayland apps&amp;hellip; not so much. There&amp;rsquo;s been &lt;a href="https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/733"&gt;merge requests&lt;/a&gt; for three years now to fix this, but nothing much has happened to improve the situation.&lt;/p&gt;</description></item><item><title>Find Deleted Matrix Messages</title><link>https://unnamed.website/posts/find-deleted-matrix-messages/</link><pubDate>Tue, 23 Nov 2021 22:07:26 -0600</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/find-deleted-matrix-messages/</guid><description>&lt;p&gt;It feels like I haven&amp;rsquo;t written a blog post in forever, and plus, I want to test Hugo&amp;rsquo;s code block formatting.&lt;/p&gt;
&lt;p&gt;Anyways, time for something actually fun and useful&amp;hellip;&lt;/p&gt;
&lt;p&gt;So you self-host a Matrix server, right? If not, this guide won&amp;rsquo;t be very useful. It&amp;rsquo;s still hilarious though.&lt;/p&gt;
&lt;p&gt;If you ever get tired of ghost pings or trolls quickly deleting their Matrix messages, you can troll them right back. The Synapse Matrix server keeps deleted messages for about a week in the database before permanently deleting them. That means you can dig them right back out in only two minutes.&lt;/p&gt;</description></item><item><title>Fixing Bugs Isn't Hard!</title><link>https://unnamed.website/posts/fixing-bugs-isnt-hard/</link><pubDate>Tue, 13 Apr 2021 00:00:00 +0000</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/fixing-bugs-isnt-hard/</guid><description>&lt;p&gt;A few days ago, I wanted to record my screen, and in process, I discovered &lt;a href="https://bugs.kde.org/show_bug.cgi?id=417575"&gt;this bug&lt;/a&gt;. It doesn&amp;rsquo;t seem like a very complicated bug, right? Just look through the code, find out what&amp;rsquo;s wrong, and send in a pull request! Or is it that easy?&lt;/p&gt;
&lt;p&gt;&lt;img src="https://unnamed.website/img/spectacle.png" alt="The bug"&gt;&lt;/p&gt;
&lt;p&gt;The first issue is that &lt;a href="https://invent.kde.org/graphics/spectacle"&gt;Spectacle&amp;rsquo;s code&lt;/a&gt; is not exactly the most readable code out there, but I was able to identify [line 209 in &lt;code&gt;GUI/KSMainWindow.cpp&lt;/code&gt;] as the critical line. So what is &lt;code&gt;mScreenrecorderToolsMenuFactory&lt;/code&gt; and what does &lt;code&gt;fillMenuFromGroupingNames&lt;/code&gt; do?&lt;/p&gt;</description></item><item><title>Fun with QEMU/KVM! - The Sequel</title><link>https://unnamed.website/posts/fun-with-qemu-kvm-2/</link><pubDate>Thu, 07 Jan 2021 00:00:00 +0000</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/fun-with-qemu-kvm-2/</guid><description>&lt;p&gt;&lt;img src="https://unnamed.website/img/mint-255-cores.png" alt="Linux Mint with 255 cores"&gt;&lt;/p&gt;
&lt;p&gt;As far as I know, there aren&amp;rsquo;t any 255 core processors on the market. Yet. But that doesn&amp;rsquo;t stop us from making a virtual machine using QEMU/KVM and &lt;a href="https://en.wikipedia.org/wiki/Symmetric_multiprocessing"&gt;SMP&lt;/a&gt; with an absurd number of processors, as shown above.&lt;/p&gt;
&lt;p&gt;Why 255? Well, that&amp;rsquo;s the limit apparently. Yeah, it sucks. I wish it was higher too. But if you&amp;rsquo;re running more cores than the number of physical cores available on your computer, there&amp;rsquo;s no benefit and you&amp;rsquo;ll probably see worse performance. No one even has that many physical cores to begin with, so there&amp;rsquo;s no incentive for QEMU/KVM to support even more cores. I&amp;rsquo;m pretty sure that only the first 64 cores are KVM acclerated, which adds another reason why you shouldn&amp;rsquo;t do this. (virt-manager also warns you from against a VM more cores than you actually have. It&amp;rsquo;s a bad idea.)&lt;/p&gt;</description></item><item><title>How to Hibernate</title><link>https://unnamed.website/posts/how-to-hibernate/</link><pubDate>Mon, 04 Jan 2021 00:00:00 +0000</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/how-to-hibernate/</guid><description>&lt;p&gt;If you dual-boot, hibernation is a necessity. Need to use the other OS for a few minutes? No problem, just hibernate, and when you boot your original OS again, you&amp;rsquo;ll be back where you left off.&lt;/p&gt;
&lt;p&gt;However&amp;hellip; It&amp;rsquo;s 2021 and there still isn&amp;rsquo;t an easy way to enable hibernation on Linux. Sad.&lt;/p&gt;
&lt;p&gt;Anyways, here&amp;rsquo;s a rough outline of the procedure using a swap file:&lt;/p&gt;
&lt;h2 id="make-a-swap-file"&gt;Make a swap file&lt;/h2&gt;
&lt;p&gt;You generally want your swap file to be at least as big as your RAM, and if you do a lot of swap-intensive stuff, you might even need a bigger swap file.&lt;/p&gt;</description></item><item><title>Best CLI Tools</title><link>https://unnamed.website/posts/best-cli-tools/</link><pubDate>Thu, 24 Dec 2020 00:00:00 +0000</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/best-cli-tools/</guid><description>&lt;h1 id="tldr"&gt;&lt;code&gt;tldr&lt;/code&gt;&lt;/h1&gt;
&lt;p&gt;The. Best. Documentation. Tool. Ever. Seriously. Instead of pulling up a web browser, searching for the command, and scrolling through pages of documentation, you can instead use &lt;code&gt;tldr&lt;/code&gt; to get most common use cases for a command. Sure, maybe 10% your particular use or flag won&amp;rsquo;t be on there, but it&amp;rsquo;s a great quick-and-dirty way to get a refresher about unfamiliar commands.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://unnamed.website/img/tldr-7z.png" alt="tldr 7z"&gt;&lt;/p&gt;
&lt;h1 id="fzf"&gt;&lt;code&gt;fzf&lt;/code&gt;&lt;/h1&gt;
&lt;p&gt;Like &lt;code&gt;find&lt;/code&gt; but better and more powerful. For instance, &lt;code&gt;pacman -Qq | fzf --preview 'pacman -Qil {}' --layout=reverse --bind 'enter:execute(pacman -Qil {} | less)'&lt;/code&gt; will start up cool two-panel search for your (Arch) system&amp;rsquo;s packages. And that&amp;rsquo;s just the tip of the iceberg; there&amp;rsquo;s so much more you can do with &lt;code&gt;fzf&lt;/code&gt;&lt;/p&gt;</description></item><item><title>WSL 2 GNOME Desktop</title><link>https://unnamed.website/posts/wsl-2-gnome-desktop/</link><pubDate>Thu, 30 Jul 2020 00:00:00 +0000</pubDate><author>Anthony Wang</author><guid>https://unnamed.website/posts/wsl-2-gnome-desktop/</guid><description>&lt;p&gt;Think Xfce looks dated? Want a conventional Ubuntu experience? This tutorial will guide you through installing Ubuntu&amp;rsquo;s default desktop environment, GNOME.&lt;/p&gt;
&lt;p&gt;GNOME is one of the more complex — and that means more difficult to run — desktop environments, so &lt;a href="https://www.reddit.com/r/Windows10/comments/8dnyig/using_a_gui_with_wsl_on_windows_10_ubuntu_wsl/"&gt;for&lt;/a&gt; &lt;a href="https://www.reddit.com/r/bashonubuntuonwindows/comments/9amqjr/gnome_desktop_using_vcxsrv_cant_make_it_work/"&gt;years&lt;/a&gt; &lt;a href="https://askubuntu.com/questions/1169695/gnome-under-ubuntu-18-04-for-windows-wont-run"&gt;people&lt;/a&gt; &lt;a href="https://superuser.com/questions/1559755/gnome-desktop-environment-on-ubuntu-wsl-starting-error"&gt;couldn&amp;rsquo;t&lt;/a&gt; &lt;a href="https://www.reddit.com/r/bashonubuntuonwindows/comments/haof3n/cant_run_gnome_in_ubuntu_2004_lts_wsl/"&gt;figure&lt;/a&gt; &lt;a href="https://www.reddit.com/r/bashonubuntuonwindows/comments/eqwoxy/gnome_and_kde_in_wsl/"&gt;out&lt;/a&gt; &lt;a href="https://www.reddit.com/r/bashonubuntuonwindows/comments/8dp2yu/gnome_or_kde_on_wsl/"&gt;how&lt;/a&gt; &lt;a href="https://www.reddit.com/r/bashonubuntuonwindows/comments/hh0q9s/gnomesession_wsl2/"&gt;to&lt;/a&gt; &lt;a href="https://www.reddit.com/r/bashonubuntuonwindows/comments/b222hp/running_everything_on_gnome/"&gt;run&lt;/a&gt; &lt;a href="https://www.reddit.com/r/bashonubuntuonwindows/comments/8yfw8z/gnome_on_windows/"&gt;it&lt;/a&gt; on WSL 2. On &lt;a href="https://github.com/Microsoft/WSL/issues/637"&gt;WSL 1&lt;/a&gt; it could only run using very complicated methods that didn&amp;rsquo;t transfer to well WSL 2. Any forlorn attempts to run it on WSL 2 only resulted in a smoldering heap of error messages.&lt;/p&gt;</description></item></channel></rss>