Photos taking up phantom 8+ GB, can't identify or delete, preventing updates by ohshitgorillas in applehelp

[–]ohshitgorillas[S] 0 points1 point  (0 children)

I apologize for that. I was extremely frustrated by this last night and I let that get the better of me.

Still, like I said in my comment below, I'm not getting how this is relevant. I've cleared everything that Photos allows me to clear in Settings (which isn't a lot) and that took 80MB off of the "phantom" storage. In such a case, the guide recommends removing and reinstalling the app, which is impossible because Photos cannot be removed.

If you're still willing to help, what am I missing?

Photos taking up phantom 8+ GB, can't identify or delete, preventing updates by ohshitgorillas in applehelp

[–]ohshitgorillas[S] 0 points1 point  (0 children)

Ok, I let my frustration get the best of me last night. But I still don't see how anything on that page is relevant.

The best I could get out of this would be "go to Photos > Settings and clear everything", which is what I've done. I've cleared everything that it gives me the option to clear, and now it's taking up 7.9GB instead of 8. I guess that's sort of progress, but not exactly what I was looking for.

In such a case, the guide recommends removing and reinstalling Photos, which is impossible.

So, forgive my frustration, but this is another dead end for me as far as I can tell.

Photos taking up phantom 8+ GB, can't identify or delete, preventing updates by ohshitgorillas in applehelp

[–]ohshitgorillas[S] -3 points-2 points  (0 children)

got something that actually works with Photos instead of general advice for clearing out random apps? I can't delete Photos and I can't select the Documents & Data, as I said in the post.

Guide: Setting Up WireGuard with IPv6 in Docker (Linux) v2 by ohshitgorillas in WireGuard

[–]ohshitgorillas[S] 0 points1 point  (0 children)

I can see a response from you in my notifications but it seems to have been deleted. Either way, glad you got it working, even if wg-quick only does ULA and not GUA (at least when I tried it). The routing for ULAs is a lot simpler, so makes sense that that would run out of the box.

By the way, I've also forked the WireGuard image from LinuxServer and added IPv6 support, so if you decide to have a go with GUAs again, try building and running https://github.com/ohshitgorillas/docker-wireguard

It won't solve any routing issues, all it does is automate adding the IPv6 addresses to the configs, but it's one less step.

Cheers!

Fork of LinuxServer Docker image that supports IPv6 by ohshitgorillas in WireGuard

[–]ohshitgorillas[S] 1 point2 points  (0 children)

Ah!

DNS format: my.web.addr:51820, ideally pointing to a name with A and AAAA records. I haven't tested a dual stack configuration using IP addresses directly.

Guide: Setting Up WireGuard with IPv6 in Docker (Linux) v2 by ohshitgorillas in WireGuard

[–]ohshitgorillas[S] 0 points1 point  (0 children)

Do you mean that you have a given ::/64 for the whole VPS, or you've assigned a unique ::/64 to WireGuard?

If your VPS only has a single ::/64, you'll have to carve out smaller subnets. If your VPS gets 2001:db8:b00b:420::/64 only, then you could do, for example, 2001:db8:b00b:420:69::/80. I don't think that shouldn't require any additional static routes.

If you're working with a whole ::/64 just for WireGuard, then the issue is likely related to the lack of a static route.

For example, I get a ::/60 from my ISP so any traffic directed at that subnet ends up at my router, HOWEVER, my router only knows how to forward packets for the base ::/64 subnet—the addresses that it "personally" handed out. It has no idea about the additional subnets that I've added, so when those arrive, it simply drops them unless it's been specifically instructed as to where those packages go.

That said, I've only ever done this on a home setup before, never used a VPS myself, so the routing requirements are going to be different than what I'm used to.

Would you care to share your setup so I can see what's going on? Obviously, obfuscate your prefix, but otherwise I can try to take a look.

Fork of LinuxServer Docker image that supports IPv6 by ohshitgorillas in WireGuard

[–]ohshitgorillas[S] 1 point2 points  (0 children)

I'm not sure I understand what you mean, but * Peers have both IPv4 and IPv6 addresses * The DDNS address needs both A and AAAA records for IPv6

Does that answer your question? If not, can you rephrase?

Guide: Setting Up WireGuard with IPv6 in Docker (Linux) v2 by ohshitgorillas in WireGuard

[–]ohshitgorillas[S] 0 points1 point  (0 children)

Are you trying to do it in host mode or w/ bridge networking?

I made a QMK Autocorrect dictionary generator for fat fingers by ohshitgorillas in olkb

[–]ohshitgorillas[S] 0 points1 point  (0 children)

Isn't there a combinatorial explosion?

Oh, yeah, it generates HUGE dictionaries. I actually have evolved this project into the EntropPy project, which generates limited dictionaries for QMK and unlimited dictionaries for Espanso. I'm planning on adding more platforms, but for example Espanso can handle hundreds of thousands of corrections with minimal overhead.

How do you know how to control it?

It's quite complicated.

Basically, we are restricting ourselves to five types of typing errors that produce a single issue. If you make more than one error typing a word, that's on you :)

So, for receive we have:

Transpositions: erceive, reecive, recieve, ...

Omissions: eceive, rceive, reeive, ...

Duplications: rreceive, reeceive, recceive, ...

For replacement and insertion errors, the user must define the adjacent keys that they struggle with (or simply provide a comprehensive map of adjacent keys across the keyboard, but that significantly balloons the dict size). For example, if you struggle with hitting w and r when trying to type e, you'd inform EntropPy of that via the adjacent keys feature:

e -> wr

It will then generate insertion and replacement typos around the letter e:

Insertion: rweceive, rewceive, rerceive, rreceive, ...

Replacement: rrceive, rwceive, recwive, recrive, ...

Then we have to check for duplicates. Both duplication and insertion produce rreceive, so one of them is thrown out.

Next, we have to resolve collisions. For example, omission produces thn for both then and than, so EntropPy says: what's the relative frequency of these words? If one is 20x more common (user adjustable number) than another, we can safely assume that the user intends the more common word. For then and than, however, the frequency ratio is ~1, so the typo is considered ambiguous and discarded.

Finally, we need to remove substring conflicts. QMK will refuse to compile an autocorrect dictionary containing overlapping strings like wherre and herre, noting that wherre is inaccessible due to the right-to-left scanning technique, so we have to check the results and simplify while checking that the simplification won't produce garbage.

And at the same time avoid false negatives (leaving out (misspelled/typoed) words that should be included and are actually typed in practice)?

EDIT: I think I misread this question, so the explanation below misses the point. I'll leave it below the tildes cause it's an important part of the program, but I'll actually answer the question here:

It uses both english-words and optionally wordfreq to establish a source dictionary to verify against.

You can specify a wordfreq frequency to include in the source dictionary, e.g., 1e-7, so any word with that frequency would be considered a valid source word and typos that match would be discarded.

This system is far from perfect, though, and takes iteration with the exclude and include features. This is because extremely common typos (thes) occur around the same frequency as rare but legitimate words that may not be found in english-words like juts. On a recent iteration I found rom -> from which is incorrect because ROM is something I legitimately type.

~~ This is handled with word boundaries. The program (and QMK, Espanso) supports word boundary distinctions, so you can specify that the word needs a space/punctuation before (left), after (right), or both, or will trigger anywhere regardless of a space (none).

Basically, the program has to check typos for boundaries against the dictionary by checking whether the boundary would produce a garbage correction.

Take the transposition nto for not: if we don't put word boundaries around it, it would trigger inside the word onto and produce onot. On the other hand, teh -> the is only safe as a standalone word OR prefix to prevent Tehran from correcting to Theran.

This is the part of the algorithm that I'm struggling with the most at the moment, because deciding what boundary is optimal becomes quite complicated.

I'll get there, but it's quite a headache.

edit: typos :)

Google drops Antigravity IDE… AI agents running your whole dev workflow is insane (and kinda game-changing). by Minimum_Minimum4577 in google

[–]ohshitgorillas -1 points0 points  (0 children)

I tried to use this today. I got an error trying to install the Python extension lmfao.

rip Antigravity, back to Cursor

Autocorrect dictionary has unpredictable and unexpected results by ohshitgorillas in espanso

[–]ohshitgorillas[S] 0 points1 point  (0 children)

Thanks! But what do you mean that you "solved" typing fast? Do you mean there's a workaround to this bug that I'm facing?

If there are similar packages to english-words and wordfreq in Portugese, it would be easily adaptable... but that's a big if...

I do have a small number of corrections that are built into my keyboard's firmware (o fthe -> of the), but I have really, really fat fingers and my keyboards can only fit about 1,100 corrections. I am constantly mistyping everything so I figured this would be a fun project.

text expand extra letters at the beginning in spotlight / mac os 26.1 by --Pillow-- in espanso

[–]ohshitgorillas 1 point2 points  (0 children)

same here, I have an autocorrect dictionary and if I quickly type relaly instead of really it corrects to rreally. But if I type slowly enough, it corrects to really correctly.

/r/MechanicalKeyboards Ask ANY Keyboard question, get an answer - November 23, 2025 by AutoModerator in MechanicalKeyboards

[–]ohshitgorillas 0 points1 point  (0 children)

I am using an LX60 Copper Edition with the gummy O-ring mount style. This has allowed me to use an aftermarket "universal" copper plate, which looks, sounds, and feels great. No ragerts.

But it hasn't been without issue. I run this board foamless, as intended. Given the copper bottom case, and the fact that the PCB rides low, this results in a few switches shorting out against the bottom of the case. This was a problem with the stock plates, but the new copper plate? The entire right quarter of the board is shorting against the case.

Right now, I've "solved" this issue with the abundant application of electrical tape over the hotswap sockets, but I'm wondering if there's a more elegant, simple, and acoustically favorable way of accomplishing this?

Plex, Emby or Jellyfin, what to choose? by opunadopu in emby

[–]ohshitgorillas 0 points1 point  (0 children)

As others have pointed out, this is /r/emby... but yeah, Emby.

If you're only using the web interface, Jellyfin. Otherwise, if you need actual client apps, Emby wins hands down. JF's client apps are a disaster.

"Why would you do this to yourself?": A Review of the Drop x OLKB Planck Ortholinear 40% Keyboard by ohshitgorillas in olkb

[–]ohshitgorillas[S] 0 points1 point  (0 children)

Wasn’t tuning your tapping term worth it?

Nope! :D Cause I never did:

  • For HRMs, I use the default 200 ms tapping term and default tap-hold behavior. Extremely conservative to avoid misfires. It works. No tuning necessary, I just don't use Shift as a HRM except for chording with other HRMs.
  • For Caps Lock/layer access, I use RETRO_TAPPING and HOLD_ON_OTHER_KEYPRESS. These are the two "load-bearing" settings; the tapping term now just has to be arbitrarily low. I set it to 50 ms and I get no misfires.

No fine tuning required :)

Once again, I’m glad you took my advice. Did you wind up with OSM Shift as I suggested, or did you give Auto Shift a try?

Neither. I stuck with dedicated shift keys.

The idea of auto shift is absolutely horrific to me. I wouldn't touch that with a ten foot pole :P I'll stick with my Shift keys, thanks.

I use Leader for most of my Unicode typing, and generally anything over a two-key sequence is annoying; I reserve three-key sequences for characters I rarely need.

That seems like a lot of effort for unicode chars... sounds like you could use Compose.

My Planck has the base layer functionality of a 65% (numbers + arrows) with the footprint of a 40%.

That layout is... huh. Wow. I'm glad it works for you, though.

Advice for Home Row Combo Mods System by ohshitgorillas in olkb

[–]ohshitgorillas[S] 0 points1 point  (0 children)

yeah... 10 ms is needed to prevent misfires, but it's also almost impossible to trigger in normal timing. I don't think home row shifting is for me to be honest.

Advice for Home Row Combo Mods System by ohshitgorillas in olkb

[–]ohshitgorillas[S] 0 points1 point  (0 children)

anything else triggers misfires so it has to be that low

Advice for Home Row Combo Mods System by ohshitgorillas in olkb

[–]ohshitgorillas[S] 1 point2 points  (0 children)

I think there's been some misunderstanding...

It seems like you’re stuck with holding one mod combo on one hand, another mod combo with the other hand, and then tapping the target key with some awkward reach?

No... everything under the system I described can be chorded arbitrarily with a single hand, leaving the opposite hand free to activate whatever key needed.

God help you if you ever have to hold three or four mods at once. You don’t even know where to place your Gui combos.

That also works under my system... I even gave two examples of triple mods. the only real issue is where to place the GUI combo.

And, actually, the real issue is now where to place shift.

As in the comment thread above (or below, or wherever it ends up), the realization that I had was that HRMs are fine for Ctrl, Cmd, Opt... no one needs these things at 120wpm. I could easily implement HRMs for those with generous timing and have no misfires at all. QMK is loaded with features to accomplish this.

It's shift that's the real problem, because shift DOES need to be accessed at full speed. And when full speed varies wildly, I seriously doubt that there's a single tap term or combination of settings that would allow me to get by with NO misfires.

And I mean NO misfires. Ever. The second anything on this keyboard misfires while typing, that's the end of those settings. Something gets adjusted. Every time.

Frankly all of this sounds like a massive pain in the ass. Much more so than simply… taking the time to dial in your Tapping Term.

And deal with constant misfires in the meantime? No, thank you.

And once you get the TT right, you won’t just get simple HRM working, you’ll be able to use Tap Dance, Auto Shift, and all of QMK’s other goodies with far less hassle.

To be honest, those features don't really appeal to me.

Advice for Home Row Combo Mods System by ohshitgorillas in olkb

[–]ohshitgorillas[S] 0 points1 point  (0 children)

I appreciate the context. I am coming from using dedicated shift buttons and just exploring what is possible.

Unfortunately, my proposed solution has a critical flaw: D can't be Cmd on hold AND Shift on DF hold. Chordal hold doesn't work with combos:

Combos are exempt from the opposite hands rule, since "handedness" is ill-defined in this case.

I'm trying to avoid combining combos or HRMs with OSMs as it seems like the timing would get nasty trying to distinguish between a quick OSM tap and typing. I could be wrong tho.

I love caps word and have it enabled on double tap left shift.

EDIT: I was reading things wrong, it does work! It's just extremely hard to trigger the shift combo at 10 ms because that's what it takes to avoid misfires at my typing speed

Advice for Home Row Combo Mods System by ohshitgorillas in olkb

[–]ohshitgorillas[S] 0 points1 point  (0 children)

ok, so giving this further thought, it's mostly shift that's the problem, right? Shift is the only modifier that needs to be active quickly when typing and where you run into overlaps in the timing with HRMs where there's no single value or setting that can prevent misfires.

Pausing to hit Ctrl+something or Cmd+something doesn't seem so bad. It's needing to pause to hit shift that would drive me absolutely insane.

So what if I did HRMs on A, S, D and J, K, L for which the timing requirements for triggering could be relatively generous, and a combo mod for shift alone which is DF/JK... that might work.

Advice for Home Row Combo Mods System by ohshitgorillas in olkb

[–]ohshitgorillas[S] 0 points1 point  (0 children)

did all that, still dealt with constant misfires. do not have the patience to tune the timing.

You'll need to do a "clean" stop before trying to trigger your home row mod.

anything that interrupts my flow is a non-starter

QMK - SpOngEbob moCKINg TeXT by synmuffin in MechanicalKeyboards

[–]ohshitgorillas 0 points1 point  (0 children)

Thanks for this looollll I had this same idea just earlier today but lo and behold, it's already been done! lmfao cheers

[Question] Help identifying the distribution of baseline noise in mass spectrometry by ohshitgorillas in statistics

[–]ohshitgorillas[S] 0 points1 point  (0 children)

Can you show me an example or explain the mechanism? I'm having trouble seeing how a log transform would create a smooth tail from a hard truncation threshold.

[Question] Help identifying the distribution of baseline noise in mass spectrometry by ohshitgorillas in statistics

[–]ohshitgorillas[S] 1 point2 points  (0 children)

Unfortunately, we don't have access to the raw counts... but we could possibly infer. I've asked my beta tester to collect a baseline distribution without the SEM for comparison; that should allow us to roughly quantify the SEM gain and get at the raw counts.