stardreamer

joined 1 year ago
[–] stardreamer@lemmy.blahaj.zone 2 points 9 months ago

Simply changing the binary worked for me. Been more than 1 month and no migration issues.

It does still show gitea branding, however.

[–] stardreamer@lemmy.blahaj.zone 12 points 9 months ago (1 children)

I believe it. Linux is not a good measure of efficiency (see kernel bypass tcp stacks, af_xdp, dpdk, spdk, etc). You can almost always make something more efficient/faster than Linux for a given task. The problem is doing that while having support for almost all hardware/configurations/uses cases under the sun.

[–] stardreamer@lemmy.blahaj.zone 2 points 9 months ago (1 children)

My suggestion would be to try compiling the kernel locally.its highly likely the one packaged in your distro contains extensions that you don't have. Doing a local native compile should rule that out pretty quickly without having to disable any additional features.

[–] stardreamer@lemmy.blahaj.zone 2 points 9 months ago* (last edited 9 months ago) (3 children)

Look at the line with the asm_exc_invalid_op. That seems like a hardware fault caused by an invalid asm instruction to me. Either something wrong is being interpreted as an opcode (unlikely) or maybe the driver was compiled with extensions not available on the current machine.

OP, how old is your CPU? And how old is the nic you are using?

Edit: ~~did you use a custom driver for the NIC? I'm looking at the Linux src and rt_mutex_schedule does not exist.~~ Nevermind. Was checking 4.18 instead of 6.7. found it now. The bug is most likely inside a macro called preempt_disable(). Unfortunately most of the functions are pretty heavily inlined and architecture dependent so you won't get much out of it. But it is likely any changes you made in terms of premption might also be causing the bug.

[–] stardreamer@lemmy.blahaj.zone 27 points 9 months ago

Here you dropped this:

#define ifnt(x) if (!(x))
[–] stardreamer@lemmy.blahaj.zone 9 points 9 months ago (1 children)

This probably sounds pedantic but based on this the issue isn't that the software is Russian. It's that the software is under the regulation of an authoritarian government (which is Russia)

[–] stardreamer@lemmy.blahaj.zone 5 points 9 months ago

Nginx is 2-clause BSD, which I would argue is more "Open Source" than Arch Linux (official repo contains proprietary components such as discord, steam, multimedia codecs). You could argue that the majority of it (and it's build system) is open source, but probably not "Arch Linux" is fully Open Source.

[–] stardreamer@lemmy.blahaj.zone 8 points 9 months ago

It was always there, but we've long ignored the warnings. It invented the Internet, which we took for granted. It wasn't until Gore seeped through a series of tubes that we realized, but by then it was too late.

It had already taken over the windmills.

[–] stardreamer@lemmy.blahaj.zone 15 points 9 months ago* (last edited 9 months ago) (1 children)

Nothing but effort. Nobody wants to constantly baby a project just because someone else may change their code at a moment's notice. Why would you want to comb through someone else's html + obfuscated JavaScript to figure out how to grab some dynamically shown data when there was a well documented publicly available API?

Also NewPipe breaks all the time. APIs are generally stable, and can last years if not decades without changing at all. Meanwhile NewPipe parsing breaks every few weeks to months, requiring programmer intervention. Just check the project issue tracker and you'll see it's constantly being fixed to match YouTube changes.

[–] stardreamer@lemmy.blahaj.zone 22 points 9 months ago* (last edited 9 months ago) (7 children)

An API is an official interface to connect to a service, usually designed to make it easier for one application to interact with another. This is usually kept stable and provides only the information needed to serve the request of the application requesting it.

A scraper is an application that scrapes data from a human readable source (i.e. website) to obtain data from another application. Since website designs can update frequently, these scrapers can break at any time and need to be updated alongside the original application.

Reddit clients interact with an API to serve requests, but Newpipe scrapes the YouTube webpage itself. So if YouTube changes their UI tomorrow Newpipe could very easily break. No one wants to design their app around a fragile base while building a bunch of stuff on top of it. It's just way too much work for very little effort.

It's like I can enter my house through the door or the chimney. I would always take the door since it's designed for human entry. I could technically use the chimney if there's no door. But if someone lights up the fireplace I'd be toast.

view more: ‹ prev next ›