moonpiedumplings

joined 2 years ago
[–] moonpiedumplings@programming.dev 4 points 3 hours ago (1 children)

Codeberg has been having outages recently.

https://status.codeberg.org/status/codeberg

According to this page, it's only been up 50% of the time.

[–] moonpiedumplings@programming.dev 1 points 4 hours ago* (last edited 4 hours ago)

Openbsd is definitely more secure than secureblue. There is only so much you can do to handle the massive monolithic architecture of the Linux kernel. Further down the stack, many parts of Linux, like sudo, dbus, or systemd are regularly hit by zero days. The SELinux domain architecture that Secureblue is interesting, but SELinux is extremely complex and difficult to get right, compared to the much more simpler pledge and unveil sandboxing that openbsd offers.

In addition to that, there are further issues like the problematic way that user namespaces interact with browsers. (And user namespaces are frustrating in general, secureblue actually has a short article on their problems). For maximum security, you want to sandbox tabs from eachother using user namespaces (only works on chromium btw, firefox can't do this so it doesn't matter) — BUT, if you run your browser in a sanbox created by user namespaces, then you can't nest them, disallowing you from using that powerful tool to isolate tabs. So you are forced to make a choice: You can either sandbox the browser itself, in exchange for weakening the isolation between tabs, or you can strengthen the isolation between tabs, in exchange for weaking the sandbox around the browser itself. Giving the browser access to user namespaces is questionable though, because see above, user namespaces have led to a lot of vulnerabilities.

OpenBSD's pledge + unveil (but only on chromium again), does not really make such tradeoffs. It can sandbox tabs from eachother, while also sandboxing the browser itself. In addition to that, pledge + unveil do not present a massive kernel attack surface that people have had to restrict for having too many 0days. And this is just one of the many, many examples, where OpenBSD presents a better security posture than Linux.

Qubes is technically Xen, a different kernel than Linux. The Xen kernel virtualizes Linux distros, from which you can manage Xen, or do normal Linux app stuff. But nothing stops you from using a BSD virtualized by Xen for management or usage. Qubes talks about why they use Xen here — but the short version is that they did not consider the Linux kernel's kvm secure enough for their usecase.

[–] moonpiedumplings@programming.dev 1 points 5 hours ago (1 children)

Damn. This is cool af. I've seen so ,any interesting things with epbf, like bpfilter, facebook's ebpf firewall which they discussed being more performant.

I wonder if an epbf alternative to selinux is possible?

Tailscale already does though, I think.

https://tailscale.com/docs/features/tailscale-funnel

Although it might work differently.

[–] moonpiedumplings@programming.dev 1 points 15 hours ago* (last edited 15 hours ago)

What port was this sent to, and what webserver are you running (if it was sent to a webserver)?

This reminds me of string to strigger the really bad apache vulnerabilities that lead to being able to read from the whole filesystem (path traversal), or get a shell on your system (remote code execution). It's likelu that bots are spray and praying attempts across the internet.

I've had similar experiences with this FPS game called krunker.io

Krunker.io is a browser based game, and it had a pretty bad cheating problem, and since it was a browser based gamr, the devs could never implement an anticheat that worked for long.

They implemented a deputization system, where certain respected members of the community would become "krunker police", and then you could call them from a lobby. They would then invisibly spectate, and record and ban cheaters. The system worked really well, actually. Cheaters were banned quickly, and the requirement collection of video evidence held those involved accountable.

But krunker players had another interesting way of handling cheaters. You see, krunker has really bad netcode, bad enough that you would have to lead hitscan weapons a variable amount depending on how much ping you had. Krunker was also a movement shooter, where you could slidehop and go really, really fasy. The combination meant that you could dodge the shots of cheaters. As I got better, I just stopped calling krunker police, and started beating them. One of my fondest memories was this one lobby full of good players, and when a cheater joined we stomped them below all of us on the ranking, taunting them all the way down. At the end, they tried to sell their cheats and we all laughed. "Why would I buy these cheats? I'm better than them". Eventually they ragequit. Good times.

But nooooo, nowadays modern game publishers need control over every part of the game. They demand control over the servers, refusing to let anybody host their own communities. They demand absolute control over the community, but refuse to actually moderate it and handle toxicity. And now, they're demanding control over the clients, forcing you to install rootkits on your computers so they can control those too.

[–] moonpiedumplings@programming.dev 16 points 1 day ago* (last edited 1 day ago) (2 children)

FreeBSD, OpenBSD and NetBSD are behind Linux.

Look, I dislike permissive licenses too, but you need a source to back this claim up.

Right now, each BSD does something special, that Linux (distro's) can't trivially replace, even if the usecase is more niche. NetBSD Dev's make efforts to get it running on many devices as they can. OpenBSD (and it's subprojects) are highly secure, moreso than Linux. Who do you think makes our beloved OpenSSH? OpenSSH noted for having very few vulnerabilities over it's two decade long existence, and OpenBSD itself is similar, which is insane because there are products with multiple bad vulnerabilities every year (Linux being one of them...). This is due to a highly security minded architecture - one that Linux lacks.

FreeBSD is like Linux before systemd. The ports system results in freebsd packaging many server services that aren't packaged on Linux. Being able to manage those through the system package manager, and the conviniences that provides, is nice.

Different, and not popular don't mean bad.

[–] moonpiedumplings@programming.dev 8 points 2 days ago* (last edited 2 days ago)

This reminds me of the way that forgejo lets you feed it an arbitrary openid url, so you can log in with any service you want, including your own server.

Also, is this compatible with lemmy? The last time I tried fediverse (mastodon) login, it was with owncast, but it didn't work with lemmy.

[–] moonpiedumplings@programming.dev 1 points 3 days ago (1 children)

Have you used ovirt? It's currently being maintained by Oracle after Red Hat gave it up.

I've been meaning to try it, but the documentation is dense and hard to get through, and I unironically find the openstack install instructions more approachable in some ways...

My recommendation is to use an abstraction layer that runs qemu-kvm under the hood and automate that. Some people have mentioned libvirt, but Incus is another good option.

Owncast is the self hosted stream thing. It has some rudimentary federation capibilities, but nowhere near the ease discovery of twitch.

I know some streamers that have an owncast, expired_popsicle uses debian Linux and has one. (It's tech/linux streamers because of course).

 

Youtube video: https://www.youtube.com/watch?v=xrIFL7wSRw4

I am excited about the changes to incus-migrate that allow for direct importation of a remote qcow2 or vmdk. Although many people distribute vmdk's zipped or in tarballs, but it's still a cool feature.

go run works by compiling the program to a temporary executable and then executing that.

can you guarantee that runs everywhere

It seems to depend on glibc versions, if that's what you are asking. You can force it to be more static by using a static musl python or via other tools. Of course, a binary for Linux only runs on Linux and the same for Windows and Mac. But yeah.

Also it should be noted that go binaries that use C library dependencies are not truly standalone, often depending on glibc in similar ways. Of course, same as pyinstaller, you can use musl to make it more static.

 

Sample with fibonacci:

⍥◡+9∩1 is the fibonacci in this language

 

Here are some cool examples I was looking at:

https://github.com/zardoy/minecraft-web-client — Minecraft in your browser, complete with connections to servers.

https://github.com/inolen/quakejs — quake 3 in your browser, has multiplayer as well.

Any other good examples? or good lists?

 

cross-posted from: https://programming.dev/post/45725210

I noticed in a fairly recent version of KDE, my computer would pretend to be a bluetooth sink when connected to devices like my phone.

This is a really cool feature, and I really like it, because it lets me stream audio from my phone to my computer with no fuss.

However, there is an annoying glitch where the stream stops all of a sudden. The phone keeps playing the music, but I can't hear anything. I've noticed that this seems to have something to do with CPU usage, like when I switch windows rapidly or do something that requires CPU the bluetooth process is dropped. The only reliable way to fix it is to disconnect and reconnect, or wait a minute, and then it works again. Is there any way to fix this more persistently?

I am using CachyOS + KDE right now.

 

I noticed in a fairly recent version of KDE, my computer would pretend to be a bluetooth sink when connected to devices like my phone.

This is a really cool feature, and I really like it, because it lets me stream audio from my phone to my computer with no fuss.

However, there is an annoying glitch where the stream stops all of a sudden. The phone keeps playing the music, but I can't hear anything. I've noticed that this seems to have something to do with CPU usage, like when I switch windows rapidly or do something that requires CPU the bluetooth process is dropped. The only reliable way to fix it is to disconnect and reconnect, or wait a minute, and then it works again. Is there any way to fix this more persistently?

I am using CachyOS + KDE right now.

 

0patch provides "micropatches", that replace running windows code in place, fixing security issues rapidly without requiring an update/reboot.

I really want something like them for an upcoming cybersecurity competition, specifcally patches for the zerologin and eternalblue vulnerabilities.

Unfortunately, 0patch does want a credit card for the free trial, which makes it unfeasible for us to use.

Any alternatives?

 

Has anyone tried this? It's discord reverse engineered.

 

Inspired by this comment.

I'm curious.

 

Tldr we want a static website that will last a long time and also look pretty nice.

Right now, we have a wordpress website. It looks very nice. It also have 4 extensions that aren't configured to auto update. Also whenever I try to make changes to the website they don't apply because the website was configured via the extensions and I hate it.

I want a static site of some kind. It's simple to self host or host anywhere, and it's also simple to secure and keep maintained for a long time.

I am currently looking at static site generators, like quarto, or docusaurus

However, they are difficult to theme to the "niceness" that I want, and their nature results in these somewhat fixed output formats. Like, it is somewhat difficult and annoying to put images anywhere I want them and etc.

Is there like a fixed WYSIWYG html editor? Something between designing a website from scratch and a static site generator. Or is there a way to finagle static site generators to be more flexible than blogs or documentation sites?

 

I hate all three. I understand some of the decisions but other ones are frustrating.

Let me explain what I used to do. What I used to do, is take advantage of the fact that firefox profiles are completely separate instances of firefox, each with their own settings and extensions. I would run my personal profile with highly aggressive and experimental settings, because I was ok with it crashing if it meant I learned interesting things. On the other hand, the profiles related to schoolwork and other more important tasks would be defaults, so they would be much more stable. I no longer consider this a necessary feature, but it was fun to play with.

The other big reason why I relied on the old profiles, is because they have separate cookies and whatnot, which is useful for when I want to have an account for each profile. Although Google happily lets you sign into multiple accounts from the same browser, Microsoft, Discord, and many other apps do not, and force you to sign out before signing in again.

But this is painful. Things never open in the profile I want them to by default, which is annoying. In theory, and I am considering doing this, the way to fix it is by creating app menu shortcuts for each profile, and then having them be the apps I select whenever I want to open a website link or file (with no default profile/app set, so I just select every time).

In addition to that, each profile had to have it's own mozilla account for syncing, which was annoying.

Containers seemed like a nice in between. I could use a single mozilla account for sync, but have seperate microsoft or other accounts on the same browser instance.

Except nope, they actually suck and don't work like that. I can't decide a window is dedicated to a container, so all tabs from xyz site will open in that container and give me that account. It constantly prompts me and it's painful and the UX for what I'm trying to do is miserable.

Containers seem designed more for isolating cookies between two different sites, rather than hiding instances of sites from themselves. Like the original version was a "facebook container", which would hide the facebook cookies from other sites, but I don't want that. I want to be able to log into multiple facebook accounts (hypothetically, I don't actually have a single facebook account but you get the idea).

The new profiles, if you've heard of them, somehow manage to combine the worst of both worlds. Firstly they are an entirely separate system and can't be managed by the second profile system. But they exist within a single one of the old profiles, meaning I can't do tricks with desktop shortcuts to make apps open in one profile or the other. But at the same time, despite existing within one profile, they each require seperate Mozilla accounts for sync.

I am very frustrated, but als resetting up my system so I am considering what to do. I am probably going to continue with profiles, but add app menu shortcuts for them.

Any better ideas?

28
Core War - Wikipedia (en.wikipedia.org)
submitted 2 months ago* (last edited 2 months ago) by moonpiedumplings@programming.dev to c/wikipedia@lemmy.world
 

Core war is a programming combat game, where players make MIPS-like assembly programs to fight eachother for control over a virtual system.

view more: next ›