<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. https://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="https://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:jackal</id>
  <title>Agnus Dei</title>
  <subtitle>Agnus Dei</subtitle>
  <author>
    <name>Agnus Dei</name>
  </author>
  <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/"/>
  <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom"/>
  <updated>2025-11-28T14:03:19Z</updated>
  <lj:journal userid="5074" username="jackal" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="https://jackal.livejournal.com/data/atom" title="Agnus Dei"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2229181</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2229181.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2229181"/>
    <title>Trolls reporting my account on LJ</title>
    <published>2025-11-28T14:03:19Z</published>
    <updated>2025-11-28T14:03:19Z</updated>
    <content type="html">Someone is going through my posts from 6 years ago and flagging them as “sexual content” trying to get my account removed. &lt;br /&gt;&lt;br /&gt;I’ve appealed but Facebook bots ruled against me.  Even though I’ve NEVER posted sexual content on my page.  &lt;br /&gt;&lt;br /&gt;They flagged a post from 2019 which was simply me laying on Chris looking at the camera.   That’s it. &lt;br /&gt;&lt;br /&gt;Grrrr.  Part of being gay is dealing with homophobic sh1theads.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://ic.pics.livejournal.com/jackal/5074/824332/824332_1000.png" alt="IMG_9308.png" title="IMG_9308.png" fetchpriority="high"&gt;&lt;br /&gt;&lt;img src="https://ic.pics.livejournal.com/jackal/5074/824654/824654_1000.png" alt="IMG_9307.png" title="IMG_9307.png" loading="lazy"&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2228772</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2228772.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2228772"/>
    <title>another anydice.com function</title>
    <published>2025-08-21T13:48:57Z</published>
    <updated>2025-08-21T13:48:57Z</updated>
    <content type="html">&lt;pre class="aentry-post__block-with-code"&gt;&lt;code&gt;function: mode of ROLL:s {
  MAX: 0
  MODE: 0
  loop N over ROLL {
      P: [count N in ROLL]
      if P &amp;gt; MAX {
          MAX: P
          MODE: N
      }
   }
   result: MODE
}
ROLL: [highest 2 of 2d10]
output [mode of ROLL] named "Mode of highest 2 of 2d10"
ROLL: [highest 2 of 3d10]
output [mode of ROLL] named "Mode of highest 2 of 3d10"
ROLL: [highest 2 of 4d10]
output [mode of ROLL] named "Mode of highest 2 of 4d10"
ROLL: [highest 2 of 5d10]
output [mode of ROLL] named "Mode of highest 2 of 5d10"



&lt;/code&gt;&lt;/pre&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2228497</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2228497.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2228497"/>
    <title>anydice.com comparing Sorcerous Blast version Fire Bolt.</title>
    <published>2025-08-19T22:20:51Z</published>
    <updated>2025-08-19T22:20:51Z</updated>
    <content type="html">&lt;p&gt;set "explode depth" to 1&lt;br&gt;&lt;br&gt;output 3d[explode d8] named "Sorcerous Blast (3d8)"&lt;/p&gt;
&lt;p&gt;output ( 3d[explode d8] * 95 + &amp;nbsp;6d[explode d8] * 5 &amp;nbsp;) / 100 named "Sorcerous Blast (3d8), with Criticals"&amp;nbsp;&lt;/p&gt;
&lt;p&gt;output 3d10 named "Fire Bolt (3d10)"&lt;/p&gt;
&lt;p&gt;output ( 3d10 * 95 + &amp;nbsp;6d10 * 5 &amp;nbsp;) / 100 named "Fire Bolt (3d10), with Criticals"&amp;nbsp;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2228313</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2228313.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2228313"/>
    <title>git commands to put everything back to the way you have it checked into the repo.</title>
    <published>2025-04-12T23:33:46Z</published>
    <updated>2025-04-12T23:33:46Z</updated>
    <content type="html">&lt;p&gt;git fetch origin&lt;/p&gt;
&lt;p&gt;git reset --hard origin/master&lt;/p&gt;
&lt;p&gt;git diff src/encounter_generator.py&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2228077</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2228077.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2228077"/>
    <title>The Self-Destruction of Pirate Software: Ego, Errors, and the Internet’s Wrath </title>
    <published>2025-01-28T05:00:03Z</published>
    <updated>2025-01-28T05:00:03Z</updated>
    <content type="html">&lt;p&gt;After watching a gazillion "The Fall of Pirate Software" videos tonight... over all the events of the last 2 weeks, I felt like doing some writing tonight:&lt;br&gt;&lt;br&gt;### The Self-Destruction of Pirate Software: Ego, Errors, and the Internet’s Wrath &lt;br&gt;&lt;br&gt;Pirate Software. The name once conjured images of a talented, if smug, figure in the gaming world—charismatic enough to command a following with his natural deep yet soothing "made for radio" voice. &lt;br&gt;&lt;br&gt;Today, however, his name is synonymous with hypocrisy, selfishness, and a five-act play of public humiliation that could rival a Greek tragedy. &lt;br&gt;&lt;br&gt;Yes, Pirate Software is entitled. Yes, he embodies the worst of nepotistic privilege. And yes, his fall from grace has been entirely self-inflicted. But as much as I want to revel in the Schadenfreude, I find myself grappling with an unexpected feeling: pity. The internet has united in what can only be described as a collective takedown of his ego, and while the criticism is warranted, the sheer scale of it is unnerving. &lt;br&gt;&lt;br&gt;So, how did he get here? Let’s examine the five missteps that turned Pirate Software from internet darling into a pariah. &lt;br&gt;&lt;br&gt;---&lt;br&gt;&lt;br&gt;#### 1. The Raid That Sank His Credibility &lt;br&gt;&lt;br&gt;In *Ashes of Creation*, a botched raid set the stage for Pirate Software’s downfall. Someone pulled the boss too early, resulting in a catastrophic wipe. Fueled by frustration and self-righteousness, Pirate Software declared, “Whoever pulled the boss is kicked from the guild.” &lt;br&gt;&lt;br&gt;Enter irony. The postmortem review revealed that the culprit was none other than Pirate Software himself. Confronted with video evidence, he didn’t apologize. Instead, he doubled down on deflection, conveniently forgetting his earlier promise to exile the guilty party (which, in this case, was himself). &lt;br&gt;&lt;br&gt;It was the kind of blunder that leaves an indelible mark, not just for its hypocrisy, but for its sheer refusal to acknowledge reality. &lt;br&gt;&lt;br&gt;---&lt;br&gt;&lt;br&gt;#### 2. Ratting Out in WOW Hardcore &lt;br&gt;&lt;br&gt;If the raid fiasco was a stumble, his actions in *World of Warcraft* Hardcore were a full-on faceplant. In a high-stakes situation where death is permanent, Pirate Software chose to prioritize his own safety at the cost of two player's characters (and this is Hardcode mode - which means death is permanent). Pirate Software just ran like a rat, effectively ensuring their demise. &lt;br&gt;&lt;br&gt;It wasn’t just cowardly—it was downright Machiavellian. He could have intervened, lent a hand, or at least gone down swinging alongside his comrades. Instead, he opted for self-preservation, leaving the internet to label him as the very antithesis of a team player. &lt;br&gt;&lt;br&gt;---&lt;br&gt;&lt;br&gt;#### 3. The Deflection Heard 'Round the Internet &lt;br&gt;&lt;br&gt;Rather than issue an apology or take responsibility for his actions, Pirate Software resorted to his favorite defense mechanism: denial. When the internet came calling for accountability, he met them with deflection, blame-shifting, and an air of entitlement so thick it could choke a dragon. &lt;br&gt;&lt;br&gt;It was a masterclass in ego-driven damage control, except for one small problem: it didn’t work. Instead of quelling the flames, his refusal to admit fault poured gasoline on the fire. The internet smelled blood, and a hate campaign was born. &lt;br&gt;&lt;br&gt;---&lt;br&gt;&lt;br&gt;#### 4. Striking Out at Critics &lt;br&gt;&lt;br&gt;When backed into a corner, some seek redemption. Pirate Software, on the other hand, opted for retaliation. He began reporting fellow Twitch streamers who dared to criticize him, attempting to silence dissent by weaponizing moderation tools. &lt;br&gt;&lt;br&gt;This move was not just petty—it was career suicide. His actions led to his expulsion from the *Only Fangs* guild, a collective of content creators and streamers. The message was clear: even among his peers, his behavior was unacceptable. &lt;br&gt;&lt;br&gt;---&lt;br&gt;&lt;br&gt;#### 5. The “Roach” Monologue &lt;br&gt;&lt;br&gt;As the backlash reached fever pitch, Pirate Software released a video announcing that he would no longer play *WOW Hardcore*. What should have been a moment of humility turned into a spectacle of self-pity, prompting viewers to dub him a “roach”—a metaphor for his ability to scuttle away from responsibility. &lt;br&gt;&lt;br&gt;The nickname stuck, and the video became the final nail in his reputational coffin. Instead of garnering sympathy, it reinforced the public’s perception of him as a man incapable of self-awareness. &lt;br&gt;&lt;br&gt;---&lt;br&gt;&lt;br&gt;### The Anatomy of a Fall &lt;br&gt;&lt;br&gt;Pirate Software’s descent isn’t just a cautionary tale of ego run amok—it’s a case study in how not to handle public criticism. His actions reveal a pattern of hypocrisy, selfishness, and an almost pathological inability to own up to his mistakes. &lt;br&gt;&lt;br&gt;And yet, as justified as the criticism may be, one can’t help but feel uneasy about the internet’s collective glee in tearing him apart. The online mob is an unrelenting force, and while Pirate Software has certainly earned his share of ridicule, the scale of the backlash raises uncomfortable questions about how we, as a society, handle public figures who stumble. &lt;br&gt;&lt;br&gt;Will Pirate Software learn from his mistakes? Can he rebuild his reputation? Or has he cemented his legacy as a cautionary tale for streamers and gamers alike? Time will tell. But one thing is certain: in the game of public opinion, he’s lost more than just a raid—he’s lost the trust and respect of his community.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2227849</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2227849.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2227849"/>
    <title>How many times is 1d3 reference in the 2014 Dungeon Master's Guide?</title>
    <published>2025-01-19T09:37:54Z</published>
    <updated>2025-01-19T09:37:54Z</updated>
    <content type="html">&lt;p&gt;I OCR'ed the 2014 DMG down to a text file and then grep'ed out '1d3' to see how many times '1d3' is actually referenced in the 2014 DMG, and the answer is 17 times.&lt;br&gt;&lt;br&gt;13 of those involved regaining expanded charges for magic items.&lt;/p&gt;
&lt;blockquote&gt;$ ocrmypdf --sidecar /tmp/output.txt "Dungeon Master's Guide.pdf" /tmp/output.pdf --force-ocr &lt;br&gt;&lt;br&gt;$ egrep 1d3 /tmp/output.txt | wc -l &lt;br&gt;17 &lt;br&gt;&lt;br&gt;$ egrep 'regains? 1d3 expended' /tmp/output.txt | wc -l &lt;br&gt;13&lt;/blockquote&gt;
&lt;p&gt;Yeah - I'm a nerd.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2227536</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2227536.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2227536"/>
    <title>Brad's Must Have Baldur's Gate 3 Mods</title>
    <published>2024-09-02T05:53:05Z</published>
    <updated>2024-09-02T06:00:43Z</updated>
    <content type="html">&lt;figure class="aentry-post__figure aentry-post__figure--wider" data-figure-type="image" data-image-type="wide"&gt;
            &lt;div class="aentry-post__img--wider"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/824249/824249_1000.png" srcset="https://ic.pics.livejournal.com/jackal/5074/824249/824249_1000.png 1000w, https://ic.pics.livejournal.com/jackal/5074/824249/824249_2000.png 2000w" sizes="1000px" fetchpriority="high" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;

&lt;p&gt;These are the absolute mustt have mod's for BG3 for me:&lt;br&gt;&lt;br&gt;&lt;strong&gt;1- Party Limit Begone&lt;/strong&gt; — This allows you to play with a party size of up to 16 (I think) which is insane. Anything 6 or greater is too much. &amp;nbsp;&amp;nbsp;We have a rule 5 characters. &amp;nbsp;That's it. &amp;nbsp;5! &amp;nbsp;That's just 1 more than the default. &amp;nbsp;&amp;nbsp;So yes — it does make the game easier, but honestly I'm a causal gamer — So I'm fine with that. &amp;nbsp;:)&lt;br&gt;&lt;br&gt;&lt;strong&gt;2- Custom Companions — &lt;/strong&gt;This mod, does 3 things:&lt;strong&gt;&lt;br&gt;&lt;/strong&gt;A) Let's you create a custom companion whenever you want. &amp;nbsp;So if at level 5 you decide you want to add 1 more party member — go for it. &amp;nbsp;This is wonderful, because no more starting over to try a different character. &amp;nbsp;Combined with Party Limit Begone above, you can just create a character for your party whenever you want. &amp;nbsp;Say, your party is at 6th level and you want to try a monk, just use Custom Companions to add a new party member and off you go to the races.&lt;br&gt;&lt;br&gt;B) The second power of this mod lets you clone existing NPCs in the game. &amp;nbsp;This is weird and buggy and I do not recommend using it because the cloned character does not act like a fully normal character. &amp;nbsp;&amp;nbsp;Therefore — I don't recommend this part of the Mod.&lt;br&gt;&lt;br&gt;C) And the last thing this mod does is give you a power to apply a long list of commands or actions to your companions. &amp;nbsp;Most useful for example, is the option to infect the companion with the tadpole, so you can add illiquid powers to them if you want.&lt;br&gt;&lt;br&gt;I can just stop right there. &amp;nbsp;Those two completely saved this game for me.&lt;br&gt;&lt;br&gt;&lt;br&gt;Another fun ones include:&lt;br&gt;&lt;strong&gt;1- Whispers of the Fey (Goblin Race) &lt;/strong&gt;— by default Goblins are in the game, and you can even hire one from Withers to join your party, but you can't start as a Goblin by default, and thus why this is co cool. &amp;nbsp;&amp;nbsp;On my first complete play through I played as a Goblin and I loved it.&lt;br&gt;&lt;br&gt;&lt;strong&gt;2- Whispers of the Fey (Changelings).&lt;/strong&gt; — I love this one. &amp;nbsp;You can either A) select to play as a Changeling which look like Odo from Star Trek: Deep Space 9 or B) go to Withers and purchase a Changeling. &amp;nbsp;&amp;nbsp;What's really greate about this race is that not only do you get all the races you would get from Disguise self, but also NPC's broken down by act. &amp;nbsp;So while you are in Act 1 you can only see NPC's who actually appear in Act 1, and then upon reaching Act 2, &amp;nbsp;you get a new select to include the NPC Act 2 body models.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;br&gt;That's it. &amp;nbsp;It's a short list, but these mods really changed the way I play BG3.&lt;/p&gt;
&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2227351</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2227351.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2227351"/>
    <title>updated my anyflip downloader script.</title>
    <published>2024-06-15T20:41:52Z</published>
    <updated>2024-06-15T20:41:52Z</updated>
    <content type="html">&lt;p&gt;Was bored.... so I updated my anyflip downloader script.&lt;br&gt;&lt;br&gt; It does this:&lt;br&gt;&lt;br&gt;1- downloads each of the pages as raw .jpgs&lt;br&gt;2- combines all the raw jpgs into a PDF&lt;br&gt;3- then takes that PDF and runs it through OCR software to create a new OCR'ed version of the PDF (so you can search for text inside the PDF, instead of just having a PDF of images)&lt;br&gt;&lt;br&gt;I updated the script to download everything into a randomly created temp dir.&lt;br&gt;&lt;br&gt;&lt;a target='_blank' href='https://raw.githubusercontent.com/jackal242/brads_scripts/aa9c06a2d4cb48b738008157b4e01b98f065b574/anyflip-pdf-getter.sh'&gt;https://raw.githubusercontent.com/jackal242/brads_scripts/aa9c06a2d4cb48b738008157b4e01b98f065b574/anyflip-pdf-getter.sh&lt;/a&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2226945</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2226945.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2226945"/>
    <title>video-resize.sh</title>
    <published>2024-05-29T08:37:47Z</published>
    <updated>2024-05-29T08:38:10Z</updated>
    <content type="html">&lt;p&gt;resize videos&amp;nbsp;&lt;/p&gt;
&lt;pre class="aentry-post__block-with-code"&gt;&lt;code&gt;#!/bin/bash 
ffmpeg -i $1 -vf "scale=trunc(iw/4)*2:trunc(ih/4)*2" -c:v libx265 -crf 28 output-half.mp4&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Alternatively ... if you know you want it to be 720 (width) and you just want the height to scale accordingly use:&lt;/p&gt;
&lt;pre class="aentry-post__block-with-code"&gt;&lt;code&gt;#!/bin/bash
ffmpeg -i $1 -vf scale="720:-1" -c:v libx265 -crf 28   output-resize720.mp4&lt;/code&gt;&lt;/pre&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2226788</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2226788.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2226788"/>
    <title>Posting a link to twitter is now considered a "cybersecurity" violation on Facebook now.</title>
    <published>2024-01-05T06:13:24Z</published>
    <updated>2024-01-05T06:13:24Z</updated>
    <content type="html">&lt;p&gt;So posting a link to twitter is now considered a "cybersecurity" violation on Facebook now.&lt;br&gt;&lt;br&gt;&lt;/p&gt;
&lt;figure class="aentry-post__figure aentry-post__figure--text-width" data-figure-type="image" data-image-type="standart"&gt;
            &lt;div class="aentry-post__img--text-width"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/823683/823683_original.png" data-inherit-privacy="true" fetchpriority="high" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;

&lt;figure class="aentry-post__figure aentry-post__figure--text-width" data-figure-type="image" data-image-type="standart"&gt;
            &lt;div class="aentry-post__img--text-width"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/823996/823996_800.png" srcset="https://ic.pics.livejournal.com/jackal/5074/823996/823996_800.png 800w, https://ic.pics.livejournal.com/jackal/5074/823996/823996_original.png 1220w" sizes="800px" data-inherit-privacy="true" loading="lazy" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2226483</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2226483.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2226483"/>
    <title>Facebook Community Violation for 2011 post (12 years later)</title>
    <published>2023-05-20T18:05:22Z</published>
    <updated>2023-05-20T18:05:22Z</updated>
    <content type="html">&lt;p&gt;There is no nudity in this photo.&lt;br&gt;&lt;br&gt;I'm covered with a towel.&lt;br&gt;&lt;br&gt;And yet ---- 12 years after I posted this ---- &amp;nbsp;12 YEARS later, Facebook sends me a Community Violation notice.&lt;br&gt;&lt;br&gt;God Facebook's bots are terrible !&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;figure class="aentry-post__figure aentry-post__figure--text-width" data-figure-type="image" data-image-type="standart"&gt;
            &lt;div class="aentry-post__img--text-width"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/823400/823400_original.png" data-inherit-privacy="true" fetchpriority="high" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2226014</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2226014.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2226014"/>
    <title>How does DNS work? </title>
    <published>2022-10-03T19:48:50Z</published>
    <updated>2022-10-03T19:48:50Z</updated>
    <content type="html">&lt;p&gt;Simple terms resolves a domain name (URL) into an IP address.&lt;br&gt;&lt;br&gt;In actual terms: &lt;br&gt;&lt;br&gt;First DNS checks cache to see if the name is locally configured (via /etc/hosts) or is already in the local DNS cache. If it is, it checks the Time To Live (TTL) and sees if the time is valid. If it is, it uses that.&lt;br&gt;&lt;br&gt;Otherwise, the operating system reaches out to a thing called a Resolving Name Server. Again, it checks if the resolving name server already has the name in cache first. If not, then the resolving name server points to the root domain for the address.&lt;br&gt;&lt;br&gt;The root domain server knows where to find the Top Level Domains (like .net, .com, .edu, etc..) and the root domain server will point the request to them. The resolving name server puts this information in its cache so it doesn’t have to do this step again later.&lt;br&gt;&lt;br&gt;The Top Level Domain server will not have the answer either, but will know where to find the domain name itself for the primary name. For example, if we are using example.com, then the TLD would know where the DNS server for example.com lives, and will point the resolving name server to that IP address. Again, the resolving name server puts all this information into cache so it doesn’t have to do this again.&lt;br&gt;&lt;br&gt;This next set of name servers are called “Authoritative Name Servers.” When the domain is registered, the authoritative name servers for this domain are registered with the TLD.&lt;br&gt;&lt;br&gt;At this point the Authoritative Name Server will reply with the IP for that domain name. &lt;br&gt;&lt;br&gt;At each step in this process the information queried for is cached into the resolving name server. This is why DNS is so fast. Everything that can be cached is cached.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2225798</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2225798.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2225798"/>
    <title>VLC Settings for Live Recorded video.</title>
    <published>2022-08-14T02:01:39Z</published>
    <updated>2022-08-14T02:02:07Z</updated>
    <content type="html">&lt;p&gt;This is the video you want for fixing Audio preferences inside VLC.&lt;br&gt;&lt;br&gt;&lt;a target='_blank' href='https://www.youtube.com/watch?v=JMbVsyYgi_0&amp;amp;t=86s'&gt;https://www.youtube.com/watch?v=JMbVsyYgi_0&amp;amp;t=86s&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Also, inside the Window&amp;gt;Audio Effects, enable the dynamic range compressor. &amp;nbsp;Makes a WORLD of different for live recordings.&lt;br&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2225464</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2225464.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2225464"/>
    <title>How to calculate the width of an image (with black side bars) for Instagram.</title>
    <published>2022-08-07T01:47:40Z</published>
    <updated>2022-09-19T08:38:43Z</updated>
    <content type="html">&lt;p&gt;How to calculate the width of an image (with black side bars) for Instagram.&lt;/p&gt;
&lt;p&gt;Assume you have a vertical image with current height= 2048, and you want to know the new width so that Instragram will not try to resize it and cut off parts of your image.&lt;/p&gt;
&lt;p&gt;So from terminal (or your favorite calculator) run this:&lt;/p&gt;
&lt;p&gt;bc &amp;lt;&amp;lt;&amp;lt;"2048*1080/1350"&lt;br&gt;&lt;br&gt;Again 2048 is the current HEIGHT, and the number returned will be the new WIDTH.&lt;br&gt;&lt;/p&gt;
&lt;p&gt;And that will return the new width of the image (larger than your current image) to be filled with black. I just use canvas size in photoshop and let it auto fill with black bars.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2225234</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2225234.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2225234"/>
    <title>How to install wine-staging on MacOSX</title>
    <published>2022-07-21T05:32:50Z</published>
    <updated>2022-07-21T05:32:50Z</updated>
    <content type="html">&lt;p&gt;&amp;nbsp;&lt;br&gt;brew remove wine-stable&lt;/p&gt;
&lt;p&gt;brew install --cask --no-quarantine &amp;nbsp;homebrew/cask-versions/wine-staging&lt;br&gt;&lt;br&gt;Others that I tried:&lt;br&gt;&lt;br&gt; brew install --no-quarantine gcenx/wine/wine-crossover&lt;/p&gt;
&lt;p&gt;&amp;nbsp;brew install --no-quarantine gcenx/wine/wine-stable-legacy&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2225063</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2225063.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2225063"/>
    <title>My Esper Aggro Deck 2022</title>
    <published>2022-07-16T07:20:31Z</published>
    <updated>2022-07-16T07:35:50Z</updated>
    <content type="html">&lt;p&gt;See comments&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2224426</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2224426.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2224426"/>
    <title>How I got robbed for $10,000  (see also: Wells Fargo has ZERO SECURITY)</title>
    <published>2022-01-13T20:50:58Z</published>
    <updated>2022-01-13T21:05:01Z</updated>
    <category term="#2when"/>
    <content type="html">&lt;p&gt;So, last week my Wells Fargo checking account got robbed for nearly $10,000 because Wells Fargo has ZERO SECURITY.&lt;br&gt;&lt;br&gt;Note: My account was not hacked. &amp;nbsp;Rather the criminals used "social engineering" against Wells Fargo employees to rob my account.&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Here's how it all happened:&lt;/strong&gt;&lt;br&gt;&lt;strong&gt;1- &lt;/strong&gt;At 12:57 PM a bad actor called up Wells Fargo Customer Service, and successfully had the phone number on my account changed. &amp;nbsp;&amp;nbsp;He simply told the worker that, "I lost my phone and got a new one." &amp;nbsp;Which right there should have been suspect enough, because when you get a new phone, YOU TYPICALLY KEEP YOUR OLD PHONE NUMBER.&lt;br&gt;&lt;br&gt;This was the point at which all security broke down.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2-&lt;/strong&gt; Later that day, at two separate locations, someone went into a Wells Fargo bank with manufactured fake checks. &amp;nbsp;One for $4900 and the other was for $4920. &amp;nbsp;These were obviously fake checks. &amp;nbsp;I've seen them. &amp;nbsp;They look fake as hell.&lt;br&gt;&lt;br&gt;The teller took the checks and "called the issuer" to verify I wrote these checks. &amp;nbsp;Except see above. &amp;nbsp;They had changed the phone number on my account, so the teller calls the fake number and the person answers saying, "Yes, I'm Brad Allison. &amp;nbsp;I wrote those checks, please pay them." &amp;nbsp;So the teller writes on the checks, "OK'ed by issuer" (or something like that), and hands over the cash from my account.&lt;br&gt;&lt;br&gt;This happens twice. &amp;nbsp;Once for $4900 and again for $4920. &amp;nbsp;The person(s) knew what they were doing because the total is under $10,000 and they knew for under $10,000 no one would do anything (see below).&lt;br&gt;&lt;br&gt;So that was the scam.&lt;br&gt;&lt;br&gt;&lt;strong&gt;3- &lt;/strong&gt;Now let's talk about Wells Fargo's COMPLETE LACK OF SECURITY. &amp;nbsp;&amp;nbsp;Wells Fargo does not support Multi-Factor Authentication via apps like Google Authenticator or Authy or something like that. &amp;nbsp;&amp;nbsp;Instead Wells Fargo online banking supports 2FA (two factor authentication) where they send a code to your cell phone number.&lt;br&gt;&lt;br&gt;Problem is (see #1 above) anyone can just call customer support and have the phone number on your account changed, thus bypassing any 2FA security you have on your account.&lt;/p&gt;
&lt;p&gt;Again, Wells Fargo has ZERO security.&lt;br&gt;&lt;br&gt;&lt;strong&gt;Now let's talk about all the red flags that were ignored. &amp;nbsp;Any of these red flags should have been enough to stop this from happening.&lt;br&gt;&lt;br&gt;Red Flag #1&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The check numbers on the manufactured checks matched checks I wrote in 2019 that has already been cashed. &amp;nbsp;&amp;nbsp;Why on Earth were they allowed to cash a check using a check number that had already been cashed? &amp;nbsp;&amp;nbsp;&amp;nbsp;That should have been enough right there to flag these checks as frauds.&lt;br&gt;&lt;strong&gt;&lt;br&gt;Red Flag #2&lt;/strong&gt;&lt;br&gt;&lt;br&gt;When the teller looked up my phone number to call and "validate" that I issued the checks why was there not a red flag on the account noting that the phone number had just been changed earlier that day? &amp;nbsp;&amp;nbsp;That should have been a HUGE red flag to let them know something was wrong.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Red Flag #3&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;These checks were cashed in San Diego, CA. &amp;nbsp;&amp;nbsp;I live in South Florida. &amp;nbsp;BOTH checks were cashed in CA. &amp;nbsp;&amp;nbsp;That should have been a HUGE red flag something was wrong. &amp;nbsp;Even the fake phone number was registered to Hialeah, FL. &amp;nbsp;&amp;nbsp;The teller could have looked that up and seen something was wrong here. &amp;nbsp;Why would two checks be being cashed for cash, in San Diego, when the owner of the account lives in South Florida?&lt;br&gt;&lt;br&gt;&lt;strong&gt;&lt;br&gt;Now on to our next issue: &amp;nbsp;No one gives a shit.&lt;br&gt;&lt;/strong&gt;Here's all the evidence I have:&lt;br&gt;1- I have the fake phone number they used (the person lives in Hialeah, FL).&lt;br&gt;2- I have the images of the fake manufactured checks which were cashed.&lt;br&gt;3- I have the images of the original real checks from 2019 for contrast.&lt;br&gt;4- I have the exact branch numbers and locations (Wells Fargo Banks) for where the checks were cashed (you would think they could pull the videos)&lt;br&gt;5- I have the exact names of the people who cashed the checks.&lt;br&gt;&lt;br&gt;After getting all this information working with the branch manager, I went to the police and gave them all this information the day after reporting it. &amp;nbsp;A couple days later I came back to give them some additional information, and the clerk who was looking up the case says to me, "Oh this is an informational case." &amp;nbsp;I said, "What does that mean?" &amp;nbsp;She says, "It means we took this information but it's unlikely anyone will get assigned to the case." &amp;nbsp;&amp;nbsp;&amp;nbsp;She then says, "Also, the crime took place in San Diego. &amp;nbsp;We don't have jurisdiction to pull the video tapes there."&lt;br&gt;&lt;br&gt;Then she says, "Plus the bank has a Fraud Department who handles all this. &amp;nbsp;They will do the investigation."&lt;br&gt;&lt;br&gt;So I'm just baffled. &amp;nbsp;We have all the information on who did this, and the police don't care.&lt;br&gt;&lt;br&gt;And as far as I can tell, the bank just put the money back in my account and that's that.&lt;br&gt;&lt;br&gt;No one cares. &amp;nbsp;The thieves just get away with it, and no one seems to care.&lt;br&gt;&lt;/p&gt;
&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2224244</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2224244.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2224244"/>
    <title>jackal @ 2021-12-24T18:58:00</title>
    <published>2021-12-24T23:58:53Z</published>
    <updated>2021-12-24T23:58:53Z</updated>
    <content type="html">&lt;p&gt;I feel like this article was about me.&lt;/p&gt;
&lt;p&gt;&lt;a target='_blank' href='https://www.washingtonpost.com/health/2021/12/22/covid-positive-fully-vaccinated/?utm_source=pocket-newtab'&gt;https://www.washingtonpost.com/health/2021/12/22/covid-positive-fully-vaccinated/?utm_source=pocket-newtab&lt;/a&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2224013</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2224013.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2224013"/>
    <title>COVID Follow up Test on Tuesday:  Negative</title>
    <published>2021-12-24T23:22:21Z</published>
    <updated>2021-12-24T23:22:21Z</updated>
    <content type="html">&lt;p&gt;I got retested on Tuesday. &amp;nbsp;&amp;nbsp;There were about 100 people in line this time. &amp;nbsp;The week before there was NO ONE in line. &amp;nbsp;Now, over 100+ people.&lt;br&gt;&lt;br&gt;The week before I got tested on Monday only because I was not feeling good and I was at the City Hall paying my taxes, so I decided to go ahead and test myself, since there was a Test Tent right there. &amp;nbsp;&amp;nbsp;I was shocked, given I'm triple vaxed, to see the POSITIVE results the following day.&lt;br&gt;&lt;br&gt;Again, my symptoms were really just a very very bad sore throat. &amp;nbsp;One day of nasal congestion (like a head cold) and half a day of fever/chills (which was when I got tested). &amp;nbsp;So I got tested right when it was hitting me.&lt;br&gt;&lt;br&gt;A week later, I got tested on Tuesday, no fever in over 5 days and no longer feeling symptoms, and got the results back on Wednesday. &amp;nbsp;COVID: NEGATIVE.&lt;br&gt;&lt;br&gt;So, I'm pretty sure this was the Omicron Variant given that it was mainly just a very bad sore throat which is a signature of the Omicron Variant.&lt;br&gt;&lt;br&gt;I did 10 days of isolation from my first symptoms, and I'm gonna wait an additional 5 days past my negative test just to make sure I'm safe to be around before going back to being social again. &amp;nbsp;Just to be on the safe side.&lt;br&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2223693</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2223693.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2223693"/>
    <title>Omicron Variant</title>
    <published>2021-12-16T20:46:17Z</published>
    <updated>2021-12-16T20:46:17Z</updated>
    <content type="html">&lt;p&gt;I'm pretty sure I have the Omicron Variant. &amp;nbsp;It's been mostly just painful scratchy throat.&lt;br&gt;&lt;br&gt;&lt;/p&gt;
&lt;figure class="aentry-post__figure aentry-post__figure--text-width" data-figure-type="image" data-image-type="standart"&gt;
            &lt;div class="aentry-post__img--text-width"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/823127/823127_800.png" srcset="https://ic.pics.livejournal.com/jackal/5074/823127/823127_800.png 800w, https://ic.pics.livejournal.com/jackal/5074/823127/823127_original.png 1520w" sizes="800px" data-inherit-privacy="true" fetchpriority="high" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2223594</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2223594.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2223594"/>
    <title>Covid 19 — Positive</title>
    <published>2021-12-14T21:18:11Z</published>
    <updated>2021-12-24T23:28:02Z</updated>
    <content type="html">&lt;p&gt;Welp I always says, "If it's statistically improbable, it's going to happen to me." &amp;nbsp;I retire, and immediately get covid.&lt;br&gt;&lt;br&gt;&lt;br&gt;I know the exact moment I got it too. &amp;nbsp;There was an IDIOT (I "know" his partner) walking around the gym COUGHING openly without covering his mouth. &amp;nbsp;I knew the moment he walked past me coughing 5 times in a row he had it and he just gave it to me.&lt;br&gt;&lt;br&gt;&lt;br&gt;I should NEVER have gone back to LA Fitness. &amp;nbsp;The only reason I went was they were open an hour later than my regular gym I'd been going to for the last 2 years. &amp;nbsp;And I was trying to force myself to be more social. &lt;br&gt;&lt;br&gt;&lt;br&gt;Anyhow, idiot coughs on me. &amp;nbsp;And within a day, suddenly I had a sore throat the next day. &amp;nbsp;I wrote off the sore throat because I had been doing drywall repairs and inhaled a bunch of dust sanding. &amp;nbsp;&amp;nbsp;I thought it was from all the sanding. &amp;nbsp;But I got a bad sore throat, and then my nose started running.&lt;br&gt;&lt;br&gt;&lt;br&gt;I was fine Friday night and went out to celebrate it being my last day of work. &amp;nbsp;I could have gotten it then too. &amp;nbsp;First time being around people and NO ONE in South Florida wears masks in bars here. &amp;nbsp;:( &amp;nbsp;&amp;nbsp;So could have been then too.&lt;br&gt;&lt;br&gt;&lt;br&gt;Anyhow, Saturday &amp;nbsp;just sore throat. &amp;nbsp;Sunday sore throat and congestion. &amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;br&gt;Monday (yesterday) afternoon, I went to city hall to pay my property taxes. &amp;nbsp;&amp;nbsp;I wasn't feeling good as I exited the building, and there's a rapid testing tent right there. &amp;nbsp;So I said, "sure. &amp;nbsp;I might as well, I'm here." &amp;nbsp;I got tested. And the results came back at 3am last night, so I got them this morning.&lt;br&gt;&lt;br&gt;&lt;br&gt;Positive.&lt;br&gt;&lt;br&gt;&lt;br&gt;But what's amazing is I woke up feeling great. &amp;nbsp;Like I kicked it. &amp;nbsp;Within the first two hours my nose had cleared up, and the sore throat is almost completely gone now.&lt;br&gt;&lt;br&gt;&lt;br&gt;So I only really felt bad/fluy for half a day and that was yesterday. &amp;nbsp;&amp;nbsp;Being triple vaxxed I think made all the difference in the world. &amp;nbsp;&amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;br&gt;I'm recovering very quickly. &amp;nbsp;I'm still gonna isolate for 10 days from first day of symptoms.&lt;br&gt;&lt;br&gt;&lt;br&gt;So yes - I'm triple vaxxed (pfizer, pfizer, moderna) and I still got it. &amp;nbsp;&amp;nbsp;But again, the vaccine doesn't prevent you from getting it so much as prevents you from dying from it. &amp;nbsp;So I'd say I'm lucky I was vaxed. &lt;br&gt;&lt;br&gt;It's a weird feeling. &amp;nbsp;Almost relief. &amp;nbsp;You have to understand I had two doctors tell me point blank I would die if I got covid. &amp;nbsp;So I've lived in fear of Covid19 for 2 years straight now. &amp;nbsp;So to get it and only have like a half day of really being sick, and already feel like I'm feeling better &amp;nbsp;— that's a real since of relief after 2 years of living in fear of likely dying from it.&lt;br&gt;&lt;br&gt;Again — GET VACCINATED !!! &amp;nbsp;I truly believe that it saved my life here.&lt;br&gt;&lt;br&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2223288</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2223288.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2223288"/>
    <title>Facebook censorship bots are glitching and false flagging posts related to Et*rn*ls </title>
    <published>2021-11-08T04:53:08Z</published>
    <updated>2021-11-08T05:00:16Z</updated>
    <content type="html">&lt;p&gt;Facebook censorship bots are apparently glitching out over people's posts about the Eternals. &amp;nbsp;I'm seeing a lot of people having their posts flagged by the censorship bots and removed for..... well not breaking any rules at all. &amp;nbsp;The bots are just bugged again. &amp;nbsp;&lt;/p&gt;
&lt;figure class="aentry-post__figure aentry-post__figure--text-width" data-figure-type="image" data-image-type="standart"&gt;
            &lt;div class="aentry-post__img--text-width"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/822308/822308_1000.png" srcset="https://ic.pics.livejournal.com/jackal/5074/822308/822308_1000.png 879w, https://ic.pics.livejournal.com/jackal/5074/822308/822308_original.png 1076w" sizes="800px" fetchpriority="high" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;

&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;figure class="aentry-post__figure aentry-post__figure--text-width" data-figure-type="image" data-image-type="standart"&gt;
            &lt;div class="aentry-post__img--text-width"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/822576/822576_original.png" loading="lazy" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2222930</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2222930.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2222930"/>
    <title>Both Facebook and Whatsapp are DOWN</title>
    <published>2021-10-04T17:00:39Z</published>
    <updated>2021-10-04T20:44:50Z</updated>
    <content type="html">&lt;p&gt;Official tweets:&lt;br&gt;&lt;br&gt;&lt;a target='_blank' href='https://twitter.com/Facebook/status/1445061804636479493'&gt;https://twitter.com/Facebook/status/1445061804636479493&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;a target='_blank' href='https://twitter.com/WhatsApp/status/1445060216161116168'&gt;https://twitter.com/WhatsApp/status/1445060216161116168&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Update: &amp;nbsp;Facebook and Whatsapp have been down for 4 hours now.&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2222695</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2222695.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2222695"/>
    <title>Rampant Censorship Bots on FB Strike Again</title>
    <published>2021-09-27T17:39:22Z</published>
    <updated>2021-09-27T17:39:23Z</updated>
    <content type="html">&lt;p&gt;I literally an talking about MYSELF in this post. &amp;nbsp;"This guy" is me. &amp;nbsp;&lt;br&gt;&lt;br&gt;So apparently I can't make fun of myself or that's "bullying." &amp;nbsp;&lt;br&gt;&lt;br&gt;Censorship bots on Facebook are out of control. &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;figure class="aentry-post__figure aentry-post__figure--vertical-mobile" data-figure-type="image" data-image-type="verticalMobile"&gt;
            &lt;div class="aentry-post__img--vertical-mobile"&gt;
              
                &lt;img style="max-width: 100%" src="https://ic.pics.livejournal.com/jackal/5074/822088/822088_original.jpg" data-inherit-privacy="true" fetchpriority="high" /&gt;
              
              &lt;figcaption&gt;&lt;/figcaption&gt;
            &lt;/div&gt;
          &lt;/figure&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:jackal:2222411</id>
    <link rel="alternate" type="text/html" href="https://jackal.livejournal.com/2222411.html"/>
    <link rel="self" type="text/xml" href="https://jackal.livejournal.com/data/atom/?itemid=2222411"/>
    <title>Script to Enable Full Screen mode for MTG Arena on MacOS</title>
    <published>2021-09-25T07:07:43Z</published>
    <updated>2021-09-26T05:25:32Z</updated>
    <category term="#max_resolution"/>
    <category term="#echo"/>
    <content type="html">I re-wrote the "./fix-mtga-arena-full-screen" script to dynamically get the screen resolution instead:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
$ cat fix-mtga-arena-full-screen 
#!/bin/bash
FULLSCREEN_MODE=0
DEFAULT_WIDTH=1440
DEFAULT_HEIGHT=810

# this forces Arena into full screen mode on startup, set back to 3 to reset
# note that if you go into the Arena "Graphics" preference panel, it will reset all of these
# and you will need to run these commands again
defaults write com.wizards.mtga "Screenmanager Fullscreen mode" -integer $FULLSCREEN_MODE


# Dynamically get the resolution instead
#max_resolution=$(system_profiler SPDisplaysDataType |grep Resolution | egrep -o [0-9]+)
resolution=$(osascript -e 'tell application "Finder" to get bounds of window of desktop' | cut -d, -f3,4 | egrep -o [0-9]+)

if [[ "$resolution" =~ ([0-9]+)[[:space:]]([0-9]+) ]]; then
  WIDTH=${BASH_REMATCH[1]}
  HEIGHT=${BASH_REMATCH[2]}
else
  echo "no match found"
  WIDTH=$DEFAULT_WIDTH
  HEIGHT=$DEFAULT_HEIGHT
fi

if [[ "$1" == "override" ]]; then
  WIDTH=$DEFAULT_WIDTH
  HEIGHT=$DEFAULT_HEIGHT
fi


defaults write com.wizards.mtga "Screenmanager Resolution Width" -integer $WIDTH
defaults write com.wizards.mtga "Screenmanager Resolution Height" -integer $HEIGHT
defaults read com.wizards.mtga "Screenmanager Resolution Width" 
defaults read com.wizards.mtga "Screenmanager Resolution Height" 
&lt;/pre&gt;</content>
  </entry>
</feed>
