{"id":1359,"date":"2024-03-25T13:38:42","date_gmt":"2024-03-25T20:38:42","guid":{"rendered":"https:\/\/letsbuildroboticswithshadow8472.com\/?p=1359"},"modified":"2024-03-25T13:38:42","modified_gmt":"2024-03-25T20:38:42","slug":"how-i-would-relearn-linux-7-wandering","status":"publish","type":"post","link":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2024\/03\/25\/how-i-would-relearn-linux-7-wandering\/","title":{"rendered":"How I Would Relearn Linux #7: Wandering"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Good Morning from my Robotics Lab! This is Shadow_8472, and today I am back with another Linux-learning tip. Let\u2019s get started.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This edition of How I would Relearn Linux will be a bit heavier on the story side, but I\u2019ll try to make it as interesting as possible. If I totaly lose you, feel free to skip to the Takeaway before making your way back to where you left off.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">DerpyChips, one of my two daily drivers, has had a longstanding problem with running Discord where the proper installation crashes after updating (if applicable). I have it installed as a Snap installation, which got it working, but costs me my KDE themed mouse pointer, which I\u2019m quite fond of. I thought to fix it as a side project. For the record, none of these hammers work: restarting the program, rebooting, reinstalling.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When in doubt, launch a failing program from the command line. I caught an error and looked it up, which landed me on Reddit where one user had fixed the exact same problem by finding a better driver. Derpy has an AMD card, so I looked through AMD\u2019s site for the proper proprietary driver. It took an hour or so, but I found a list of 32 and 64 bit drivers for my exact card \u2013 they were just seven years old! The card is about twice that.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now, I faced a dilemma. AMD\u2019s driver might be the most compatible, but will it work with KDE 6, which I expect Derpy may be running within a year barring any major hardware upgrades? I have doubts. Besides, I didn\u2019t feel like cleaning up a driver bricking my installation anymore. I\u2019ll probably seek out an open source driver at a future date once I gathered a bit more background knowledge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Along the way, I noticed a couple abbreviations tied to the graphics system: EGL and GLX. A search brought me to a Hackaday post about Firefox 94 and above switching from GLX to EGL as window management transitions away from the legacy X11 window management system in favor of Wayland for lower overhead, better security, and closer access to the hardware [1]. The top comment lamented this transition finishing with, \u201cSadly the kids don\u2019t want a fun OS that does cool things like let you run your program on one machine but display it on a second. I guess they just want an OSX that they didn\u2019t have to pay for.\u201d My surprise died down when I read the screen name: XForever. The comments in reply were a frenzy of reports claiming X11 remote display either \u201cnever did [work]\u201d [X], \u201cworked perfectly fine 20 years ago and still does\u201d [Traumflug], \u201conly \u2018worked\u2019 because network security was a joke 20 years ago\u201d [Pat], and that slow network could make or break the experience [Guest]. One user [raster] went back to refute XForever\u2019s complaint with a link to a Git for Waypipe.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">While the conversation brought up other methods of graphical computing from another device, like VNC (Virtual Network Client) and RDP (Remote Desktop Protocol), SSH caught my attention [Redhatter (VK4MSL)].<\/p>\n\n\n\n<pre class=\"wp-block-verse\">ssh -CY user@remotehost x11client<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The unfamiliar flags turn out to mean compressing the datastream and trusting something to do with X11. I had to try for myself.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Logging in to my father\u2019s computer, I brought up FreeTube over SSH no problem. I then tried MultiMC\u2019s start script, and something errored out and it came up on his screen. I thought that was it without making a custom script or at least an export command, but I tried running bash as my x11client. It came up without prompts or access to command history, but when I called up the script, I got a window. The game itself was a bit slow to play given how choppy the video was, but it was good enough to navigate to an AFK point \u2013 until I turned up the graphics with extra shaders, then it dropped to 1fps.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Takeaway<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Allow yourself to wander. Poke at annoying, non-critical problems every so often. Even if you don\u2019t get to where you intended, you can still end up learning something objectively cool. I can see this tool will be very useful<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Final Question<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">What cool stuff have you found by allowing yourself to wander?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Work cited<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">[1] M. Carlson, \u201cFirefox Brings the Fire: Shifting from GLX to EGL,\u201d<em> hackaday.com<\/em>,Nov. 23, 2021. Available: <a href=\"https:\/\/hackaday.com\/2021\/11\/23\/firefox-brings-the-fire-shifting-from-glx-to-egl\/\">https:\/\/hackaday.com\/2021\/11\/23\/firefox-brings-the-fire-shifting-from-glx-to-egl\/<\/a> [Accessed Mar. 25, 2024].<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Good Morning from my Robotics Lab! This is Shadow_8472, and today I am back with another Linux-learning tip. Let\u2019s get started. This edition of How I would Relearn Linux will be a bit heavier on the story side, but I\u2019ll try to make it as interesting as possible. If I totaly lose you, feel free &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2024\/03\/25\/how-i-would-relearn-linux-7-wandering\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;How I Would Relearn Linux #7: Wandering&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[237],"tags":[],"class_list":["post-1359","post","type-post","status-publish","format-standard","hentry","category-relearning-linux"],"_links":{"self":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/1359","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/comments?post=1359"}],"version-history":[{"count":1,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/1359\/revisions"}],"predecessor-version":[{"id":1360,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/1359\/revisions\/1360"}],"wp:attachment":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/media?parent=1359"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/categories?post=1359"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/tags?post=1359"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}