Musimatic Blog (HOMEPAGE LINK:

Table of Contents

1 September 20, 2020

I've been getting more into Ham Radio recently, and it has been super cool.

The license exam itself is kind of useless for someone like me that is using a low-tier handheld radio, as the questions are geared towards older enthusiasts who have amples amounts of money to build radio towers on their property, with a $500 to $1000 radio to match.

However, once you kind of get past the somewhat useless exam which encompasses a good majority of high school level physics, its not too bad.

Would recommend "" for anyone interested as it has the SAME exact question pool as what's on the test, and it is what I used to study for the exam:

The possibilities of using packet radio, BBS's, and Echolink (via QTel) has been really fun to play with. So far, I've received a ton of support from Ham's in the Echolink based net calls, since the Ham's near me don't really do much packet radio. Most people online kind of dismiss packet radio as a "fad from the 90's". I, however, see it differently as the potential of using a mesh network to connect devices such as computers across the world without having a centralized ISP dictating everything is MIND BLOWING.

Of course, a lot of these kind of mesh networks are limited to Hams, but hey, just get the basic Technician level license, and you're set.

I've expanded to the world of VoIP over Echolink, which allows you to basically to anyone throughout the world that has a Ham radio license via the internet. It might sound like Skype to some people, but is way less proprietary or invasive privacy-wise. Though you might be thinking, "Yeah, isn't that kind of dangerous?", I honestly have not heard nothing but positive people that are super encouraging. The ham radio hobby attracts very tech minded individuals, so its not anything weird like in a strange internet chat room or something since its FCC regulated.

Also, you have to keep in mind that although you are accessing these radio towers via the internet, a lot of them are PHYSICAL radio towers which are repeating your same radio signal throughout a PHYSICAL region. With this in mind, people aren't as open as you would think, and are pretty polite with each other as a result. Plus, most of the topics discussed are pretty much centered around the hobby itself. Honestly, a good chunk of the people I spoke to so far are just retired individuals that are looking for positive conversations throughout a given day. I've heard it all from what people are doing at a given moment, such as errands, fishing, etc, to just talking for minutes about a given topic, which is called "rag chewing" in Ham lingo.

Echolink can be found here, but NOTE: You NEED to have a callsign registered with the FCC in order to use it, so you CANNOT use it unless you are a licensed Ham:

It's primarily aimed for Windows users, but you can also utilize "QTel" if you have a Debian based Linux computer via your "apt" package manager:

I learned that there are "net calls" which are basically group calls that occur once every week on a given topic. I was pretty surprised that there are several net calls around very specific medical based ailments on certain frequency bands, so that was something I never knew people actually did with ham radio.

For example, one guy was going on about how there's a stomach based net for ham's who suffer from stomach ailments, so its kind of like mini-support groups for given topics. However, though I mentioned medical based topics, net calls span a whole range of topics. For example, I listened into a Raspberry Pi based net call, and learned SO MUCH more about Linux with radio than even on IRC. I absolutely will tune in next week at the same time slot, since I want to learn more and more to expand my base knowledge on the topic.

In terms of this website, I've taken care of a few minor things, including:

  1. Revised my GitWeb site to include a dark theme CSS stylesheet:

  1. I've been able to make two of my existing project sites work again after the

recent NGINX backend upgrade:

The remaining goal would be to maybe get some of these other project websites running.

However, projects like my "ExpressOrLocalApp", though cool when I first made it, wouldn't benefit anyone since everyone's leaving NYC nowadays anyway, so it might not even be worth it to get that specific project website working again.

The cooler thing would be to start running a BBS or something, and roll with it. That and run a "Searx" instance, run a "UnrealIRC" instance, etc.

Or maybe, even get the page looking like an old Geocities or Angelfire site like this for example (without the dreary gothic theme, but you get the point):

I've been working on getting the "ISS Location" page running, so that's been fun, so far I've been working on making sure the JSON request saves properly so that I can run an AJAX request with the push of a <button> tag on the page to pull the latest JSON response that's downloaded to the same directory via a crontab job:

I've been toying with the idea of possibly creating a "Lode Runner" game but based on someone else's game, change out the sprite sheet, and have it running on a JavaScript based engine so I can run it in browser on a page, and across multiple devices.

That alone would be pretty cool imo.

You can play Lode Runner for free on Internet Archive ( on multiple old-school computer emulator platforms IN BROWSER: Mac Version: Apple II Version: DOS Version (Sequel):

I've also been trying to get Retropie working to use Amiga, Macintosh, and DOS based emulators.

So far, I've been able to boot Retropie without a problem. However, if I try to run any Amiga games, even with the necessary "kick" (BIOS) roms present in the proper directory, it boots into a black screen.

However, it'll be pretty dang sweet when I get some cool Amiga, Mac, and DOS software running on the old Raspberry Pi 3 I have, since its been a while since I used it. I really do like the Retropie menu a lot. I think the last project I tried doing with that box was "DietPi" which was ok, but I'd rather get some kind of old desktop computer, put a super lightweight Linux distro on it, and run it as a Desktop computer with just a TTY prompt without running X.

Now THAT would be a cool challenge.

I've been trying to find a cool old broken Macintosh from the 80's to house my Raspberry Pi 3 in, but I can't find a good deal for one on eBay or locally since every older dude knows EXACTLY what they're selling, regardless if its broken or not. The idea would be to just remove the guts of the old PC, fit in a new monitor in the front panel of the Mac, and get a glorious BBS running or something.

THIS is what I would love to do, but don't really have the kind of eBay money to do so:

Looking forward to possibly installing Gentoo in a VM, but I STILL am unpacking boxes from the move (go figure), so I would need to find the screws for the video card so I can remount it to the Desktop machine I have.

Staying positive, and still doing my thing (which is, having fun :D).

Stay well,


2 August 30, 2020

I changed the CSS of this page to be a tad bit simpler as the solarized theme for the CSS was a bit much.

Pretty happy to get back to the whole dark blue purple theme, so I'm pretty set.

Might add some small tweaks with fonts, but the simpler the better as I plan on overhauling the theme to like a Geocities-type old school theme at the end of the year as well.

I was able to find my Desktop computer in my moving boxes with the power cable, but need to dig in other boxes for the screws for the video card, as well as the TV I've been using forever as the monitor for it.

That being noted, I'll probably get to trying to install Gentoo in a VM another time in that case.

I've been trying to schedule a remote-based Technician level ham radio license exam. The earliest I was able to schedule it is in the second week of October, which slightly sucks, but I might be able to schedule it sooner with one of the other two remote based ham radio clubs that are running the exams remotely.

I've been pretty much consistently passing the practice exams online, so it shouldn't be too bad.

However, the requirements of most of the remote exams minus ONE of them include the requirement to use Zoom, which sucks since its basically glorified spyware, but I'll just smack it on my work computer so I don't have to risk a test procter getting mad about me running it in a VM or something since a lot of the remote tests are kind of vague about using VM's to run Zoom.

The main formulas to remember for the Technician-level Ham Radio License Exam include:

  1. E = I * R

OR with its units: V = A * O

This would be Energy (E) = Current (I) * Resistance (R)

Also, the second portion regarding the involved units include: V = Volts, A = Amps, O = Ohms

  1. P = I * E

OR with its units: W = A * V

This would be Power (P) = Current (I) * Energy (E)

Also, the second portion regarding the involved units include: W = Watts, A = Amps, V = Volts

Everything else, despite what anyone else says online, is basically just memorization of answers, since someone like me is only planning to utilize the junky Chinese type handheld radios like the Baofeng UV-5R to make contacts locally, and even if I DO like the whole hobby, I'll probably only get a CB type radio at best for like around $200. I kind of laugh when I see these boomer type prices on eBay for like OK looking ham radios for like $500+, so I'm only skimming the surface of the hobby for fun, and not planning to invest too much into it.

In terms of Emacs Org Mode, I learned that if you want to change an ordered list item to have a different index, you would use: (number of item) '[@(new index number)]'

For example:

  1. Cool Thing To Do
  2. Second Cool Thing To Do

Could Become:

  1. Cool Thing To Do
  2. Third Cool Thing To Do

I've been taking it easy otherwise as there's still a few errands that need to be done after settling into the new place over the course of the month.

I'm looking forward to cooking a lot of Hungarian and Vietnamese food to keep my mind occupied despite the times, since the days and weeks are pretty much blending at this point, which sucks on a personal level, but there's not much else that can be done.

I'm definitely still thinking of useful things I can add to this site as well, including mini sub-pages would benefit people like myself who are getting interested in ham radio, as well as Linux based info.

Stay thankful, and happy for the things you have today.

~ Sam

3 August 23, 2020

I did a very big move recently, and we just got all of our stuff settled into the new place.

It's been great so far, and pretty laid back comparatively.

However, its been a lot of ups and downs regarding how to rent a house, so I can't say its been too easy, but I've been grateful that we made it in one piece and are closer to family given these crazy times.

After a few weeks of just chilling out after work so I don't burn out, I realized my efforts in terms of learning any tech stuff on the side should be focused on what I can apply directly into actual projects.

For example, instead of doing the related JS book from start to finish, I think I just need to read through a related chapter, see what's applicable, and make a part of this actual site that features that capability instead of working on silly fake websites that would be used as part of some "portfolio" or something.

Even as far as portfolio websites are concerned, I'm pretty sure if you can deploy a Wordpress site, you're pretty much close to doing anything similar, so I might actually devote some time deploying some small tinkering Wordpress (WP) sites in that case to gain that skill.

As far as the work based ElectronJS app I've been working on, I plan on just following some YouTube tutorials, see what sticks, and just apply it to the app itself as its not rocket science.

I've been also working on getting my ham radio license, and figuring out what I'd like to do with the yard gardening wise since I do have a garage to get some projects done now.

Also, I'm posting some useful Emacs based Org Mode shortcuts for anyone who does finances like myself in Org Mode as well:

C-x-h: Select everything on screen
C-c-|: Turn the entire Org document into an Org-Mode table
C-c-}: Turn on row and column numbers to make formulas easier in Org-Mode
M-S-Left: Delete a column
C-c-^: Sort a column based on the provided choices (Note: Do this in the Date column based cell for an easy date sort)

Other plans for this site:

Idea Description
Deploy Searx Instance Search engine without the ad tracking, and to be used among people I know / better alternative to Google or DuckDuckGo
Useful Ham Radio Utility Webpages Maybe could scrape some useful frequencies, NOAA weather, etc
Radio (FM, AM, etc) Could be a fun little side page
Change the CSS stylesheet for the "Blog" page Solarized theme is kinda looking OK at best, could be better
Deploy UnrealIRCd IRC Server Would be a great private IRC instance for family and friend use

Staying positive, God Bless.

4 August 2, 2020

I've been in the process of trying to get "BasiliskII" emulator to work, so that I can run some cool old Mac programs for fun. I was thinking to maybe setup my old Raspberry Pi 3 to boot into BasiliskII to run MacOS7 or MacOS8 to possibly do some cool audio recording ideas, and play some old games / use older Mac software.

This link looks promising as a good guide, but we'll see:

For the time being, I've been checking out Internet Archive's collections for fun.'s Mac Software Collection:

Apple II Based Software Collection:

5 August 1, 2020

I have been in the process of trying to deploy a 'Searx' instance on this site, but so far, I haven't made much progress and am kind of stuck on why its always stating "Rate limit exceeded" when you attempt to visit the Searx instance via the 'curl' Linux terminal command.

I've been trying to utilize this part of the Searx official documentation guide and a related GitHub issue that has a very close nginx based configuration for the 'searx' site but haven't really figured out the root cause of the issue as I've followed each of the installation steps VERY closely:

Only other thing I noted this weekend is that "" looks like its going to taken down in September 2020, which sucks because I try to access YouTube through that instance to pull down videos for later viewing so that I don't get a million tracked ads while on YouTube.

It is 10x better to watch content locally on your computer than having to stream and potentially deal with ads and the like. Also, watching videos locally with 'mpv' is amazing. I just hope someone forks the "Invidio" project here, and keeps it going so that I can keep checking out content on YouTube with a minimal browser like w3m:

There are other public instances of "Invidious", but who knows how long these will last if the main project will end in September:

Will post details if I actually get 'searx' up and running though, as I'm looking forward to it.

6 July 28, 2020

I'm back to just using regular Emacs.

I tried Doom Emacs out, and what bugged me is that the overall community's sentiment towards it is correct. Doom Emacs is really just someone else's config. Sure it might be faster than regular Emacs, but at least I know how I want my Emacs experience to be configured.

Also, using Doom Emacs with Org-Mode kind of sucks since the C-u C-c C-. command doesn't work right at all, which is SUPER crucial for my every-day ticket based work at my actual job.

Hence, I nuked Doom's configs and am back to plain Emacs. The one thing I did like was the auto-completion sections within the mini-buffer at the bottom of Emacs, as well as the recently found files part in the intro-menu.

Other than that, eh.

Anyway, here's some cool links to check out for old-school style internet fun, or just fun in a Linux terminal:

Here's a cool old site from the early days of the Internet as I found this randomly after searching for "Tera Melos" online, worth it to check out as his page is pretty extensive:

From the guy who made '' which is that cool Weather based internet service I've used for the "Weather" tab on my site, this person listed some pretty neat console services that I found to be cool:

Notable Highlights:

Finding remote work through terminal, very cool:

The "Telnet/SSH-based games:" section is pretty cool too, so all you have to do is run the following commands in a Linux terminal to play some neat games via 'ssh', 'nc', or 'telnet':

  • ssh ~> snake game; play with AWSD keys
  • ssh — multiplayer tetris
  • ssh — 2048 (source)
  • ssh - 11 arcade games
  • ssh -p 2222 — guess free minesweeper; Pass: play
  • ssh — play various games including checkers
  • ssh - Competitive puzzle; password: intricacy
  • ssh - Multiplayer Chess; password: simulchess
  • ssh - Pacman; password: pacman
  • ssh - Roguelike; password: lag
  • ssh - Khet; password: ckhet
  • ssh - nethack and others
  • ssh - rogue; password: yendor
  • ssh - singleplayer pong
  • ssh - requires you to make an account first
  • nc 23 — MUD (MUD list here, also works with telnet)
  • nc 23 — Chess Game (also works with telnet)
  • nc 6969 - play/watch the game of Go (also works with telnet))
  • nc 4321 - multiplayer backgammon (also works with telnet)
  • telnet 20028 - infinite cave adventure
  • telnet — games: Pong, Break out, Tetris
  • telnet 1701 — Star Trek
  • telnet

Have fun :)

7 July 27, 2020

I was able to utilize a few Crontab commands to update the weather part of the page.

Crontab based 'wget' commands are as follows:

*/5 * * * * wget -O /var/www/musimatic/images/newyorkweather.png
*/5 * * * * wget -O /var/www/musimatic/images/nashvilleweather.png
*/5 * * * * wget -O /var/www/musimatic/images/scrantonweather.png
*/5 * * * * wget -O /var/www/musimatic/images/poincianaweather.png
*/5 * * * * wget -O /var/www/musimatic/images/newyorkweather.gif
*/5 * * * * wget -O /var/www/musimatic/images/nashvilleweather.gif
*/5 * * * * wget -O /var/www/musimatic/images/scrantonweather.gif
*/5 * * * * wget -O /var/www/musimatic/images/poincianaweather.gif

The end result can be found here:

If you ever want to find a specific area's weather from the National Weather Service's Apache server, you'll have to dig a bit yourself here:

If you ever want to bookmark a specific section from the 'Weather' page, you can use one of the following links as they take advantage of the "#" id element values of the specific locations within the links themselves:

Weather Forecast Links:

Weather Radar Links:

8 July 26, 2020

I was able to figure out with the help of IRC how to actually git clone my repos as the 'git' user:

For example, if I had SSH access to my VPS on another machine, then I could do:

git clone -v

Also, I learned how to configure Virtualbox on a Windows 10 'host' to run Devuan inside of it as the 'guest' with the help of this guide:

The only other tweak I had to do was make sure that in Virtualbox, I had went into Settings (Gear Icon) > Display > Graphics Controller: VMSVGA

Pretty stoked because I decked out the Devuan based virtual machine on my Windows 10 work computer with my dotfiles config, which means I can potentially work primarily in a Linux environment in the near future and never have to touch Windoze for work ever again unless in a VM or something locally on that machine.

9 July 25, 2020

I am happy to note that my git repos are live at the following site:

What does this mean?

You can see the progress of any of my own public repos that I contribute to, so that you can steal my 'dotfiles' configurations for your own use to tweak for example.

For example, I will literally be able to go to another machine, pull down related configurations, and it would look exactly like my current machine without any problems.

I've been at this for a dang week, and I'm happy to note that its all because I had to be inclusive of ports INCLUDING port 80, which is the specific port that helps handle HTTP requests on the web.

Because the lack of Nginx docs or guides on how to specifically configure "GitWeb" to work, I'm literally going to copy and paste my working config so that anyone using 'nginx' can benefit from it as I had to use over 5 different separate guides to even attempt to figure it out:

NOTE: You'll have to place this in your '/etc/nginx/sites-available' directory on your website's VPS as a file name of your choose, for ex: you can save it as 'git':

server {
	listen 80;
	listen [::]:80;


	location / {
		root /usr/share/gitweb;
		index index.cgi;

	location /index.cgi {
		root /usr/share/gitweb/;
		include fastcgi_params;
		gzip off;
		fastcgi_param SCRIPT_NAME $uri;
		fastcgi_param GITWEB_CONFIG /etc/gitweb.conf;
		fastcgi_pass unix:/var/run/fcgiwrap.socket;

Here are the specific links I found to be IMMENSELY useful in this process of using 'nginx' with Debian 10 and GitWeb:

10 July 17, 2020

I am in the process of trying to figure out how to get the Git bare repos online as public repos on this site.

Unfortunately, the Git book is mostly 'Apache2' based, which doesn't help because this site is now running using 'nginx'.

However I did find a couple links that I have to go through to make some decisions on how to properly configure and serve the following directory:

I'm also debating whether or not I should even serve the Git repos in the var/www directory on this site as well or keep to using the /srv/git repo as mentioned in the Git book.

Helpful reference links on how to possibly do this include:

Ideally, my Git repos would look like the one from '', which looks awesome, minimum, and just perfect:

Things To To Do This Weekend:

  1. Work on my C based ncurses project as well.
  2. Learn more JS for work and keep utilizing this practice site as a means to apply the techniques from the related chapter:
  3. Work on my "ArmoryApp" NodeJS / Electron based app for work as well. It's coming along pretty nicely as I'm able to automatically pull logs for the one app I help do tech support for, which is pretty cool.
  4. Configure the Devuan work based VM so I can move all my work inside of it.
  5. Keep researching how to install Gentoo and configure the related installation guide.
  6. Deploy 'Searx' public instance on this site now that I have the desired 'nginx' + 'Debian' combo that's preferred
  7. Make Awk script to sort ~/.w3m/bookmark.html based on <h2></h2> tags present
  8. Make LinkedIn Job Scraper based on their API so I don't have to use LinkedIn anymore +10k points for making an NCURSES interface to read results afterwards
  9. Learn more from gotbletu videos
  10. Work on weather based webscraper based on, and the National Weather Service Apache server to display the contents on a webpage
  11. Turn Emacs into a C based IDE with this guide:

11 July 16, 2020

I am happy to note that this site is now running on 'nginx' thanks to Luke Smith's video on the topic:

Pretty stoked because dealing with Apache configurations was a bit of a pain, especially since I wanted to add a Git server to this site, as well as Searx.

We are now running on a Debian 10 based VPS droplet running on Digital Ocean's VPS servers in NY :).

I've been meaning to do this for a very long time, so I'm pretty glad.

I finished learning C, and went through that ncurses guide. I've been modifying two or more projects to get the hang of it, and am basically making a glorified menu that runs a few Git commands, which is about it.

Does it work yet? Not really.

Can I show it off yet? Not yet, because I'd need to setup the Git server first.

However, because I'm now using Debian 10 on this box, it should be way easier to do it than friggin' Ubuntu was.

Plus, since I now have the great combo of 'nginx' + Debian 10, this means I can finally revisit being able to host my own Searx instance as well so stay tuned for that.

Other than that, I've been debating making a LinkedIn Job Webscraper that would access the LinkedIn Job API since I hate logging into that site, and be constantly spammed with unnecessary news articles.

LinkedIn, like other platforms, needs to learn its place, and just stick to jobs, and nothing else.

Here's 'nginx' for reference:

12 July 3, 2020

Regarding My Digital Art:

I got good news in that I was able to finally get around to modify the existing JS code for the "GIFs" section to make the Digital Art 2020 and Digital Art 2019 "back", "random", and "forward" buttons actually work.

You can check it out here:

Regarding 'Audacity':

I tried to get Audacity to work on my Devuan laptop, but attempting to do overdub tracks made weird sounds on the overdubbed track. I don't think it's due to CPU issues present, but I'll see if I can just at least record demos with Audacity on the desktop instead. It would have been nice to do demos on the fly with the laptop alongside my Focusrite Solo (2nd gen) audio interface, and then master songs in Reaper on the desktop later, but ah well.

So that would have to be the third fail of the week, but ah well, good and bad things happen in 3's, so I'm hoping that stupid bad luck spree is over.

Regarding 'GNU Stow':

I re-arranged my dotfiles config and plan on deploying them with GNU Stow, so that I can go to another machine, and use the following stow command so I can deploy configuration dotfiles easily:

stow -t ~ *

This basically sets the target directory as the '~/' or $HOME directory where normally all your dotfiles are located anyway since I usually place my dotfiles in its own repo, ex: ~/programming/dotfiles. By doing this, Stow would properly place them into the home directory on the target machine.

This helps a lot if you want to have your nice looking AwesomeWM or Openbox config to be present in two seconds on a newly installed machine.

'GNU Stow' can be found here:

'AwesomeWM' can be found here:

Slight meme-tastic picture of AwesomeWM in use (from the AwesomeWM website):


'Openbox' can be found here:

I'd like to probably overhaul the design of this blog post portion of my site since solarize themes aren't really my thing anymore, but I at least got to figure out how to change the CSS styling of an Emacs Org-Mode document. This is important since that's all this page is at the end of the day, just an blog.html file that was exported from the '' file. It's hilarious that you can just make a website using an Org mode file, and I still plan on carrying the torch as there's no really big reason for wasting extra time in configuring HTML/CSS with JS just for blog posts anyway.

Regarding 'Emacs Org-Mode' Being Used For Finance Based CSV's:

First of all, I've been using 'sc-im' to do my finances for the past few months. I first attempted to document my attempts of the commands I wanted to do on each of the CSV files involved in the process, which include the credit card and checking account statement CSV files. However, after combing through the 'sc-im' internal help a few times, and their GitHub page, it doesn't seem that there's an easy way to do commands like 'dc' or "Delete Column" with external scripting at all.

I then got the idea that if I like Emacs so much, then why the heck SHOULDN'T I use it for CSV spreadsheets either.

Then, I realized after a little bit of searching that you can easily make your finance .csv files into Org-Mode tables by opening up the .csv file in Emacs, select all the values, copy it into your copy / paste buffer, and then paste the values into a new .org document.

Then, in the .org document, highlight all of the values, and then use the following command:

C-c |

This turns the entire sheet into an Org-Mode table, which is sweet!

I learned this from this Stack Overflow post:

Since I wanted to learn how formulas in Emacs Org Mode tables work, I also learned that the following command will turn on row and column numbers to make formulas easier in Org-Mode:

C-c }

More info on how spreadsheet formulas work in Emacs Org-Mode can be found here:

Very happy to be moving on past 'sc-im' for this purpose alone. 'sc-im' neat for basic spreadsheets but was just a bit disappointing in terms of its scripting ability to manipulate existing .csv files but I guess there's other terminal programs for that purpose too.

'sc-im' can be found here:

13 July 2, 2020

I debated installing 'firefox-esr' since Qutebrowser just wasn't working with YouTube's sign in page at all. It turns out that the dumb blanket error message they give when you try logging into YouTube with Qutebrowser, "you're using "a browser […] that doesn't allow us to keep your account secure" is totally a lie.

They just want more control over your browsing experience to monitor your viewing habits, and to make ad revenue, plain and simple. This is explained more in detail within the following workaround found here from Qutebrowser's GitHub page:

Here's the workaround you have to use within Qutebrowser itself to make it work with YouTube's Google Sign-In page: :set -u* content.headers.useragent 'Mozilla/5.0 (X11; Linux x8664; rv:57.0) Gecko/20100101 Firefox/57.0'

What does this workaround do?

From the looks of it, it utilizes a Mozilla based agent that makes it seem like you're using a Mozilla based browser to Google, when in reality, you're still using Qutebrowser.

What does this prove?

Don't depend on Google for anything. I literally only login to maybe check related content to see if there's anything else cool within the Linux YouTuber scene these days to add to my RSS feed list. However, like most based Linux users nowadays, I mostly just download videos from RSS feeds from Newsboat with 'youtube-dl' to be later viewed with 'mpv' anyway because streaming videos is a waste of internet bandwidth, time, energy, and patience.

Just in case you're one of those people stuck into the "Oh, but I NEED Google for things like Gmail, Google Drive" etc, then you need to read these blog posts and wake up to an improved user experience for better alternatives:

Also, here are better 'Gmail' alternatives, or even 'Outlook' for that matter since I despise Microsoft as well:

I personally have used 'Fastmail' so far, and I like it a lot. However, for good things come a price, so even though its not free like all of these other email clients where YOU are the product, it does give me a little peace of mind at least. The middle tier plan they have is $50 a year, and seems worth it. If not, I'll probably just host my own email server later on a VPS next year if I don't like it, but I'll keep it for now:

Regarding 'searx': Oh man, what a fail this was too.

Why is it that every deployable web app just does NOT work nicely with Ubuntu 20.04? This is the second fail I've had this week since the first was Jitsi Meet which just did not play nicely with Ubuntu 20.04 + Apache running this site.

Now, after a few hours of trying, I just could not get Searx to work at all.

It was so frustrating because they changed literally EVERYTHING about their installation process within a month of Luke Smith's video:

This makes his recent video absolutely useless in comparison. Even though there are installation scripts, its just mindboggling how nice and easy the installation process was a month ago via the instructions on screen on Luke's video vs the current mess that exists:

I DID however find a guide on how to deploy this on the Raspberry Pi, but this would be for a local instance, and not necessarily a public instance for people in my family unfortunately:

Let's just say I am not going to be attempting deploying another web app for family any time soon. I would be more inclined for changing the entire backend of this website to 'nginx' instead of Apache2, which I aimed to do at some point anyway, so this is probably just a lesson to never use Ubuntu as a server basis, and to finally overhaul Apache with 'nginx' instead.

The only thing I'd have to recreate is the bare Git repositories I created earlier, but that can ALWAYS be re-done.

Anyway, moving on to more positive things and projects, and will just label this as another attempt I guess. The best way to learn is to fail, so I plan on just moving on.

14 July 1, 2020

After much deliberating, I was able to kind of get 'transmission' working on both my local machine and my Raspberry Pi since I wanted to download safe files like Linux distro ISOs, wallpapers, etc.

Think of 'transmission' as one of your typical BitTorrenting clients, but with a bit more control, and a heck of a lot of less ads and potential for getting viruses.

The reason why you would want to have 'transmission' on a Raspberry Pi device is that you don't want to waste so much power downloading things like torrents, images, etc, when you can do it on a low power device to do it all day for you if needed. The capabilities of this kind of setup are cool because if you hook up an external HDD to a Raspberry Pi, you can also debate how to make it work on scraping the internet for data with cool scraper projects.

For example, I would love to somehow scrape the "Wayback Machine" for old school icons, and early internet assets as it brings lovely memories of Yahoo! Geocities back to mind. Ah yes, back when everyone had their own personal website, although heavily templated. Looking back, its easy to say that having your own site WAS the internet, and the direction it took really sucks.

Face it, its pretty sad when most people only can think of maybe 5 major sites that they visit on a daily basis. Back then, you had tons of splintering personal sites, all for the basis of being able to express yourself freely. Sure the DotCom bubble was a meme in itself, but I remember all of those weird personal pages that had highly specific content. Ex: If you searched for old school game art on Yahoo! back then, you would likely land on some dude's personal website where he hoarded tons of video game sprite sheets that he somehow collected from using ROM palette tools. Sure there's tons of community sites that still do this, but it meant more when a guy's whole personal page was just dedicated to solely that purpose, which shows the life and soul of the early internet.

That makes me want to grab every Pokemon based sprite sheet from late 90's websites from The Wayback Machine ASAP :), good times.

'The Wayback Machine' can be found here, and chances are, your old personal website or favorite site was archived, so check it out:

You can also laugh and see how badly I designed this site over time, but also keep in mind just how restricted I was in terms of being able to develop this site while on my lunch break at my first tech job. Geez, I used to have to SSH into a shared hosted site just to be able to modify this website, but nowadays I just work on this site locally, and then use 'rsync' to post my changes onto the website that's hosted by a private VPS.

Here's the old past history of '' for you to enjoy (and wow did I love a good purple color scheme early on haha):*/

Back to the topic of 'transmission': I tried to make it easy by modifying the 'settings.json' file in the '/etc/transmission-daemon' directory to accommdate the '~/Downloads' folder. However, after trying two or three workarounds in this Stack Exchange post, I gave up:

However, I will work on creating a related symlink that will link to the 'var/lib/transmission-daemon/downloads' directory as 'torrents' or something in my '~' home directory.

I believe all I would maybe have to do is just to add the 'sam' user to the 'debian-transmission' group anyway. This is important because for the time being, in order to access that particular directory, '/var/lib/transmission-daemon/downloads', I would literally have to use sudo priviledges to do so. This is fine for now, but might be easier if I just add the user to the 'debian-transmission' group appropriately.

Anyway, I'm pretty happy it works at least, but let's just say 'transmission' out of the box is NOT newbie friendly in that respect. However, it is a pretty powerful torrenting tool that can be run on any lower end PC if needed, which is super cool.

'transmission' can be found here, and can be used with CLI or with a GUI;

Also, if you're someone like me who's just looking for legit torrents for nice purposes like 'wallpapers', Linux ISOs, etc, I found a good blog post for relevant torrent sites in 2020, which is new to me as I only knew Pirate Bay back in the day like everyone else:

As always, try the CLI version of 'transmission' instead.

In Debian distributions, you're gonna need 'transmission-daemon' and 'transmission-remote-cli' installed, so you're going to want to do the following command in terminal to install the terminal version of transmission:

apt install transmission-daemon transmission-remote-cli

After installing the two parts listed above, I would follow along with gotbletu's YouTube videos on the topic as its not too easy to figure out on your own, so here's a related playlist to help figure it out:

'gotbletu' shows a lot of bash aliases you can put in your .bashrc config to make using 'transmission' a lot easier too, so I highly recommend checking those out, and any of his other videos since he's pretty good at just demoing Linux utilities in general.

Plus, you can always access your downloads at any time in any browser by going to this website URL once you have the transmission daemon up and running: http://localhost:9091/transmission/web/

One more good thing taken care of this week.

Next, I'll attempt adding a private 'Searx' instance. It's a dang shame about how badly Jitsi Meet doesn't play well with latest Debian or Ubuntu distros though. However, I learned a lot in attempting to deploy it though. I probably might even resort to just deploying an IRC based server like 'XMPP' or something:

Also, I'd like to do a few screencasts with gifs using 'screenkey' as well as the idea of being able to showcase Linux utilities with screencasts is probably the next best thing I could do to emulate my favorite Inconsolation blog. That and being able to utilize thumbnails correctly with Emacs Org mode would help as I'd love to replicate his Wordpress site's ability to just do thumbnails out of the box.

Here's 'screenkey' for reference:

Stay tuned :)

15 June 30, 2020

I figured out how to handle images with Emacs Org Mode and related formatting to make this blog a little more lively with images:

I figured out how to use thumbnails with the 'mogrify' command from 'imagemagick' will become SUPER useful later as I make more and more useful tutorials on this site with just .org mode sites for specific topics:

Here's the relevant 'mogrify' command: mogrify -format png -path thumbs/ -thumbnail 100x100 (name of image)

For example, I created a thumbnail for later use in the weather portion of this blog post: mogrify -format png -path thumbs/ -thumbnail 300x300 weatherCommandScreenshot1.png

I also stole this 'Dark Solarize' theme from this GitHub page and used it for my own blog page as well:

I also combed through the National Weather Service (NWS)'s Apache server, and found the following locations to be useful for myself and for my family's purposes.

They're GIF's of the National Weather Service's doppler radar so you can check if its going to rain or precipitate in your area.

This is the NWS's Apache server where you can comb through each of the '.png' images or gif's present to find out your area:

NOTE: I THINK they're based on airport codes, but let's just say I spent a good amount of time trying to figure out which ones are relevant, and it wasn't easy since Scranton for example doesn't have a major airport connected to the National Weather Service, so you kind of have to look at the doppler for a nearby city instead.

Here's some useful weather doppler gifs I plan on re-hosting on this site at a later point with a CRON job on a related "Weather" tab on the site for family to use:


Figure 2: Nashville


Figure 3: Orlando


Figure 4: Orlando


Figure 5: New York


Figure 6: Scranton


Figure 7: Scranton


Figure 8: Scranton

On that same note, you can also just utilize the 'curl' command on Linux to grab your local weather information.

Here are two example screenshots in which I'm using the following command, 'curl', which will obtain the latest weather information for Nashville, TN:



In terms of re-designing this blog portion of the site, I plan on re-designing this blog portion of my site with the Org-Mode based themes from this guy's GitHub as I REALLY like the "ReadTheDocs" theme he's got:

Before I used to use the "Ox-TWBS" plugin for Emacs to export this blog into a Twitter Bootstrap CSS styled site. However, after moving into Doom Emacs, I realized I should play around with the default styling a bit for this blog, so I plan on exploring this a bit further.

Speaking of re-design, I STILL need to fix those the "Images" section on this site as I think its just a matter of not having the correct permissions to allow a user to view my old artwork.

I'm in the process of wiping my desktop drive so I can install Devuan on it, and just test out Linux distros in VM's to find some cool setups with some Window Managers. It's more so that I can possibly move to an Arch based distro without systemd sometime later this year, but didn't want to blow up the desktop computer itself like my last attempt with just an Arch install with Steam.

Speaking of Steam and 'muh games', I plan on really only buying games for my Nintendo Switch and to keep computers as just that. I think Desktops are cool for making music or possibly to aid in emulating older games, but past that, playing games on a Desktop computer is a bit of a waste of time. I'd rather be building some cool stuff with that same time.

Also, I'm kind of tired of playing a game on a console, I know when to put it down. However, when I had the latter on Steam, I could quickly forget the time, and kind of regret it later. Anyway, the cryptocurrency bros ruined the PC market anyway, so there's no point in building high end machines unless you plan on running VM's. Even for that use case scenario, you don't even need a top tier video card as well. You would just need to make sure you have a decent CPU and RAM. I do plan on getting a librebooted computer though, so I'm not sure how long my wanting to do VM's on a regular basis will last in that case.

These things I wish I knew before, but at least I have an ok Desktop computer for today's standards to just run VM's on, and to later become a cool media server or something. I've been using it for emulators and have been having a good time with it. I plan on making some demos with Audacity, and then remaster tracks within Reaper with MIDI for that newer band I'm going to create called "Sieges", which will be a Dungeon Synth band. I'm still debating if I should just release it on the Bandcamp platform, or just host it on my own site, with a custom CSS style sheet to mimic Bandcamp since all I would have to do is to just allow people to hit play in some kind of web based music player. I wouldn't charge for the music either, and will most likely do donation incentives through Patreon or something similar.

I also kind of debate making Linux tutorial type videos for sites like Library or BitChute, and not necessarily YouTube since YouTube is just become more and more censored as the years go on. I'd rather be on a platform where I'm welcome than be banned for being conservative or something. However, I might take up Luke Smith's philosophy to maybe just use YouTube until you get banned just to piss them off or something for being on their platform regardless as its still sort of the world's marketplace in the truest sense at the moment.

I'm gonna try deploying Searx sometime later today as a private instance so that should be fun as well. Feels good to put the power back into my hands, and to take back all of that free telemetry ad money from Google and DuckDuckGo.

Also, I plan on ripping this CD I got the other week since I couldn't find it on Bandcamp or Spotify anymore (though I don't use Spotify at all, it used to only be available on there for a long time):

Probably the most funniest, down to earth album you will ever hear in your life. I don't know why, but I liked it a lot as this guy is so honest, but its "so bad, it's good" if that makes sense.

I'm gonna try finding a CLI based CD ripper on these good command-line based blogs:

Have fun for now, stay well!

16 June 29, 2020

I tried to install Jitsi Meet but failed because of these two dumb issues that still haven't been resolved by the Jitsi team:

Related GitHub issue on the same topic:

Duplicate issue where they're still working on this issue:

Basically, in a nutshell, they're using "Certbot-Auto", which has been deprecated for releases like Ubuntu 20.04.

This means that unless they patch this into the installation shell scripts, I would manually have to apply a workaround using 'certbot' to install the appropriate certificate, and manually configure a lot of the files present to get it to run. I don't feel comfortable doing that so, I just nuked the Jitsi Meet private instance I created.

On the flip side, I plan on deploying a private Searx instance, so that I never have to use Google or DuckDuckGo again myself, so that'll be fun.

This time though, I'll read through the whole documentation to make sure that Searx is cool with Ubuntu 20.04.

'searx' can be found here, and you can actively use some public instances of it, though its more recommended to host your own instance to make sure its as secure as possible since YOU control it in that case:

On a good note, I was able to install Doom Emacs just fine, and I have gotta say, it looks, feels, and just responds amazingly. I know other Emacs enthusiasts would just say "its someone else's config" but I've been using Vanilla Emacs for quite a bit, and there's just so much that should have been added right out of the box as a default like this.

So it goes without saying, I'm back to using Vim style bindings, and I'm pretty happy about it. I still know Emacs style bindings for other shell programs wherever needed, but let's all agree Vim bindings are 100x better and more intuitive. Those who think they've memorized every C-c or C-o style binding in Emacs is insane, or is straight up lying. Some are intuitive for starters but when you delve into Org-mode with vanilla Emacs bindings, then you realize its almost impossible for a normal person to remember half of the bindings anyway.

'Doom Emacs' can be found here:

Otherwise, I have the week off, and am doing the following checklist of things to do to keep myself occupied, and have been pretty happy about the progress so far:

Checklist of things to do [11/28]

  • [ ] Go over moving inventory list
  • [ ] Relax
  • [X] Figure out Neomutt for Fastmail email address
  • [ ] Figure out how to use gnupg keys for Neomutt
  • [X] Attempt to deploy Jitsi on private instance on website
  • [ ] Deploy Searx on private instance on website
  • [X] Download and install Doom Macs
  • [ ] Figure out how to create a SC-IM based script with commands to automatically format the cc and c files every week
  • [ ] Install Audacity & Reaper (one for demos, one for mastering
  • [ ] Install Devuan on the main 2 gig SSD and try out VM's with Virtualbox
  • [ ] Start "Sieges" band
  • [ ] Figure out how to get Transmission-remote working
  • [ ] Play around with Raspberry Pi to make it a downloading agent via SSH or FTP
  • [ ] Look into how to possibly obtain recipes through a terminal API
  • [ ] Learn more C
  • [X] Research bug zappers for annoying gnats
  • [ ] Look up which ports my website is using, allow those ports, and block all others.
  • [X] Look up Captain Crunch (2600) biography: hard to find, not worth buying $45 signed copy
  • [X] Activate Tracphone with new sim card
  • [ ] Figure out how to split AwesomeWM config across multiple files
  • [X] Download gotbletu's playlists of content I want to learn
  • [ ] Watch gotbletu's video on gnu stow and utilize it for dotfiles repo
  • [X] Check out Brody Robertson's Linux vids on U-Tube and possibly add him to Newsboat Urls config
  • [ ] Look into LinkedIn's Job Search API, and work on making a Bash based console app to do curl requests
  • [ ] Debate how to use RMWeb Reports API for work based app (ArmoryApp)
  • [X] Activate Tracphone with new sim card
  • [X] Re-organize Newsboat "urls" to be more accurate for YouTube section

17 June 24, 2020

I got up to Chapter 5 for that C Programming Language book today.

C is such a cool language, and the power of it can't be overstated. It is embedded in so many devices to the point where if you can program in C, you can pretty much use it to program on anything (that isn't requiring pure assembly language of course :D).

I'm debating what the best things I can do to install on the work based Devuan VM I have so far. I'd like to maybe consider using something like "exwm" which is basically Emacs as a window manager, which is such a neat concept. The idea is that everything would be Emacs based by default. This would be cool because then you can basically run Doom Emacs as well for text editing so that you can use the glorious Vim bindings, but use the pretty decent Emacs standard bindings for other things as well.

Just an fyi, Doom Emacs doesn't have any evil connotation. It's named that way because it adds 'evil' mode style bindings (hence 'vi' in 'evil') which allow you to use 'Vi' or 'Vim' style key bindings within Emacs. Personally, I think Vim's bindings are far superior than Emacs. I love being able to write this blog with Emacs alongside the 'org-twbs' export plugin with standard Emacs keybindings. However, past using Emacs keybindings in Org Mode to write documents, I think they're pretty terrible for actual coding situations. More or less, they're very very very hard to remember and way less intuitive than Vim's default bindings.

However, for those that totally complain about Emacs keybindings as being 'painful' probably don't realize that you can totally use your left thumb for the 'meta' or 'alt' key based bindings, and also use the right ring finger for the 'p' key. Too many times I see the term, "Emacs pinkie", being used, and I just have to laugh since most likely the person is attemping to use the 'p' key with their pinkie, when the right ring finger is almost near the same position anyway.

Just to set the record straight, I like Emacs bindings for Org Mode and some terminal related applications that happen to have them, but I prefer Vim bindings for any coding situations (hence Doom Macs is probably what I should be using going forward).

'exwm' can be found here:

'Doom Emacs' can be found here:

'Emacs' can be found here:

'Vim' can be found here:

I've installed DietPi on the Raspberry Pi, and just plan to use it as a downloading agent. I might get a separate external drive for it to store media so that I can use it to scrape the net for content, and then later access it afterwards purely through SFTP or ssh to retrieve the data from it. That alone is such a cool idea because if you booted your huge desktop computer just to do menial tasks such as downloading wallpapers, then its a bit of a waste of energy.

I'm thinking of the possibilities of what I could do to either deploy Jitsi or Jami as a private instance for family communication purposes. I find both pretty fascinating as they can be used on most platforms AND they are secure communication programs.

'Jitsi' can be found here:

'Jami' can be found here:

I also wonder what can be done with mesh networks such as 'gnunet'. The idea of being able to link computers and devices together without depending upon a centralized internet service company sounds amazing. This idea alone could be used for sharing files, communication, etc, even when a grid is potentially knocked down. Sounds pretty useful given the times.

'gnunet' can be found here:

I'm planning on also figuring out what to do next week since I have it off from work. Most likely, I might go ahead and start that one-man dungeon synth band, "Sieges", as I've been planning in my head forever. That band will probably include loops, drum samples, and keyboard riffs. I'd like it to be the anti-thesis of what you can typically find in this genre under Bandcamp, as I would like to prove that you can create some cool themed music in that genre without having it to be so dark or dreary. As seen by a few select bands in that genre, I think the best encompassing idea of that genre is to utilize RPG video game style music but with relaxing themes. However, I think a lot of those great ideas are kind of lost between the all too many dreary dark albums of that genre on Bandcamp, so here's to proving that positive dungeon synth music can be made.

Never stop learning, and have fun with Linux :) God Bless.

18 June 23, 2020

Thanks to my dude, Luke Smith, I was able to finally get all my Git repositories back on my site with his latest video:

If you've never used "" before, then you probably should, as it allows you to check out YouTube videos in terminal based browsers like 'w3m' easily.

If you attempt to use vanilla YouTube's site in 'w3m', Google complains about the lack of the JS scripts that are not present because 'w3m' runs purely based on HTML alone, so they can't track you nor give you targeted ads.

Here's w3m for reference, as it is an awesome browser I use every day:

With this in mind, I'll have to wait until Luke's next Git video to finish off my bare Git repos, but I'm glad to say I have killed any notion of having to depend on Microsoft for GitHub since all I ever wanted was bare Git repositories anyway for my projects.

Other than that, still learning C, and dived slightly into 'ncurses' with the one guide I got from Internet Archive.

Pretty cool stuff, and compared to the C programming book, 'ncurses' is pretty light in terms of the difficulty in figuring it out.

I plan on making a 'ncurses' program to move over my dotfiles, and will host it on my Git instance when I flesh out the beginnings of it so that anyone can pull it down.

I've been playing around with the idea of using a Linux VM purely for work, and just remoting in with a terminal based app for Slack, and just use WINE to emulate the Windows based programs I help do tech support for on a daily basis.

That thought alone is pretty based, and I'd still be playing by the rules for work as I'd be running a VM inside of Windows so that I could still get security updates to make work's IT team happy, but also keep myself motivated as my workflow would most likely increase 100% if I could just do everything with Emacs or Vim bindings :)

Also, I made further progress on creating the all-in-one ElectronJS based app for work. Though I've detested just how bloated web apps are, in this context, ElectronJS would allow me to create a GUI based app for my coworkers to make their workflow better, and their daily life doing ticket work easier. That alone is a cool motivator keeping me going these days in terms of working since the days have kind of been blending for months now.

I'm looking forward to the Florida move in a month since it'll be good to get away from a city center amidst all this crazy stuff going on.

Staying positive, and thankful that I can look forward to better things. On the flip side though, Nashville was so awesome. Its a shame, since I really saw myself trying to start a family out here before all this crazy stuff this year.

The food, people, and music were 100x better than anything I've experienced in the NY tri-state area. I'll definitely miss this place but I'm glad to have at least tried it out. However, I doubt live music will ever recover, so I guess its time to leave 'Music City' for good.

God help us all in these times, and stay safe. God Bless.

19 June 18, 2020

Learned three cool things this week regarding Linux.

First Thing:

This is Linux file permissions in a nutshell from what I learned:

  • You first have '-' which is a file, or 'd' for a directory.
  • Past that, you've got three groups: You, your group, and everyone else who can execute scripts on the machine.
  • The options include 'r' for read, 'w' for write, and 'x' for execute.
  • r: 4, w: 2, x: 1

And that's basically it.

This helps a ton when you're trying to figure out what in the heck '777' means in terms of file permissions or '755'.

You have to break down each part of the number provided.

Ex: '777' in file permissions means the following: You've got read ('r'), write ('w'), and execute ('x') access in ALL three groups. This means that YOU, YOUR GROUP, AND EVERYONE ELSE can do those three actions on the file.

This isn't the best option because you don't want someone to somehow hack into your system and just give them permission to files without even being granted access as the root user.

Second Thing:

This is how you can utilize the 'Newsboat' RSS program across several devices (aka your Android phone running Termux, your website via SSH, your Linux laptop, your Linux desktop, etc).

You can utilize Newsboat's '-e' parameter to export your current news feed into an .opml file.

You can also utilize Newsboat's 'E' parameter to export a copy of the list of articles you read.

You can then go to a totally separate machine, and utilize Newsboat's '-i' parameter to import your newsfeed.

Then you can use Newsboat's '-I' parameter to import the list of articles you already read on your previous devices.

In this kind of scenario, it's better to use your personal website as a midway station so that if you have access to the internet, then you can technically just sync all these devices by using 'wget' to pull down these two files from your 'publichtml' folder.

You can even do the same thing with a separate device off the internet with a Raspberry Pi or even an Android device with Termux that has a mobile connection or is connected to WiFi.

Here's my latest Bash alias from my .bashrc config that incorporates these ideas, which I will probably modify to run on my website instead later on but is given as a cool example to possibly copy: alias ne="newsboat && newsboat -e >> ~/transformationStation/newsboat/currentNewsboatFeed.opml && newsboat -E ~/transformationStation/newsboat/articlesRead.txt"

Third Thing:

Here's a cool Bash function I made to change your wallpaper and color scheme with 'feh' and 'pywal'.

Afterwards, it copies the same image that was used by 'pywal' into Awesome Window Manager's theme configuration directory:

ranchw() { wal -i ~/Pictures/wallpapers/ && feh –bg-fill "\((< "\){HOME}/.cache/wal/wal")" && cp $(< ~/.cache/wal/wal) ~/.config/awesome/themes/multicolor/wall.png && xrdb ~/.Xresources;

background=\((ex -sc '/\*background:/s/^\S\+\s\+//p|q!' ~/.cache/wal/colors.Xresources); foreground=\)(ex -sc '\*foreground:/s/^§\+\s\+//p|q!' ~.cache/wal/colors.Xresources);

ex -c 'theme.bgnormal/s"[^"]\+""'$background'"/|wq' ~.config/awesome/themes/multicolor/theme.lua;

ex -c 'theme.fgnormal/s"[^"]\+""'$foreground'"/|wq' ~.config/awesome/themes/multicolor/theme.lua;


20 June 16, 2020

I was able to get sound working on my Devuan desktop, but let's just say Nvidia drivers are a pain to attempt to get running if you want to limit what's installed via 'pins' in the following directory: /etc/apt/preferences.d

This is important since I'd like to update my video card drivers to use game console emulators effectively, since the performance out of the box was pretty bad, which is weird since that desktop was an older gaming rig anyway, and I'm just using it for emulation and POSSIBLY music creation.

Might create a dungeon synth band with the moniker, "Sieges", since I've been wanting to do instrumental synth music, but be the absolutle anti-thesis of what they'd expect on Bandcamp since a lot of solo acts in that genre is pretty dark, when I'd rather it be a little more light-hearted and cheerful. That fact alone is kind of weird when a lot of people making dungeon synth albums are just ripping off game music ideas in the first place, so why the negativity? Who knows.

I've been learning C, and got to the third chapter of the "The C Programming Language (Second Edition)" book from the 80's. Neat stuff, though thank God I have the answers for the exercises as I am treating it more as a code along to learn enough C to pickup 'ncurses' based programs.

I might dive into trying to figure out Mutt with the manual this week.

I might also simultaneously go through the one 'ncurses' guide on how to make 'ncurses' based programs in C as well.

I would also like to figure out how to make a few hooks with 'Dired' mode in Emacs for my Org Mode TODO list for work. Moreso, I should just archive them into a giant directory and use the archive feature, or at least create a hook that would do the following items for me:

  1. Create tomorrow's directory in the directory above
  2. Copy over the contents of the current Todo List into tomorrow's

Todo List.

  1. Change the date at the top of the Todo List accordingly.

Also, I'd like to possibly change over the theme styling of this page using the "org-twbs-head" function:

Have fun for the rest of the week, stay safe :).

21 June 11, 2020

Minor point I learned the other night is to be able to pipe the 'pwd' command into the 'xsel' command.

This allows you to pipe the 'working directory' that you obtain with 'pwd' command into 'xsel' which copies your working directory onto your clipboard.

This allows you to be able to paste your working directory into another terminal pane in a multiplexer like tmux so that you can work on a similar task in the same directory.

Give this a try in a Linux terminal: pwd | xsel

You can also convert this to an 'alias' in your Bash terminal by using the following in your .bashrc config file ('pwc' in this context stands for 'print working copy'): alias pwc="pwd | xsel"

Oh, and I figured out how to finally do transparency in the terminal with urxvt terminal.

It turns out, you have to modify your .Xresources file to include the following:

! Transparency for urxvt: URxvt.depth: 32 URxvt.transparent: true URxvt.tintColor: white ! Set .shading to: 20 for slight transparency ! Set .shading to: 40 for fuller transparency URxvt.shading: 30

Here's what a glorious transparent terminal looks like (screenshots): Transparent Weechat Screenshot Transparent Newsboat Screenshot Transparent W3M Screenshot

I took the advice on how to adjust my .Xresources file accordingly from this link, so all creds to the answer to the OP on this Arch Linux forum post:

22 June 10, 2020

I installed Devuan on my Desktop computer yesterday with Openbox, and I must say, its a pretty comfy experience.

I was trying to get some game emulators working, but sound isn't working on the Scarlett Solo audio interface I have.

I got sound to work in the past, but maybe its an issue with alsa. I'm also thinking that I probably might have given up and installed Pulseaudio as a result.

Will keep researching that another time but I'm making it a mission to not give up and install Pulseaudio since I'd prefer just straight Alsa audio instead.

Openbox on the same note is a really cool and great lightweight window manager:

The idea is that if you like Windoze, just use Openbox on a Linux distribution, and kiss Microsoft goodbye. Openbox offers the same type of window experience in terms of dragging windows around manually.

Plus you can customize the window themes, and config files easily as well, so there's really no reason to keep Windoze, other than maybe for "muh games". Even that reason is dumb given that Steam Proton is getting pretty good for keeping up with Steam games.

More and more, if I wanted to play games, I'd prefer just emulating things, and would rather even get PC centered ports on Switch if I really wanted to play any new gen games.

Games in general are fun from time to time, but PC gaming as an industry and as a hardware market have really gone downhill in my opinion on a lot of factors.

Why keep up with hardware cost constraints when you've got cryptocurrency miners just completely ruining the hardware market in terms of video card costs. If you've ever shopped for a somewhat OK video card, you'll see how ridiculous its become. Now its to the point where you should just build an OK desktop, run Linux on it, or even just get an old Thinkpad to run some minimial Linux distro on it. Better yet, even take an old computer, run some stable Debian based minimal distribution (without Systemd :)) and you're golden.

Either way, pretty happy at the moment as I've conquered a few tasks this year so far that were really bothering me which included getting rid of my GitHub, and getting a FastMail email account to move away from evil proprietary Microsoft Outlook.

Richard Stallman was right in that if the product is free (MS Outlook), YOU are the product. So, why give Microsoft free money from the obvious telemetry that they're doing on my account when I could just be on a more secure and freer platform. I'll try out FastMail for a year, and if it sucks, I'll find a different solution (or maybe host my own on a VPS instead).

Looking forward to possibly improving the design of this site's images section, maybe the styling on this Blog portion of the site with a sample Bootstrap theme by modifying the "org-twbs-export-to-html" function's "org-twbs-head" function:

On another note, for better work productivity, I figured out how to rip a current ZenDesk ticket tab's information so that I can copy the entire ticket information into a ZenDesk TODO list item onto my clipboard.

I'm trying to figure out how to use the "GreaseMonkey" extension so that I can just run this on the fly as well, so that's been a new good challenge for work.

Other than that, I've been learning more C from the related second edition of the book, "The C Programming Language". C is definitely interesting, and I can see portions of it were used for Python as some of the syntax carries over.

I'll be interested in what projects I can create with C later on, but I'm positive that the possibilities are really endless as C is basically on most platforms anyway. Combined with the 'ncurses' interface library, I'll be making terminal apps in no time, so I'm curious on how far I'll be able to create some pet project C based apps this year.

I'm debating using either Neomutt in tmux for terminal based e-mail or give into using Emacs based email with 'mu4e'. Both options are cool but have their advantages and disadvantages. Mostly, both routes are pretty hard, but I'm leaning towards Neomutt, as I've liked using it before using Luke Smith's "Mutt Wizard" scripts. However, the last time I used his installation scripts, the GPG keys weren't working correctly.

Basically, terminal based email involves the following items as far as what I've researched:

  • Sync based utility to sync mail with IMAP
  • Utility to send mail via SMTP protocol
  • Utility to encrypt emails with GPG keys

I'm definitely curious on how to do this process myself, but know that it will probably take a good majority of a weekend day to figure it out to get it up and running based on the Neomutt manual alone or something.

We'll see what I pick soon I guess :)

Stay safe, God Bless.

23 June 8, 2020

I completely removed my GitHub account as I want nothing to do with Microsoft going forward.

I think GitHub isn't that great of a service and feel that I do better off with hosting my own projects as just .git directories on my own web page.

If anyone is really that interested in obtaining a repo for their own use, then they could just 'wget' the contents of the page and be done with it.

Pretty happy about this move though.

Now I just have to move all of my personal project repos to their own git instances on the public facing portion of my website, and we'll be good.

One step closer without any dependence upon Microsoft. Today is a good day.

Now to think about how to do this on the work computer to run Linux instead ;) and maybe even LegacyOS to match, ha! That'll be the day.

A day… coming soon :)

24 June 7, 2020

I re-did my Linux laptop with Devuan instead of Debian min installer.

It went well except I had to follow this post to fix the sound issue present with alsamixer:

Basically, I just had to add a "default.conf" file in the etc/modprobe.d directory.

Devuan is basically Debian without 'systemd'. 'systemd' is pretty controversial as it is an init system that could be potentially used as a backdoor.

I'd say as long as I have the freedom to install whatever I want on my computer, I'd rather opt out of systemd completely, so I did.

Devuan can be found here:

It was just as easy to install as Debian minimal stable net installer, so I highly recommend it the sound issue was the only issue I've had so far, but easily fixed it with the forum post link above.

The only other major issue was the pain of having to create a new SSH key by hand since DigitalOcean's dumb website didn't work nicely with Qutebrowser (most likely because they have a ton of ad-trackers that were blocked by default with Qutebrowser). Might pick a different VPS with an easier website later on as a result if I can find one. Let's just say I don't want to have to literally type in an SSH key by hand ever again any time soon to just re-gain SSH access to my site.

Next, I'd like to then look into buying a used Thinkpad X60 or X200 laptop to do a software based libreboot so I don't have to solder a Raspberry Pi onto the laptop itself to remove the proprietary BIOS from it.

However, it looks like people on eBay know what they're selling so I'll have to keep my eye out for a good deal. Might even have to get one without a hard drive, but this is fine since I'm ok with even HDD's as I think SSD's are kind of just ok to be honest.

In terms of learning Linux based utilities, I want to definitely take a look a learning the "coreutils" found here:

Along with core utils, learning C has been cool, and Bash looks like its gonna be fun to learn. Definitely want to check out the 'ncurses' library as well for good ideas of terminal apps to make.

I'm not sure what I'm going to do with my desktop machine.

I'm debating to just nuke the Arch installation since that ALSO has 'systemd'. If anything, Steam probably has a ton of telemetry anyway, and those games aren't really that essential anyway.

It would better to just run emulators if I want to run games anyway, however I might change my mind to just keep a games based drive anyway. Might just do Manjaro without 'systemd' for the games based based SSD drive instead.

Here's a list of things I'd like to get done sometime in the next few weeks:

Task Description
1. Move over all of my GitHub repos to a public facing one on the page Could just do this with a public .git instance
2. Figure out Neomutt with isync and msmtp for my new Fastmail email account Might give up and just use Luke Smith's mutt wizard but we'll see
3. Fix the images page on my website Doesn't even work for the art I made
4. Install Manjaro or another Arch derivative on the games based SSD drive Would be good to replace my Arch install since I have no desire to use Arch now

On another note, I've been going through 2 Samuel in terms of bible reading, and have learned a lot. Let's just say people in biblical times have had more difficult decisions to make, so it puts any of the dumb stresses of modern life into perspective and makes them kind of laughably meaningless in a good way.

Keeping positive despite the times, and am still having a blast learning Linux based stuff along the way.

Hoping for a good house setup later with a homestead to match, but one day at a time.

God Bless.

25 June 2, 2020

Tomorrow was so good that it came a day earlier.

In all seriousness, I wanted to make this post ahead of time as I plan on making progress on my own ventures in terms of self-learning fulfillment.

I realized after even downloading a single video from that Udemy course that Web Development is kind of a waste of time. Web apps suck, and are bloated. What's funny is that you can deploy an entire site using markup language with templates, and never have to even have to really try to make it all come together because it just does with the right deployment tools.

Yeah sure, I can list on my resume that I know so many backend technologies. However, at the end of the day, anyone with enough drive and motivation can read through documentation with a few examples or public repo examples with YouTube videos to figure out how to use a well known programming library.

For example: "Django"? Yeah, I've seen it in action. Useful? Not really. Just another complicated way to deploy a web app which could be much simpler than it pretends to be. "Gunicorn" is a bit simpler, and looks like a better alternative anyway.

"Pandas"? Great if you like data. Kind of useless if you don't want to depend on Python either.

"NodeJS" or insert-any-other-hyped-up-JS-library? Yeah, that's cool, but unless you really really really want to build bloated websites, what's the point?

On that topic, though Python and JS have its place and use, I think there are just better ways that have been tried and done in the past that are superior in many ways.

The world needs more optimization, and more people that care for older hardware to give older computers more love and a second chance to do great and awesome things.

That's why I rather would focus on learning C, as well as more Bash shell scripting to make more ncurses interfaces based programs, as terminal apps are always better.

Sure, C is hard to learn, but man, you can use C on so many devices without too much of a problem.

Also, there are still so many Linux based terminal programs that I just want to get better at using, and even distros I'd rather be trying than to waste more time doing more web dev work.

I'll see what else I can absorb from the one JS related book for work. However, that is the exception, as I want to devote more of my time after work to just keep thriving in learning cooler Linux and terminal app related topics.

Also, I learned that I could boot from a flash drive on my work computer, so I might give dual booting a shot, and even virtualization of Windows a shot as well since I'm kind of sick of using Windows on a daily basis, even for work.

Anyway, I'll be working on one of these topics tomorrow anyway:

TODO List Item Reason
1. Make the images part of this site actually useable Because it could look better
2. Migrate all my repos off GitHub and onto public ones on this site, and be done with Microsoft once and for all Because life could be even that much better
3. Install Devuan in a virtual machine on my laptop, take notes, and replace all Debian drives with Devuan Because 'systemd' is evil
4. Debate a few Thinkpads to libreboot (Thinkpad X400s, Thinkpad X200, Thinkpad X220) Because Richard Stallman was right
5. Keep researching best ways to make a small homestead Because God will provide for my family when its needed
6. Learn some cool Linux based apps to use in both 'x' and in TTY Linux terminals Because minimalism always is good
7. Keep learning C, while looking ahead in the book chapters itself / look into ncurses documentation Because C is an awesome programming language / Rust sucks
8. Keep figuring out ways to make my worklife more manageable with Emacs Org Mode Because its been a huge help in productivity
9. Keep reading the good word with 'KJV' Because God's Will is the best plan

God Bless.

26 June 1, 2020

After much deliberation, I was finally able to get "youtube-dl" to work with Udemy.

Udemy is basically a site where you can take online video courses.

The course I'm trying to just blaze through so far just so I can say I completed it, though I'm more and more realizing web development kind of sucks in that its poorly optimized and should be focused on helping people with lower spec machines.

I do however wanted to see if there were any decent small scale web apps I could deploy with that course.

The "Full Stack Web Development" course I've been doing has been pretty good in that the instructor is pretty good at teaching, though has pretty terrible cringey Reddit-style humor at times.

I combined a few ideas but here's what you have to do to download Udemy videos using 'cookie extractor' and 'youtube-dl':

  1. You have to first provide a web browser cookie that contains your previous login information.

This means that you'll have to literally use a web browser of your choice, login to the Udemy website, and close out of the browser.

  1. You'll then need to use a cookie extractor to finish the job.

I used this one to manually do the job:

There are web extensions for other browsers like Google Chrome or Mozilla Firefox as well if needed that do the same thing.

  1. Once 'cookie extractor' is installed successfully, you then have to point cookie extractor to the correct location.

I've been using 'qutebrowser' as my web browser, so my cookies are located in my home directory: ~/.local/share/qutebrowser/webengine/Cookies

This is the command I ran to export the 'cookies.txt' file successfully, and save it to the ~/Downloads directory: cookieextractor ~/.local/share/qutebrowser/webengine/Cookies > ~/Downloads/cookies.txt

  1. Then, read this 'youtube-dl' GitHub issue for more information as there's a pretty good guide in the 'Valid Cookie File':

  1. Here's an example command you need to provide to youtube-dl that

I personally used to obtain the .mp4 video of the lecture I was on, which discussed 'Heroku' which is basically a way to host your own apps in a cloud environment:

youtube-dl –cookies ~/Downloads/cookies.txt –playlist-items "184" -o '%(playlist)s/%(chapternumber)s. %(chapter)s/%(playlistindex)s. %(title)s.%(ext)s'

And there you have it.

I can finally watch course videos on my own time without the need of dumb streaming video players for online Udemy courses I already paid for.

Why waste the bandwidth, when you can just download it once, and never deal with buffering videos again?

'youtube-dl' rules, and this proves it.

Will keep learning 'mpv' and other related tools to make some cool scripts to share. Stay tuned.

God Bless.

27 May 31, 2020

I finally got AwesomeWM to display terminal windows with gaps, with the help of this example AwesomeWM config I found:

This is mentioned in the Arch Wiki, however, its not too clear where exactly the "Theme" section begins:

Here's a screenshot to show the "beautiful.uselessgap = 5" setting (which I was able to do via Emacs with C-u C-c C-l):


This is good since I was pretty dang close to just finding a new window manager if I couldn't figure out gaps easily.

However, the more I learned about 'systemd', the more I realized I need to get all Linux computers switched to distros without it for optimization reasons.

With this in mind, I'm debating Gentoo:

vs Slackware:

vs Devuan:

I'm also debating getting a backup laptop, specifically one that can be "librebooted".

The 'Devuan' operating system listed above flat out is totally against 'systemd' which is awesome, and their reasoning can be found here:

The reason is that if you libreboot a Linux computer, you're able to bypass the default Intel based BIOS that could be spying on you.

Though, normal users like myself don't have anything to hide, that thought alone is kind of dumb to not at least put the power back into your own hands. Its just better for peace of mind to just use free and open software overall.

Best quote on this topic is from Richard Stallman himself: "To be able to choose between proprietary software packages is to be able to choose your master. Freedom means not having a master."

Richard Stallman's computer habits on his Thinkpad T400s can be found here:

Of course, though Internet Service Providers are likely to do the same dang thing anyway, I would still like the ability to run FOSS (free as in freedom) software in whatever manner I'd like to, and not on the terms of a Linux distribution like Debian that forces 'systemd' on its users.

Makes me want to get a Thinkpad T400s off eBay to libreboot.

A great resource for this topic for anyone considering to throw their Windows infested computers into the trash, and librebooting it with GNU/Linux is this site I found:

I do however like Debian a lot for its stability so 'Deuvan' seems like the best choice as its basically a fork of Debian without 'systemd'.

In terms of the last week off due to vacation, I'm glad to have been able to complete a lot of things last week in terms of minor things for my Linux laptop.

It really made me realize a lot of things, especially with how I spend my time and efforts for all of these computer related tasks. Though I aim to finish up that web development course for my own fulfillment, I realized that the web is too bloated, and web apps suck. Why waste time making a bloated Electron JS based "web page in an app" when the same task could have been done much more efficiently.

Its better to just create cool useful Bash shell scripts, and learn C to later make some cool ncurses interface based programs for people like myself who prefer to not work in GUI based programs anyway.

With that in mind, I plan on just skimming the rest of that course, and finish up the one JS based book to kind of finish my learning stuff for work.

After that, I plan on somehow optimizing my actual job's workflow for Emacs in Windows (or figure out how to dual boot the work computer with Linux and run Windoze as a Virtual Machine :D).

This debate of deciding what is the best OS to pick has kept my mind off the crazier and crazier world we are now living in.

But most of all, I trust in God's Will, since I would like to also get into homesteading one day as well, and need favor on the next couple of decisions for my life.

Looking forward to another month to kick butt at work, and yet another week off at the end of it :).

Stay safe, and God Bless.

28 May 27, 2020

I was able to install 'pywal' with pip3, which basically allows you to change terminal color schemes on the fly.

Here is the link to 'pywal' on GitHub:

However, it wasn't necessarily changing my wallpaper as well, so I created a function within my .bashrc config file to change both the color scheme via the 'wal' command AND the wallpaper via 'nitrogen' command:

This can be found in the "# 'pywal' based adjustment" section of my .bashrc:

The result is a bit of a workaround. However, it was pretty neat since it taught me how to obtain the default user input with the "$1" argument.

I'm thinking of ways to maybe incorporate this same idea to possibly give me a color scheme for my "AwesomeWM" (Awesome Window Manager) as well.

Also, I want to learn how to use AwesomeWM with gaps as well.

If I can't get that to work, I might even jump ship and try a completely different window manager.

On another note, the dang Arch drive is having issues powering off again since it just shows a blinking "_" cursor upon logging off from AwesomeWM on the desktop machine.

This most likely is an issue with the video card driver, or the lack of updates.

If I can't really fix it… well, I might just give up and try Slackware instead on the remaining partition, and just re-do the Arch install with Gentoo later on since its been just a dumb uphill battle to get Arch to boot. Using Arch so far on that machine has been a battle of "Will this system actually boot without errors today?".

Maybe I should just use something Debian based but with access to Arch repositories. Who knows.

I'm still glad to have figured out 'pywal' though, cause its so neat.

29 May 26, 2020

I made improvements to the "Outlook Terminal Client" so that it now has further enhancements to force the user to select correct prompts for the month, day, and year entries.

I also prevented future date entries as well.

I added screenshots and improvements to the as well, which can be found here:

30 May 25, 2020

I was able to refine the "Outlook Terminal Client" project further, and am pretty much almost done with it.

The only tasks left to work on for this project include:

  • Allow user to re-select the already chosen date if they

would like to

  • Allow user to select a date before 2020. For whatever reason, it

doesn't allow the user to do this, so this might be an limitation / issue with function with the 'SINCE' option.

  • Allow user to search for email in mailboxes OTHER than their

'INBOX' folder. Users like myself have heavily filtered folders for their Outlook email, so it would make sense to allow them to select from an integer picklist to do so.

Latest project progress can be found here:

I learned a few things in C which was cool.

Also, had some great food today for Memorial Day and got QTox working.

QTox is a super cool video calling program that runs on most platforms (Windows, Linux, Mac).

I would recommend QTox for anyone interested in Zoom alternatives:

Jitsi Meet was pretty promising for any smartphone users:

Hope everyone has a great week :) God Bless

31 May 24, 2020

I'm in the process of relaxing for a bit as I have the week off due to the buildup of one comp day, and I'm piggybacking off Memorial Day weekend.

As such, I have had a bit of time to really adjust my aliases for my .bashrc to allow to for quick two letter commands to open up programs easily in two seconds in Bash terminal, which is pretty cool.

Latest changes to my .bashrc file can be found here:

I also am in the process of swapping out internet browsers to check out IceCat, and then maybe just settle for Qutebrowser instead as well.

As such, I created a parser Python 3 based script that basically takes the "bookmarks.html" file that you can export from Mozilla Firefox and just rips out the "href" attribute into a resulting "links.txt" file so that you can import it into other browsers like "Qutebrowser" or utilities such as "DMenu".

This project can be found here on my GitHub page:

On the topic of GitHub, I've realized that I can simply host a public facing .git instance, so I might actually just move all my projects to this website's publichtml folder, and just nuke my entire GitHub profile as well since I'm more of a hobbyist anyway and could care less for proprietary Git vendors like Microsoft.

GitLab is tempting, but it looks like you'd still have to pay to have a free public hosting repository, so I'd rather just host it on my own site anyway.

On the topic of trying out new Linux OS's, I've also thought more and more about it, and I think I'll settle for trying out Slackware on the spare partition I have on my Desktop machine instead of Gentoo.

I'm going to save Gentoo as more of a challenge later on if I get more comfortable using Arch on my Desktop machine.

Currently, my Arch install is broken even though I literally only played a few Steam games on it. Not sure what the deal is with that. However, it is a cool thrill to really have a successful installation of Arch so that's fun in itself and a challenge completed for me.

I really really really like everything Gentoo stands for, but it looks like you have to compile most things to keep the system up to date, which sounds cool at first, but if its basic system level updates, that sounds like a pain to be completely honest, so I think I might save it for a rainy day to try installing it in a VM.

In terms of Bible reading, I've gotten to 1 Samuel - 26:1 so far. I've learned a lot, especially from someone as brave as David to have been chased by his own king (Saul) to his death, and has strengthened by faith a bit more. It really goes to show you that people in older times had it a lot harder, and we should be thankful we don't have to necessarily deal with war on a daily basis. I for one am still thankful for my fiannce, my family, the fact that I have food and shelter, and still have a job in these dark times.

I have a few goals for this week, and they include the following (which utilizes a cool few tricks I learned via Emacs's Org-Mode's Checklist option):

Goals for Memorial Day Vacation Week [10%] [2/19]:

  • [X] Create Bash aliases for moving dotfiles for w3m, newsboat, bash, etc to dotfiles and doing the commit commands
  • [ ] Learn and apply Dired Mode Shortcuts to quickly get to ~/programming directory, etc
  • [ ] Chill Out
  • [ ] Play retro games on emulator (random SNES, Genesis games, possibly Shining Force CD)
  • [ ] Play some DOSBox games
  • [ ] Play some ZX Spectrum Games
  • [ ] Keep learning C to one day be able to create ncurses interface based programs
  • [ ] Learn Wallpaper shortcuts with Pywal to make new color schemes
  • [X] Backup bookmarks from Firefox, and install Ice Cat on Debian to try it out. Worst case scenario, use Qutebrowser instead.
  • [ ] Configure Pywal to do a few trigger actions to .Xresources and AwesomeWM:
  • [ ] Backup the current .Xresources file
  • [ ] Trigger changes to .Xresources
  • [ ] Commit changes to .Xresources in ~/programming/dotfiles/Xresources
  • [ ] Backup the current AwesomeWM config theme
  • [ ] Change AwesomeWM color scheme to reflect changes from Pywal as well
  • [ ] Commit changes to Awesome color scheme in ~/programming/dotfiles/awesome
  • [ ] Learn more about Calcurse to make it more useful OR learn Emacs Calendar mode with agendas
  • [ ] Create a reverse Pywal program that searches for wallpapers based on a given color scheme.
  • [ ] Learn how to use AwesomeWM with gaps

Have a fun, and safe Memorial Day weekend everyone!

32 May 20, 2020

I learned a lot with w3m in the past few days but more so today, since I've been able to utilize a few macros from the YouTuber, gotbletu's videos on the topic.

Here's gotbletu's related video on the topic of advanced macros in w3m browser:

Here are some example commands that I added to my 'keymap' file in my ~/.w3m/ directory so that I can easily do some w3m commands with ease, the last of which I came up on my own to toggle the 'color' command in w3m to allow for color to be displayed on a page:

keymap \\\t COMMAND "SETOPTION displayborders=toggle ; RESHAPE" keymap \\\i COMMAND "SETOPTION displayimage=toggle ; RELOAD" keymap \\\e COMMAND "SETOPTION useragent='' ; RELOAD" keymap \\\a COMMAND "SETOPTION useragent='Opera/9.80 (S60; SymbOS; Opera Mobi/SYB-1107071606; U; en) Presto/2.8.149 Version/11.10' ; RELOAD" keymap \\\c COMMAND "SETOPTION color=toggle ; RELOAD"

33 May 19, 2020

Over the past few days, I figured out how to use YouTube without using YouTube, which has been the coolest and best breakthrough ever.

Enter ""

It's basically a website which you can run with a JavaScript-less browser like w3m which allows you to search YouTube without ever be thrown a targeted ad, nor be given any mention of any forced suggested videos.

What you can do is to literally pipe the link you're currently on, and then output it to mpv on a separate shell window.

This basically allows you to stream any YouTube video you want with mpv, again WITHOUT USING YOUTUBE.

This is totally awesome, and just helps overall as YouTube has been crazy with too much targeted content lately.

I'm just the kind of person who wants to be on their site for Linux info, music, and that's about it. Other than that, could care less about any other content period.

That being said, give it a shot. There's a really good video by the YouTube user, 'gotbletu', that goes over how to add links to Linux clipboard in 'w3m' which I highly recommend.

Here's the video from 'gotbletu' on w3m external commands:

I now have remapped the "EXTERN" function in w3m to be the 'e' key, and also remapped the "EXTERNLINK" function in w3m to be the 'f' key.

Combined with the two separate macros from the video from 'gotbletu', I can easily copy the current URL link (EXTERN) to the clipboard OR the one I'm hovering over (EXTERNLINK), so that I can pipe it into mpv to stream YouTube videos without ever involving YouTube.

Here are my current modifications to the 'keymap' file in ~/.w3m: code ######################## ## CUSTOM KEYBINDINGS ## ########################

keymap e EXTERN

keymap f EXTERNLINK code

Also, you can still output your YouTube Subscriptions into an OPML XML file to be imported by an RSS feed reader like Newsboat here:

It took a while as it seems YouTube hid this feature, but alas I found it, and was super happy I did.

You can basically download this file, and 'cd' to your Downloads directory, and run the following command to import it into Newsboat: newsboat -i (name of file)

Also, here is the more example of a YouTube based OPML XML link as well for a given YouTube channel which exposes some possibilities for cool scripting possibilities as you can add any of the XML tags as '&' parameters for the URL itself:

Example: From that example above, you can see the "<yt:channelId>" tag present.

This means that you can add the 'channelid' as a parameter to the base URL pattern:


This allows you to specifically look throughout a YouTube user's videos, and would allow you to create a OPML file yourself for YouTube if you needed to.

The More You Know :)

Also, I totally want to learn 'pywal' which allows you to change your terminal's color scheme based on your current wallpaper background:

Plus, I installed 'qtox' so that I can get into video chats as well, so I'm pretty stoked about that as well.

More stuff to learn this week ^_^

34 May 18, 2020

I was able to modify my Newsboat configuration so that I could use a macro to open up YouTube videos with "',' (Comma) + m" which opens up the video in MPV.

I also made a revision to do the same action but instead be able to open up the same article in Firefox with "',' (Comma) + f" as well.

How this macro basically works:

  1. It utilizes the "macro" key to set a macro in w3m.
  2. It then uses 'set browser' to change the browser to the

desired program, which in this case is 'mpv' or 'firefox' respectively.

  1. It then calls the 'open-in-browser' command to open up the article

(or YouTube video link in this case) in the desired program.

  1. It then sets my default 'browser' environment variable in Newsboat

back to w3m, as this is my desired default browser.

This means you can literally look at YouTube videos from the accounts you're subscribed to via RSS, and not even be on YouTube to view a single video.

This means you can access YouTube content without ads or any other unrelated content, which is super awesome.

Here's where you can find my current Newsboat config:

Here are the modifications I made to my "config" file in my ~/.newsboat directory:

macro m set browser "/usr/bin/mpv %u"; open-in-browser ; set browser "/usr/bin/w3m %u"

macro f set browser "/usr/bin/firefox %u"; open-in-browser ; set browser "/usr/bin/w3m %u"

35 May 16, 2020

I started work on a new Selenium based Python script project as I find it pretty frustrating how YouTube has elminated the ability to export your Subscriptions as an OPML file anymore.

I believe they are doing this purely for the fact that there's YouTube Premium now, and they want to squeeze as much ad revenue as possible by forcing people onto their site to view content.

However, the lack of being able to export your Subscription feed into an OPML XML file doesn't help anyone at all who accesses their site via Screen Readers who happen to use (ex: blind people who can't see video content but want to keep up with the audio versions of their Subscription content on YouTube purely on text based titles for videos).

This project aims to solve this issue by logging into a user's YouTube account via Selenium with Python bindings + the Firefox web driver so that the user can rip the list of the YouTube channels into a list to then later provide to a RSS reader (ex: Newsboat, etc):

I'm not finished with it by any means yet, but am getting close but I'm running into a few issues with the Selenium driver itself as I had to obtain the latest Gecko driver here, and had to un-tar it to a specific location on my harddrive:

I also learned how to use w3m more efficiently, especially with a lot of the options enabled within the 'o' menu to quickly refer to each line with 'g' + line number.

I also learned how to use w3mman which is a way to put a man page within w3m which is useful since most man pages have external links at the bottom for documentation references.

Using w3m alone is pretty sweet.

However, I would love to have my entire Tmux session to be based from Newsboat with w3m and other CLI utilities, so its been fun incorporating these tools into a terminal only workflow.

36 May 14, 2020

I've had a pretty easy going week at work this week, which led me to finish a lot of work projects in the next few weeks ahead of time in terms of a week off of vacation.

That being noted, I've also made strides to really see if I can attempt to tap into ZenDesk. I've come across a few barriers including the fact that I don't have access to the ZenDesk API for work. However, I'm working around this by utilizing Selenium with Python 3 in an effort to convert a list of tickets and import them into an Org mode document so that I would automatically have a todo list of recently updated tickets.

This would help my workflow, and might help others in my situation in which the API access is limited to someone's ZenDesk account. Also, I use Org-Mode quite a lot with TODO lists at work, so incorporating the current status of tickets into my workflow would be awesome. Even possibly having the ability to respond to tickets without even having to log into ZenDesk sounds awesome. I can probably achieve this with Selenium through either ZenDesk or my work email, so either of these two solutions will help me achieve my goal in that regards.

I have been learning more about the w3m browser, which is a super cool terminal based web browser. Using it with the w3m-img add-on is a must though as this allows you to display images while surfing the web in your terminal.

I also recommend using a terminal like urxvt or x-term which supports w3m-img.

More info. on w3m can be found here:

I've been playing quite a few ZX Spectrum games, and got X128, a DOS based pemulator for the ZX Spectrum to work just fine. However, I can't seem to figure out why mapping keys is so hard for that emulator. I also installed the FUSE emulator through apt so we'll see if that's better in the long run.

Games I'm Debating To Play This Weekend:

Game Reason
Dragon Warrior 3 (Gameboy Color) Awesome music, great art style, great gameplay.
Zelda II Always wanted to play this game as its really unique.
Mount & Blade: Warband Seems like a cool game to play
The Elder Scrolls IV: Oblivion Wanted to start a new character and just do whatever I want in this game. Fun game for sure.

Things I'm Debating Doing This Weekend:

Thing To Do Reason
Decide if I should install Tox, Jitsi, or Jami for video calls Pretty awesome FOSS apps to use to call family. Beats spyware infested Skype or Zoom
Do some ink drawings with scans into my computer Would like to get more into doing more litho style art
Learn more C I find learning C to be fun, and the opportunities to modify Linux utilities are endless
Possibly working on a Dungeon Synth album A lot of the songs I've been making have been themes, this genre seems to fit pretty well
Look into a decent image gallery for my art pics using a Bootstrap template I'll take a look around to see if there's a better way to display my images
Possibly learn Aria2 for downloading files Seems like a cool CLI utility
Possibly learn how to use Alpine Email client Seems pretty straight forward for my purposes, looks easier than "mu" / "mu4e"
Possibly modify my AwesomeWM config Wanted to explore other functions to tap into
Possibly modify my Tmux config Wanted to see what else I haven't tapped into yet since I want to use CLI only Gentoo
Possibly porting some projects from the Web Dev course Wanted to see if I could run self-contained web apps on my site
Figure out how to utilize Youtube-dl to access YT without being on the site Would rather just stream the content I want to watch than deal with ads

37 May 10, 2020

I worked on using the "SC-IM" program to manage my yearly finances and expenses.

"sc-im" which stands for "sc-improved" which is basically a spreadsheet program that utilizes Vim bindings:

Two really good videos on how to use "sc-im" which I have found to be super useful include:

Luke Smith's video on SC-IM:

gotbletu's video on "sc", which is the predecessor to "SC-IM" which covers some of the formula usage in "sc" which is pretty neat and not necessarily too intuitive in the man page for "sc-im":

With this knowledge, I've been able to make a master spreadsheet containing my finances for the year.

It took A LOT of manipulation from both the credit card and checking account based .csv's, but hey, it can be done.

It's pretty neat because by doing this, you can take charge of your finances and determine how much you're spending month to month.

Some Useful Keybindings For "sc-im" That You Might Find Useful:

Command Command Desc. Example Example Desc.
g(cell number) Go to cell number ga0 Go to cell, a0
dc Delete column dc Delete the current column
dr Delete row dr Delete the current row
// (This is an alias for :int goto Search for a particular item :int goto "ONLINE" Search for the "ONLINE" string
n Search for the next search instance n Search for the next instance of the "ONLINE" string
:format "(desired format)" Allows you to format a cell range :format "-#.00" Format the current cell to a negative number with two decimals
yc Yank the current column yc Yank the current column
p Paste the previously yanked item p Paste the previously yanked item
:e! csv Export the current spreadsheet into a csv of the same name :e! csv Export the current spreadsheet into a csv of the same name
:sort (range) "(+ or -)(# or $)(Col Letter) Allows you to sort a range of cells in asc(+) or desc(-) order based on a num (#) or str($) value) for a column :sort A1:C48 "+$A" Sort the range, A1:C48 in ascending order based on a string value
G Go to the last cell in the lower right corner G Go to the last cell in the lower right corner

Once you have formatted both the credit card and checking account .csvs to the desired column formats, you can utilize the 'cat' Linux command to combine them and re-direct them to a single file.

For example, this command would take the credit card .csv and checking account .csv files and combine them into one master .csv file:

cat creditCard.csv checkingAccount.csv >> masterFile.csv

I keep it simple however, so its not as granular as something like a Credit Card statement that breaks down "food" vs "expenses", etc.

However, I have the description fields intact within its own designated column, so I can check out line items if I want to for specific expenses.

To help anyone else who might be utilizing a Wells Fargo bank account, I created a webscraper with the Firefox Selenium webdriver.

You will need to have "pip3" installed Selenium, as well as "getpass" Python 3 libraries to utilize this Python 3 based webscraper script.

It aims to obtain the user's latest balance to copy it into a file of the user's choosing, or onto the clipboard (still deciding what would be the best for my particular workflow since I currently just need it to insert into a related .csv file, but most Linux users would probably want to just add it to their clipboard using x-clip).

My current "Wells Fargo Balance Webscraper" project can be found here:

I also played a bunch of games from the "bsdgames" repo from Debian's repository:

Also, I checked out a few things from this cool older terminal program based blog:

I highly recommend this blog if you're getting into minimalistic terminal program software since a few things stand out as cool ideas to add to a computer workflow for the newer or medium level Linux user.

Debating what DOS games to play this weekend, and also I would like to un-break my Arch install on the desktop computer that I have Steam on since I'd like to keep messing around with it to see what games Linux can run with purely Steam, and also might try to load a few emulators on that same OS as well.

Also debating whether or not to put Gentoo on the other half of the same drive, since I really really really like their philosophy and take on free software (free as in "freedom").

My Goals For The Upcoming Weeks Include:

Goal Description
Contribute to Christian based FOSS software Attempting to do so with Xiphos, but might find a different project
Create theme based music using MuseScore Self explanatory
Learn gardening techniques Would want to become more self-sufficient
Learn soldering techniques Will need soldering equipment but wanted to learn basic electronics
Learn Alpine Email Client OR mu4e for Emacs Would like to give this a shot as I'm sick of using Outlook in browser
Host my own email address either through VM or pay-for-service Sick of MS Outlook email, and want to change to a new email address
Figure out how to use cURL for ZenDesk for work Would rather do all my work in Emacs, but without the API, this might be the only way
Learn Org-Mode basics for calendaring and agenda Would want to explore these options for personal use
Learn Org-Capture Mode Need to develop better templates for work
Create a macro to copy today's TODO list to tomorrow's directory for work It's too manual at this point, and should be automated.
Learn more w3m browser Would want to become less dependent on GUI based browsers
Learn ImageMagick Reason being is that there are really cool ways to manipulate images via terminal
Install Gentoo I would like to attempt to purely use terminal apps using this distro
Possibly play Dwarf Fortress or Mount & Blade: Warband Always wanted to play these games
Develop useful web apps that blend Python3 and NodeJS Would like to make useful standalone web apps on my site beneficial for normal people's use

My best advice for these days is to pretty much keep the motto, "God's will".

That's been helping me a lot mentally in these times.

Living for today, and enjoy the blessings that you have each day.

Hope everyone is doing well, God Bless.

38 May 5, 2020

I am happy to note that I have successfully created the Scripture Of The Day project.

My resulting output webpage from this project can be found here:

Basically, this takes a random verse from the King James Version of the Bible using the 'kjv' terminal program, which can be found here and built from source:

It is updated daily via a cronjob.

Very happy to have been able to complete this successfully.

Looking forward to continuing progress in my other project, "OutlookTerminalClient", as I wanted to make a project to easily display current emails from Outlook.

After that, I will continue to explore other programs that morph Python 3 and JS based web frameworks to create interested web applications.

Also, I want to explore more terminal based applications to minmize the amount of bloat on my system.

I am also debating what should be my long-term email application to use, and am debating between the following options:

Email Terminal Program Name Pros Cons
mu / mu4e (mu for emacs) Seems light-weight No 'ncurses' interface
alpine Seems easy to use None that I can see so far
OfflineIMAP Stores emails on local computer I'm a bit hesitant to store emails locally, but most Linux enthusiasts prefer this route

39 May 4, 2020

I forgot to post this the other day, but I did make one final album for my Shibes band here:

Unfortunately, with all my attempts to re-arrange my Linux harddrives the other weekend, I actually erased the contents of the entire album, so I only have the final exported music files as remnants of those sessions. This is fine since I'm more of a person that just prefers to get stuff out there, then to dwell on stuff and never release anything.

However, this does mean I can never re-master that album, but that's okay.

I'm kind of done with that band as it represents a certain era of my life that I'd kind of like to leave behind a bit. I'm aiming to be more positive despite the crazy times we're living in, and dwelling on negatives isn't really my vibe anymore, even if it was partly for slight joke vibes.

I plan on making music going forward, but moreso, probably theme type music with tools like MuseScore.

I would like to learn more songs on keyboard, mostly game themes, and also a few harder songs as well.

I plan on also learning Ardour after maybe caving into the $35 license fee.

Another thing I've been working on is utilizing more terminal based programs.

One such program is "sc-im" which is a Vim based terminal spreadsheet program:

Very cool so far.

Also, I plan on checking out way more terminal based programs from this discontinued blog to add them to my array of tools to use:

I'm currently debating either Slackware or Gentoo for a purely terminal based distribution on a spare portion of my other harddrive as well on the desktop computer, which is going to be fun. I don't mind window managers with some GUI applications, but less bloat always leads to more productivity so I'm all for it.

40 May 3, 2020

I'm glad that I now have access to my own website again so I can freely post as I please again.

Clearly, the world has changed quite a bit in the last few months.

To stay positive, I've been re-affirming my Christian faith, so that's been a focus of mine.

I've been reading through the Bible with the help of 'KJV', which is a really neat terminal based Bible program:

A really cool quote amidst these crazy times that's pretty inspiring is from The Lord Of The Rings - The Fellowship of the Ring from J.R.R. Tolkien.

To give a synopsis, Frodo and Gandalf are discussing the complications involving the ring he received from Bilbo, and the very real possibility that he will be hunted by Sauron for having the ring in the first place.

Here is the quoted conversation from Frodo and Gandalf from the book:

“I wish it need not have happened in my time," said Frodo. "So do I," said Gandalf, "and so do all who live to see such times. But that is not for them to decide. All we have to decide is what to do with the time that is given us.”

With that in mind, time is pretty precious to someone like me with a full time job.

As a result, I've used Emacs Org-Mode for my actual job and my own personal life to manage how much time I've spent on tasks, and on skills.

It's really helped me a lot, so I whole-heartedly recommend giving Emacs and Org-Mode a try if you never considered adding "TODO" lists in your daily routine.


Also, I've been reading up on possibly growing my own food as well in case I'd like a self-sustainable house later on in my life. That being said, homesteading looks like a cool hobby on the side.

To stay positive amidst these times, I have re-vamped my current Linux computer setups, and have re-done several of my computers to try out a few things.

I am currently running Debian minimal installation on both computers, and have been trying out Arch Linux along with Steam to get some games working without ever needing Windows 10.

Pretty sweet so far, and am loving it.

I learned a lot, but let's just say the Arch install was pretty dang hard.

And to say the least, I totally wiped out my one hard-drive by accident as a result. Let's just say that even if you accidentally delete a harddrive's partition, doesn't mean you should use the "dd" command to wipe the harddrive afterwards since you can easily just re-create the partitions afterwards.

I learned this lesson the hard way.

I plan on picking another Linux distro to run on the same drive but with purely terminal based apps without ever using XOrg.

I also have been trying to get in touch with the "Xiphos" team, which helps maintain this cool bible study program, but haven't really heard back from them in their mailing list, so I might have to keep searching for open source projects to possibly contribute to.

My current Linux based goals include:

  • Learn Ledger or other CLI tools to monitor finances with .csvs from bank statements
  • Possibly learn sc-vim instead of Ledger, since it might be easier with just a master .csv file for all finances

My current programming goals:

  • Continue to learn web development through the Udemy course
  • Make Node.JS apps that blend with Python 3 as well
  • Keep looking for Christian faith based open source projects to contribute to

My current pet programming projects include:

Overall, I hope everyone is safe, and wish the best. God bless.

41 January 14, 2020

I completed the Bandcamper project which can be found here:

42 January 9, 2020

I redesigned the entire site, and am writing this blog using Emacs's Org-Mode

Author: Samuel Banya

Created: 2020-09-21 Mon 00:02