That pesky Download Pending state on Google Play Store

This ever happened to you where an app is being updated by Google Play Store but it just sits there and waits for that supposed update indefinitely? Perhaps you’ve stared at that screen for too long waiting for it to complete the download and start the installation process for several minutes, maybe hours? It certainly is not your Internet connection that is the issue, you’re sure on this and have checked it several times. What’s worse, this holds up other apps from getting there updates. The update queue can’t go on.

Well, this has happened to me already.

On some similar occasions a simple phone restart fixed the issue. On another, stopping the update on the app, allowed for other apps to get their updates. While there were also times that it was just my network connection that kept it from getting updated properly – such as when I forced it to update over mobile data, then I transfer to a location where carrier service is not so strong (in high rise buildings for example). I simply switch to WiFi when available and the update process continued smoothly afterwards.

Recently though, no amount of phone restarts, or switching networks fixed this issue when my phone ran into it again.

The one way that I corrected it is after I cleared the cache & data of the Google Play Store app. This was after I’ve restarted my phone for the nth time, and the app was still stuck at downloading the updates. Yes, I’ve also tried to kill or force stop Google Play Store. To no avail.

Depending on your phone, go to its Settings. Find the Apps or App Settings further down. Select Google Play Store. The options should be there, most likely under Storage.

Try this out if you’ve done all the other things but still have that app stuck on update. Don’t worry about losing anything. The Google Play Store app will recover, and almost everything you have specifically for this Android phone will have been saved on the cloud.

Compress all files in a directory separately via command line

How to do this fast and easily? I don’t care about what type of compression was used.

When I say compress I am referring to using a tool such as ZIP to make a file smaller. Separately – that is each file will have its own zipped file, instead of all being bundled into one big one.

ANSWER

On a Linux shell, such as Bash, I can do this command to zip up all the files in a directory individually.

find . -type f -exec zip -D '{}.zip' '{}' \;

The find command allows for finding many things. Here we specify where to look for it through that dot right after the command. Dot means the current directory location. Then the -type f tells it to find only those considered as regular files. Followed by the -exec zip so that when it finds those files it will do a zip on each one. The curly brackets is so that filenames are retained, then appended with a .zip file extension at the end.

Find is recursive. So it will also go down to subdirectories and zip any files in there, and so on. It can be prevented. One way is to use -maxdepth option. If I want it to not recurse deeper I tell it to have a max depth of 1.

find . -maxdepth 1 -type f -exec zip -D '{}.zip' '{}' \;

There are other ways – such as using a for loop on bash – but I’ve always been more comfortable with doing this through the find command.

Then there is also the gzip compression tool. This is another one similar to zip. Gzip command is much simpler and shorter.

gzip *

The * is a wildcard that matches any of the files that are in that current directory. It will ignore directories, so any files in subdirectories will not get compressed. Note that this short command deletes the original file once it’s been compressed. If I want to keep these files, I would put the -k option (long form is --keep).

gzip -k *

These commands will work on perhaps majority of Linux distros, assuming the zip and gzip applications are installed. It will also work on Bash-like shells for Windows. Better yet, Windows 10 has the Windows Subsystem for Linux feature.

Why no fullscreen after Vmware install?

The linux desktop live preview I tried is fullscreen when it boots up. This is via the Vmware Workstation Player tool. I am play around with it as like a normal desktop. After I clicked install and let if finish complete, the next boot only makes the desktop very small. It won’t stretch the full width, height of my screen. The small screen is centered and maximizing the window several times has no effects.

ANSWER

Make sure that the VMware Tools are updated/installed after the installation of the Linux desktop is completed. Go to the menu of the VMware Player window while the virtual desktop is active/running. Then find the Install VMware Tools menu entry or something with a similar text. Try to resize the window again. Go fullscreen (also from the same menu). Restart the virtual desktop if necessary.

If it still does not resize to adapt to the screen’s full width and height, try to restart the vmtoolsd service. Open a terminal. Then type the following command.

sudo systemctl restart vmtoolsd 

This might have to be done each time the screen doesn’t adjust to the screen size automatically.

Screen record to gif on Linux

I would like to record my desktop screen. Maybe a portion of it not the entirety of the screen. Then convert that into an animated GIF image. Would like to use less or none at all on image editing software where possible. What are the tools I will use in a Linux desktop?

ANSWER

My go to tools for this are Kazam and Gifcurry.

Kazam for screen recording my desktop. It is a simple tool. Has options to target fullscreen can include all screens, a window or an area on the desktop. The latter may be exactly what you need. The results are saved into a MP4 file.

Gifcurry can then load that video file, make edits, save it into animated gif.

I can also skip Gifcurry. Use ffmpeg directly instead. It can do a lot of things to handle video, audio, other media files and streams. But a simple command such as this one will do for starters:

ffmpeg -i video-file.mp4 -f gif output.gif

Get Around Disable Adblocker Pop-ups

I have adblocker plugins enabled on my mobile browsers. Which is great because a lot of websites have excessive ads and autoplaying media content that are so unnecessary. There are a number of sites that warn readers to disable adblockers, I have noticed however. Some have the option to continue without disabling adblockers. Many also don’t provide that option.

Is there a way I am able to get around disabling adblockers for such sites but still continue to view the content?

ANSWER

I’ve noticed that these pop-ups sometimes have different behaviors depending on the mobile browser being used. If one browser doesn’t have that option to continue to the site without disabling the adblocker, I try to open that same page on another browser. A few times I would get that option to not disable when shifting to another browser.

Another alternative which I more often do when I can’t be bothered opening the web page I want to read in another browser is to turn on reader mode. Most major browsers have that feature. Usually it’s a sqare-ish icon that looks like a document with horizontal lines, located at the address bar. If you can’t find it easily, try going to the browser’s options, then enable it. By simply tapping on this reader mode icon the disable adblocker warning will go away, and so do the ads. I can then proceed to read the page peacefully, less the clutter too. After all, I am only interested in the content, never the ads.

But if you frequent a website and like its content, consider supporting it by including the site’s URL as an exception to your adblocker settings. These ads support the site’s creators to continue providing people with content for free. If they have a subscription-based, ad-free offer, and it’s cheap-ish, why not spend a few pennies if you really enjoy their content? Some also offer non-recurring subscriptions through donations.

Filter Gmail messages quick

Getting lots of marketing emails in my inbox. Some might be worth taking a look at. But it is oh so cluttered.

How do I find emails from same sender in Gmail quickly?

ANSWER

Gmail’s search functionality is quite good. Lots of things you can do with it, almost like how you can on Google search.

For emails, search for a particular message via the email address by using this:

from:(email-add@example.com)

Replace the correct email address within the parentheses. If you want to look for more than one address at a time, separate email address with an OR (case sensitive). It will now look like this,

from:(email-add-111@example.com OR email-add-222@example.com)

If you don’t want to type the above, you do this instead. Open the message. Find the three vertical dots in the menu bar directly above the message. Click on it then select “Filter messages like these”. This will have the effect of that search phrase above less the typing.

Better yet, you can create a filter for these messages automatically if you take that step further. Apply a label to such messages for easier identification. Do something else about it if you will, such as delete, archive, etc.

As mentioned, when you open a message in Gmail, in the sub menu just above it, find the three vertical dots. This usually is located at the rightmost. Click on it then select “Filter messages like these”. Fill out the form as you like. The email address at the From line is the minimum. Proceed to create filter. Complete the form in the next page. It’s quite straightforward. I suggest you check at the “Also apply filter to matching conversations” at the bottom of the options. This will have the effect of filtering and applying what you want with the previous messages too.

And for some decluttering bonus, since I believe a lot of people get tons of emails without even reading them.

Now what if you have so many unread messages in your Inbox? You’d want to go through that and read/delete them, right? Well, it’s easy to search for unread emails on Gmail. Use this in the search box

is:unread in:inbox

Remove the in:inbox part to search for everything that is unread, not just in the Inbox. You can also replace that for another location on your Gmail.

You can combine this too with Gmail Labels. This is helpful if you tag incoming emails with Labels. This way you can set specific unread emails to search for and delete.

is:unread label:SOME_LABEL

If you don’t have those Labels, you can always create a filter and label emails from particular senders.

Windows “Sync now” failing

This is in the “Synchonize your clock” under the Date & Time settings of Windows 10. The button “Sync now” lets me update my date and time according to the time server that is time.windows.com. This fails for no apparent reason.

Error message I have is “Time synchronization failed” in red text on top of the button.

I’ve done this before successfully.

ANSWER

These are the things that you can do.

First thing is to check your Internet settings. The snc requires that you are connected.

Second, if you are using a firewall program other than the stock Windows one, be sure that it is not blocking with the sync server. Allow it in the firewall. Temporarily disablng it is another way if you don’t want to add another rule.

The default Windows firewall that comes in every Windows 10 should not be interfering with the sync. Check to make sure anyway by searching for Windows Defender Firewall from the Start Menu. Go to Advanced Settings link found at the left-hand side of the firewall window. The Windows time syncing is set on port 123 as UDP protocol that connects to time.windows.com.

Next, check on the time service. Hit Windows + R key combo. A small appears. Type after Open – services.msc – then press OK. This runs the Services tool and a window will appear after. There is a long list in alphabetical order. Scroll all the way down to the Windows Time service.

First off the service should be running. If not, check the Startup Type is Automatic. If not, correct that type so it should be so it starts automatically. Then proceed to Start the service. If it is already running, press the Stop button and wait for it to finish. Then Start it again shortly afterwards.

Check if time can be sync successfully now.

There are other things that can be done, such as pointing to another time server that is not controlled by Microsoft. I won’t normally do this, but it can be done with some extra steps in configuration which I won’t tackle here.

Google Search keeps saying “Mobile data is off”

I have Wifi and 4G data turned on but Google search returns with a message that says –
“Mobile data is off: No data connection. Consider turning on mobile data or turning on Wi-Fi”.

There is working Internet connection because I can search directly from the browser, other apps can connect or download. Only gets stuck with that message using Google Search app on Android.

ANSWER

When this happens, there are a few things that can help fix this issue.

First, is to restart the Android phone.

If restarting does not fix it, then the second thing is to turn on Airplane Mode. Wait a few seconds before turning it off.

However, if after doing either of the above, or both, that still doesn’t fix Google app from being able to connect to the Internet properly then the last resort is to clear its data and cache.

Go to Settings > Apps > Google.

What you need to look for is Storage related. There should be a Manage Storage > Clear All Data setting, and Clear Cache setting. These are separate buttons. Proceed by deleting cache first, then data. Clearing of cache and data only affects the device you are on. Google has most, if not all, of that information on their servers anyway. You won’t really lose anything. The app will sync back as soon as it’s connected.

Once done try using Google app again and search for something.

Should all else fail, reinstall the Google app. Chances are your Android won’t have permission to uninstall the app itself, only to rollback to previous versions, although there is an uninstall button in Google Play Store for said app. Do it anyway. Then update the app. If the phone is rooted, you just might be able to do a complete uninstall/install.

Install app latest version with Ubuntu Snap

I want to install application most recent version on Ubuntu. With this command snap refresh <app name>, but it doesn’t work.

Getting a ‘snap “<app name>” has no updates available’ message instead.

There is a higher version from snap info <app name> for example below.

channels:
  latest/stable:    12.5 2021-09-23 (50) 516MB classic
  latest/candidate: ↑                          
  latest/beta:      ↑                          
  latest/edge:      12.5 2021-09-19 (50) 516MB classic
  12.0/stable:      12.0 2020-06-12 (30) 462MB classic
  12.0/candidate:   ↑                          
  12.0/beta:        ↑                          
  12.0/edge:        ↑                          
  11.0/stable:      11.0 2019-09-04  (6) 399MB classic
  11.0/candidate:   ↑                          
  11.0/beta:        ↑                          
  11.0/edge:        ↑       

What I need do to force the update to latest version?

ANSWER

If you look at the “tracking” value after the snap info command, you will see the channel the app is currently on.

That’s the same channel listed in the “channels” information. To get that latest version you want, change the channel accordingly. Let us say you are at 12.0/stable now. You want to download and update to 12.5. That means you need to change to latest/stable channel in this case.

For that we will need to add an option that is --channel=<channel name> to change the target channel.

The command it will look like this in the terminal:

:~$ snap refresh <app name> --channel=latest/stable

This will immediately begin the download process to update to that version of that channel specified.

Add sudo optionally. Optional because Ubuntu will prompt you for your password if you don’t. A pop-up dialog window will appear for you to enter the password.

Is my PC Windows 11 Compatible?

How do I know if my computer of Windows 10 can be install to Windows 11? Will it immediatly update to the new Windows 11 version if yes? I have checked updates and installed all. However I am still got Windows 10. Nothing pops out to say I want to install Windows 11 or not. So a lot of people are saying about compatible hardware. How to check mine compatible?

ANSWER

A lot of PCs with Windows 10 running on it fail on the TPM 2.0 requirement part, although these are fairly capable machines. Even newer ones that are more than powerful enough (e.g. gaming machines) that don’t have the required TPM version so those fail the compatiblity check too. TPM is Trusted Platform Module and Microsoft’s minimum requirement for Windows 11 is version 2.0.

Then there is also the supported processor (CPU) where a number also fall short on with older hardware.

With the impending release of Windows 11, a lot of information has been thrown into the Internet leading up to the release date set on Tuesday – October 5, 2021. Which can be quite confusing with all that fanfare especially about the TPM 2.0 confusion.

There are a few things you can do to determine compatiblity from Microsoft. Read the official minimum system requirements – https://www.microsoft.com/en-ph/windows/windows-11-specifications#table1 – which is provided by Microsoft for Windows 11 compatibility. There is also a link there on how TPM 2.0 might be enabled on your machine.

You can also read more about the Windows 11 upgrade at the following official Microsoft pages:

  1. https://www.microsoft.com/en-ph/windows/windows-11#pchealthcheck
  2. https://blogs.windows.com/windows-insider/2021/08/27/update-on-windows-11-minimum-system-requirements-and-the-pc-health-check-app/

If you do not want to read through all that content, Microsoft has also provided a quick way to check for Windows 11 compatiblity via a PC Health Check app. Download, install and then run the tool to get the results. It is only a few MB in size. Download link here: https://aka.ms/GetPCHealthCheckApp or you can also find the same information in #1 link in the list above (If you’ve only read it, right?).

Good luck!

A way to stream Netflix in Nintendo Switch?

Is there a way to install custom app that can play Netflix on my Nintendo Switch, much like those unverified sources installation approach on Android?

I read there is easier way through “secret browser” to play Netflix. But many comments say it does nt work.

ANSWER

Short answer is – NO / None / Nada.

Unless, you install Android on or jailbreak it. The former means you’ll be technically booting to Android system. The latter is much more like what you probably have heard of people jailbreaking their iPhones, then run apps that were not supposed to be playable on the device.

Both are risky. It can cause irreversible damage to your Nintendo Switch. And you’ll end up with what they popularly call as a bricked device. Just an expensive paperweight on other words. The choice is yours. Read and understand thoroughly before you decide to go ahead. If you like to tinker then this should be a fun exercise.

The other claim that you can “play Netflix” on a browser on the Nintendo Switch without doing anything overly technical is only half true. Yes there is that so called secret browser that you can force to show and use much like you would a browser on your Mac or phone. It involves manually setting an IPv4 address as DNS in your Switch’s Internet connection settings.

While you can logon to a Netflix account or browse the catalog, that’s about all you can do there. When you start playing a movie Netflix will say the browser does not support the minimum requirements for streaming the content.

So you are left with a browser, that is awkward and clunky to use.

Don’t bother!

Get a tablet instead if you want a portable device for watching movies on the go.

Identify Songs Playing Using Smartphone

What nice and safe apps are there that I can install on iPhone or Android to identify songs playing from another source? Preferable to have no ads, unlimited use and free of charge.

ANSWER

A few years back when I was in that apps discovery phase on my Android and installing as many as I can even when those apps would hardly ever be used after the first try, I came upon Shazam. Was impressed by it. It was able to ID the songs quite accurately. It sometimes took a while, a few longer seconds, sometimes but it normally was able to pick up and tell me the song title and artist. The sound quality it is listening to also is a factor for proper identification. It did have some success on getting the songs right in a public place, like a bar or a cafe, where music was playing loudly and a lot of other noise around.

There are many sound discovery or music recognition apps out there for both Android and iPhone. I have heard of SoundHound or Musixmatch.

I have not used such apps for a long time. Shazam was free when it came out. No ads then. I might have installed it again years after, and as I recall the UI changed this time with ads too. But I could be wrong. It might have been a different app. SoundHound, Musixmatch and Shazam come with free and paid versions. Whether these apps have limited use for free versions, you can find that out or DON’T.

Try out those 3 apps, OR you don’t really have to go to all the trouble. Google Assistant on Android can do the same magic. Just ask it, “Which song is this?”. Type it or say it. Better the latter. I have done it several times, for example while driving and listening to a local FM radio station.

Apple’s Siri can do the same.

Alternative to Cron

For Linux systems what is a good alternative to cron?

ANSWER

(1) systemd

A lot of Linux distros are already using systemd. I’d say the major ones have been on systemd for a long time. It is capable of scheduling tasks just like cron, and has other features such as setting CPU/memory limit, randomized schedules to name a few. I haven’t used it yet. But I’ve seen some and creating a task is very different from what you may be used to with your traditional cron. It’s verbose. The good thing is there’s a lot of examples and documentation about it, plus it is built-in to your Linux system already.

(2) jobber

There’s an alternative to cron that I like to use called jobber. You can find it here: https://dshearer.github.io/jobber/

Quoting from the jobber website:

Jobber is a utility for Unix-like systems that can run arbitrary commands, or β€œjobs”, according to a schedule. It is meant to be a better alternative to the classic Unix utility cron

I’ve used jobber several times in little projects and some even in production. It is pretty robust and stable. As with anything new, using it requires some reading. The time format to schedule a task, or job, in jobber is not at all different from cron. It has other features such as error handling and reporting, as well as execution history.

jobber tasks are defined in a YAML file. That file can be placed in a user’s home directory. It’s not so hard to create a task for jobber. Their site has a good documentation found here: https://dshearer.github.io/jobber/doc/v1.4/#

There are pre-packaged binaries officially available to download for Debian/Ubuntu, and Red Hat. Or check your Linux distro’s application repository if it’s there. If not you could always compile it yourself. The last time I used this tool I also compiled it on the server. Easy to do that, and is explained also at their website.