The Linux Thread - The Autist's OS of Choice

  • Want to keep track of this thread?
    Accounts can bookmark posts, watch threads for updates, and jump back to where you stopped reading.
    Create account
VSCodium is a proper, fully FOSS native app instead of some Electron rubbish. That and it also strips away all the integrations with Microsoft stuff.
It's still electron as it's just VSCode built without Microsoft's telemetry and shit plus some small custom stuff such as text changes (VSCode -> VSCodium) and some different icons (VSCode logo -> VSCodium logo IIRC).

1766943533086.png
1766943612020.png
 
View attachment 8327739
View attachment 8327741
View attachment 8327750
Im getting closer. Before I just had a kernel panic and now I got the XIO driver to semi load (XIO is a propitary kernel module)

(Here was my previous attempts and how they would go every time)
View attachment 8328128
Ill have a proper sperg post soon.
K so lets go over the problem.

We got it to GET past starting up and getting the VMLINUX working.

Now lets go over the problem xio.

What is xio?
xio is a nand controller that handles flash memory in the linux kernel. Its NOT included in the linux kernel source code and it can NOT be found anywhere on the surface web. There is NO copyright information and so far it is lost to time, So I guess this vmlinux is carrying what is a basically "le heccing lost media". This module is so obsecure that I can not even say 100% who even written it or
  1. Is this module a open source module or was written by a company
  2. If it was written by a company if so WHO
  3. What is its version number
  4. When it was made
  5. If xio is even the full name
  6. Heck I don't even know the copyright information
Now because XIO is the thing that mounts the rootfs we cant just easily add -pflash to qemu and attach a device to mount. And because we cant change the command line options this presents a annoying probem.
See the command line for this VMLINUX is
"console=ttyS0,38400n8 mem=48M tm0size=20M kgdb=ttyS1 root=/dev/mtdblock5 init=/init rw ip=off jffs2_gc_delay=20"
See that root. We cant change it but its wanting a device mtdblock5 to be the rootfs or main partition. Now mtdblock5 does not mean there are 5 different devices but rather it means there is one or more device with multiple PARTITIONS THAT equal 5
And even worse this VMLINUX has NO SYMBOLS, NO sections either, just a PURE RAW binary where every debugging thing was taken away.
Things of note
Now if you do not know ive been using a DUMPED nand of the sony tv I found online to view the squashfs. However last big blogpost ive said ive also been using a update file as a side to get information.
Well that update file has a EXPANDED rootfs that has some interesting things of note that I promise is relevant. Lets look at the HOME folder in the extracted squashfs that I got from the update file.
1766680785008.png

0 files? oh well at least we have some intresting folder names.
Lets try looking up "easi-oe" on google
1766680871421.png
Huhh.... yeah something tells me we are not going to find anything with that.
1766680900406.png
.....

Ok well lets try the other folder "nxp_dtv"
1766680991011.png
OOOH THATS GOOD LETS SEARC-

Ill cut to the chase.. This lead nowhere. But NXP is the maker of the PNX chip that runs this TV. So keep that of note.

Alright lets now try "nxp_linux_solution_rev1"
1766681137987.png
ughhhhh...

I eventually went back and asked myself "Why am I searching up random keywords".. Because I need to find the source of xio. I cant find it by trying "xio" or searching for the strings that the thing produces on google. So Im doing this..

Well most likely this module came from NXP so maybe I could send a email ASKING if they made this module... Now of course they might not have records of SUCH a old 2010 linux kernel module but there's a chance. So I sent a email.
1766853477568.png
...

So lets go over this
I have to debug and emulate something that I have no date, no owner, no source, and no knowledge on what it even does, and no not even where it belongs. And I have to do ALL of this with no knowledge of internal schematics

Alright Bet...
Making our own Nand solution.

Now remember the kernel command line option <5>Kernel command line: console=ttyS0,38400n8 mem=48M tm0size=20M kgdb=ttyS1 root=/dev/mtdblock5 init=/init rw ip=off jffs2_gc_delay=20
This means were going to have to make a flash file where the partition5 is the rootfs.

Im not going to show you the long process of doing that but its basically filling all the other partitions with dummy information so that partition 5 will be considered our rootfs.

1766681691328.png

Now because IO information is different compared to other boards we need to make our own IO system.
Yeah this is the part where I give surface level explanations to what im doing.
1766681874881-png.8330292

Basically it asks for information we give it a output. The input and what its asking is determined by it reading a address

Anyways REMEMBER THIS PART RIGHT HERE
1766769672927.png
You see this

Eventually XIO is going to ask the nand by calling the address 0x828 asking "Ayo clanka whats your NAND ID"
and checks a table in it checking if it matches its supported devices
1766769816949.png
You see this? those are MANUFACTURER ids. See those numbers UNDER the manufacturers names. THOSE are the numbers that represent the string name up there.
The next is the DEVICE ID, which I similarly pulled.

Oh yeah one more thing we need to select a profile.
1766791382603.png
When XIO calls our NAND with this number "0x814" its asking it for its profile. A profile is information like "is it 8 bit or 16 bit" And yadda yadda. and is determined like this
0x00000013(Example one)
1766791479762.png

If I wanted to say the NAND was above 68 megabytes I would put the number 6 + the 1 for enable at the END of the hex value
1766791533700.png
Because there needs to be a ONE at the beginning to enable it would be 0x00000007 and because I need to put a 1 at the SECOND last to tell the thing that it is NAND it would be 0x00000017
THIS IS REQUIRED AND GETS PASSED OFF. Lets read what the XIO module is doing NORMALLY so I can give you guys a better picture
As with everything I have printf statements everywhere
1766791677022.png
1766791687426.png
1766791702780.png
You get the point.

Code:
[PCIXIO_READ] addr=0x814 size=4
[PCIXIO] *** SEL0PROF READ *** addr=0x814 size=4 returning=0x00000013
[PCIXIO] Bits: Enable=1 Type=2 Size=1 Bit23=0 Bit27=0
[PCI→PCIXIO] Forwarding read from PCI offset 0x40814 to PCIXIO offset 0x814 = 0x13
[PCIXIO_READ] addr=0x814 size=4
[PCIXIO] *** SEL0PROF READ *** addr=0x814 size=4 returning=0x00000013
[PCIXIO] Bits: Enable=1 Type=2 Size=1 Bit23=0 Bit27=0
[PCI→PCIXIO] Forwarding read from PCI offset 0x40814 to PCIXIO offset 0x814 = 0x13
[PNX PCI] Returning BASE18 = 0x10000000 (NAND base)
[PCIXIO_READ] addr=0x818 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40818 to PCIXIO offset 0x818 = 0x0
[PCIXIO_READ] addr=0x81c size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x4081c to PCIXIO offset 0x81c = 0x0
[PCIXIO_READ] addr=0x834 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40834 to PCIXIO offset 0x834 = 0x0
[PCIXIO_READ] addr=0x838 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40838 to PCIXIO offset 0x838 = 0x0
[PNX PCI CFG READ: addr=0x40084 (reg=65569) = 0x00000000]
[PNX PCI] Returning SETUP = 0x01c20003
[PNX PCI CFG WRITE: addr=0x40084 (reg=65569) val=0x1]
[PCI→PCIXIO] Forwarding write from PCI offset 0x40fd4 to PCIXIO offset 0xfd4 val=0x1000
[PCIXIO_WRITE_ALL] addr=0xfd4 val=0x1000
[PCIXIO WRITE: addr=0xfd4 val=0x1000]
[NAND] DMA interrupt enable = 0x1000
[PCI→PCIXIO] Forwarding write from PCI offset 0x40830 to PCIXIO offset 0x830 val=0x150090
[PCIXIO_WRITE_ALL] addr=0x830 val=0x150090
[PCIXIO WRITE: addr=0x830 val=0x150090]
[NAND] Flash control = 0x150090, Command = 0x90
[NAND] Auto-setting DONE bit after command
[PCI→PCIXIO] Forwarding write from PCI offset 0x40820 to PCIXIO offset 0x820 val=0x10000000
[PCIXIO_WRITE_ALL] addr=0x820 val=0x10000000
[PCIXIO WRITE: addr=0x820 val=0x10000000]
[NAND] Address = 0x10000000 (cycle 0)
[PCI→PCIXIO] Forwarding write from PCI offset 0x4082c to PCIXIO offset 0x82c val=0x50
[PCIXIO_WRITE_ALL] addr=0x82c val=0x50
[PCIXIO WRITE: addr=0x82c val=0x50]
[NAND] Operation initiated
[PCIXIO_READ] addr=0x82c size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x4082c to PCIXIO offset 0x82c = 0x100
[PCIXIO_READ] addr=0x828 size=4
[NAND] READ ID cycle 0: returning 0xec
[NAND] READ ID cycle 0: returning val=0x000000ec (size=4)
[PCI→PCIXIO] Forwarding read from PCI offset 0x40828 to PCIXIO offset 0x828 = 0xec
[PCI→PCIXIO] Forwarding write from PCI offset 0x40820 to PCIXIO offset 0x820 val=0x10000000
[PCIXIO_WRITE_ALL] addr=0x820 val=0x10000000
[PCIXIO WRITE: addr=0x820 val=0x10000000]
[NAND] Address = 0x10000000 (cycle 1)
[PCI→PCIXIO] Forwarding write from PCI offset 0x4082c to PCIXIO offset 0x82c val=0x50
[PCIXIO_WRITE_ALL] addr=0x82c val=0x50
[PCIXIO WRITE: addr=0x82c val=0x50]
[NAND] Operation initiated
[PCIXIO_READ] addr=0x82c size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x4082c to PCIXIO offset 0x82c = 0x100
[PCIXIO_READ] addr=0x828 size=4
[NAND] READ ID cycle 1: returning 0x33
[NAND] READ ID cycle 1: returning val=0x00000033 (size=4)
[PCI→PCIXIO] Forwarding read from PCI offset 0x40828 to PCIXIO offset 0x828 = 0x33
<4>No NAND device found!!!
Lets shorten the EXTREME overprinting that I did.
Code:
[PCIXIO] *** SEL0PROF READ *** addr=0x814 size=4 returning=0x00000013
[PCIXIO] *** SEL0PROF READ *** addr=0x814 size=4 returning=0x00000013
[PNX PCI CFG READ: addr=0x40084 (reg=65569) = 0x00000000]
[PNX PCI] Returning SETUP = 0x01c20003
[PNX PCI CFG WRITE: addr=0x40084 (reg=65569) val=0x1]
[PCI→PCIXIO] Forwarding write from PCI offset 0x40fd4 to PCIXIO offset 0xfd4 val=0x1000
[PCIXIO_WRITE_ALL] addr=0xfd4 val=0x1000
[PCIXIO WRITE: addr=0xfd4 val=0x1000]
[NAND] DMA interrupt enable = 0x1000
[NAND] Operation initiated
[PCI→PCIXIO] Forwarding read from PCI offset 0x4082c to PCIXIO offset 0x82c = 0x100
[NAND] READ ID cycle 0: returning 0xec
[NAND] READ ID cycle 0: returning val=0x000000ec (size=4)
[NAND] READ ID cycle 1: returning 0x33
[NAND] READ ID cycle 1: returning val=0x00000033 (size=4)
[PCI→PCIXIO] Forwarding read from PCI offset 0x40828 to PCIXIO offset 0x828 = 0x33
<4>No NAND device found!!!

Now it first GETS our NAND profile that we give it. It then reads the manufactor ID and then the DEVICE id and then.... says theres no nand devices without reading a SINGLE byte of nand???

FUCK... alright lets get out the reverse engineer software... I suck at it but maybe it can be used to help us.
I narrowed down the EXACT function that is causing us issues
1766854025922.png
The thing is with reverse engineering is that it can give you the internals of how something works but it will never give you the CONTEXT.
Variable names, function names(This depends sometimes it CAN be extracted automatically DEPENDING on how its compiled), heck sometimes even if statements or how addressees are written. ALL OF THAT gets lost, the CONTEXT gets lost and YOU have to fill it in using inferring skills. Its like a puzzle. A HUGE puzzle.

If im going to want to get the CONTEXT im going to need to use GDB to go through each instruction with QEMU and see what it does. That will give us a bigger picture. So I ran qemu and attached GDB and set a breakpoint to the function that scans the nand.

And i opened BOTH IDA and ghirda 2 disassemblers and wrote down EACH if statement that gets ran. Let me tell you it was a LONG DAY
1766854478959.png
Yes I set a breakpoint and then went one step AT A FUCKING TIME GOING UP AND UP and then matching the address I was at with fucking ghirda AND IDA and then wrote it down and then continued
Now if you don't know GDB can PAUSE a program(QEMU) and then allow us to run each operation ONE at a time, otherwise known as a STEP, meaning that the program is PAUSED. Now to the program time still runs the same meaning that it does not account for the time it took being FROZEN. However something weird happened while i was writing down in notepad and going one step at a time. The output to the console was different???

1766854673184.png
Well maybe there might be some issue with QEMU. Maybe doing 1 instruction at a time causes it to account time differently or in some weird way that messes things up. I have a pretty good theory but I lack the words to put my visual language into words on here.


Eventually I figured out that I was giving the information wrong after a LONG night with gdb... I FINALLY fixed the fucking thing by doing this
1766944308721.png
AND FINALLY with that it now spams a BUNCH of stuff
Code:
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
[PCI→PCIXIO] Forwarding read from PCI offset 0x40fd0 to PCIXIO offset 0xfd0 = 0x100
[PCIXIO_READ] addr=0xfd0 size=4
It spams this SO much that If I were to add > test.txt and it run for less than 10 seconds its over 12 MEGABYTES.. So my terminal would be filled to where I could not scroll up. BUT LOOK!!!!!
<6>NAND device: Manufacturer ID: 0xec, Chip ID: 0x73 (Samsung NAND 16MiB 3,3V 8-bit)
YEESSSSSS.
I later learned that 0xfd0 being spammed is normal. Its just the chip saying "I finished something" So we don't need to print it EVERY second.
Now lets fix that spam and make it get further
Code:
case 0x828:  /* GPXIO_RD - NAND read data */
    if (s->nand_cmd == 0x90) {  /* READ ID command */
        // Return all 4 bytes at once (little-endian)
        val = 0x001573EC;  // Mfr=EC, Dev=73, Byte2=15, Byte3=00
        printf("[NAND] READ ID (all 4 bytes): returning 0x%08x\n", val);
    } else {
        printf("CALLED 828 WITHOUT THE READ ID FLAG\n");
        val = 0xFFFFFFFF;  /* Empty NAND */
    }
    break;

Code:
case 0xfd0:  /* DMA_INT_STATUS - READ */
    val = s->dma_status;
    break;
  
case 0x800:  /* DMA_EXT_ADDR - WRITE */
    s->dma_ext_addr = val;
    break;

case 0x804:  /* DMA_INT_ADDR - WRITE */
    s->dma_int_addr = val;
    break;

case 0x808:  /* DMA_TRANS_SIZE - WRITE */
    s->dma_trans_size = val;
    break;
And with some other fixes as well we can see
1766948627332.png
ITS READING OUR THING
1766948695337.png
AND ITS READING OUR PARTITION TABLE.

Ok so like I kinda filled the first 4 partitons with JUNK because I was lazy as shit(I filled it with 0s and then the 5th partition I put my squashfs)
So eventually yeah.

1766948758147.png
 

Attachments

  • 1766680747914.png
    1766680747914.png
    24.4 KB · Views: 19
  • 1766680759223.png
    1766680759223.png
    19.9 KB · Views: 9
  • 1766681874881.png
    1766681874881.png
    157.4 KB · Views: 537
Last edited:
@ProudSkibidiTolietAryan I love your saga thus far, but dude: why the hell do you keep relying on Google? Why not try mixing things up with Bing, Brave Search, or even Mojeek? On an unironic "enshittification" level, Google is borderline useless unless you're looking up exact quotes for memes or whatever. Bing is flawed as hell, but Bing integrates really well with the Microsoft ecosystem. Guess what? GitHub is part of the Microsoft ecosystem and GitHub results trend close to the top for specialised development queries. Brave Search and Mojeek are their own independent crawlers; results aren't necessarily the best, but still worth checking to see what comes up near the top. Brave Search even lets you pivot directly into Google, Bing, or Mojeek if you aren't satisfied with what Brave Search itself gives you.
 
I switched to mint after using windows my whole life recently, and I feel like I've just left an abusive relationship. :suffering:

How the fuck anyone is willing to live with literal ads infesting their OS is beyond me.
 
I switched to mint after using windows my whole life recently, and I feel like I've just left an abusive relationship. :suffering:

I made the switch full-time to Linux Mint back in September 2024 after Copilot+Recall was announced. O&OSU10++ , group policy changes, and so on help make Windows 10/11 tolerable, but Windows 11 is so fucking obnoxious with how they rolled back my group policy changes with every goddamn update. You're in good hands; the Linux Mint team's been doing fantastic work since 2006.

How the fuck anyone is willing to live with literal ads infesting their OS is beyond me.

Niggercattle gonna niggercattle because learned helplessness is once hell of a thought paradigm to live with
 
@ProudSkibidiTolietAryan I love your saga thus far, but dude: why the hell do you keep relying on Google? Why not try mixing things up with Bing, Brave Search, or even Mojeek? On an unironic "enshittification" level, Google is borderline useless unless you're looking up exact quotes for memes or whatever. Bing is flawed as hell, but Bing integrates really well with the Microsoft ecosystem. Guess what? GitHub is part of the Microsoft ecosystem and GitHub results trend close to the top for specialised development queries. Brave Search and Mojeek are their own independent crawlers; results aren't necessarily the best, but still worth checking to see what comes up near the top. Brave Search even lets you pivot directly into Google, Bing, or Mojeek if you aren't satisfied with what Brave Search itself gives you.
I used duckduckgo to as well.
Same with other search engines. I used google for this example because sometimes it gives me better results at finding OLDER content if you use the right keywords.


I have not tried brave search in a long time but I heard it was pretty bad. But yeah google is getting worse for me every fucking year. Were in agreement on that
 
Last edited:
How the fuck anyone is willing to live with literal ads infesting their OS is beyond me.
I remember when I semi-forced my friend to try out Ubuntu and the first thing he said to me was "Oh my God, it can actually look for files". (Referring to the Search-light-esque function, and how using the Windows search bar results in web results)
 
Tbh I was mostly worried about linux being too complicated as I am, in fact, a massive retard who's never even used a terminal outside of the deepest late-night pits of shit not working, and really have no in-depth experience with computers beyond "ooga booga me click .exe and magic box make lights happen :)".

But no the transition was incredibly smooth and I was honestly surprised at how quick I was able to figure everything out.

I guess it mostly stemmed from my assumption that every distro was like Arch or something so the biggest hurdle that prevented me from switching the moment Windows 11 showed it's ugly ass head was just me not realizing how easy that first step really was.

using the Windows search bar results in web results
D4U4oe0W4AA6CX_.jpg
 
Tbh I was mostly worried about linux being too complicated as I am, in fact, a massive retard who's never even used a terminal outside of the deepest late-night pits of shit not working, and really have no in-depth experience with computers beyond "ooga booga me click .exe and magic box make lights happen :)".

Comments I've seen from actual people with working brains:
Ive considered switching to Linux, but there's 2 things holding me back.
  1. I know almost nothing about low-level computer access, which Linux uses quite a bit of.
  2. The main thing I use my laptop for these days is Google drive to write on sheets and docs. Ditching Microsoft but staying loyal to Google feels like a hollow victory.
I'm staying on Windows cause I know nothing about Linux
Yes, they had Clippy profile pictures.
 
I guess it mostly stemmed from my assumption that every distro was like Arch or something so the biggest hurdle that prevented me from switching the moment Windows 11 showed it's ugly ass head was just me not realizing how easy that first step really was.

If you attempted Linux anywhere between 2006-2012, your assumptions about Linux would be 100% correct. The mid-to-late 2000s and early 2010s were not a good time for Linux whatsoever. It was that weird middle ground of "better than in the 90s where you were doing 24 3.5" floppy disk installs on hardware that would shit itself with a graphical environment regardless" but still a far cry from being pleasant to use. You really lucked out by jumping now.

Ubuntu made its claim to fame at this time, Canonical Ltd and Mark Shuttleworth made tons of progress in the ecosystem more broadly, but the "Linux for Human Beings" paradigm could only go so far. There were nasty architectural and ecosystem changes that basically reset progress on various forms of usability, stability, and general ergonomics full-stop. Audio was dogshit for basically half a decade because the people maintaining the old sound system (OSSv3) decided to make it proprietary, and for whatever reason, the Linux kernel developers decided to rewrite the sound implementation entirely from scratch. Drivers for various sound cards were fucked for a long time since 2002, and didn't really start stabilising until 2008-2009. Even then, the sound implementation in the kernel could only go so far because the sound implementation operates directly on a system level. PulseAudio was devised as a user-level sound server to plug in gaps, but PulseAudio was rough. Sound on Linux nowadays is pretty good OOTB.

Windows binary compatibility was horrible for decades. It really wasn't until Valve started significantly contributing to the Wine project in 2018 that Wine received a noticeable bump in quality. You try running Windows applications on Linux in 2011 like I did, you'll be dismayed to learn that your options are limited to Warcraft III, Paint from Windows XP, 3D Pinball Space Cadet, Photoshop CS2, and stuff of that general era. The open-source video drivers for NVIDIA and ATI cards were horrible and vastly limited in scope, NVIDIA and ATI started making binary-only drivers that were kinda painful to install. NVIDIA was the standard bearer for quality, and ATI (later AMD Catalyst) was just fucking awful unless you really needed 3D acceleration. The only binary driver worse than the open-source driver.

Wireless card firmware was (and still kinda is) the biggest pain point for Linux users. Before 2009-2010ish, Ralink wireless chips (the stuff that powered tons of USB and PCI wireless cards for companies like Linksys and HP), Broadcom wireless cards, and several others were awful. The driver was shared-source; the source was available, it could be compiled and binaries redistributed, but they couldn't be modified. The Linux kernel didn't integrate those drivers until late 2009 or early 2010, and even then, some Broadcom models were (and still are) wholly fundamentally unviable to run on Linux because the drivers either don't exist or are poor in quality. Nowadays? Tons of wireless cards from Realtek, Atheros, and even Intel (among others) are integrated, work great, and you won't be hamstrung unless you need WiFi ax. Anything ac or lower is A-okay.

I get the general apprehension toward taking the plunge into Linux headfirst, but honestly? Linux in 2025 is so easy to get acclimated to. Terminal is scary at first, but the Mint forums basically have you covered for most edge cases that would necessitate a terminal in the first place. Either you find forum posts from decades ago that troubleshoot that exact obscure issue on similar (or identical) hardware as yours, or you post in the forums and you get tons of people actively trying to help you and walking you through the process. Don't overthink it; you'll be fine.
 
Ditching Microsoft but staying loyal to Google feels like a hollow victory.
Because doing one, getting adjusted, and then doing the other is impossible.
>I cannot possibly get to the third floor, because walking up one stair feels like a hollow victory.
I've been on linux for a pretty long time now, slowly decreasing my dependance on google and microsoft, I am nowhere near Stallman levels yet - I still use gmail (although I have some alternatives as well now, it is mostly momentum); I am slowly decreasing my dependence on mozilla as they are moving into behaviour too niggerlicious for my tastes, but fucking around with mbsync and mu4e isn't exactly fun, if I were thinking about bullshit like this however many years ago I probably wouldn't have jumped off of the windows ship either, but you don't need to, one step at a time is fine.
 
If you attempted Linux anywhere between 2006-2012, your assumptions about Linux would be 100% correct.
I feel as if people still live with this paradigm in their head. Because I also used Ubuntu around that time, and I also remember Wine, thanks dad. My God were they bad. Nothing fucking ran on that piece of shit computer of mine, only Minecraft because that was Java. If it wasn't for me being an autistic sperg, or my dad being in IT, I probably would've never gone back.

I've been on Linux for a pretty long time now, slowly decreasing my dependence on Google and Microsoft, I am nowhere near Stallman levels yet - I still use Gmail (although I have some alternatives as well now, it is mostly momentum); I am slowly decreasing my dependence on Mozilla as they are moving into behavior too nigger-licious for my tastes, but fucking around with MBSync and mu4e isn't exactly fun.
I want to self-host most of the things I use. I know e-mail will be a very far cry for me, but I could pay my hosting provider to provide me e-mail as well so it wouldn't be too difficult. Mozilla can basically lick my ass with how they've treated users and I don't see the necessity to use their products. Ungoogled Chromium does the job for me, at the moment. Even DuckDuckGo treated me with more respect by giving me a @duck.com e-mail address, can't say the same for Mozilla, pieces of shit. -- You'll never be rid of your Gmail account as long as you'll use YouTube, so you might as well ignore it.
 
I get the general apprehension toward taking the plunge into Linux headfirst, but honestly? Linux in 2025 is so easy to get acclimated to. Terminal is scary at first, but the Mint forums basically have you covered for most edge cases that would necessitate a terminal in the first place. Either you find forum posts from decades ago that troubleshoot that exact obscure issue on similar (or identical) hardware as yours, or you post in the forums and you get tons of people actively trying to help you and walking you through the process. Don't overthink it; you'll be fine.
Terminals are not something that you spend programming. Thats my advice to other people, its just another way to interact with the computer.
Alot of new users think that in the terminal they write CODE like programmers in order to interface with things but in reality your typing in the names of written programs and just putting down options to interface with things. Sometimes using a GUI is faster sometimes its not.

Terminals are just another way to interface with the computer. Once you get that it becomes alot less scary.
 
I switched to mint after using windows my whole life recently, and I feel like I've just left an abusive relationship. :suffering:

How the fuck anyone is willing to live with literal ads infesting their OS is beyond me.
PC gamers are basically console gamers that build their own consoles and choose to lock themselves down and will actually act smug and proud that they run windows over linux

I used duckduckgo to as well.
Same with other search engines. I used google for this example because sometimes it gives me better results at finding OLDER content if you use the right keywords.


I have not tried brave search in a long time but I heard it was pretty bad. But yeah google is getting worse for me every fucking year. Were in agreement on that
Ive found brave has better image results than ddg
My searching is pretty basic though so take it with a grain of salt but I always have to keep Google in my back pocket when using ddg
 
Alot of new users think that in the terminal they write CODE like programmers
Which was the style of yesteryear. Having to type this out into DOS for music using SCORE, for ex:
1766959386724.png

Which I think might be how some people see Linux, how people in the 90s used to use computers. As if Linux is this ancient piece of software from yonder years ago; Only massive retarded autists use that, I want to use my computer as if I'm a normal human being. -- As if Microsoft DOS hasn't migrated and evolved to a GUI experience.
 
Terminals are not something that you spend programming. Thats my advice to other people, its just another way to interact with the computer.
Alot of new users think that in the terminal they write CODE like programmers in order to interface with things but in reality your typing in the names of written programs and just putting down options to interface with things. Sometimes using a GUI is faster sometimes its not.

Terminals are just another way to interface with the computer. Once you get that it becomes alot less scary.
You know what that fucking reminded me of. The OLD WINDOWS CMD.

THAT SHIT WAS HORRIBLE.From XP to 8 it was the worst thing to use, Pasting text was impossiable, No autocomplete, It had alot of ANNOYING quirks that made simple things a fucking pain. When you copied text sometimes it would not copy at THE POSITION OF YOUR CURSOR.

There was no up arrow to see your command history. And EVEN copying text like on windows XP did not properly work.

The worst part was that everything on windows used spaces. GOOD LUCK CD'ing TO PROGRAM FILES X86 ON CMD. (C:\Progra~1)

Microsoft MAKES windows ON WINDOWS. So they had to manage one of the biggest software projects of all time ON THAT CMD EVERYDAY.
 
at finding OLDER content
I find Yandex is good at finding the old content and it doesn't blacklist piracy/copyright infringement, so if you need to find .pdfs it really excels at that. Its image search is also top notch. It does however blacklist reddit (as of my last search) - for the odd time you want user reports on XYZ.

Brave's image search is so terrible that I ditched it as my primary search engine, but it's keyword search is okay. Google I only use when I need to search some information that is geographically important ie. where to buy something in my city.

--------------------------

My Linux Mint is acting up with bluetooth for some reason. Do I blame Rust for this, or myself? I've tried asking the LLMs for help but the step-by-step includes too much outdated and/or dead-end information.
 
Last edited:
My Linux Mint is acting up with bluetooth for some reason. Do I blame Rust for this, or myself? I've tried asking the LLMs for help but the step-by-step includes too much outdated and/or dead-end information.

Is your Bluetooth through USB or built into the motherboard? Worth nothing that Bluetooth on Linux is a bit dodgy. I've got a store-brand Bluetooth USB dongle I bought from Best Buy years ago for some noise cancelling headphones on Windows. It still works, but stuff like wireless PS4/XB1 controllers and noise cancelling headphones felt like it interrupted. Ironically, the new motherboard I have ships with Bluetooth functionality but the chipset is known to suck on Linux. Headphones drop sound every 2-3 seconds, wireless controllers have input lag. I just don't bother with it. But that's just my hardware.

If it's a USB dongle: input lsusb in a terminal window and give us the output. If it's on the motherboard, run lspci instead and tell us what it says. At the barest of minimums, you'd know the Bluetooth chipset and we can go from there.
 
Is your Bluetooth through USB or built into the motherboard? Worth nothing that Bluetooth on Linux is a bit dodgy. I've got a store-brand Bluetooth USB dongle I bought from Best Buy years ago for some noise cancelling headphones on Windows. It still works, but stuff like wireless PS4/XB1 controllers and noise cancelling headphones felt like it interrupted. Ironically, the new motherboard I have ships with Bluetooth functionality but the chipset is known to suck on Linux. Headphones drop sound every 2-3 seconds, wireless controllers have input lag. I just don't bother with it. But that's just my hardware.

If it's a USB dongle: input lsusb in a terminal window and give us the output. If it's on the motherboard, run lspci instead and tell us what it says. At the barest of minimums, you'd know the Bluetooth chipset and we can go from there.
It's alright I've got it to work. (Clone dongle, attached it to a different port.) New headphones with improved range tripped up my old setup.

I only mentioned it because there is an arcane troubleshooting rule of the Real World Operating System that if you bitch about a stupid problem and show the world you are an idiot - the solution arrives immediately thereafter. Works 100% of the time 80% of the time.
 
Back
Top Bottom