Purge git history. - gopherhole - My website source code.
 (DIR) Log
 (DIR) Files
 (DIR) Refs
       ---
 (DIR) commit 5723e25cc13854a6041166a00bac19961bcc4d14
 (HTM) Author: Jay Scott <me@jay.scot>
       Date:   Sat, 10 Sep 2022 08:10:12 +0100
       
       Purge git history.
       
       Diffstat:
         A .build.yml                          |      12 ++++++++++++
         A index.gmi                           |      34 +++++++++++++++++++++++++++++++
         A index.html                          |      62 +++++++++++++++++++++++++++++++
         A nfo/email.txt                       |       1 +
         A nfo/gpg.txt                         |      40 +++++++++++++++++++++++++++++++
         A rants/001.gmi                       |      50 +++++++++++++++++++++++++++++++
         A rants/002.gmi                       |      49 +++++++++++++++++++++++++++++++
         A rants/003.gmi                       |      32 +++++++++++++++++++++++++++++++
         A rants/004.gmi                       |      37 +++++++++++++++++++++++++++++++
         A rants/005.gmi                       |      47 +++++++++++++++++++++++++++++++
         A rants/006.gmi                       |     186 +++++++++++++++++++++++++++++++
         A rants/007.gmi                       |      69 ++++++++++++++++++++++++++++++
         A rants/008.gmi                       |      43 ++++++++++++++++++++++++++++++
         A robots.txt                          |       2 ++
       
       14 files changed, 664 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/.build.yml b/.build.yml
       @@ -0,0 +1,12 @@
       +image: alpine/edge
       +oauth: pages.sr.ht/PAGES:RW
       +environment:
       +  site: jay.scot
       +tasks:
       +- package: |
       +    cd $site
       +    tar --exclude .git -cvz . > ../site.tar.gz
       +- upload: |
       +    acurl -f https://pages.sr.ht/publish/$site \
       +      -Fcontent=@site.tar.gz \
       +      -Fprotocol=GEMINI
 (DIR) diff --git a/index.gmi b/index.gmi
       @@ -0,0 +1,34 @@
       +```
       +                                    .
       +                                   .,ccccc:'.
       +                         'c'     'ccccccccccc;.    .::
       +                        .ccc:. .ccccccccccccccc;  ;ccc:
       +                        ;ccccc:ccccccccccccccccc:cccccc
       +                       .:cccccccccccccccccccccccccccccc..
       +                    .;ccccccccccccccccccccccccccccccccccc:,.
       +                 .;cccccccccccccccccccccccccccccccccccccccccc'
       +                ;ccccc:,..'ccc'ccccccccccccccccc:'ccc..';cccccc.
       +               .ccccc.    ,cc.  ;cccccccccccccc,  .cc.    ,cccc;
       +                .ccc:     ,c,    ;cccccccccccc,    ,c.    .ccc;
       +                  ,cc,    'c:.    cccccccccccc    .:c.   .:cc.
       +                   .;c,   .ccc;.  'cccccccccc'  .;ccc   .cc'
       +                      ..   cccccc,,cccccccccc',ccccc;   ..
       +                          .cccccccccccccccccccccccccc
       +                          .cccccccccccccccccccccccccc.
       +                           :ccccccccccccccccccccccccc
       +                           .:ccccccccccccccccccccccc.
       +                             'cccccccccccccccccccc,
       +                               .;cccccccccccccc:.
       +                           .....'cccccccccccccc,'....
       +                          ...',,;;cccccccccccc;;,,'....
       +                           ...',,,..:ccccccc..',,'...
       +                            .....    cccccc     ....
       +                                     .cccc.
       +                                       ..
       +```
       +
       +## INFO
       +
       +git   : https://git.sr.ht/~jayscott/
       +email : echo "zr@wnl.fpbg" | tr '[a-z]' '[n-za-m]'
       +gpg   : 0726AF07C73389E1E4475B7EC88BBC696A39CCB0
 (DIR) diff --git a/index.html b/index.html
       @@ -0,0 +1,62 @@
       +<!DOCTYPE html>
       +<html lang="en">
       +
       +  <head>
       +    <meta charset="utf-8">
       +    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
       +    <meta name="robots" content="noindex,nofollow" />
       +    <title>jay.scot</title>
       +    <link rel="icon" href="/favicon.ico" type="image/x-icon" />
       +    <style>
       +        body {
       +          color: #f0efd1;
       +          background-color: #191919;
       +          font-family: monospace;
       +        }
       +
       +        pre {
       +          color: #f0efd1;
       +          text-decoration: none;
       +          display: flex;
       +          justify-content: center;
       +          width: 50%;
       +          margin: 0 auto;
       +        }
       +    </style>
       +  </head>
       +
       +<body>
       +<pre>
       +
       +                                       .
       +                                   .,ccccc:'.
       +                         'c'     'ccccccccccc;.    .::
       +                        .ccc:. .ccccccccccccccc;  ;ccc:
       +                        ;ccccc:ccccccccccccccccc:cccccc
       +                       .:cccccccccccccccccccccccccccccc..
       +                    .;ccccccccccccccccccccccccccccccccccc:,.
       +                 .;cccccccccccccccccccccccccccccccccccccccccc'
       +                ;ccccc:,..'ccc'ccccccccccccccccc:'ccc..';cccccc.
       +               .ccccc.    ,cc.  ;cccccccccccccc,  .cc.    ,cccc;
       +                .ccc:     ,c,    ;cccccccccccc,    ,c.    .ccc;
       +                  ,cc,    'c:.    cccccccccccc    .:c.   .:cc.
       +                   .;c,   .ccc;.  'cccccccccc'  .;ccc   .cc'
       +                      ..   cccccc,,cccccccccc',ccccc;   ..
       +                          .cccccccccccccccccccccccccc
       +                          .cccccccccccccccccccccccccc.
       +                           :ccccccccccccccccccccccccc
       +                           .:ccccccccccccccccccccccc.
       +                             'cccccccccccccccccccc,
       +                               .;cccccccccccccc:.
       +                           .....'cccccccccccccc,'....
       +                          ...',,;;cccccccccccc;;,,'....
       +                           ...',,,..:ccccccc..',,'...
       +                            .....    cccccc     ....
       +                                     .cccc.
       +                                       ..
       +
       +
       +                        % use gemini to access content %
       +</pre>
       +</body>
       +</html>
 (DIR) diff --git a/nfo/email.txt b/nfo/email.txt
       @@ -0,0 +1 @@
       +> echo "zr@wnl.fpbg" | tr '[a-z]' '[n-za-m]'
 (DIR) diff --git a/nfo/gpg.txt b/nfo/gpg.txt
       @@ -0,0 +1,40 @@
       +-----BEGIN PGP PUBLIC KEY BLOCK-----
       +mQGNBF3kD+IBDADh4AkHTrjpurV/Ssm8oiy/wNC48hRrT8KxzcomAAHuvivRAm0J
       +cSqzfD7daTv2J1XXygMoyE0E3py9eXDL+l33qadmShWEVu9skxvHAbJlCLe/LcNW
       +0p+QG/AVpIWm6IDzattF++g5E4HfpbzptYgnuWUNL4y5W4jWKj3JmZrRJeFYV7wS
       +F/22qHKsI7iiV8SjluLaSkJlOrtD2NY8gQJJV3aEQrXeZL0BSxA8es6eVEL0TrX5
       +OoUFTqRUcAlFP1YIWn97+lyvsxQCMxQa1QV+rMzblIcWp9uoZwyyLPU0KO0W5zSn
       +mibHrduAAxr3uIwLsWcVFJoqS5QphfNQSZ3+YJPOHqg271Rm2eCGJAQPaGKrsvj3
       +Ho4CgvPOZc+QPnyOh59haGTyVak069Jwz/Fk2kF7z/G03x/6x8AylEw3uaiTrSi7
       ++lHuwh9+9+mo5tbXBwNPjVr5euzkShjvxkNd+srmopNJYqkHD8MwEAMN6sPWqUw9
       +oHqYQGdmK1f0oOMAEQEAAbQXSmF5IFNjb3R0IDxtZUBqYXkuc2NvdD6JAdQEEwEI
       +AD4WIQQHJq8HxzOJ4eRHW37Ii7xpajnMsAUCX0w5qQIbAwUJCbdhiQULCQgHAgYV
       +CgkICwIEFgIDAQIeAQIXgAAKCRDIi7xpajnMsGD1DAC3PHEmcIFFA5YtBa5ywYGm
       +QC8fPur5NIfGCk06TMG70wCxlLXZ6VP7KbfZaMJzxcjFjxv5QSUmhc7Oi8/azPPP
       +dahjVVzwmju2O1fYmCJq/KLzKMpbmzZIW2s7//WjhBj6EoGBkPmSLVN8qZky3t26
       +4QpOJYt2wVWVZ7J2Ngcs5jNDvtgGCD1ZFkvz3TWfK4cybWq8qtibXWtAxpTquJUd
       +wZ4nH8+KlzIQ8q8dLC+2Nc4mTmMMzaBKMwq5q7Cmj+7lhUDYUm30l1FkcYdS3lJ9
       +QEsk5dhXpTTjef06+nc2cguucshjXyS0ZJVIPqZeDuL8oxHbnpDyqyXlBmi1J2N5
       +5VI5QPC0LVnuf6DB0n81pQ3Q4c+iz6tajvM2xAI+NpHZFEhIR6OU0xoIAG/ki4DW
       +Ughb6EoAfUxv0uOnEtcCJ3404/oj4d0Po6tnuYafnLXWDzZPJnRKtq3SA6eObZ+C
       +h8fojR9ZjNVW/Zp9wG3XM0Qivy2IreZCYdA7bT7oRg65AY0EXeQP4gEMAJpruyHa
       +wPVR7FhSZJZSzuzVagRR0KnsGFSk+yegFh71oLUnUIsV/o2RCR0j4c5zsq6JHZot
       +Jnx/mjz6Jc7/QxwbOhfwOUDJeNHMSDU0DCjBs58O1BhFN2F5RTz0C0gLu2Z6fzAl
       +j5ThQnOeCtkElo2M5FqVIej3dmviobwfQhBNZs3HgnBTO0jNNEJj9b5n4I5Sp7UN
       +VZ6DFN447HQfmTUlRnUSqZgyBxKt7cFf6zALyBIXhupSEOab/O5Lwm/o4MtCrMw4
       +eXyir8hhSWmXeWvn74PZZYtx4kApiWLyPEiJNmVrcE8EfcdKyiC9hcabesPUsFg+
       +l4bPio2BkrQF+UqYOTN3MZ36LmTYHXpGHiu14VtDaWcU1j9QtGywqIfkYiB/Bexs
       +a9WWz+qtQCmI2hHYUedBgYY+Db4WTh/gEBZEJrOQIzBVswMGCPqcQBkd9wLMzYcP
       +FVjmE39o0/gdEZ6AJmDJ29rgKF+SYCj0vZPRLFI7+dfXxV1ei62kDnJTaQARAQAB
       +iQG8BBgBCgAmAhsMFiEEByavB8czieHkR1t+yIu8aWo5zLAFAl41b/8FCQm3YZ0A
       +CgkQyIu8aWo5zLC3Wwv/aSU1CTvYyZWe374hUAO2iVv/krKN7KFPT/MR6WJGTbS3
       +g7V/5nFhMptNNQpdTH5sbbNRbne3I4GHdkIE3Nd0FkWF7aF/BReU0KnDrMSFFPVv
       +7d/TQCGE1Rk8O3HRobc/7Rkd9U8N0EGMUADqIM/XiD9MQLLR2gFughdUtipAIMrH
       +jl4/ca1erERFhFuuVrCoyBGw6GjkH4SY+h9dOmTyjKGbc5iEx3K9TGiLjbHBStVV
       +RzaBrDamFDUa9l+CRHNYZrARSmkocRZKDBYTWvW/xquDnaxgyW0MucYO306tAgaC
       +2etKD16TYfcaVcYFk/zZQFNhKeb2b247CavotRExsOP2P0rgSQflYVtzzYBQjgul
       +MijUcJOFMqw9gIGvDA2L0US9X1GHxm3Lr2fevzA6wzfkvhQlNeKp9svDsvGW7A5n
       +41enfUUKLihyadfaxJqu/SccYX+kEMcCWsn3bd4R2X41lptHFX/19iHiIXkGbfjA
       +P9uvjgDGUoZY3IdfV2BP
       +=WWHN
       +-----END PGP PUBLIC KEY BLOCK-----
 (DIR) diff --git a/rants/001.gmi b/rants/001.gmi
       @@ -0,0 +1,50 @@
       +
       +# So much bloat around dotfiles
       +
       +Let's be honest here everyone who uses some form of *BSD or Linux knows what 'dotfiles' are these days. It's super common to push your local machines various configuration files to GitHub/GitLab or whatever 3rd party hosted git provider happens to be flavour of the month.
       +
       +The thing that really annoys me for some reason is the amount of people that use dedicated programs to manage dotfiles. I am not talking about tools such as GNU/Stow that have multiple purposes, or home-grown shell scripts, not my choice but there is nothing wrong them. I am talking about bloated crap such as Ruby gems or even worse some NodeJS application with 100s of dependencies included. Let's look at a few..
       +
       +        AutoDot - "A minimal dotfile manager".
       +          - NodeJS
       +          - 230+ dependencies
       +          - 50+ different maintainers
       +          - https://github.com/ajmalsiddiqui/autodot
       +
       +        DotStow - "manage dotfiles with stow" (stow front-end???)
       +          - NodeJS
       +          - 270+ dependencies
       +          - Spread over 200 maintainers
       +          - https://github.com/codejamninja/dotstow
       +
       +        Homesick - "Your home directory is your castle"
       +          - Ruby
       +          - Requires ruby, bundler, thor, rack (devel)
       +          - git clones to ~/.homesick then symlinks...
       +          - https://github.com/technicalpickles/homesick
       +
       +These types of apps make my balls scurry back up from where once they came. It's just so completely over-engineered and unnecessary, each to their own I guess. Personally I just use a tool that's already on everyone's machine GNU/Make nice and simple! Below is a basic make file you can use to get start, just update the files and configs values and then run `$ make` and you are good to go!
       +
       +
       +        files := bashrc xinitrc muttrc vimrc Xresources
       +        cfgs := qutebrowser ncmpcpp mpd git mutt
       +        dotfiles := $(shell pwd)
       +
       +        all: link
       +
       +        define symlink_file
       +                ln -fs $(dotfiles)/$(1) ${HOME}/$(2)$(1);
       +        endef
       +
       +        define symlink_dir
       +                ln -fns $(dotfiles)/$(1) ${HOME}/$(2)$(1);
       +        endef
       +
       +        link: @$(foreach f,$(files),$(call symlink_file,$(f),.))
       +        @$(foreach f,$(cfgs),$(call symlink_dir,$(f),.config/))
       +        @echo files linked
       +
       +        .PHONY: all link
       +
       +
       +Its pretty straight forward and you can't really go wrong with it, in my own personal Makefile I have a few added steps such as adding backing up installed packages list and cron entries. You can find it over on my git repo which might give you a better understanding how it works in the real world.
 (DIR) diff --git a/rants/002.gmi b/rants/002.gmi
       @@ -0,0 +1,49 @@
       +
       +# GitHub: The Facebook of coding
       +
       +In my opinion, there is no question that GitHub is the new Facebook for coders and geeks. What I mean by the new Facebook is two-fold, first the type of users you find on GitHub and secondly the businesses shenanigans over the years.
       +
       +## THE USERS
       +
       +Essentially, GitHub is now a necessity when you are applying for jobs inside the tech industry, recruiters look for it, businesses are requiring it and insist you engage in coding challenges that must be done on the platform.  This doesn't sound like a bad thing really, or does it?
       +
       +> YES, actually, it does!
       +
       +GitHub has now become a shit storm of individuals seeking to pimp out their profiles with bullshit Pull Requests, faking timelines, forking repos and raising entirely pointless issues.  Everything with the goal of showcasing how much they have contributed to open-source projects. As a recent example look no further than Digital Oceans Hacktoberfest clusterfuck, useless PRs such as deleting spaces all in the hopes of getting a t-shirt.
       +
       +Another real world dilemma impacting users is the knowledge gap of actually using git normally, GitHub is NOT git. GitHub is a proprietary closed-source front-end for a centralized git hosting service. Users have become completely dependent on features that GitHub have built such as PRs, forks, online editing, branch protection to name a couple. I doubt that many users are even aware of commands such as send-mail which is a core function of many projects outside the GitHub world. Nor does it help when the web interface of GitHub encourages sloppy git practices, relying exclusively on one way of doing things, the GitHub Flow.
       +
       +## THE COMPANY
       +
       +Let's start off with the obvious fact that Microsoft owns GitHub. Microsoft has a long track record of open-source hatred, the CEO has even gone as far as stating "Linux is a cancer" at one point. This is not good, Microsoft were outed by the U.S.  Department of Justice for using this internal term. In short, it ties in well with buying their way into open source projects right? Sounds like GitHub is at the Embrace stage...
       +
       +> "Embrace, extend, and extinguish" [5]
       +
       +Electron, the Chromium engine / NodeJS pile of shit that requires a few Cray supercomputers to run a calculator app on was developed and pushed into the ecosystem by good friends, GitHub. Now we are blessed with awesome spyware programs such as WhatsApp, Discord and Skype that will now run on Linux YAY /s.  I mean there is just so much mud around GitHub that I just don't have the urge to go wading through it, searching even more than I have already.  Here's a short fire list with some sources to follow-up on, if you are interested.
       +
       +* Denied employee harassment by CEO
       +* Blocked users from country's under US trade sanctions
       +* Have dealings with ICE, they keep kids in cages
       +
       +Due to an incredibly weak DMCA take down notice by the RIAA, youtube-dl was recently banned by GitHub. After it hit main stream news GitHub crapped the bed and started on the news PR.  It was not, however, until after the EFF moved in and sent a letter [10] to GitHub describing how the DMCA notification was absolute dog shit that GitHub did something. After this, GitHub went into complete PR mode after and they made it out that they were the saviours of the day and how they'd stronger and better in the future.
       +
       +Anyway, enough of this rant. If you are looking for a 3rd party hosted git solution then please take a look at these two:
       +
       +* SourceHut, https://sr.ht
       +* GitLab, https://gitlab.com
       +
       +Or do what I do an just use the naked git protocol without any front-ends, its stupidly simple.
       +
       +## SOURCES
       +
       +=> https://drewdevault.com/2020/10/01/Spamtoberfest.html
       +=> https://git-send-email.io/
       +=> https://guides.github.com/introduction/flow/index.html
       +=> https://davelane.nz/microsoft-there-way-win-our-trust
       +=> https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguish
       +=> https://tknk.io/01P8 Electron
       +=> https://tknk.io/xnsf
       +=> https://tknk.io/rddV
       +=> https://tknk.io/8pfH
       +=> https://tknk.io/RMLT
       +=> https://tknk.io/XtFd
 (DIR) diff --git a/rants/003.gmi b/rants/003.gmi
       @@ -0,0 +1,32 @@
       +# Qutebrowser is amazing but
       +
       +**UPDATE** as of version 2.0, these are not an issue now. Time to move back to Qutebrowser!
       +
       +For those preferring browsers with a minimal GUI and vim-like keyboard controls, Qutebrowser is a fantastic choice. The project can be compared to Firefox add-ons like Vim Vixen but with a smoother and more refined user interface, backed by an active creator. With that being said here comes the but.
       +
       +And it's a big BUT for me, I no longer use Qutebrowser due to lack of privacy options compared to the likes of Firefox with add-ons. Does Qutebrowser have any choices at all for privacy?  It sure does, BUT for the requirements of today's modern web it's just not enough to cut it. This is a list of things that you can do:
       +
       +* disable javascript
       +* disable geolocation
       +* disable webgl
       +* custom http headers
       +* custom user agent
       +* reject cookies
       +* stop canvas reading
       +* host based ad-blocker
       +
       +Although the problem is not a poor list of choices, each of these choices has very limited scope. For example, the ad blocker is a primitive host based list from a flat file. You're going to get video ads and page elements still showing. It just doesn't compare to add-ons like uBlock Origin, where all ads traces are just erased. Setting cookies to deny all the time often contributes to a poor user experience.
       +
       +As an example, I will be constantly be asked to fill in CATCHPA's for every site sitting behind CloudFlare. However, I can install a cookie cleaner on Firefox that manages cookies on a per site basis, deletes them as soon as you navigate off the site, close a tab etc.
       +
       +I also discovered that Qutebrowser does not function as intended with the option to hide the referrer header. This is currently an upstream issue with the engine Qutebrowser uses, QtWebEngine.  In the hopes that this gets resolved, I have opened a bug report directly with the project.
       +
       +Using the EFF's browser fingerprinting tools might show you as rather unique compared to Firefox with the privacytools.io recommended addons. In order to randomise the User Agent and HTTP Accept headers, I also tried to write a Python script to do this in Qutebrowser. Although the finger printing was improved, it was just not as good as using Firefox. Once the Qutebrowser feature list has plugin support, I would definitely switch back to Qutebrowser once it has been implemented, but unfortunately Firefox and addons are the way for me.
       +
       +## SOURCES
       +
       +=> https://qutebrowser.org
       +=> https://github.com/ueokande/vim-vixen
       +=> https://privacytools.io/browsers/#browser
       +=> git://jay.scot/dotfiles.git
       +=> https://github.com/qutebrowser/qutebrowser/issues/30
 (DIR) diff --git a/rants/004.gmi b/rants/004.gmi
       @@ -0,0 +1,37 @@
       +# How I use the modern web
       +
       +With how polluted the modern web has become over the years, I actively avoid it as much as possible. From mainstream media sites acting like the gossip magazines from years back.  Remember OK magazine? To sites riddled with ads, tracking, social media buttons, and a plethora of utter crap. It feels like navigating down a busy main street where all the hawkers are hassling you too buy their wares. Now bolt-on how every UX designer has given up on the basics like page accessibility standards, loading times, and the important one, usability.
       +
       +> It's an utter shambles right now.
       +
       +When using a browser, I find it far too easy to get caught in a "YouTube loop" or see something at the corner of your eye that you feel the urge to spend the next 30 minutes researching.  Before you know it, 3 AM rolls around and your reading a Wikipedia article on some random bollocks. This is why I avoid using a browser as much as possible and this is how I achieve it for about 90% of my daily internet usage.
       +
       +## NEWS
       +
       +Do you need to be reminded every day that Covid has killed X amount of people, that some political party leader fucked a dead pig? Nope, you don't! What you should be doing is focusing on what news is important to YOU. For me, this comes in the form of the latest tech news and information from my local government. The obvious way to do this is via RSS feeds.
       +
       +I am sure everyone has heard of newsboat or similar RSS readers but there is still the problem that most RSS feeds don't have any content attached to the feed. Normally it's just a summary of the article, at best, you still need to open up the browser and view the content. One RSS reader that seems to have slipped under the radar is one called sfeed by Suckless. With this tool I can have this setup.
       +
       +> sfeed ---> fdm ---> rdrview ---> mutt
       +
       +sfeed, this RSS reader allows you to output feeds into various formats, one of them is the mbox. From there I use fdm which is a mail filtering and fetching program, think a better procmail. Using a custom script in fdm I can pass the feed URL to rdrview.  rdrview fetches the URL and outputs the page to basic html, using lynx -dump to convert this to a pure plain text article.
       +
       +Finally, once the page has been fetched and processed fdm pushes it to Maildir, filtered by the feedname ready for reading in Mutt. The result is a full copy of the article in a mailbox ready to read in plain text. All of the code for this is in my dotfiles if you need to take a look at the sfeed, fdm, mutt configuration's.
       +
       +Within the same configuration for fdm I fetch my email which also has mailing lists subscriptions of things I should know about. Since switching over to FreeBSD fully a lot of discussions are carried out on various mailing lists. Have a look and see if the tools, news, forums you are apart of have mailing lists. It's another good method of "offline" content.
       +
       +## MEDIA CONTENT
       +
       +This one is quite easy to avoid. We all have our favourite channels and check daily to see if anything has been uploaded by them. Only to find 3 hours after checking your still on YouTube but watching a video of someone reacting to the latest James Bond trailer while shouting "Make sure you hit the thumbs up and subscribe!" *cue shitty gif of a bell* throughout the video.
       +
       +The method I was using for this until recently was using a python application called ytcc by woefe over on GitHub. In a nutshell it's a front-end to youtube-dl for managing your subscriptions on YouTube. Simply enter the channel's name and whenever they upload a new video, it will download this ready to view locally. Simple, YouTube crap avoided.
       +
       +As I mentioned though I no longer do this, I have my a shell script that does something similar that directly uses youtube-dl. The reason I changed to this is I can download more than just YouTube videos, I can add other things such as LBRY. I can also customise youtube-dl output and options in greater detail.
       +
       +Finally on media content, podcast. Simply use a tool like castget or if you are a newsboat fan use the built-in podboat feature.
       +
       +## BROWSING
       +
       +There is no avoiding using a browser completely. When I do have to use one I fire up Qutebrowser, now since my rant about QuteBrowser and privacy in 003.txt things have changed for the better. Qutebrowser now has ABS ad-blocking enabled as well as fixing issues with referrers not working. My qutebrowser blocks nearly everything along with a decent VPN your good to go and get off as soon as you can.
       +
       +Checkout my dotfiles for a better understanding of how all this fits together. I will assume everyone reading this is fairly technical!
 (DIR) diff --git a/rants/005.gmi b/rants/005.gmi
       @@ -0,0 +1,47 @@
       +# Why I dropped FreeBSD after a month
       +
       +I switched over to using FreeBSD as my main desktop around 1 month ago. Last night I had enough of some core issues I was having and ended up switching back to Linux. My 2-year-old graphics card, an AMD RX 5700XT, does not work with the current stable release 12.2, so I had no choice but to use -CURRENT, ALPHA-2 then BETA-1.
       +
       +## XORG
       +
       +My setup is minimal; I don't use any GUI applications apart from the rare occasion I need to use a browser; I do use mpv often. Even with this setup, there was a performance issue that caused Xorg to micro stutter, causing a system pause for around 1 second.
       +
       +When using just a console things seemed to work fine, so my first thought was the problem must lie with Xorg. Over a few days I tried tweaking various Xorg options such as Tearfree, SWCursor, etc. This made zero improvement, my next port of call was the AMDGPU driver, drm-kmod.
       +
       +## AMDGPU
       +
       +A trip to the GitHub project page for this project did indeed show 4 out of 17 issues open are for the exact model of graphics card I have. Though none of the issues seemed related to the problem I was having.
       +
       +During my research, though, I also found posts on /r/freebsd and the official FreeBSD forums with similar issues, Sadly, none of them had any actual solutions. I decided to build the kernel module from the latest git master, this seemed to improve the stuttering, progress!
       +
       +Around this time I also found out that -CURRENT, -ALPHA and -BETA builds have a lot of debugging enabled in the kernel by default, which can cause degraded system performance.
       +
       +## KERNEL
       +
       +I found GENERIC-NODEBUG kernel config; I stripped out a lot of modules I wouldn't need to help the build times. This was so simple to do, and before I knew it I had a custom kernel built with all debugging removed. Booting into the new kernel I noticed an improvement right away.
       +
       +Playing a video still caused a little stuttering, as long as I did little else. I was happy with this for the time being, thinking that maybe when BETA-1 or RC came around things would be better.
       +
       +## BETA-1
       +
       +Woo-hoo, BETA-1 snapshot was released, time to give it a whirl. BAM, right back to square one. So I went through the same steps again with building the AMDGPU module from git and building a custom kernel with no debugging enabled.
       +
       +The same day as BETA-1 released, I got a reply on one post I made about the issue. Just run this, the poster says, All processes are tied to the first CCX0. This will reduce the usable cores to 4, however.
       +
       +> sh -c 'ps -aux | cut -w -f2 | xargs -I foo \
       +> cpuset -l 0,2,4,6 -p foo > /dev/null 2>&1'
       +
       +No way this can be the solution, can it? Well yes it was, suddenly I had nearly ZERO issues. All the lag had disappeared! The only cost? I had to gimp the potential of my system.
       +
       +## THE END
       +
       +At this point I had enough, I spent so long on such a trivial matter I decided just to go back to Linux until 13.0 is released, then I will revisit it. I liked FreeBSD. There is so much to it that I loved and would go back in a heartbeat if I could get my hardware working without having to jump over so many hurdles.
       +
       +
       +* I love ports
       +* I had set up Bhyve running Poudriere building my own packages.
       +* Setting up the GPU driver was really simple (if it worked on my card)
       +* Audio setup was such a breeze.
       +* I had no issue installing ports/packages I needed, pkg is a wonderful tool.
       +* Jails are so handy, I didn't think I would need them but man they are
       +great!
 (DIR) diff --git a/rants/006.gmi b/rants/006.gmi
       @@ -0,0 +1,186 @@
       +# ARCV, Association of Really Cruel Viruses
       +
       +I have saved and collected a **huge** amount of data from the 80s, 90s and early 00s from the UK Hacking and Phreaking scene. Many of it has been lost over the years, so I will be dumping it here over the next while in the hopes someone finds it interesting!
       +
       +First up though we have ARCV, a virus writing group from the early 1990s!
       +
       +## ARCV
       +
       +Around late 1992 a group emerged calling themselves the Association of Really Cruel Viruses (ARCV). The group was initially small, and by all accounts relatively unskilled, and was made up of two people, Apache Warrior who was the leader of the group, and ICE-9. They soon recruited two more, Toxic Crusader and Slartibartfast, and became one of the first virus writing groups in the UK.
       +
       +Over the next year, they would write around 100 viruses, the first few were created using a virus generator called Virus Creation Laboratory (VCL) but they would soon end up writing their own virii, apparently, they were also very well written! Apache Warrior would also end up creating the group's engine, Cybertech Mutation Engine (CME).
       +
       +ARCV didn't last too long before Scotland Yard caught up with them in an unsuspecting way. A year after they entered the scene around December/January 1993 Apache Warrior and ICE-9 were arrested in the Salford area in the UK. The group had been distributing their viruses and newsletters to a BBS in Cornwall as well as others via beige boxing. In their great wisdom, they decided that the best target of the beige boxing would be their neighbours' line. Scotland Yard did not even realise these two phone phreakers they just caught were also the founding members on ARCV until the confiscation of their computer equipment.
       +
       +Apache Warrior cooperated with the police, and further examination of the confiscated equipment confirmed that not only had the police caught some phone phreakers, but they also caught the leader of ARCV. On Wednesday, January 27 1993, four other ARCV members in Manchester, Cumbria, Staffordshire and Cornwall were raided by Scotland Yard and their computer equipment confiscated. This was ICE-9, Toxic Crusader, Slartibartfast and the arrest in Cornwall was the SYSOP of the BBS where ARCV transferred files too so not officially a member of ARCV. In total there were six arrests and all were released on police bail pending further investigations.
       +
       +DC Noel Bonczoszek of the Computer Crimes Unit failed to identify anyone affected by any ARCV created viruses. Due to this Apache Warrior, ICE-9 and the two other members were let off with cautions. One was cautioned relating to another matter, the BBS SYSOP, and the last one was released with no further actions.
       +
       +## FILES
       +
       +You can download all the files I have on ARCV from the following gemini site.
       +
       +* ARCV Newsletter 1, txt format
       +* ARCV Newsletter 1, exe format
       +* ARCV Newsletter 1, exe screenshot
       +* ARCV virus collection, 93 in total, be careful you windows users!
       +* November 1992 article
       +* April 1993 article
       +* July 1993 article
       +
       +=> gemini://jay.scot/files/groups/arcv/ ARVC Files
       +
       +## MISSING
       +
       +Got any of these files? Let me know!
       +
       +* ARCV Newsletter Issue 2, may not exist.
       +* ARCV Virus Library Disk 1 and 2, may not of been released.
       +* EICAR'94 conference talk/slides (ICE-9)
       +* CME 1.0 and CME 2.0
       +* Access All Areas II (96) and III (97) talks/slides (Apache Warrior & ICE-9)
       +
       +## USENET / EMAILS
       +
       +> Feb, 1993 : Spreading Viruses
       +> Personal Computer World Magazine
       +
       +We are a bunch of programmers who, depressed with the lack of viruses that
       +have originated in England, have sought to change matters. We presently
       +write viruses for the PC, Archimedes and Atari ST.  We have increased the few
       +viruses written in England by about 25, though this number is increasing all
       +the time as our programmers churn out more quality computer viruses.
       +Although there are many viruses about we hope to dominate the UK 'market'.
       +Won't it be nice, though, for England to have at least one export?  Finally,
       +we as an organisation like to stress that, contrary to public opinion, we are
       +*not* boring people who wear anoraks, nor are we depraved people who were
       +beaten as children and so grew up with a hatred of humanity.  We are highly
       +intelligent and good at programming and are just ordinary people.  But we are
       +gonna get you soon!
       +
       +  - ARCV  (Association of Really Cruel Viruses)
       +
       +> 4 Feb, 1993 : Apache scalps virus cowboys
       +
       +Police raided the homes of suspected computer virus authors across the
       +country last week, arresting five people and seizing equipment.  "The raids
       +were carried out last Wednesday by police in Manchester, Cumbria,
       +Staffordshire and Devon and Cornwall." Scotland Yard's computer crimes unit
       +co-ordinated the raids under the codename Operation Apache. A spokeswoman for
       +the Greater Manchester Police said: 'The investigation began in the
       +Manchester area following the arrest of the self-styled president of the
       +virus writing group in Salford last December.' Police would not reveal the
       +man's name, but said he had been released on bail.  "Last week's raids led to
       +the arrest of a further two people in Manchester.  Three other suspects were
       +also arrested in Staffordshire, Cumbria and Cornwall." PCs and floppy disks
       +were seized in all the raids.  "All those arrested have been released on
       +police bail pending further investigations."
       +
       +> 4 Feb, 1993 : UK Virus Writers Group Foiled by Scotland Yard
       +
       +British police have arrested four members of a virus-writing group that calls
       +itself the Association of Really Cruel Viruses (ARCV).
       +
       +The Scotland Yard Computer Crime Unit coordinated the raids carried out on
       +suspects in Greater Manchester, Staffordshire, Devon, and Cornwall.  The
       +arrests last Wednesday, January 27, bring to six the number of ARCV members
       +found by police, after they initially arrested one caught "phreaking" in
       +Manchester in December. ("Phone phreaking" is the illegal practice of
       +obtaining free use of telephone lines.) The arrests were made under Section 3
       +of the Computer Misuse Act, which prohibits unauthorized modification of
       +computer material, said Detective Sergeant Stephen Littler. The suspects, who
       +cannot be identified at this stage under British law, have been released on
       +bail pending inquiries and may face further charges.
       +
       +The members of ARCV used PCs to write viruses, which they shared via a
       +bulletin board operated by one suspect in Cornwall. The police confiscated
       +hardware and software, which is being studied by virus experts to determine
       +how many viruses were written and what the viruses were intended to do,
       +Littler said. The British anti-virus community became aware of ARCV through
       +the group's own publicity efforts, such as a newsletter that it had uploaded
       +to various bulletin boards in the U.S., according to Richard Ford, editor of
       +the monthly "Virus Bulletin", which is published in Abingdon, Oxon, England.
       +The newsletter was described in detail in the November, 1992, issue of "Virus
       +Bulletin".
       +
       +To the best of my knowledge, none of their viruses are in the wild, out
       +there spreading" said Ford. But they have been found on virus exchange
       +bulletin board services, and we've had reports of them being uploaded rather
       +widely in the UK. ARCV claims, in its newsletter, to have links with
       +PHALCON/SKISM in the U.S. and other virus writers in Eastern Europe. "The
       +world is a very small place when you've got a modem, or are on the Internet",
       +Ford said. The newsletter invites new members to join even if they are not
       +virus writers but prefer other "underground" activities such as hacking and
       +phreaking. It also betrays ARCV's fears of being perceived as nerds (a term
       +not used in Britain) saying, "Now the picture put out by the Anti- Virus
       +Authors is that Virus writers are Sad individuals who wear Anoraks and go
       +Train Spotting but well they are sadly mistaken, we are very intelligent,
       +sound minded, highly trained, and we wouldn't be seen in an Anorak or near an
       +Anorak even if dead."
       +
       +ARCV has already failed at one of the objectives mentioned in its premier
       +newsletter issue, which said, "We will be dodging Special Branch and New
       +Scotland Yard as we go."
       +
       +> From: m...@doc.ic.ac.uk (Mike C Holderness)
       +> Newsgroups: comp.org.eff.talk
       +> Subject: This just in from London...
       +> Date: 3 Feb 1993 13:57:06 -0000
       +> Department of Computing, Imperial College, University of London, UK.
       +
       +Police have arrested Britain's first computer virus-writing group in an
       +operation they hope will dampen the aspirations of any potential high-tech
       +criminals. Four members of the Association of Really Cruel Viruses (ARCV)
       +were raided last Wednesday in a joint operation in four cities co-ordinated
       +by Scotland Yard's computer crimes unit. The arrests in Greater Manchester,
       +Cumbria, Staffordshire and Devon and Cornwall, bring to six the members of
       +the group that have been tracked down by police. Two others, also writing for
       +ARCV, were arrested a month ago in Manchester. This six are thought to have
       +written between 30 and 50 relatively harmless viruses....
       +
       +[continues. By Susan Watts. (C) 1993 Newspaper Publishing plc.]
       +
       +Comments, especially from survivors and even more from people in the UK who
       +are into a little light looking around but nothing Really Cruel, very
       +welcome. Yes, I am a journalist.
       +
       +> 16 May, 1994 : Urnst Couch / Crypt Newsletter
       +
       +About the same time, a hacker was arrested for stealing phone service from
       +his neighbor's line and his equipment confiscated, too. The hacker turned out
       +to be Apache Warrior, a member of the small United Kingdom virus-writing
       +group called ARCV (for Association of Really Cruel Viruses).
       +
       +Some background information not included in the book: Alan Solomon was
       +apparently able to convince New Scotland Yard's computer crime unit that they
       +should also try to prosecute Apache Warrior as a virus-writer and that the
       +rest of the group should be rounded up, too. In conversation, Solomon has
       +said Apache Warrior turned over the names of other group members.
       +Subsequently, New Scotland Yard and local constabularies conducted raids at
       +multiple sites in England, arresting another man. Paradoxically, prior to the
       +arrests, Solomon joked that ARCV was better at cyber-publicity than virus
       +programming and its creations were little more than petty menaces. The book
       +offers no reported incidences of ARCV viruses on the computers of others,
       +although Virus News International, by extension S&S International, solicited
       +readers for such evidence in 1993.
       +
       +> Date: Fri, 16 Apr 93 09:17:21
       +> From: aryeh@mcafee.com (McAfee Associates)
       +> Subject: Forwarded message from Scotland Yard
       +
       +Hello All,
       +
       +I was recently contacted by DC Noel Bonczoszek of the Computer Crimes Unit at
       +New Scotland Yard in London.  As some of you may be aware, Noel is one of the
       +folks responsible for arresting the members of ARCV, a UK-based group of
       +virus-writers.  He would like to speak with anyone who suffered an infection
       +from any of their viruses.  If you have been infected by one of their
       +viruses, or know of someone who has, then please give him a call at +44 (71)
       +230-1177 during office hours (GMT), or send him a fax at +44 (71) 230-1275.
       +
       +Please bear in mind that I'm only forwarding this message for DC Bonczoszek.
       +If you have any questions, please contact him directly.
       +
       +## SOURCES
       +
       +=> https://ivanlef0u.fr/repo/madchat/vxdevl/vdat/misc0040.htm
 (DIR) diff --git a/rants/007.gmi b/rants/007.gmi
       @@ -0,0 +1,69 @@
       +# Build, patch and maintain suckless tools
       +
       +I am a long time supporter of the Unix philosophy and have been using tools such as dwm as my daily driver since 2011, as such I mainly use the terminal for everything. Lots of these tools are best built via the latest source code release or development copy instead of a package build, so you can apply your custom configuration. The most common methods I have come across on managing to do this is a mixture of using separate git branches for each patch or even just manually applying the patches and then fixing anything that didn't succeed.
       +
       +I am a big fan of Makefiles, I even use Makefiles to manage my dotfiles instead of a tool like GNU Stow. So it will be no surprise I use these to build, patch and install all my suckless based tools such as dwm, st, dmenu and herbe. My Makefile makes patching easy and means I don't need to worry about maintaining multiple branches, it's super easy to get the latest versions etc. It also helps that I don't have any extra patches apart from dmenu and st, any additions I have for dwm and herbe are added to config.h as functions.
       +
       +## MAKEFILE
       +
       +Below is the generic Makefile I use, this one is for dmenu as it's a good example to use since I use a few minimal external patches. The options at the top of the Makefile should be pretty obvious, the defaults should be fine for most people.
       +
       +```
       +        REPOSITORY = http://git.suckless.org/dmenu
       +        SRC_DIR = dmenu-src
       +        PINNED_REVISION = HEAD
       +        PATCH_DIR = patches
       +
       +        all: $(SRC_DIR)
       +
       +        clean: reset
       +                @if test -d $(SRC_DIR); then \
       +                        $(MAKE) -C "${SRC_DIR}" -s clean; \
       +                        git -C "${SRC_DIR}" clean -f; \
       +                fi
       +
       +        $(SRC_DIR): clone reset patch
       +                @cp config.h $@
       +                $(MAKE) -C "${SRC_DIR}" -s
       +
       +        patch: $(PATCH_DIR)/*
       +                @for file in $^ ; do \
       +                        patch -d "${SRC_DIR}" < $${file}; \
       +                done
       +        reset:
       +                @if [ -n "$(strip $(PINNED_REVISION))" ]; then \
       +                        git -C "${SRC_DIR}" reset --hard $(PINNED_REVISION); \
       +                fi
       +
       +        clone:
       +                @if ! test -d $(SRC_DIR); then \
       +                        git clone $(REPOSITORY) $(SRC_DIR); \
       +                fi
       +
       +        update: clean
       +                @git -C "${SRC_DIR}" pull
       +
       +        install:
       +                $(MAKE) -C "${SRC_DIR}" -s install
       +
       +
       +        .PHONY: all clean update install reset clone patch
       +```
       +
       +And this is the file structure I have:
       +
       +```
       +        |- dwm
       +        |-- dwm-src         # git clone of dwm, handled by Makefile
       +        |-- config.h        # my custom config for dmenu
       +        |-- Makefile        # the Makefile from above
       +        |-- patches         # directory containing patches
       +        |---- 01-dmenu-centre.patch
       +        |---- 02-dmenu-border.patch
       +```
       +
       +If you have no patches to apply, then remove the 'patch' from line 14 then run 'make', this will git clone or reset if already cloned, apply patches, copy your custom config.h and the build, A 'make install' after that will install as normal.
       +
       +To see a working copy of these you can clone my dotfiles and have a look in the dwm, dmenu, st or herbe folders.
       +
       +> git clone git://jay.scot/dotfiles
 (DIR) diff --git a/rants/008.gmi b/rants/008.gmi
       @@ -0,0 +1,43 @@
       +# Moved to wayland 
       +
       +
       +I have been putting it off for ages, it's been on my to-do list for months. Anytime I saw it pop-up I would just ignore it either due to laziness, not interested or just general procrastinating. However, not this weekend! Wayland will be the de facto and soon enough replace Xorg am sure.
       +
       +
       +My setup is heavily terminal based with the usual tooling you see these days. Suckless based tools such as dwm, dmenu and st as the main WM tooling. Mutt for email, all kinds of feeds via Newsboat, MPV for videos, browsing with Qutebrower and Amfora for Gemini. I was hoping with such minimal GUI usage the switch over would be easy enough. A quick look around and it looks like I would need to completely switch these applications over to a wayland equivalent.
       +
       +* dwm
       +* dmenu
       +* st
       +
       +I do have a few edge case applications I use but upon checking, they all work under wayland. These were Qutebrowser (Browsing), Performance Portfolio (Accounting) and Calibre (Ebooks), result!
       +
       +
       +## DWM REPLACEMENT
       +
       +First, the window manager! As it turns out there is a wayland port of dwm called dwl, there seems to be a few trivial changes, but they are basically like for like. On a sidenote, I had been tweaking dwm recently and it really became a bit of a pain in the arse building, restart dwm all the time. With this still at the back of my mind, anticipating that I will be doing it again with dwl, I thought why not try out something new. Enter Sway. 
       +
       +Sway is the wayland port of i3 with some common patches people used rolled in. A look at the config file setup for Sway made it look very straight forward to replicate my dwm keybinds and layout. Another benefit being I could install the packages via the AUR instead of building it myself, this felt like a plus after many many years of compiling from source. 
       +
       +
       +## ST ALTERNATIVE
       +
       +I kinda hate st, truth be told. You need to add in a few patches to the build as out of the box it's very limiting. So on that I was happy to find a replacement for st. Two options were on the table for me, Alacritty and Foot. I ended up going with Foot, it seemed to be a lot faster and lightweight compared to Alacritty, according to their own benchmark results. I also wasn't sold on the idea of it being GPU accelerated. Alacritty also clams to be faster than all the rest, but they didn't seem to provide the actual benchmarks, just the tool they used. Whereas Foot had a whole ton of information, benchmarks and screenshots explaining why its fast as fuck.
       +
       +Again the application was in the AUR and with a live reload config file it was trivial to set up. Interestingly, the out of the box config would have been fine, only thing I really changed were the colours and font.  
       +
       +
       +## DMENU
       +
       +This one I spent most of my time researching and testing out various alternatives. At first, I was just going to use rofi but soon found out that it doesn't have native wayland support and uses Xwayland instead. There is a port called wofi too, I tried both of them out. I don't know, I just didn't like them, they seemed to flashy, the config for them seemed tedious. I then tried out bemenu which is based on dmenu, this was the one. Yet again I just needed to install the AUR package, the config can be set via an environment variable called BEMENU_OPTS. After playing about with it I just added this to my bashrc profile and I was done. So simple, love it. 
       +
       +> export BEMENU_OPTS="-p '> ' --tb '#000000' --tf '#ffffff' --hf '#444444'"
       +
       +
       +## THOUGHTS? 
       +
       +So far I have had no crashes or any issues at all. One thing that I have noticed is MPV playback seems way smoother and scrolling in Qutebrowser is tear-free. So far so good, and I really don't feel like I am missing anything switching over. 
       +
       +Another side, my installed packages has reduced massively, all X packages have been removed as they are no longer needed. My dotfiles directory looks a lot leaner without all the dwm, herbe, st and dmenu builds. Trivial I know.
       +
       +I guess now I just continue as is for a few more months and see what I think then!
 (DIR) diff --git a/robots.txt b/robots.txt
       @@ -0,0 +1,2 @@
       +User-agent: *
       +Disallow: /