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
Ive reverse engineered so much of it. SO fucking much.
1769525772518.png
NAND support has been improved greatly and I can comfirm some great news.

QEMU can successfully now emulate this TV so well that the EXTRACTED Linux kernel from the bootloader can get ALOT further now.

1769525863051.png
Sure it fails to mount but im pretty sure its because the BOOTLOADER gives it custom command line options. As opposed to a WEEK ago

1769526006811.png
(IGNORE IT SAYING [BOOTLOADER] this is the LINUX kernel talking not the bootloader via uart.)
Its able to properly SCAN the "NAND" and detect bad blocks compared to before failing and saying all blocks were bad because of INCORRECT my incorrect read implementation for NAND.
Again not a SINGLE thing in this kernel has been tampered with to make it work better. All RAW extracted and done.
And now HERE

1769526112345.png

Oh the bootloader? That has gotten further now.

1769526154232.png
Just for new readers this is the extracted LOW level bootloader of this TV extracted and running in QEMU, it fails yeah but see that? It detects the partitions and labels them and also gets the start and end addresses of the partitions(How nice of it). Detecting the NAND device and properly doing things. I can say that I FINALLY think that its PAST that "Searching for boot.TDF error"
 
Last edited:
Xfwl4 - The roadmap for a Xfce Wayland Compositor / archive
This initiative will utilize a significant portion of the project’s donated funds, but we believe it’s an important investment in Xfce’s future.

The goal is, that xfwl4 will offer the same functionality and behavior as xfwm4 does, or as much as possible considering the differences between X11 and Wayland. Using xfwl4 should feel just like using xfwm4 on X11. We even plan to reuse the existing xfwm4 configuration dialogs and xfconf settings to ensure a seamless transition.

Xfwl4 will not be based on the existing xfwm4 code. Instead, it will be written from scratch in rust, using smithay building blocks.
 
Not helping this is how Glibc is also notorious for breaking ABI between versions.
Ahem, use LLVM/Clang (then cry because libcxx is different in very subtle ways at times). Also get the cold shoulder in terms of support because acksually,

I'd just like to interject for a moment. What you're refering to as Linux, is in fact, GNU/Linux, or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called Linux, and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.
There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called Linux distributions are really distributions of GNU/Linux!
 
i am still confused about all these different gtk versions. on my computers, every app that is gtk4 does not look like the rest of the system, and instead just looks like GNOME. it's extremely infuriating when other apps will look just fine. i wonder when gtk3 support is inevitably dropped in favor of gtk4, how will desktops cope? will i just not be able to theme anything?


i will install it, thank you for your input.

Technically there's theming support, if theme author bothers to make the styles. It's just that instead of applying it like a normal theme, you have to put the actual files into ~/.config/gtk-4.0. See, e.g. Celestial GTK which has a flag in the installer to symlink assets. (It's what I use, Ghostty and Foliate are themed and work and look perfectly fine)
Alternatively, there are gtk and libadwaita forks that return the use of styles, though they're likely not packaged anywhere except AUR. This is what Human relies on.

But yes, the point to doing this is that GNOME designers with their HIG know better and you should eat it up and ask for more.
See also this old gem, written unironically: https://stopthemingmy.app/
Yeah I was going to say. I don't think it's gtk4 itself that causes the problem, but the apps that are designed to work with gnome specifically. I've never developed a gtk4 app so I don't know all the ins and outs. But my understanding is theming can work properly with gtk4. But gnome apps specifically don't.

One of the many reasons people should hate the gnome faggots.

Pretty sure Slav Power was thread banned for a bit there before being ban-banned because there was a period where people were saying mostly hyperbolic shit about Windows in this thread that he didn't rise to while he was still being mildly helpful in the Windows thread.
I will have you know Windows is the cause of every problem in modern society. They're why America is full of jeets, and their operating system is a psyop to brain wash you with AI. Also Bill Gates is a satanic pedophile.
 
Anybody know a way to remap or disable the side buttons on my Razer mouse? I'm on KDE Arch and the "configure extra buttons" page under mouse settings does absolutely nothing.
 
Anybody know a way to remap or disable the side buttons on my Razer mouse? I'm on KDE Arch and the "configure extra buttons" page under mouse settings does absolutely nothing.
OpenRazer but it's pretty unintuitive and it's probably easier to pop your mouse into a windows computer if you can and remap it. Pretty sure VMs are also fine for this.
 
View attachment 8481600
NAND support has been improved greatly and I can comfirm some great news.

QEMU can successfully now emulate this TV so well that the EXTRACTED Linux kernel from the bootloader can get ALOT further now.

View attachment 8481606
Sure it fails to mount but im pretty sure its because the BOOTLOADER gives it custom command line options. As opposed to a WEEK ago

View attachment 8481611
(IGNORE IT SAYING [BOOTLOADER] this is the LINUX kernel talking not the bootloader via uart.)
Its able to properly SCAN the "NAND" and detect bad blocks compared to before failing and saying all blocks were bad because of INCORRECT my incorrect read implementation for NAND.
Again not a SINGLE thing in this kernel has been tampered with to make it work better. All RAW extracted and done.
And now HERE

View attachment 8481614

Oh the bootloader? That has gotten further now.

View attachment 8481617
Just for new readers this is the extracted LOW level bootloader of this TV extracted and running in QEMU, it fails yeah but see that? It detects the partitions and labels them and also gets the start and end addresses of the partitions(How nice of it). Detecting the NAND device and properly doing things. I can say that I FINALLY think that its PAST that "Searching for boot.TDF error"
Hey im back just want to say i found a USER guide for this family of processors meant to be given out to customers(companys) and this processor is acutally INSANE. It does things that puts MODERN x86 and ARM to SHAME all while being from 2008!!!.

First off it has the ability to do MULTIPLE ram operation at once.
1769547718303.png
Ignore the yellow text I just messed up using the digital highlighter tool by accident
1769547774406.png
You can give it MULTIPLE COMMANDS. or "hey store this in ram" or "Hey read this" and the memory controller will store it as a LIST of operations that need to be done. Then a "Arbiter" will decide what is the MOST important and do it sending it back. Its like having MULTIPLE drive through to take orders at a restaurant. Allowing the CPU to keep doing operations while it waits for the memory operation to complete. Kind of like if ram was multicore.

The possibility of this are insane but its also EXTREMELY efficient. ARM or x86 has NOTHING like this this. A literal 2008 TV chip does something so ahead of the curve that it beats both of them in efficiency.
And this is not done via software but HARDWARE, as this entire system is built into the CIRCUITRY similar to pong(If you do not know the original atari pong was not made in assembly but rather the games logic was using JUST hardware circuitry. Meaning the game is just a circuit.). being accessed and communicated by the software.

Along with that instead of on x86 with everything running at ONE clockspeed the CPU can have DIFFERENT parts of it set to DIFFERENT speeds.

1769548452537.png
(Im not electrical engineer. Only electrical degree I have is basic arudino stuff.)
you can have the MEMORY controller part of the CPU run at a different speed and then have the m2C module clock run at a different speed (I have no idea what a m2c clock means)
Stuff as little as the "Timestamp clock" can be changed so for example you can turn DOWN the voltage of something like the "Timestamp clock" and reroute it to something MORE important during non IO reads. Allowing you to not only save power but also reduce heat, all from just the software at ANY time.
1769549115430.png
Or imagine for example when power is low like if the chip was used in a phone and the battery was low it downclocked clocks like the timestamp clock or the I2c clock in order to increase battery life while still keeping the MAIN cpu clockspeed the same.
x86 sure as hell doesn't have this and neither does the "Power efficient" ARM. Yet this 2008 TV chip has these ABSURDLY useful features that have been completely forgotten about.

1769549894189.png
Also the thing is split into 2 CHIPS, the PNX 8500(The main processor) and the PNX5100(the video controller and more). So for example if this was used in a PHONE, when you tap the little power button to standby your phone you can turn off the PNX5100 turning off video directly and saving cpu cycles and MORE power than something on MODERN phones today.


The BOOT speeds are insane. I can confidently say what happens every boot. This takes less than 12 ish seconds to BOOT up. this is everything that happens in those 12 ish seconds
  1. Setup UART for debugging logs
  2. Scan NAND for partition table
  3. Check if should wait for memory bit to flip or directly boot
  4. do several timeouts to wait for the NAND to return statuses
  5. Find boot.bat and load it
  6. setup a BATCH scripting enviroment where things get setup with complex commands like "tdfload Kernel.tdf"
  7. load linux kernel
  8. Scan for bad blocks all 2046 of them
  9. Then RESCAN for BFFS partition table
  10. Find that and then mount everything then put everything in /dev/ and register the seperate PNX chip for seperate video processing in /dev/
  11. wait for that to load and register "shmem" and a bunch more in /dev/, Register the speakers and display.
  12. Then after all of that then start the MAIN Binary(The TVS "operating system/interface") and everything there
  13. The main binary boots and then SETS up the seperate pnx chip communicating via /dev/
  14. Have it also scan stuff as well and give it a memory layout to the UART(everything also gets debugged adding extra time)
  15. Finally Display the BASIC bootlogo
  16. And then bootup
All on 200mhz RAM and similar CPU clockspeed in ONLY 13 SECONDS!
Here is the thing in case you want to read/see it
https://www.nxp.com/docs/en/user-guide/UM10113.pdf
Oh yeah THIS.
Bootloader has been FULLY implemented to stand on its knees.
Current thing its doing? Waiting for the IR remote to register a POWER button being pressed on a remote to then transition to starting the vmlinux and then move forward. Yes its gotten THAT far.
Remember when I was wrong about this?
Good times right.

Well what I actually activated during that time was a secret FLASHING mode. Its not waiting for a power button its waiting for a debugging device to change a bit in memory to say "its safe to start up". Since everything's loaded in RAM you can DIRECTLY program the NAND controller, so for example instead of desoldering and then reprogramming the NAND and then resoldering you can just DIRECTLY porgram the NAND using a EPPROM programmer clipped to the NAND similar to something like this(Example is from a BIOS programmer on a laptop)
1769550877060.png

Where it would CLIP onto the nand chip directly.

So if you were a Dev working on the system, you would boot. See general partition info
1769550976414.png

and if you made a mistake or want to test a new version of the TV's binary or kernel or whatever. you would simply using your clipper and other debugging tool DIRECTLY flash the NAND while running. Most likely communicating with the nand officially using signals to reflash it. Because everything is already loaded in RAM and is prepared to handle it you could erase EVERYTHING and as long as you do not reboot nothing in the bootloader would break. It would just fail to find anything to boot from.
Once your done reflashing your debugging tool would change a BIT in memory telling it "Its ok to boot now, RESCAN and try again bootloader" and it will then boot. OR you could just tell it to "just continue booting" without flashing anything new by changing that piece of memory its scanning for directly.

It appears I accidentally found this while making it and incorrectly assumed it was the TV waiting for a power button press from the remote. So that's cool I guess
 
Last edited:
XFCE is already pretty modular, I think half it's components are technically other projects or something.
Xfce is the best desktop envrionment. Followed by Cinnamon.

I like how you can also use stuff from xfce without having to install a whole desktop environments worth of dependencies. Like thunar. Crazy they can somehow manage it meanwhile you need 200 dependencies to install kde or gnomes file managers.
 
I tried KDE Connect for the first time yesterday. I HATE how Linux programs can have any one of 15 different file pickers, and I hate that they all suck. This one is the worst I've seen, bar none.
It is so ugly and unusable it must be on purpose. Qt has decent-looking and decently-usable file pickers, why the hell do they use this one? It MUST be a joke between the developers.


  • White text on a bright teal background.
  • WHITE TEXT ON A WHITE BACKGROUND!
  • No filtering/search (if there's a secret hotkey I couldn't find it).
  • The path bar makes each directory its own clickable button. The / button is extremely wide, and this pointless artificial width makes it so you can't see the full path, even if it would fit otherwise!
    • This also makes it so that you can't click to paste in the path. Ctrl-L is how you're supposed to do that, and I guess you're just expected to hit random things on your keyboard to figure that out.
  • The ↑ button's icon is off-center.
  • No back or forward buttons.
  • Can't select multiple files.
  • Can't select folders.
  • If you widen the window, it will shrink itself back automatically.
    • ...unless I widen it to the end of my screen. Then it'll stay there. Might be a quirk of awesomeWM, I don't know.
    • If you close the window while it's shrinking, then re-open it, it'll KEEP SHRINKING WHERE IT LEFT OFF!

KDE Connect's terrible interface is not limited to the file picker. If you open plugin settings the button is moved to an ellipsis menu. Click that button, and it then opens a second, identical menu! :story:


I tried KDE Connect because I wanted a replacement for LocalSend (lets you send files/clipboard between your PC and phone). LocalSend's file picker also sucks. It's GTK, so it's not pretty but it's not hideous. In localsend, if you want to send multiple items at once you have click add->file/folder->folder. For every. single. folder. You can't just select a list of items in a directory like in a proper file manager.
Actually getting KDE Connect to run on my arch machine was dumb. I have to leave $ kdeconnectd running before launching the CLI or GUI. Not a clue why it isn't a systemd service that's enabled out of the box. What's really annoying is that it doesn't really tell you this anywhere, not even in the error messages. I only found out thanks to terminal tab-autocomplete. Added kdeconnectd & to my .xinitrc and it works fine.
Anyways, did you see that button at the start of the video: "Browse this device"? Turns out if you install the optional package sshfs, you can mount your phone like any other drive in Dolphin. You can select any number of files you want and drag them all over at once, both ways (I don't have to use my phone's touchscreen if I'm sending files from my phone to my PC). KDE software might suck in places, but when they integrate into each other it's absolutely beautiful.

So, despite the hilariously bad interface, KDE connect is a huge upgrade from LocalSend... because you can just skip the interface altogether. Once your phone and PC are paired, you only need kdeconnectd running for the Dolphin integration.
 
@ProudSkibidiTolietAryan once again proving himself to be the turbotismic Linux thread king because he never once gave up and actually tracked down B2B documentation for his TV.

Godspeed, you glorious autistic bastard. God fucking speed.
 
>rust
>smithay instead of wlroots
>one dev side project
>not tranny, gentoo tech nerd
>not cuck licensed but GPLv3
Can't decide if gem or coal. XFCE is without a doubt one of if not the best "full" DE for X11, having it on Wayland would also be quite nice. Once Vaxry grows tired of the NiggerDesktop chain around his ankle and forks Wayland, the day of the rope will truly fall upon us. Does anyone know what the state of app/namespace isolation is in XLibre these days? I really, really, really want to give EXWM a try but I likewise really, really, really get an autistic itch about app isolation and cba bubblewrapping all my shit no more.
 
You can give it MULTIPLE COMMANDS. or "hey store this in ram" or "Hey read this" and the memory controller will store it as a LIST of operations that need to be done. Then a "Arbiter" will decide what is the MOST important and do it sending it back. Its like having MULTIPLE drive through to take orders at a restaurant. Allowing the CPU to keep doing operations while it waits for the memory operation to complete. Kind of like if ram was multicore.
Basically out of order execution but only for memory accesses? Interesting.
 
Does anyone know what the state of app/namespace isolation is in XLibre these days? I really, really, really want to give EXWM a try but I likewise really, really, really get an autistic itch about app isolation and cba bubblewrapping all my shit no more.
If I recall correctly it works but requires the DE to implement it. I think there's there's a plug-in for SonicDE that allows you to have every workspace be it's own namespace, so if you switch between the virtual desktops apps from one can't see apps in another or their inputs.
 
Basically out of order execution but only for memory accesses? Interesting.
Yeah where instead of giving it ONE instruction saying
"Hey read memory address xxx" and then having to wait for that to finish. You can issue multiple commands and it will sort and store them without you needing to wait. Eventually sending each operation you gave it back.
 
Back
Top Bottom