Firefox Lost one More User to MegaBar

So Firefox introduced the "MegaBar" a souped up version of a URLBar. It's horrible, distracting, and there're no way of turning it off as of version 77. Several versions ago they made it default enabled. So I looked around and found the about:config to turn it off. Everything was good again!

As I kept reading around, I saw a posting update that the Beta of 77 did not honor the overrides.

At that point I started migrating to Chrome, knowing that I would have no choice in v77. During that time using both browsers, I've been able to get everything migrated over and am all settled in.

Haven't used Firefox in like two or three weeks.

I've been using Mozilla since it was Netscape with the Motif widget toolkit. I even suffered through the bohemoth stage of Mozilla (SeaMonkey now??) How I stayed being loyal at that time I had no idea. LOL!

Welp, the Megabar did it. Good Riddance!

P.S.: Here's a flowery verbiage which details exactly the way I feel. External Rejzor Wordpress Post

being way too rational...

<<The lead spokesperson should be a scientist. Dr. Richard Besser, a former acting C.D.C. director and an E.I.S. alumnus, explained to me, “If you have a politician on the stage, there’s a very real risk that half the nation is going to do the opposite of what they say.” During the H1N1 outbreak of 2009—which caused some twelve thousand American deaths, infections in every state, and seven hundred school closings—Besser and his successor at the C.D.C., Dr. Tom Frieden, gave more than a hundred press briefings. President Barack Obama spoke publicly about the outbreak only a few times, and generally limited himself to telling people to heed scientific experts and promising not to let politics distort the government’s response. “The Bush Administration did a good job of creating the infrastructure so that we can respond,” Obama said at the start of the pandemic, and then echoed the sohco by urging families, “Wash your hands when you shake hands. Cover your mouth when you cough. I know it sounds trivial, but it makes a huge difference.”At no time did Obama recommend particular medical treatments, nor did he forecast specifics about when the pandemic would end.>>

https://www.newyorker.com/magazine/2020/05/04/seattles-leaders-let-scientists-take-the-lead-new-yorks-did-not

Audacity Crazy Behavior (not, for old people like me)

So for the life of me I couldn't figure out why, when I pressed pause in audacity, I would press play it would start the tape from the beginning. I was like this is a UX / UI / Bug issue... I found the BEST explanation... particularly because I have had tape recorders do the same thing.... in IRL. Now I get it, the pause button is a toggle like back in the old days. Done EOF for me, good to go. LOL :)

Re: Play, from paused, jumps to the start for no reason

Post by AndyCivil » Wed Jun 15, 2016 12:14 am

[... read the full text in the link above ...]

  • 1. What is the difference between "pause" and "stop"? I suggest that when you pause, you expect to continue from the same place. If the current state of play is "pause", you have already declared your intention to resume from the same place, so jumping to the start of the selection is not logical.

  • 2. The toggle feature of the 'pause' button seems to be a hangover from the days when pause was achieved with a pop-in pop-out mechanism that lifted the capstan wheel away from the spindle, preventing it from driving the tape. However, to copy that model, you would have to mandate that the pause button would have to be released—pressing play would do nothing (because the tape transport was in play anyway).

  • 3. Although the play button functions as "play from beginning of selection" that is not the icon used on it. The icon for that, is a 'play' triangle with a vertical bar to the left of it. Some devices have both, e.g. this one http://www.dtxmania.net/wiki.cgi?page=qa_dtxc_create_e therefore, the icon used does not correspond with the function.

  • [... read the link above, it's been curtailed]

[emphasis added]

db2 doesn't start due to file permissions


So if you ever have a goofy admin of your db2 instance who decides to do a "chown -R instname:instgrp /home/instname". Then db2 refuses to start or do anything due to bad permissions, you're in a pickle. The best way out of that jar is using db2 instance upgrade command. It resets all the permissions. "db2iupdt instname"

UAC to Plain English in JavaScript

So I wrote this quick javascript code to use in IBM's SDI (TDI/IDI). When querying the microsoft AD for userAccountControl you will get a decimal equivalent of a hex value to tell you what bits in the account is activated (e.g.: 512, 544, etc.) To convert this into plain english the following code does a pretty good job.

function checkUAC(uac) {
  var flags = [
    [0x0001, 'SCRIPT'],
    [0x0002, 'ACCOUNTDISABLE'],
    [0x0008, 'HOMEDIR_REQUIRED'],
    [0x0010, 'LOCKOUT'],
    [0x0020, 'PASSWD_NOTREQD'],
    [0x0040, 'PASSWD_CANT_CHANGE'],
    [0x0080, 'ENCRYPTED_TEXT_PWD_ALLOWED'],
    [0x0100, 'TEMP_DUPLICATE_ACCOUNT'],
    [0x0200, 'NORMAL_ACCOUNT'],
    [0x0800, 'INTERDOMAIN_TRUST_ACCOUNT'],
    [0x1000, 'WORKSTATION_TRUST_ACCOUNT'],
    [0x2000, 'SERVER_TRUST_ACCOUNT'],
    [0x10000, 'DONT_EXPIRE_PASSWORD'],
    [0x20000, 'MNS_LOGON_ACCOUNT'],
    [0x40000, 'SMARTCARD_REQUIRED'],
    [0x80000, 'TRUSTED_FOR_DELEGATION'],
    [0x100000, 'NOT_DELEGATED'],
    [0x200000, 'USE_DES_KEY_ONLY'],
    [0x400000, 'DONT_REQ_PREAUTH'],
    [0x800000, 'PASSWORD_EXPIRED'],
    [0x1000000, 'TRUSTED_TO_AUTH_FOR_DELEGATION'],
    [0x04000000, 'PARTIAL_SECRETS_ACCOUNT']
  ];

  var response = "";

  for (var i=0; i<flags.length; i++) {
        if ((parseInt(uac) | flags[i][0]) === parseInt(uac)) {
      response = response + (flags[i][1] + " ("+uac+") ");
    }
  }

  return response;
}

Google Chrome's Profile Manager

I use multiple profiles on the OS/X to manage various clients' working environments and settings, including my own personal profile. I've been doing this on Linux just fine with the command line args ".desktop" shortcut files.
After some brief research, and to remember this in future, on OS/X it's as simple as creating a shortcut to the following command:

open /Applications/Google\ Chrome.app --args --profile-directory="Guest Profile"

Disabling "Discover" App in KDE

So, I had done a system update in OpenSuSE, and noticed that there was a new annoying app "Discover" for KDE. Getting this uninstalled (and stay uninstalled) took a little bit of hunting and pecking, but the following worked for me.

First find out what the app is. If it's running on the machine in front of you, you can just do an xprop.


  1. run xprop and click the Discover window. Something like the following will return (with a bunch of other data): WM_CLASS(STRING) = "plasma-discover", "discover"

  2. Get the process name/ID while it's still running: ps aux |grep plasma-discover. You will see something like 'appstream://org.kde.discover.desktop'

  3. 'locate org.kde.discover.desktop' you will see '/usr/share/applications/org.kde.discover.desktop'

  4. rpm -qf /usr/share/applications/org.kde.discover.desktop to see what package controls it. In this case, it was: discover-5.12.6-lp150.2.3.1.x86_64

  5. 'sudo zypper rm discover': remove the discover app

  6. 'sudo zypper al discover': add a lock to the app, so it doesn't get installed again when you do an update

Converting lastLogonTimestamp to Javascript Date Object

I am writing this down, because this is the last time I deal with this problem over and over again, having to have to reinvent the wheel in javascript.



var last_login = "132022299384906985";
var high   = last_login.substr(0,9);
var low    = last_login.substr(9,2);
var epoch  = (((parseInt(high) - 116444736) * 100) + parseInt(low) + 10800);
var millis = epoch * 1000;
//
// Not needed since source is UTC
//
// var localMillis = millis - (60000 * new Date().getTimezoneOffset());
//
lastLogon.getFullYear() 
  + ("00" + (lastLogon.getMonth()+1)).slice(-2) 
  + ("00" + lastLogon.getDate()).slice(-2) 
  + ("00" + (lastLogon.getHours())).slice(-2) 
  + ("00"+ lastLogon.getMinutes()).slice(-2) 
  + "Z";

group id (gid) under Mac's

I rsync'd a directory and noticed that the gid 5100 was not in my Mac's /etc/group file. So I added the group using the normal method (System Preferences -> Users and Groups) and could not find a place to update the gid. I also checked /etc/group file and was at a loss.

This link helped: https://superuser.com/questions/214004/how-to-add-user-to-a-group-from-mac-os-x-command-line

Doing a quick man on dseditgroup, with the information from that post, changing a gid on a group can be done via the following command:

sudo dseditgroup -o edit -i 5100 MyNewLocalGroup

(no subject)

So I was trying to run updatedb as a normal user to create a local database for myself. Basically, since my personal files would not be in the general database, I wanted to create a "~/.locate.db" and alias locate as a custom name (e.g.: mylocate) to use that database. But I kept running into a permissions error:


joe@delljoe:~> updatedb -U /home/joe/ -l0 -o /home/joe/.locate.db 
updatedb: can not open a temporary file for `/home/joe/.locate.db'

Even running as root, would give me that error. I have spent months scouring the web, and they all point to that command being the correct command to create a local database.

I just found out apparmor was blocking the executable from reading/writing from anywhere except the system default directory.

So there are three options:
1) Disable it for mlocate completely


sudo aa-disable /usr/bin/locate
sudo aa-disable /usr/bin/updatedb
sudo mv /etc/apparmor.d/usr.bin.locate /etc/apparmor.d/usr.bin.locate.OLD
sudo mv /etc/apparmor.d/usr.bin.updatedb /etc/apparmor.d/usr.bin.updatedb.OLD
sudo touch /etc/apparmor.d/usr.bin.locate
sudo touch /etc/apparmor.d/usr.bin.updatedb



2) Tune or update /etc/apparmor.d/usr.bin.updatedb and /etc/appmarmor.d/usr.bin.locate to allow writing to certain locations. For example updatedb can write to /home/*/.locate.db etc. This is recommended for production multi-user environments. (I am just using my laptop. And I am lazy)

3) Disable apparmor completely for dev envs