moonpiedumplings

joined 1 year ago

Cal state northridge?

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

Why are you talking about Creative Commons?

Because (from the article):

Originally open-source under the General Public License, DuckStation‘s license was changed first to PolyFormStrict License and then to CC-BY-NC-ND. These changes prohibit commercial use and derivatives of the emulator, including packaging it for distribution.

Yeah. It's not supposed to be for code. Didn't stop the Duckstation developer.

There are plenty of options in licenses in the post-open source, copyfair, copyfarleft, & such that work for software that are not considered “free” or “open” (where open is more corporate than free, which free is obviously the better one) but still allow users to modify read & usually modify the source.

I would have to evaluate those licenses on a case by case basis, but I suspect I would find the vast majority of them okay enough. But again, this is moving the goalposts. I was expressing my concerns issues with the CC BY NC ND, but you have changed the discussion to be about other licenses. Although interesting, they are not relevant since the DuckStation license is not those.

I still think government funding for free software is the correct solution, however. I generally find all of the post open and whatnot licenses have restrictions can be problematic, or loopholes that can be abused to get out of the "good" restrictions. I noted a while ago with one of the licenses that demand that corporations making over some amount giving up a percentage of their profits, that Google used to do a scheme where Alphabet (parent company of google) was the actual owner of the google logo, and then they rented it to Google at an absurdly high price, in order to artificially lower Google's profits. I think that it would be too simple for the extremely wealthy companies to do something similar and use post-open licensed software without consequence.

Taxing corporations is hard, but having every individual entity behind a software try to extract resources from a corporation will be harder. "Divide and conquer". My understanding is that license violations are a Civil case, meaning you have to spend money on lawyers and other legal things and... you would be going against some of the richest entities in the world in a court where money is basically a win button.

And of course, allowing society to continue to rely on proper Free Software licenses, ensures software freedom is preserved.

usually modify the source.

No. If I cannot modify the source, then I don't really view a difference between it and proprietary software. Both the OSI and Free Software Foundation at least require the ability to modify the source code, in order for a license to actually count at FOSS under their guidelines — and I agree with them. Code I cannot modify, is a piece of my computer I do not own.

[–] moonpiedumplings@programming.dev 2 points 9 hours ago* (last edited 8 hours ago) (5 children)

Some of these license are very clear about what is commericial

The license chosen in this article is the Creative Commons license, which is not a code license, but instead one intended for art. On their own page, they acknowledge the difficulty with categorizing commercial vs non-commercial usecases:

In CC’s experience, it is usually relatively easy to determine whether a use is permitted, and known conflicts are relatively few considering the popularity of the NC licenses. However, there will always be uses that are challenging to categorize as commercial or noncommercial. CC cannot advise you on what is and is not commercial use. If you are unsure, you should either contact the rights holder for clarification, or search for works that permit commercial uses.

What’s wild is the banshees here rarely acknowledge how AGPL works similar to these now adding restrictions instead of laying out what you can do, but daddy OSI approved it so it must be good.

  1. "You must share source code of this service with your users" is not really an actual restriction on who can use the software and who can use it.

  2. Fuck the OSI. They've done more harm to free software than any other organization. In the recent controversy with redis and SSPL, they refused to acknowledge the actual problem of the SSPL license, that it was unusable due to requiring all "software used to deploy this software" being open source. Does that mean that people who deploy software on Windows have to cough up the source code for Windows? What about Intel Management Engine, the proprietary bit of code in every single Intel CPU. Redis moved to a dual license with that a proprietary license. An unusable license... and a proprietary license = proprietary software. But instead, the OSI whined that the problems with the SSPL was that it would "restrict usage" because people have to share more source code. The OSI, and open source, have always been corporate entities that unsurp free software. Just look at their sponsors page and see who supports them: Amazon, Google, Intel, Microsoft...

The goal is often to help workers & the commons—say you as an individual are free to use it for, or others for places where folks have equal pay or say, or less than 10 seats. To say that since a software license says Amazon can’t use this but you can means it’s all proprietary means you are either Amazon or a goober to think these are equivalent. Something something baby out with the water fallacy

You are moving the goalposts. I argued against a license that restricts derivatives and commercial use. You are now defending licenses that target specific entities and seek to remain open to workers and the commons. A license that restricts derivatives is not this.

To be blunt, I would be okay with a license that specifically restricts retroarch devs from making derivatives, and I would find it funny af. I think that was what the Duckstation dev was going for with the noncommercial and no derivatives (since retroarch maintains forks of software in order to add it as cores), but I'm frustrated at what is essentially a shift to a proprietary license instead.

Although such a hypothetical license that targets the retroarch developers would not be approved by the OSI or the Free Software institutions, I don't really care. Racists don't get rights.

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

No, these licenses are problematic. Fundamentally, it is proprietary software, and restricts me from full ownership and control over my computer.

No derivatives prevents me from modifying the program and maintaining the control I am owed to have over my device. Every bit of proprietary code is a percentage of my computer that is no longer truly mine.

No commercial usage is a continium fallacy. Is my blog commercial, because I advertise my resume on it? Is retroarch* commercial, because they have a patreon and get paid? Are "nonprofits" not commercial, since they claim to not want to make a profit? Or are only registered businesses commercial?

The correct solution to maintain softare freedom is for governments to extract money from the entities that profit the most off of free software, and use those taxes to fund free software. Germany is kind of doing this with their sovreign tech fund.

*Fuck the retroarch devs btw. Did a little digging, they seem to have been very problematic, and ran multiple harassment campaigns.

https://wiki.archlinux.org/title/List_of_applications/Internet#Pastebin_services

That pages shows how to use curl to upload to 0x0.st.

I've used the pastebinit program listed on that page to upload to paste.debian.net, but it supports other sites as well.

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

So, you might be misunderstanding how BTRFS snapshots work.

A BTRFS snapshot is not a complete copy of the system, but rather, merely a recording point, and only CHANGES between the current system and the snapshotted system actually take up space. Like, if you snapshot a system, and then install 1 GB of updates, that snapshot only takes up that 1GB of differences in the system.

It's exactly because of this, that it's somewhat difficult to shuffle BTRFS snapshots around.

So, you can use BTRFS send/receive to send subvolumes to other btrfs devices.

So, snapshots are really just a subvolume that only takes up the difference between your main subvolume that you use, and the snapshot subvolume. You can use btrfs send/receive to send them them to another btrfs partition... but I don't know if sending subsequent backups will deduplicate data properly.

What you might want instead, are rsync backups. Timeshift also supports rsync backups, which copy all the data over to any device using rsync for the initial backup, but then use hardlinks to store only the changes between the backups for subsequent backups. Similar to btrfs — but simpler, is my understanding.

Yeah, but idk if phones can use joycons in the double joycon mode. My understanding is that it requires either root or a physical adapter of some kind.

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

If I am being honest, I prefer the Switch form factor with the dumb little controllers

Android phone + Telescopic gamepad + winlator might be what you want...

(Or you can use one of the switch emulators on android...)

Because forgejo's ssh isn't for a normal ssh service, but rather so that users can access git over ssh.

Now technically, a bastion should work, but it's not really what people want when they are trying to set up git over ssh. Since git/ssh is a service, rather than an administrative tool, why shouldn't it be configured within the other tools used for exposes services? (Reverse proxy/caddy).

And in addition to that, people most probably want git/ssh to be available publicly, which a bastion host doesn't do.

So, I'm not gonna pretend flatpak doesn't use more space then normal apps, but due to deduplication (and sometimes filesystem compression), flatpaks often use less space than people think.

[nix-shell:~/Playables/chronosphere]$ sudo /nix/store/xdrhfj0c64pzn7gf33axlyjnizyq727v-compsize-1.5/bin/compsize -x /var/lib/flatpak/
Processed 49225 files, 21778 regular extents (46533 refs), 22188 inline.
Type       Perc     Disk Usage   Uncompressed Referenced
TOTAL       53%      898M         1.6G         3.6G
none       100%      499M         499M         1.0G
zstd        34%      399M         1.1G         2.6G

[nix-shell:~/Playables/chronosphere]$ du -sh /var/lib/flatpak/
1.7G    /var/lib/flatpak/

I only have one flatpak app installed, and du says that takes up 1.7 GB of space... but actually, when using a tool that takes up BTRFS transparent compression into account, only half of that space is used on my disk.

I recommend using compsize for a BTRFS compression aware version of du and flatpak-dedup-checker for a flatpak filesystem deduplication aware checker of space used.

I think flatpak absolutely does use up more space, because yes, it is another linux distro in your distro. But I think that's a tradeoff people accept in order to have a universal package manager for graphical apps.

Also, you can flatpak cli tools. They are just difficult to run at first because you have to do the flatpak run org.orgname.appname thing, but you can alias that to a short command. Here is a flatpak of micro, a terminal based text editor.

(I prefer nix for cli tools though, and docker/podman/containers for services).

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

So based on what you've said in the comments, I am guessing you are managing all your users with Nixos, in the Nixos config, and want to share these users to other services?

Yeah, I don't even know sharing Unix users is possible. EDIT: It seems to be based on comments below.

But what I do know is possible, is for Unix/Linux to get it's users from LDAP. Even sudo is able to read from LDAP, and use LDAP groups to authorize users as being able to sudo.

Setting these up on Nixos is trivial. You can use the users.ldap set of options on Nixos to configure authentication against an external LDAP user. Then, you can configure sudo

After all of that, you could declaratively configure an LDAP server using Nixos, including setting up users. For example, it looks like you can configure users and groups fro the kanidm ldap server

Or you could have a config file for the openldap server

RE: Manage auth at the reverse proxy: If you use Authentik as your LDAP server, it can reverse proxy services and auth users at that step. A common setup I've seen is to run another reverse proxy in front of authentik, and then just point that reverse proxy at authentik, and then use authentik to reverse proxy just the services you want behind a login page.

 

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

I couldn't get any of the OS images to load on any of the browsers I tested, but they loaded for other people I tested it with. I think I'm just unlucky. > > Linux emulation isn't too polished.

 

I couldn't get any of the OS images to load on any of the browsers I tested, but they loaded for other people I tested it with. I think I'm just unlucky.

Linux emulation isn't too polished.

 

According to the archwiki article on a swapfile on btrfs: https://wiki.archlinux.org/title/Btrfs#Swap_file

Tip: Consider creating the subvolume directly below the top-level subvolume, e.g. @swap. Then, make sure the subvolume is mounted to /swap (or any other accessible location).

But... why? I've been researching for a bit now, and I still don't understand the benefit of a subvolume directly below the top level subvolume, as opposed to a nested subvolume.

At first I thought this might be because nested subvolumes are included in snapshots, but that doesn't seem to be the case, according to a reddit post... but I can't find anything about this on the arch wiki, gentoo wiki, or the btrfs readthedocs page.

Any ideas? I feel like the tip wouldn't just be there just because.

 

I've recently done some talks for my schools cybersecurity club, and now I want to edit them.

My actual video editing needs are very simple, I just need to clip parts of the video out, which basically every editor can do, as per my understanding.

However, my videos were recorded from my phone, and I don't have a presentation mic or anything of the sort, meaning background noise, including people talking has slipped in. From my understanding, it's trivial to filter out general noise from audio, as human voices have a specific frequency, even "live", like during recording or during a game, but filtering voices is harder.

However, it seems that AI can do this:

https://scribe.rip/axinc-ai/voicefilter-targeted-voice-separation-model-6fe6f85309ea

Although, it seems to only work on .wav audio files, meaning I would need to separate out the audio track first, convert it to wav, and then re merge it back in.

Before I go learning how to do this, I'm wondering if there is already an existing FOSS video editor, or plugin to an editor that lets me filter the video itself, or a similar software that works on the audio of videos.

 

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

I was watching a twitch streamer play the game pogostuck (A game similar in frustration and difficulty to Getting over it with Bennett Foddy — Don't Fall!).

They were also reading chat at the same time (usually out loud, as well). Multitasking.

Lots of sources (here's one) say that true multitasking is impossible. Rather, it's very fast switching, where there is a degradation of performance.

Knowing this, I naturally made it my mission to trip the streamer up with seemingly benign messages.

I was sharing some actual information about another streamer who beat another game, but a made a typo something like:

I remember a streamer beat the game a game ...

And I noticed how much more the streamer struggled to read this compared to previous, accidental typos (missing spaces, extra spaces, etc.). He spent a good 5 seconds on this message, and during the process, he fell really far. 😈

So I decided to do some testing. Inserting words, swapping them around, and whatnot, to see what tripped him up the most. Most typos didn't affect him.

There was one typo that tripped him again, where I said something like:

If it wasn't for a for

So it seems to be repetition? But I couldn't always replicate this with other forms of repetition.

Later on, I copied the two guards riddle, with an alteration:

One of the guards always lies and the other always lies as wekk. You don't know which one is the truth-teller or the liar either. However both guards know each other

Sadly, I didn't cut the part about "don't know which is truth teller or liar" out.

The streamer spent a good 5 minutes interpreting this puzzle, and eventually interpreting it as the original puzzle. Then, he was trying to solve a riddle, game, and read chat all at once.

He was stuck on the bottom until he gave up on the riddle (I revealed that I meant what I said when I said both guards lie). 😈

Anyway, that was a bit off topic but still relevant.

I'm wondering if any studies have been done on this? I know studies have been done on human's ability to read words with the letters partially scrambled, but what about typos?

How can I improve my distraction game (with plausible deniability of course)?

 

I was watching a twitch streamer play the game pogostuck (A game similar in frustration and difficulty to Getting over it with Bennett Foddy — Don't Fall!).

They were also reading chat at the same time (usually out loud, as well). Multitasking.

Lots of sources (here's one) say that true multitasking is impossible. Rather, it's very fast switching, where there is a degradation of performance.

Knowing this, I naturally made it my mission to trip the streamer up with seemingly benign messages.

I was sharing some actual information about another streamer who beat another game, but a made a typo something like:

I remember a streamer beat the game a game ...

And I noticed how much more the streamer struggled to read this compared to previous, accidental typos (missing spaces, extra spaces, etc.). He spent a good 5 seconds on this message, and during the process, he fell really far. 😈

So I decided to do some testing. Inserting words, swapping them around, and whatnot, to see what tripped him up the most. Most typos didn't affect him.

There was one typo that tripped him again, where I said something like:

If it wasn't for a for

So it seems to be repetition? But I couldn't always replicate this with other forms of repetition.

Later on, I copied the two guards riddle, with an alteration:

One of the guards always lies and the other always lies as wekk. You don't know which one is the truth-teller or the liar either. However both guards know each other

Sadly, I didn't cut the part about "don't know which is truth teller or liar" out.

The streamer spent a good 5 minutes interpreting this puzzle, and eventually interpreting it as the original puzzle. Then, he was trying to solve a riddle, game, and read chat all at once.

He was stuck on the bottom until he gave up on the riddle (I revealed that I meant what I said when I said both guards lie). 😈

Anyway, that was a bit off topic but still relevant.

I'm wondering if any studies have been done on this? I know studies have been done on human's ability to read words with the letters partially scrambled, but what about typos?

How can I improve my distraction game (with plausible deniability of course)?

 

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

docker-tcp-switchboard is pretty good, but it has two problems for me:

  • Doesn't support non-ssh connections
  • Containers, not virtual machines

I am setting up a simple CTF for my college's cybersecurity club, and I want each competitor to be isolated to their own virtual machine. Normally I'd use containers, but they don't really work for this, because it's a container escape ctf...

My idea is to deploy linuxserver/webtop, as the entry point for the CTF, (with the insecure option enabled, if you know what I mean), but but it only supports one user at a time, if multiple users attempt to connect, they all see the same X session.

I don't have too much time, so I don't want to write a custom solution. If worst comes to worst, then I will just put a virtual machine on each of the desktops in the shared lab.

Any ideas?

 

docker-tcp-switchboard is pretty good, but it has two problems for me:

  • Doesn't support non-ssh connections
  • Containers, not virtual machines

I am setting up a simple CTF for my college's cybersecurity club, and I want each competitor to be isolated to their own virtual machine. Normally I'd use containers, but they don't really work for this, because it's a container escape ctf...

My idea is to deploy linuxserver/webtop, as the entry point for the CTF, (with the insecure option enabled, if you know what I mean), but but it only supports one user at a time, if multiple users attempt to connect, they all see the same X session.

I don't have too much time, so I don't want to write a custom solution. If worst comes to worst, then I will just put a virtual machine on each of the desktops in the shared lab.

Any ideas?

 

So basically, my setup has everything encrypted except /boot/efi. This means that /boot/grub is encrypted, along with my kernels.

I am now attempting to get secure boot setup, to lock some stuff, down, but I encountered this issue: https://bbs.archlinux.org/viewtopic.php?id=282076

Now I could sign the font files... but I don't want to. Font files and grub config are located under /boot/grub, and therefore encrypted. An attacker doing something like removing my hard drive would not be able to modify them.

I don't want to go through the effort of encrypting font files, does anyone know if there is a version of grub that doesn't do this?

Actually, preferably, I would like a version of grub that doesn't verify ANYTHING. Since everything but grub's efi file is encrypted, it would be so much simpler to only do secure boot for that.

And yes, I do understand there are security benefits to being able to prevent an attacker that has gained some level of running access to do something like replacing your kernel. But I'm less concerned about that vector of attack, I would simply like to make it so that my laptops aren't affected by evil maid attacks, without losing benefits from timeshift or whatnot.

I found the specific commit where grub enforces verification of font files: https://github.com/rhboot/grub2/commit/539662956ad787fffa662720a67c98c217d78128

But I don't really feel interested in creating and maintaining my own fork of grub, and I am wondering if someone has already done that.

 

I'm having trouble with networking on linux. I am renting a vps with only one NIC, one ipv4 address, and a /64 range of ipv6 ones. I want to deploy openstack neutron to this vps, but openstack neutron is designed to be ran on machines with two NIC's, one for normal network access, and entirely dedicated to virtualized networking, like in my case, giving an openstack virtual machine a public ipv6 address. I want to create a virtual NIC, which can get it's own public ipv6 addresses, for the vm's, without losing functionality of the main NIC, and I also want the vm's to have ipv4 connectivity. I know this setup is possible, as the openstack docs say so, but they didnt' cover how to do so.

Docs: https://docs.openstack.org/kolla-ansible/latest/reference/networking/neutron.html#example-shared-interface

There is an overview of what you need to do here, but I don't understand how to turn this into a usable setup. In addition to that, it seems you would need to give vm's public ipv4 addresses, in order for them to have internet connectivity. I would need to create a NAT type network that routes through the main working interface, and then put the neutron interface partially behind that, in order for ipv4 connectivity to happen.

I've been searching around for a bit, so I know this exact setup is possible: https://jamielinux.com/docs/libvirt-networking-handbook/multiple-networks.html#example-2 (last updated in 2016, outdated)

But I haven't found an updated guide on how to do it.

view more: next ›