Technical Support

This is where you will find all the technical support

Powershell Installing Modules troubleshooting:

Trying to install a specific version of the MicrosftTeams module throws the following error:



C:\Windows\system32> Install-Module -Name MicrosoftTeams -RequiredVersion 0.9.6 -SkipPublisherCheck
WARNING: Unable to resolve package source ''.
PackageManagement\Install-Package : No match was found for the specified search criteria and module name 'MicrosoftTeams'. Try Get-PSRepository to see all available registered module


PS C:\Windows\system32> Register-PackageSource -Name PSNuGet -Location -ProviderName NuGet
Register-PackageSource : Source Location '' is not valid.
At line:1 char:1


Solution: [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12



Accessing Default shares over a Network from a computer not apart of the Domain:

If you are not in a Domain: UAC will prevent remote access to administrative shares.


  • disable UAC
  • enable built-in Administrator
  • set registry option which allows remote UAC
    • path: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
    • DWORD(32 bit): LocalAccountTokenFilterPolicy = 1

Read more here

or google for "remote uac administrative share"


Mod_wsgi with Apache - Taking Python Flask into production

Following these 2 tutorials together:

I faced a number of problems such as Apache values no longer used for the Virtual Host config and 

Fatal Python error: Py_Initialize: unable to load the file system codec
LookupError: no codec search functions registered: can't find encoding

the error means that the Python interpreter embedded in mod_wsgi can't find its standard library. Adding PYTHONPATH to the Apache config is suppose to fix this but this is how I did it, so to solve these issues i did the following:

for "Fatal Python error: init_fs_encoding" i installed mod_wsgi outside of the venv. "pip install mod_wsgi". Here is myconfig,these files i stored in C:\Apache24\htdocs\flaskapp


import sys
sys.path.insert(0, 'C:/Apache24/htdocs/flaskapp')
from hello import app as application

from flask import Flask
app = Flask(__name__)
def hello():
return "Hello World"

if __name__ == "__main__":

in httpd-vhosts.config

<VirtualHost *:5000>
ServerAdmin address_for_email
ServerName localhost:5000
WSGIScriptAlias / "C:/Apache24/htdocs/flaskapp/web.wsgi"
DocumentRoot "C:/Apache24/htdocs/flaskapp"
<Directory "C:/Apache24/htdocs/flaskapp">
<Files web.wsgi>
Require all granted
ErrorLog "C:/Apache24/htdocs/flaskapp/logs/error.log"
CustomLog "C:/Apache24/htdocs/flaskapp/logs/access.log" common

I manuelly created the folder logs inside the flaskapp folder as well. The error.log will provide you with any flask python errors..

Now i ran into other issues such as module not found etc requiring me to use my venv enviroment with this config (note forward slashes) pyupdater  is suppose to correct this but that’s for another time:

# File name: web.wsgi
import sys, os, logging
PROJECT_DIR = "C:/Apache24/htdocs/flaskapp"
virtual_env = "C:/Apache24/htdocs/flaskapp/.venv"
activate_this = os.path.join(virtual_env, 'Scripts', '')

from hello import app as application

Other useful sites can be found here:

DocumentRoot not availible (change from Apache2.3 > 2.4)

Remove these:

Order deny,allow
                Allow from all

only keep this one>
                Require all granted

Now install required modules for your app in you virtualenv

If you’re still running into Apache problems I found running httpd -t provides a better response such as paths not found and missing parameters

hope this helps

Unable to download mod_wsgi using pip

if you get error1 Visual C++ Build Tools ( may be required: mod_wsgi Unknown distribution option: 'bugtrack_url'


OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_sock: could not bind to address [::]:80 (OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_sock: could not bind to address AH00451: no listening sockets available, shutting down AH00015: Unable to open logs

Solution: change the httpd.conf file to listen on another port, this is found in the conf folder usually. Change the Listen 80 to another port.

Flask Python

Run the server across all IP addresses "flask run --host" 


If you get flask : The term 'flask' is not recognized as the name of a cmdlet, try launching with: python -m flask run and add --host to use your network address

Python - Using pip installer behind a firwall:

pip install --trusted-host --trusted-host --trusted-host <<module-name>>

PyInstaller - Single file exe creation

python3 -m PyInstaller --onefile --windowed --name="nameofexe file"

Run Android Apps on your PC

To get this, you will need an emulator to your computer, follow the steps below using the VLLO appython3 -m PyInstaller --onefile --windowed --name="Learning" ClassResourceRubric-manuel.pyp as an example taken from

  1. First, go to or any of your search engine and search for the Bluestacks.
  2. Open its website and download the installer to your computer.
  3. After that, save the installer and then run it.
  4. Once the installation begins, it will ask you to accept its terms. Accept it and then click the “Install” button to start.
  5. Wait for about 10 – 20 minutes, and the installation will be over depending on the speed of your computer and the internet.
  6. After you completed the installation, go to the desktop and run the emulator that you installed.
  7. When you execute it for the first time, the Play Store window will appear immediately, enter your account here to login.
  8. Now, go to the home of Bluestacks and then look for the Play Store then run it.
  9. Click the search button and start typing the VLLO app to look for it.
  10. When you found this app, click the install button to download it.
  11. The Bluestacks will create a shortcut of the VLLO app on your desktop PC, double click it to start it.

NodeJS - Unable to install behind SSL firewall


As per npm blog LTS is not affected by this issue, so prefer using Latest release

In older versions, npm would have a self signed ca file, a ca file is used in secure SSL mode while making connection, and npm registry deployed updated SSL certificate which is incompatible with ca file of older npm, so the connection error owing to SSL

However if you face this error any ONE of below steps should help you
1) upgrade your version of npm

npm install npm -g --ca=null

2) tell your current version of npm to use node's ca instead of built in npm's ca

npm config set ca=""

3) you can also disable strict-ssl mode to get around the error in old version, but you are wiping the security

npm set strict-ssl false


Python using headers with requests

headers = {
    'referer': URL + '/',
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36',
post = {i['name']: '' if not i.has_attr('value') else i['value'] for i in inputs}
post['username'] = input('Enter Username:') # user
post['password'] = input('Enter Password:') # pass
post['browserFingerprint'] = "2110353559"
post['g-recaptcha-response'] = ''
post['__EVENTTARGET'] = 'button1'
post['__EVENTARGUMENT'] = ''
post['rememberMeChk'] = "on"
del post['button1'], post['button2']

Python - Charmap

UnicodeEncodeError: 'charmap' codec can't encode character '\u2010': character maps to <undefined> [duplicate]

testsite = + '/test.html', data=post, headers=headers)
with open('output.html', 'w', encoding="utf-8") as F:


Python Character errors

Oping from Web mailing to IDE throws a codec error, copy the text into word then back into the IDE to resolve the problem.

Python - Response error code 500

This usually means there is something wrong with the server, or something wrong with authentications, look at how headers are being provided with your script

response = requests.get('', headers)
# access JSOn content
jsonResponse = response.json()
print("Entire JSON response")

except HTTPError as http_err:
print(f'HTTP error occurred: {http_err}')
except Exception as err:
print(f'Other error occurred: {err}')

To check out your headers, this site can do a nice job:

Dell Powerconnect

How to remove native vlan command

no switchport allowed vlan

Microsoft Teams and The Linux Operating System

FOSS alternative for Microsoft Teams -


Include system audio in Teams meetings


This is an updated article since Microsoft changed the layout of this feature. You can find the old article here.

When you are showing a video or something else with audio from your computer into a meeting in Teams you want the meeting participants to be able to hear the same audio as you hear. It is possible to include system audio, if you have the correct settings.

Include system audio

To share system audio you can do it when you start sharing your desktop or after you already have shared it. When you sharing your desktop select the sharing button and then check the checkbox Include system audio and then select a Desktop or a Window to share. You can’t share a PowerPoint file when Include system audio is selected.

If you don’t have the checkbox you can start sharing your desktop or application in your Teams meeting. Click on the Share button and then select to share a Desktop or a Window.

Then move your mouse to the top of your screen and a menu should appear, select Include system audio by clicking on the button.. You can also do this if you forgot to share system audio when you started to share your desktop.

Switch speakers to include audio

You might get an error that says “Switch speakers to include audio”. To fix this you have to make sure that your Windows audio device is the same as your audio device in Teams. So if you hear the audio from other participants in your headphones you have to make sure that your Windows system sound is played to that device too.

If you don’t have the same audio device selected in Teams and in Windows you will see this error.

Select Audio device in Teams

In Teams you have a couple of different ways to select you audio device, one ways is in your meeting select more actions () and then select Show device settings.

Check what Audio device you are using.


Select audio device in Windows

In your systray left click on the speaker icon.

Make sure that the device showing here is the same as you had selected in Teams. If not you can click on the small arrow and select another device.

Now you are ready to share your system audio in a meeting.

Share system Audio from Teams for Mac

If you are running Teams on a Mac it is not possible to share system audio when sharing desktop. But in this uservoice request Microsft updated that it is expected to be released “this quarter”, posted April 11.

Recording in Stream

If you record your meeting it will be saved to Microsoft Stream. System audio shared in meeting will be recorded too.

Live events

With Live Events you might want to share audio too but currently that is not possible, when sharing in Live Events we don’t get the option to share audio.

An solution you could use there is two computers, Computer A and Computer B. You also need a HDMI2USB-device, ex. Magewell USB Capture HDMI. Connect HDMI from Computer A to the Magewell device and the Magewell USB output to Computer B. On Computer A you play the video with audio content and on Computer B you are signed in as a presenter in Live Events, audio and video from come from Computer A via USB.

There is an uservoice request to get this working in Live Events and Microsoft is working on it. Vote for it here:

Update April 10. Microsoft posted in the uservoice that this feature is In testing and “hope to release soon”.


Update It is now possible to share system audio in Live Events.



A better Hex editor

Installing Third Party package with Mu Python IDE behind a firewall (SSL CERT required)

Installing Third Party packages behind a firewall will require a certificate to be added to you python enviroment, you can do this by running the below command as Admin, make sure you replace the C:\\Path with your own Path



Example Error:

Collecting guizero
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:777)'),)': /simple/guizero/



On Unix the default configuration file is: $HOME/.config/pip/pip.conf which respects the XDG_CONFIG_HOME environment variable.

On macOS the configuration file is $HOME/Library/Application Support/pip/pip.conf.

On Windows the configuration file is %APPDATA%\pip\pip.ini (ROAMING FOLDER)


python -m pip config set global.cert C:\\Path\\cert.crt



How to install Microsoft Sharepoint:

BEFORE running the prerequisite installer, go into IE/Internet Options/Security/Custom Level and enable file downloads. However this isn't enough.

Also need to go into server manager and disable IE Enhanced security.



Add-WindowsFeature NET-HTTP-Activation,NET-Non-HTTP-Activ,NET-WCF-Pipe-Activation45,NET-WCF-HTTP-Activation45,Web-Server,Web-WebServer,Web-Common-Http,Web-Static-Content,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-App-Dev,Web-Asp-Net,Web-Asp-Net45,Web-Net-Ext,Web-Net-Ext45,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Health,Web-Http-Logging,Web-Log-Libraries,Web-Request-Monitor,Web-Http-Tracing,Web-Security,Web-Basic-Auth,Web-Windows-Auth,Web-Filtering,Web-Digest-Auth,Web-Performance,Web-Stat-Compression,Web-Dyn-Compression,Web-Mgmt-Tools,Web-Mgmt-Console,Web-Mgmt-Compat,Web-Metabase,WAS,WAS-Process-Model,WAS-NET-Environment,WAS-Config-APIs,Web-Lgcy-Scripting,Windows-Identity-Foundation,Xps-Viewer -Source d:\sources\sxs


Get Active List of VNC Connections:

VNC runs on port 5900 by default, so you should be able to do:

netstat -na | grep '[:.]5900'

(OS X uses . as a port delimiter, but on Linux it's : — the pattern above will match both)

Example on my OS X machine:

% netstat -na | grep '[:.]5900'
tcp4       0      0  *.5900                 *.*                    LISTEN     
tcp6       0      0  *.5900                 *.*                    LISTEN 

Free Driver Backup for Windows

Free Driver Backup is a device driver backup utility that offers a convenient solution for device driver backup and their restoration in windows operating system.  It identifies all the hardware in the system, extracts their associated drivers from the hard disk and backs them up to a secure location. The installation file is just 3.7 MB and can be easily downloaded.

While installing Free Driver Backup I came across an adware named as Relevant Knowledge. Users are advised against selecting this application. So just select “Decline” and proceed with the installation.

Download here:



Adding Surface Laptop Drivers to SCCM


Surface drivers all now come in MSI format – which is good for normal deployments, but doesn’t really help you for OS Deployments (assuming you want to apply the drivers prior to Windows Setup). After downloading the latest Surface Laptop drivers from Microsoft, you can use the following example command to extract them (which goes from around 300MB to a whopping 1.3GB):

msiexec.exe /a C:\Temp\SurfaceLaptop_Win10_15063_1802008_1.msi targetdir=C:\Temp\Extract /qn

From there you can import the “Drivers” sub-folder into SCCM as per usual. If you plan on applying them as a proper ‘Driver Package’ during the OS Deployment, you’ll need to import them into their own driver package, distribute it to the relevant Distribution Points, then add it to the task sequence. You can use the following WMI query to filter it to just Surface Laptops:

SELECT * FROM Win32_ComputerSystem WHERE Model LIKE “%Surface Laptop%”

Obviously you can now also add the keyboard drivers to the required boot image!


Python and PIP

  • After installing Python and you've added C:\Python37 and C:\Python37\Scripts to the System Variables, you  may come across this error
  • Example Error:


Collecting virtualenv
  Could not fetch URL There was a problem confirming the ssl certificate: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661) - skipping
  Could not find a version that satisfies the requirement virtualenv (from versions: )
No matching distribution found for virtualenv


A Way around this is to add the --cert option to use the proxy certificate if youre behind an SSL Proxy.


pip install --cert C:\Users\Administrator\Downloads\cacert.cer virtualenv


Using a certificate in a pip.conf

Create this file:

$HOME/.pip/pip.conf (Linux)

%HOME%\pip\pip.ini (Windows)

and add these lines:

cert = /path/to/mycertificate.crt

Ignoring certificate and using HTTP

$ pip install --trusted-host linkchecker

Ignoring certificate and using HTTP in a pip.conf

Create this file:

$HOME/.pip/pip.conf (Linux)

%HOME%\pip\pip.ini (Windows)

and add these lines:

trusted-host =



How to get Emoji's in Windows 10?

Windows Key + period key (full stop)


Create a Bootable Mac USB from Windows 10:

1. Download and install 'TransMac'

2. Right click on the Volume (your USB) and select 'Restore from Disk Image).




And they always say the same thing:
A required device isn't connected or can't be accessed.

"Variable Window Extension" Checkbox un TFTP on the Server properties in WDS. I would post a picture, but my account is too new.

This box was CHECKED for us. Not sure how as I do not believe this was checked by default, but UNCHECKING this box solved the issue for us. Hope it's this simple for anyone else who stumbles across this thread and doesn't lead to needing to rebuild WDS.


Change 'Backup' path for iTunes

The multiple backups produced by the iTunes' syncs of all the devices you connect to your computer tend to take considerable disk space, so you might want to store them on an alternate disk than the original location.

To achieve this, you will need to tell iTunes where those backups are being relocated using a Symbolic link - which is an advanced type of shortcut in the file system that is being totally transparent to iTunes. Below are guides detailed for Windows and Mac OS X


The original location of the Backups is in a folder called MobileSync

This folder is located in: C:\Users\*USERNAME*\AppData\Roaming\Apple Computer\MobileSync\Ba


And to

do move this folder's location, you will have to:

  • Copy the folder to the new location (for example at the root of an external hard disk drive (HDD)
  • Go to the orinal folder location C:\Users\*USERNAME*\AppData\Roaming\Apple Computer\MobileSync\ 
  • Delete the folder "Backup" within or rename it "BackupOld" to keep it
  • Press Shift+Right Click to open a Command window from that location 
  • Type the following command

mklink /J “%APPDATA%\Apple Computer\MobileSync\Backup” “<Your External HDD>:\iTunes Backup”

  • Close Command prompt
  • Launch a backup, see if it has been properly located and iTunes sees is as the latest

Voilà, saving precious disk space on Windows is easy!


Example where the new iTunes location would be Vic's Desktop

If you have installed itunes from the Windows Store, the directories have changed, they are no longer in Appdata, for backups C:\Users\USERNAME\Apple\MobileSync\Backup for iOS update files they are stored in C:\Users_\AppData\Local\Packages\AppleInc.iTunes_nzyj5cx40ttqa\LocalCache\Roaming\Apple Computer

Mac OS X

The original location of the Backups is in a folder called MobileSync

This folder is located in: ~/Library/Application Sup


And to

do move this folder's location, you will have to:

  • Copy the folder to the new location (for example at the root of an external hard disk drive (HDD)
  • Go to  ~/Library/Application Support/MobileSync/
  • Remove the folder "Backup" within or rename it "BackupOld" if you want to keep it
  • Open Terminal
  • Type the following command:

ln -s /Volumes/<Your External HDD>/MobileSync/Backup ~/Library/Application\ Support/MobileSync/Backup


ln -s "/Volumes/<EXTERNAL HDD>/iTunes/MobileSync/Backup" "$HOME/Library/Application Support/MobileSync"

  • Close Terminal
  • Launch a backup, see if it has been properly located and iTunes sees is as the latest

Voilà, saving precious disk space on Mac OS is easy!

Note: DiskAid will support the relocated backup folders just like iTunes as long as this method is being applied!

Thanks to Scott Maier for the OS X explanation.


How to fix MSTSC/REMOTE DESKTOP on 4K monitor?

Open regedit and navigate to the registry key:
Right-click, select NEW -> DWORD (32 bit) Value
Type PreferExternalManifest and then press ENTER.
Right-click PreferExternalManifest, and then click Modify.
Enter Value Data 1 and select Decimal.
Click OK. Exit Registry Editor.

name this file in the same location as the exe, like mstsc.exe.manifest. Copy the contents below and put it in Notepad or similar tool and save it to a file as %SystemRoot%\System32\mstsc.exe.manifest

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>


<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">







      version="" processorArchitecture="*"



















<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">











  <asmv3:windowsSettings xmlns="">

    <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="">false</ms_windowsSettings:dpiAware>







Drupal Unblock failed login attempts:'how to unblock my own admin account after 5 failed login attempts


Execute the following query on the Drupal database:

DELETE FROM `flood`;

If command above doesn't work try this:



Drupal Password reset for Version 7


1. Install PHP either on its own, with XAMP or WAMP

2. Make sure the php.exe location has been added to PATH System variables of the OS System Environment (in System -> System Info -> Advanced System Settings -> Enviroment Variables...).

3. Run the command:

php .\scripts\ newpwd

Then execute the following query on the Drupal database:

UPDATE users SET pass ='$S$CTo9G7Lx28rzCfpn4WB2hUlknDKv6QTqHaf82WLbhPT2K5TzKzML' WHERE uid = 1;


LINUX - Mount a LVM partition

Boot a live Linux distro such as Knoppix or Caine

about LVM



1. Log into your cPanel account. 




2. Click on the phpMyAdmin menu.




3. Inside phpMyAdmin find the correct database name and click on it.




4. Find the table called mdl_user and select it. Since Moodle has many tables, the mdl_user table may be on the second page. Select the second page.




5. After selecting the table, find the table row for the user that is being edited. Click the Edit link with the pencil icon. 




6. There will be a series or characters and numbers in the password field. This is an encrypted password so it cannot be viewed in the database. Replace the encrypted text with the new password for the login. Next, in the drop down menu to the left, select MD5 then click Go





Ubuntu Linux - Add the Manual Login option to LightDM

Modify the/create the following file like so 'sudo nano /etc/lightdm/lightdm.conf


Add the following information:






if you're trying to login as the root user you may need to change/assign a password:sudo -i passwd root




Home Security with a Raspberry Pi

Check out MotionEyeOS


What's that file extension?

A great resource for finding out what an unknown file extension is can be found here:


Convert .s16 file to .WAV

What is an S16 file?

An S16 file is an audio file created by various digital voice recorders, including Sharp PA-VR10E and RCA RP5017A. It contains recorded audio and may also include event marking numbers (up to 50) added by the user, which allows the user to skip to specific parts of the recording.

More Information

S16 files can only be played in the digital voice recorder that created them. They can be transferred to a computer via a USB cable as a backup but they cannot be played in a program on a computer. However, S16 files can be converted to .WAV files using Sharp Data Conversion Tool for PA-VR Series (also known as PAVR), which is only available for Windows.

NOTE: The name of an S16 file typically includes the date it was created and a number indicating the order in which it was created.


Untested - Use SOX (

sox -t auto -w -s -r 8000 -c 1 {input_file}  {output_file}

Batch Script with Python

from subprocess import call
file = "name.txt"
with open(file,'rU') as f:
     for name in f:
        name = name[:len(name)-4]
        name1 = './'+name+'raw' #input 
        name2 = './'+name+'wav' #output
        call(["sox","-r","48000", "-t", "sw", "-e", "signed", "-c", "1", "-b", "16", name1, name2])




Group Policy - Slow logins, stuck at 'Applying Group Policy Printers Policy'

One possible reason for this could be, when you're creating printers in your GPO, check to see if you have 'create' or 'Update' set, setting this setting to update will most likely speed things up. Some other options to look at Cortana and Onedrive. 


VMware ESX Web Console No Mouse

You have to add USB Controller to your VMware hardware.

Error 0xC1900101 - 0x30018

Windows 10 - Microsoft Server 2019 'Upgrade' on VMware ESX 6.7

If you get the following Error 0xC1900101 - 0x30018 or driver pnp watchdog error your Virtual Machine may be in a snapshotted state. x30018 references to Driver issues.

Other troubleshooting guides can be found here:


Windows 10 - Microsoft Server 2019 'Upgrade' on VMware ESX 6.7


If you get the following error 0xC1900101 - 0x30018 The installation failed in the FIRST_BOOT phase with an error during SYSPREP operation....


Remove the role called Internet PRinting.




Download TS Video from the Web

  • Open Firefox / chrome

  • open page the video

  • Play Video

  • click F12 on keyboard -> network

  • in Filter URLs ts

  • copy link of ts

  • remove index and ts extension from link

    for example:

    will be copied as

insert in below script under LINK


# insert here urls

'' # replace this with your url 


mkdir my-videos
cd mkdir my-videos


for URL in ${LINK[@]}
  # create folder for streaming media
  CNT=$((CNT + 1))
  mkdir $CNT
  cd $CNT



   # download all videos
   wget $URL'_'{0..1200}.ts

   # link videos
   echo $DIR'_'{0..1200}.ts | tr " " "\n" > tslist
   while read line; do cat $line >> $CNT.mp4; done < tslist

   rm -rf media* tslist
   ) &
   cd ..




Stream Video Dowloader extension allows to download m3u8 streams seamlessly. Install and press play on video it will identify the stream.

Addition to @aalhanane and @Micheal Espinola Jr

As m3u8x is only available for windows. Once you have identified the m3u8 url you can also use Jdownloader2 or VLC Media Player to download and concatenate the stream.

Jdownloader2: Just copy the m3u8 url when it the Jdownloader is open. It will recognize the stream in Linkgrabber tab.

VLC 3:

Open Network -> Paste m3u8 url -> Checkmark Streamoutput -> Select Settings. Choose output file, container , video and audio encoding. (e.g output.mp4, container: mpeg4, video: h264, audio: mp4a) Start Stream. It will not play the video, but encode it, showing the encoding progress by moving the video play back progress bar.

Using the Video DownloadHelper Firefox extension and it's Companion App. It allowed to download both m3u8 playlists with TS chunks lists and actual video and audio streams into mp4 files via a click of button while correctly preserving authentication headers.

The resulting separate video and audio files can be merged with ffmpeg:

ffmpeg -i video.mp4 -i audio.mp4 -acodec copy -vcodec copy video-and-audio.mp4 

or with mp4box:

mp4box -add audio.mp4#audio video.mp4 -out video-and-audio.mp4




Windows 8 and Windows 10 - customizing your lock screen

Settings > Personalization > Lock Screen



In the right pane, you’ll see a value named OEMBackground. If you don’t see that value, you’ll need to create it by right-clicking the Background key, choosing New > DWORD (32-bit) Value, and then naming the new value “OEMBackground.”

Double-click the OEMBackground value to open its properties window, set its value to 1 in the “Value data” box, and then click “OK.”


Professional or Enterprise edition of Windows, you can make this change using the Local Group Policy Editor instead of in the Registry. As an added bonus, changing the setting in group policy allows it to persist even when you change your theme.

Launch Local Group Policy Editor by pressing Start, typing “gpedit.msc,” and then hitting Enter.


Computer Configuration\Administrative Templates\System\Logon


Windows looks for the custom logon screen background image in the following directory:


By default, the “info” and “backgrounds” folders don’t exist, so you’ll need to navigate to C:\Windows\System32\oobe folder and create the subfolders yourself.



Moodle - Error Reading from Database

try include /login/loginn.php after the hostname or /login/index.php

ERROR 1114 (HY000) at line 3769: The table 'mdl_files' is full

check your storage, try

sudo apt-get clean


PHPMYADMIN - Incorrect format parameter

enter image description here

Reason: Modify the PHP file upload limit (Bitnami)

Modify the following options in the /opt/bitnami/php/etc/php.ini file

Find upload_max_filesize &


and increase it to desired upload side (e.g. upload_max_filesize=128M) and save. (sudo nano /opt/bitnami/php/etc/php.ini, crtl + w, seach for filesize, crtl + x, y, and save it)


mysql -u root -p db_name< \path\file.sql

Ubuntu Linux - Command not found trying to launch .run file (Linux executable)

Solution: chmod to change permissions of the file. In my case, I accessed a Guest Session under /tmp/guest-chhoa3/download chown and chmod 777 were used on that file before i copied it. In my case, I had to apply chmod 777 to the file I copied over from the guest session.

chmod +x
sudo ./

Python FileNotFoundError: [WinError 3] The system cannot find the path specified

When working on a project to download files from a JSON the key names would have spaces after or before the name, to get around this I used the PathValidation package for python. 


import pathvalidate as pv


.replace is another method you can use. PathLib May also offer some assistance when working with Windows and Unix filesystems..

Python installing Packages from Source files throws an error:

 distutils.errors.DistutilsPlatformError: Unable to find vcvarsall.bat


  raise DistutilsPlatformError("Unable to find a compatible "
distutils.errors.DistutilsPlatformError: Unable to find a compatible Visual Studio installation.

The source you are running 'python install' on needs a compiler (vcvarsall.bat hints towards a Visual C in Windows), which you don't seem to have installed if youre getting that error message. Instead of installing from source, I suggest downloading a pre-compiled wheel and install the package from that using pip install 'packagename.whl'


 Details about what Compiler Python is using can be seen here:



Visual Studio Version MSVC Toolset Version MSVC compiler version (_MSC_VER)
VS2015 and updates 1, 2, & 3 v140 in VS; version 14.00 1900
VS2017, version 15.1 & 15.2 v141 in VS; version 14.10 1910
VS2017, version 15.3 & 15.4 v141 in VS; version 14.11 1911
VS2017, version 15.5 v141 in VS; version 14.12 1912


Preparing Windows build environment

To start developing PyWavelets code on Windows you will have to install a C compiler and prepare the build environment.

Installing Windows SDK C/C++ compiler

Depending on your Python version, a different version of the Microsoft Visual C++ compiler will be required to build extensions. The same compiler that was used to build Python itself should be used.

For official binary builds of Python 2.6 to 3.2, this will be VS 2008. Python 3.3 and 3.4 were compiled with VS 2010, and for Python 3.5 it will be MSVC 2015.

The MSVC version should be printed when starting a Python REPL, and can be checked against the note below:


For reference:

  • the MSC v.1500 in the Python version string is Microsoft Visual C++ 2008 (Microsoft Visual Studio 9.0 with msvcr90.dll runtime)
  • MSC v.1600 is MSVC 2010 (10.0 with msvcr100.dll runtime)
  • MSC v.1700 is MSVC 2012 (11.0)
  • MSC v.1800 is MSVC 2013 (12.0)
  • MSC v.1900 is MSVC 2015 (14.0)
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Python 3.2 (r32:88445, Feb 20 2011, 21:30:00) [MSC v.1500 64 bit (AMD64)] on win32

To get started first download, extract and install Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1 from

There are several ISO images on the site, so just grab the one that is suitable for your platform:

  • GRMSDK_EN_DVD.iso for 32-bit x86 platform
  • GRMSDKX_EN_DVD.iso for 64-bit AMD64 platform (AMD64 is the codename for 64-bit CPU architecture, not the processor manufacturer)

After installing the SDK and before compiling the extension you have to configure some environment variables.

For 32-bit build execute the util/setenv_build32.bat script in the cmd window:

rem Configure the environment for 32-bit builds.
rem Use "vcvars32.bat" for a 32-bit build.
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"
rem Convince to use the SDK tools.
set MSSdk=1
setenv /x86 /release

For 64-bit use util/setenv_build64.bat:

rem Configure the environment for 64-bit builds.
rem Use "vcvars32.bat" for a 32-bit build.
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars64.bat"
rem Convince to use the SDK tools.
set MSSdk=1
setenv /x64 /release

See also

MinGW C/C++ compiler

MinGW distribution can be downloaded from

In order to change the settings and use MinGW as the default compiler, edit or create a Distutils configuration filec:\Python2*\Lib\distutils\distutils.cfg and place the following entry in it:

compiler = mingw32

You can also take a look at Cython’s “Installing MinGW on Windows” page at for more info.



Python 2.7/3.2 distutils package is incompatible with the current version (4.7+) of MinGW (MinGW dropped the -mno-cygwin flag, which is still passed by distutils).

To use MinGW to compile Python extensions you have to patch the distutils/ library module and remove every occurrence of -mno-cygwin.

See bug report for more information on the issue.









Using Python's request behind a Firewall with SSL inspection

Ever had SSLError, bad handshake etc when trying to use the request library behind a firewall??

you need to either add verify=False or verify=True (if you wish to specify the SSL cert)


cafile = 'cacert.pem' #
r = requests.get(url, verify=cafile)




Trim a Video with Windows 10

On a Mac, you can easerly trim an MP4 or MOV file with 'Quicktime' as its built into MacOS, but what about a Windows 10 device?

So simple, this like here will explain the simple sets: (introduced with Fall Creators Update)

Just open the Video with the 'right click' 'Open With' option and select 'Photos'. There will be an 'Edit & Create' option from the top corner, even better, if you are using the latest build of Windows 10 you will see you'll be able to add 3D Effects :O


Drupal - Who edited what?

If you are new to Drupal, you may think the Author when you click on the Content page is who edited a page on the website. It is actually who created the page that is the Author. When you are editing a page (aka node) you will see 'Authoring Information' (https://domain/node/NUMBER/edit), to see all session information and changes you can use dblog https://domain/admin/reports/dblog use http://DOMAIN/?q=admin/reports/dblog if you're not using friendly URL's.

Outlook - Not opening a folder (example, Inbox or Sent items would crash outlook)

Office 2019 instructions

- Possible fix,

File -> Open & Export -> Import/Export -> Export to a file -> Outlook Data File (.pst) -> Select what you want to export and select 'next'.

Once compete File -> Account Settings -> Account Settings -> Data Files -> Add...


Folder is hidden as a 'Protected System file'.

I recently had a folder hide itself, only showing up when 'View' -> 'Options' -> 'Change folder and search options' -> 'View' -> 'Hide protected operating system files' is unticked.

From cmd, typing in dir /a:s will reveal folders and files that has the 'system' attribute set. To remove this, you will have to use the command 'attrib /S /D -S FOLDERNAME'


Useful 'Technical/Power User' Windows Tools

Registry Tools

Registrar Registry Manager 8.04
Advanced Registry Manager for administrators and power users
for Windows 10/8.1/8/7/Vista/XP/2012/2008/2003/2000 (x86 and x64)

File Protection Tools

Undeluxe 2.00
Advanced file protection and recovery
for Windows 8/7/Vista/XP/2012/2008/2003 (x86 and x64)

Security Tools

SanityCheck 3.50
Advanced rootkit and malware detector
for Windows 10/8.18/7/Vista/XP/2012/2008/2003/2000 (x86 and x64)

Emergency task manager for unresponsive and hanging systems.
The AntiFreeze Task Manager is now part of WhySoSlow.

Crash Analysis Tool

WhoCrashed 6.01
Comprehensible crash dump analysis, find out why your system crashed.

System Monitoring Tools

WhySoSlow 1.50
Find out why your system is running slow.
for Windows 10/8,1/8/7/2012/2008 (x86 and x64)

MultiMon 3.00
Multifunctional application, system, file system, registry and user monitor
for Windows 10/8,1/8/72012/2008 (x86 and x64)

LatencyMon 6.70
Real-time audio suitability checker
for Windows 10/8.1/8/7/2012/2008 (x86 and x64)


ObjMon allows you to monitor kernel object activity in real time. Because many elements in the Windows kernel such as files, registry keys, symbolic links and events are represented as kernel objects, ObjMon can be used for a wide variety of purposes.

Miscellaneous Tools

ErrorLookup 2.01
Command-line lookup utility for Microsoft Windows error and status codes.
for Windows 7/Vista/XP/2003/2000 (x86 and x64)



Cloudflare Error 1001

Setting up a CNAME that points to an external site so you can have *** is usually strait forward, although, the CNAME by itself is not enough, the host where the website belongs need to also be configured to accept requests for different domains. You can check details about the name you request by using the 'host' command on Linux or macOS. Another useful resource is if the problem still persists you can setup a Pfsense box and use the package under Reverse Proxy Server -> Redirects. (pfSense® - World's Most Trusted Open Source Firewall


Windows 10 - Constantly scrolling down (Edge and Chrome only, Opera is okay)

Disconnect any usb periferrals, plug them in one by one. Scroll a page with the up and down arrow or the scroll wheel until you determine what device is causing the problem.

UNC Path - Incorrect Username (How to clear Remote Connections)

Have you ever connected to a remote share with the wrong cred?

Do you get:

Network Error

you do not have permission to access \\*\. Contact your network administrator to request access.


Start -> Run -> CMD -> Net Use * /delete


Rebuild the BCD

  • Insert the original installation DVD or USB Drive. ...
  • Restart your computer.
  • Boot from the disc/USB.
  • At the Install screen, click Repair your computer or press R.
  • Click Troubleshoot.
  • Click Command Prompt.
  • Type these commands:
  • bootrec /FixMbr
  • bootrec /FixBoot
  • bootrec /ScanOs
  • bootrec /RebuildBcd. 

Cable Testing with Cisco:

test cable-diagnostics tdr interface gigabitethernet0/24
show cable-diagnostics tdr


Booting UEFI with Easy2Boot


How to make a .imgPTN file

  1. Download and extract the MakePartImage MPI Tool Kit (then install ImDisk and WinRAR + run CreateDesktopShortcuts.cmd) - see this page for more details.

               Create the three Windows Desktop shortcuts
  2. Convert the ISO file (or UEFI-bootable USB drive or .zip file, DVD\CD or source files) to a partition image file (.imgPTN) using MakePartImage.

    Drag-and-drop the ISO file (or source folder or USB drive letter) onto the MPI_FAT32 Desktop shortcut. 

    If prompted, just hit [ENTER] to accept the default size (or increase the size if there is a 'not enough space' error message).
  3. Copy the .imgPTN file to your NTFS E2B USB drive (e.g. \_ISO\MAINMENU or \_ISO\WIN or \_ISO\LINUX).  - See video above at 9:11.

    Note: .imgPTN files copied to the \_ISO\WINDOWS\XP folder are not supported.
  4. Run WinContig (RMPrepUSB - Ctrl+F2, or the \MAKE_THIS_DRIVE_CONTIGUOUS.cmd file) to make all files on the E2B drive contiguous.

Read more:


MPI_Tool_Pack_Plus_CloverLite_0.084 (2018-08-01) includes Split_WinISO.exe for splitting large .wim\.esd files.

MPI Tool Pack Plus Cloverlite 0.085 (2018-10-11) includes support for German menu option (other languages can be added).

See MPI Tool Pack Version History for changes.


To convert an ISO to .imgPTN file for UEFI-booting: 

  1. Download E2B MPI Toolkit
  2. Install ImDisk and create the Desktop shortcuts
  3. Drag any UEFI-bootable ISO to the MPI_FAT32 shortcut to make an .imgPTN file
  4. Copy the .imgPTN file to \_ISO\MAINMENU and run \MAKE_THIS_DRIVE_CONTIGUOUS.cmd
  5. Run \_ISO\SWITCH_E2B.exe and pick the .imgPTN file (or use the E2B menu to select the file)
  6. Connect the E2B USB drive to target system and boot via UEFI (or MBR-boot).

Read more:

Alternate sources: OneDrive download area  Google Drive download area  (check here for latest\Beta version)

Please note
You can 'switch-in' a partition image file using the E2B menu (MBR-boot only) or using the \_ISO\SWITCH_E2B.exe Windows utility.
Once you 'switch-in' a .imgPTN file, it will replace the original E2B partition.
To restore the original E2B partition, you can MBR-boot and select CSM Menu option #0, or run \e2b\SWITCH_E2B.exe -> Restore E2B Partition(s) under Windows.

The target folder for the .imgPTN file must be a standard physical disk volume, not a virtual volume (such as a Microsoft Storage Space volume).

Note: If using a FAT32 .imgPTN file and there is a file larger than 4GB (e.g. install.wim) - see here for details on how to fix this.


.imgPTN files are sector-for-sector partition images and are typically used to UEFI-boot or for converting Windows Installer ISOs if you are using an E2B USB HDD instead of a Removable Flash drive. They can also be used to run fully-installed linux OS's or WindowsToGo OS's, OpenElec\LibreElec with persistence and lots of other scenarios where directly booting from an ISO is not feasible. For instance, you could make a .imgPTN file from an already existing bootable USB Flash drive and add the image file to your E2B drive.


Change the file extension to .imgPTN23 if you want partitions 2 and 3 (if present) to be still there after switching to the new image. 
Two partition images can be switched in at the same time - the second image file must have no file extension (e.g. Ubuntu64.imgPTN + Ubuntu64).


.imgPTN files contain an image of a whole disk partition

The .imgPTN image file can contain any bootable payload - for instance, it could be an image of a FAT32 partition that contains UEFI boot files.

If you boot to E2B in BIOS\CSM mode (or use the Windows Switch_E2B.exe utility), we can 'switch' in the new partition image and then UEFI-boot from the new partition.


Using MakePartImage, you can make a FAT32 or NTFS partition .imgPTN image file from a source ISO file, or from a USB drive, or from files within a folder.

For UEFI-booting, the .imgPTN file should contain a partition image that has been formatted as FAT32 and contains a \EFI\BOOT folder.

It is best to use an NTFS-formatted E2B USB drive so that you can copy large .imgPTN image files onto it (Switch_E2B.exe only works fully with NTFS E2B drives anyway).

Note: You can still UEFI-boot from an NTFS E2B USB drive as long as the .imgPTN file contains the image of a FAT32 filesytem.


E2B can also switch in two partition images (ptn #1 and ptn #3) at the same time. This means that you can use an ext2/3/4, NTFS, exFAT or FAT32 partition for partition #3 and this could contain a complete OS or be used for a linux swap area or persistence area, etc. (see end of page for details).
Read more:


How to Reset Lost Mac OS X Password without an Install Disk


Forgot your Mac admin password? Or maybe you purchased a used Mac from someone else and they’ve got it locked down? There are numerous ways to reset lost or forgotten Mac OS X password. In my previous post we’ve covered how to reset Mac OS X password with a installation CD. If you’ve forgotten your Mac password and you don’t have an install CD laying around, there’s no need to worry! There are still a few options to reset your lost Mac OS X password easily without an install disk.

Option 1: Reset 10.5 Leopard & 10.6 Snow Leopard password

  1. Power on or restart your Mac.
  2. At the chime (or grey screen if your chime is turned off), hold down Command+S on your keyboard to enter single-user mode.
  3. This step is optional, but it’s a good idea because it checks the consistency of the hard disk before moving on. At the prompt, type fsck -fy and press Enter/Return. Wait for the checks to complete before going to the next step.
  4. Type mount -uw / and press Enter.
  5. Type launchctl load /System/Library/LaunchDaemons/ and press Enter.
  6. Type ls /Users and press Enter. This lists all of the usernames on the computer – helpful if you don’t know or remember what these are.
  7. Type dscl . -passwd /Users/username password and replace “username” with one of the users displayed in the previous step. Replace “password” with a new password of your choice. Press Enter.
  8. Type reboot and press Enter.

Option 2: Reset 10.4 Tiger password

  1. Power on or restart your Mac.
  2. At the chime (or grey screen if your chime is turned off), hold down Command+S on your keyboard to enter single-user mode.
  3. Type sh /etc/rc and press Enter/Return.
  4. Type passwd username and replace “username” with the short name of the user account for which you’d like to reset the password.
  5. Type your desired password and press Enter. It won’t show itself on the screen, so be careful what you type. You will most likely have to enter it again to confirm.
  6. Type reboot and press Enter.

Option 3: Create a New User Account

This will create a new account, but all of your documents, pictures and everything will not be accessible.

  1. Power on or restart your Mac (should work for any Mac OS X system).
  2. At the chime (or grey screen if your chime is turned off), hold down Command+S on your keyboard to enter single-user mode.
  3. This step is optional, but it’s a good idea because it checks the consistency of the hard disk before moving on. At the prompt, type fsck -fy and press Enter/Return. Wait for the checks to complete before going to the next step.
  4. Type mount -uw / and press Enter.
  5. Type rm /var/db/.AppleSetupDone and press Enter.
  6. Type shutdown -h now and press Enter.

Although the above options will allow you to reset your own Mac password, it also means that others with physical access to your Mac will also be able to use them for accessing your information. To further protect your Mac, you should set an Open Firmware password using Apple’s utility.


How to Reset Mac OS X Password with a Installation CD

July 5th, 2012 by Admin

If you cannot remember your Mac administrator password, you may need to recover or reset your password to log onto your system. Although you can change passwords within Mac OS X, resetting a forgotten password requires that you use a Mac OS X installation disc. The installation disc allows you to create a new password for the administrator account so that you can gain access to your system again.

Let’s say you totally forgot the password to log on to your Mac. Or maybe you purchased a used Mac from someone else and they’ve got it locked down. Follow the steps below you can reset Mac OS X password easily with a installation CD.

Step 1

Insert your Mac OS X CD into your computer’s optical drive and reboot the computer. Hold down the “C” key as the computer starts to boot the computer using the CD.

Step 2

Click to select your language when prompted and click the right arrow icon. Click “Utilities” on the toolbar and select “Password Reset”. Select your system hard drive and choose the original administrator account name from the drop-down menu. Type a new password for the account and reenter the password to confirm. Type a password hint if you wish.

Step 3

Click “Save” to change the password and click the red icon on the top of the window to exit. Click “Mac OS X Installer” on the toolbar and select “Quit Mac OS X Installer”. Restart your computer when prompted.


If Mac OS X prompts you for the new password each time you log in, you can change this setting from the “Keychain Access” utility. Click “Edit” and select “Keychain List”. Select your previous administrator key chain and select “Delete”. You can add your new password in the key chain at the next login.


Reset Windows 10 Local Password with Kali Linux Live USB


Can't access your computer because of forgetting Windows 10 password? Compared to offline local account, Microsoft online account makes it super easy to reset your password to regain access to your computer. If you lost a local administrator password, you have to use third-party bootable media. In this tutorial we'll show you how to reset lost Windows 10 local password with Kali Linux.

Make a Kali Bootable USB Drive

When you're locked out of Windows 10, you need to use another PC to make a Kali bootable USB drive. Please follow the steps listed below.

  1. Download the ISO image of Kali Linux (formerly known as BackTrack). It's free.
  2. Next, you'll need a program to install Kali on your USB drive and make it bootable. Here we'll use the freeware ISO2Disc. Just download and install it on your local PC. or if you really want to have a Multi-boot USB try Easy2Boot
  3. Start the ISO2Disc utility. Click Browse to locate your Kali Linux image.

  4. Choose the Burn to USB Flash Drive option and select the drive letter for your USB drive. Click Start Burn to create a Kali Live USB drive.

Boot with Kali Linux USB

Once you have a Kali Live USB, plug it into the USB port of your Windows 10 computer and boot from the USB. You may have to press a special key (e.g., Esc, F2, F12, Del, etc.) during bootup to get the computer to boot from the USB instead of its internal hard drive.

Reset Windows 10 Local Password

  1. After booting from USB, you will see Kali Linux Boot Menu. Choose the 3rd option which is Live (forensic mode).

  2. Enter the default username as root and password as toor when prompted.

  3. Open File Manager and navigate to the directory where the SAM is saved. This file is usually located in /Windows/System32/Config. Right-click a blank space in File Manager, and select Open Terminal Here.

  4. Type the command: chntpw -l SAM. It shows the list of usernames found in the SAM on your Windows 10 OS.

  5. Simply run the chntpw -u username SAM command to reset your lost password. Note: where username is the name of your actual Windows account. For example, my username is test, I should type chntpw -u test SAM after that hit Enter.

  6. Press 1 for clearing the previously set Windows password.

  7. Press y when asked if you want to save the changes to the SAM hive. Now, Reboot your computer and unplug the USB drive, you will see Window 10 automatically login without password.

Note that Kali Live USB can reset the password of local account only (not Microsoft account). If you need an easier and more powerful tool to reset forgotten Windows 10 password, you can try this dedicated password recovery utility - PCUnlocker.

Troubleshooting - Kali Linux on Lenovo Yoga 11e 

Loading Kali Linux on a Lenovo Yoga 11e (Type: 20HS-S01R00) caused the mouse to load on its side, no background image would display (kali-linux-2018.3a-amd64.iso). ALT + CTRL + F2 took me to a terminal where I could run commands. A command mentioned on the internet was xrandr, however the output for that was 'Cannot Open Display'. Back to ALT + CTRL + F1, I managed to turn the laptop on its side then put the laptop in tablet form allowing me to use the display, you can also use it flat as well. My drive (/dev/sda3) was mount on /media/root/Windows

Note: Linux is case sensitive ;)


Cannot load Outlook after Upgrading to Office 2019 (MacOS):

Office 2019 Error Signature: Exception: SIG_FORCE_QUIT


Open up Terminal,

type in: defaults delete

then: killall cfprefsd

You should be all good just don't import anything from 2016 Office.


Where is my Database File for Outlook 2011 and 2016? The Outlook database is completely separate from the one used in Outlook 2011.

Outlook 2011 uses

~/Documents/Microsoft User Data/Office 2011 Identities

Outlook 2016 uses

~/Library/Group Containers/UBF8T346G9.Office/Outlook/Outlook 15 Profiles/Main Profile



Was you Visio document auto-saved before you clicked "No"?

As per this KB article you should inspect %userprofile%\Local Settings\Application Data\Microsoft\Visio\AutoRecover11.ini which contains the names of the files saved by autorecover. You may need to select the "show system files" option to make autorecover files visible in Explorer.
source: |


Does reading a SSD limit it’s lifespan?

Doesn't affect the device. The limited write lifetime of Flash is a natural consequence of how they work.

Data on Flash drives is safe because the bits are stored by electrons locked in a very well isolated layer. These electrons, if present, produce an electric field that can be picked up by a nearby transistor. Since they're locked up, reading out the transistor doesn't affect the electrons. During writes, however, to get the electrons through that layer Flash needs very high voltages. These high voltages cause some damage to the isolation layer, which accrues.

In comparison, DRAM doesn't have such an isolation layer. The electrons move quite easily. As a result, DRAM is faster and doesn't break down from writes, but the leaked electrons frequently need to be replaced. Turn off the power and they're all gone in milliseconds.


Determine Endurance on a NAND Flash Chip:

Website built in Modx, How to restore whatever you can from the database.

Recently, I ran into an issue with a website I was working on being hacked. This hack replicated itself to every directory on the server. Due to time contrants and not being able to upload any files because of the iNode file limitation I had no choice but to delete the files. I managed to backup the important stuff like the CSS and some images but not alot. Luckly, if you have most of your CSS, then the HTML is all recorded in the SQL database, but how can you install Modx again when the 'upgrade options are greyed out' (This is what Modx does when it cannot find a previous installation?)?

The solution, create a '' file under your /core/config webspace [httpdocs]. You can use a php file from another installation or if you're lucky an old backup but be sure to change the database and path values in bold below. The following PHP file needs to look like this:

* MODX Configuration file
$database_type = 'mysql';
$database_server = 'YOUR.IP.ADDRESS.SQL';
$database_user = 'database_admin';
$database_password = 'Database-password';
$database_connection_charset = 'latin1';
$dbase = 'dbname_sql';
$table_prefix = 'modx_';
$database_dsn = 'mysql:host=YOUR.IP.ADDRESS.SQL;dbname=dbname_sql;charset=latin1';
$config_options = array (
$driver_options = array (

$lastInstallTime = 1395638177;

$site_id = 'modx53';
$site_sessionname = 'SN51';
$https_port = '443';
$uuid = '5443345-4c44-4444-4k65-d9a8a9d92229';

if (!defined('MODX_CORE_PATH')) {
$modx_core_path= '/var/www/vhosts/3/120503/webspace/httpdocs/YOURDOMAINNAME/core/';
define('MODX_CORE_PATH', $modx_core_path);
if (!defined('MODX_PROCESSORS_PATH')) {
$modx_processors_path= '/var/www/vhosts/webspace/httpdocs/YOURDOMAINNAME/core/model/modx/processors/';
define('MODX_PROCESSORS_PATH', $modx_processors_path);
if (!defined('MODX_CONNECTORS_PATH')) {
$modx_connectors_path= '/var/www/vhosts/webspace/httpdocs/YOURDOMAINNAME/connectors/';
$modx_connectors_url= '/connectors/';
define('MODX_CONNECTORS_PATH', $modx_connectors_path);
define('MODX_CONNECTORS_URL', $modx_connectors_url);
if (!defined('MODX_MANAGER_PATH')) {
$modx_manager_path= '/var/www/vhosts/webspace/httpdocs/YOURDOMAINNAME/manager/';
$modx_manager_url= '/manager/';
define('MODX_MANAGER_PATH', $modx_manager_path);
define('MODX_MANAGER_URL', $modx_manager_url);
if (!defined('MODX_BASE_PATH')) {
$modx_base_path= '/var/www/vhosts/webspace/httpdocs/YOURDOMAINNAME/';
$modx_base_url= '/';
define('MODX_BASE_PATH', $modx_base_path);
define('MODX_BASE_URL', $modx_base_url);
if(defined('PHP_SAPI') && (PHP_SAPI == "cli" || PHP_SAPI == "embed")) {
$isSecureRequest = false;
} else {
$isSecureRequest = ((isset ($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on') || $_SERVER['SERVER_PORT'] == $https_port);
if (!defined('MODX_URL_SCHEME')) {
$url_scheme= $isSecureRequest ? 'https://' : 'http://';
define('MODX_URL_SCHEME', $url_scheme);
if (!defined('MODX_HTTP_HOST')) {
if(defined('PHP_SAPI') && (PHP_SAPI == "cli" || PHP_SAPI == "embed")) {
define('MODX_HTTP_HOST', $http_host);
} else {
$http_host= $_SERVER['HTTP_HOST'];
if ($_SERVER['SERVER_PORT'] != 80) {
$http_host= str_replace(':' . $_SERVER['SERVER_PORT'], '', $http_host); // remove port from HTTP_HOST
$http_host .= ($_SERVER['SERVER_PORT'] == 80 || $isSecureRequest) ? '' : ':' . $_SERVER['SERVER_PORT'];
define('MODX_HTTP_HOST', $http_host);
if (!defined('MODX_SITE_URL')) {
$site_url= $url_scheme . $http_host . MODX_BASE_URL;
define('MODX_SITE_URL', $site_url);
if (!defined('MODX_ASSETS_PATH')) {
$modx_assets_path= '/var/www/vhosts/webspace/httpdocs/YOURDOMAINNAME/assets/';
$modx_assets_url= '/assets/';
define('MODX_ASSETS_PATH', $modx_assets_path);
define('MODX_ASSETS_URL', $modx_assets_url);
if (!defined('MODX_LOG_LEVEL_FATAL')) {
define('MODX_LOG_LEVEL_FATAL', 0);
define('MODX_LOG_LEVEL_ERROR', 1);
define('MODX_LOG_LEVEL_WARN', 2);
define('MODX_LOG_LEVEL_INFO', 3);
define('MODX_LOG_LEVEL_DEBUG', 4);
if (!defined('MODX_CACHE_DISABLED')) {
$modx_cache_disabled= false;
define('MODX_CACHE_DISABLED', $modx_cache_disabled);


Programming Arduino from the Cloud or Chromebook:

Block Coding with Ardiuno



Recovering Unsaved Word documents in Mac OS

Method 1:

The Apple Mac OS system created temporary files within your computer’s Temporary folder, or TMP folder. It is important to check there first to see if that is where your lost document has ended up. In order to find this folder, you must do the following:

  • Go to Applications, then Utilities, then click on Terminal
  • Once in Terminal, enter the following command and then press enter: open $TMPDIR
  • Once you have entered this, you have now opened your TMP folder.
  • Once in this folder, open the folder named: “Temporaryitems”
  • If you’re lucky you document should be there!
Method 2:

Now say you go there, and your document is still nowhere to be found. Microsoft Word on Mac computers include an Auto Recovery option. It is automatically turned on by default. What this does is save your opened word file every 10 minutes. This is especially helpful because if you’re computer freezes while you are working on a document, or in the rare case that your computer crashes, you can use the Auto Recovery copy to recover the word document that was last saved by your computer. In order to use this, follow these steps:

  • Close Microsoft Word for Mac
  • Click Home
  • Open the Documents folder, and then open the Microsoft User Data folder
  • Locate the file that starts with the following words: “AutoRecovery save of” and select the document you want to recover, and rename the file to your choosing
  • Add “.doc” to the file name extension
  • Double click on that file, and the document should now open up for Word on Mac.
  • Click the File menu, and then select Save As
  • Type the name of the file into the Name field, and then click the Save button.

The Other Side of This Is to Also Check This Way:

  • Go to Finder, then click “Go”, and then Go to Folder and then type in the following: ~/Library/Containers/ 
  • There is a good chance that your lost document may be here.


There are many ways to prevent losing documents, and the most important one is to remember to always save your documents yourself as often as you can. If you are in the middle of thinking before typing, make sure you click save so that your saves properly. The other sure fire way to make sure that this does not happen is to also save all work onto a flash drive. By having your work saved on both a flash drive and your computer, you are less likely to lose you work due to computer crashes, or just forgetting to save in general.


What is WiDi & Miracast?


The WiDi from Intel is also known as Wireless Display. It is associated with the Intel’s WiFi direct connection standard. It allows the users to play movies, videos, songs, pictures on their TVs or monitors from their mobile devices through a wireless connection. It supports 5.1 surround sound and Ultra HD video quality at 4K resolution.


In 2012, Apple introduced Miracast wireless display technology to help the users mirror the screen of their smartphones or any other mobile device onto a bigger HDMI TV, projector, or monitor. It doesn’t matter which brand of device you are using; if it is Miracast-enabled, then you can take advantage of this wireless screen mirroring technology. Microsoft's Wireless Display adaptor uses Wifi Direct/Miracast Technology (if your device supports it, pressing the Windows Key + K will tell you).

AirPlay, unlike WiDi or Miracast, is a proprietary technology. It’s only compatible with Apple TV and other officially vetted brands. You can’t purchase an adapter that will stream to any device, as you might with WiDi or Miracast. AirPlay’s great advantage over other wireless display standards is its ability to function with AirPlay enabled-speakers.

Apple intended for the technology to allow mobile devices to function as remote controls and streaming devices. It licenses out AirPlay to a variety of audio-equipment manufacturers — such as Sony, Pioneer and Philips.

Overall, AirPlay possesses far fewer vices and foibles than Miracast.

Difference Between Miracast and WiDi

The WiDi technology compresses and transmits the data through the channels by using the software and hardware functionalities of the device over a WiDi direct connection. While the Miracast is a standard made for the wireless connectors and receivers like smartphones, tablets, laptops, and TVs, monitors, projectors, etc. to mirror the screen of small devices on the bigger mediums.

The Miracast supports the latest Windows Operating Systems, Android 4.2+ OS, Mac OS, Linux Distributions, gaming consoles like Xbox One, etc. To use any of the medium, either Miracast or WiDi, you need a particular receiver device to use it.  

Which is better?

After the Miracast introduction and the support the WiDi applications started to provide to the Miracast technology, the WiDi was discontinued for marketing and developing after 2015. So, when comparing these two wireless platforms for copying your smaller screen content on the bigger displays, the Miracast is the most suitable option to get.


Does my device support Mircast?

Miracast is a standard format which allows computers, tablets or smartphones to mirror its display over WiFi to compatible devices. Most new computers being shipped with Windows 10 or Windows 8.1 have support for Miracast but sometimes, due to outdates drivers, it does not work.

Wifi Device must support the NDIS 6.3 Driver (Powershell -> Get-NetAdapter | Select Name, NdisVersion)

and your Video Driver must support WDDM 1.3


Here is how you can quickly check if you computer has support for Miracast or not.

CMD > netsh wlan show driver

  1. Open up dxdiag by searching it from Windows:miracast windows on macbook air
  2. Click on ‘Save all information’ button to extract a report of system data. Save it on a quick access location, such as your desktop.
  3. Open the file, which should normally be in notepad, and do a search for Miracast. You should get at least 3 results. The first will tell you that Miracast is available (with HDCP), likely due to built in support by Windows. The second one is which will tell you about the driver support. In my case, since I’m using Windows 10 via Bootcamp on a MacBook Air, I see the below that Miracast is not supported by WiFi driver.


In such a situation, your best bet is to go to your WiFi manufacturer’s website and download the latest drivers or just hit up Windows Update to see if there’s a newer version available. Once you update, you can try the above steps again to see if your updated driver now supports Miracast and then test it with your output device.



Error 404 visiting pages (Drupal Content Managment System)

The reason for this is your hosting server does not support clean URLs, this could be caused by the rewrite_module not being enabled

How do you login to the front-end with clean URL's disabled?

A missing .htaccess file may also be your problem with clean URLs.


Outlook Offline - Button will not allow you to go Online.

Your Outlook needs to be activated


Modx Manager - Loading Resources fails / a Blank page on Resource load - Fix

Check that TinyMCE is installed



Chrome reports 404 errors loading page content: 

Make sure you have the permission 755 applied to your files that are trying to load.


Modx - Editing content delays text - Fix

Have you found yourself typing and the Characters are taking a while to catch up. The cause could be TinyMCE, you may need to reinstall or Update the module.



Accedently set Permissions on your macOS/Machintosh HD drive (aka Volume) for everyone from 'read-only' to 'No Access' 

When starting in recovery mode (Command + R) and attempting a repair of permissions, the error comes back  "Error underallocation detected on Main Device".

The fix:Shutdown your computer and start it back up, holding down the Command + S key. Enter the following command (just type when the text has stopped moving).


mount -uw /

chown root /

chmod 1775 /



If you have access to the drive still try:

Launch Terminal 

sudo chown root "/Volumes/volumename"

sudo chmod 1775 /Volumes/volumename" (Press tab to list the closest match)

sudo -k

 Create a CSV file of your Keychain

Mount VHD Files under MacOS:

  1. Install macfuse
  2. Install Virtual Box
  3. Compile vdfuse as mentioned in the question
  4. Mount the vhd disk

    sudo ./vdfuse -tVHD -w -f/Path/To/VHD /Path/To/Mountpoint

  5. Attach the virtual partition blockfiles

    hdiutil attach -imagekey diskimage-class=CRawDiskImage -nomount /Path/To/Mountpoint/PartitionN

  6. Mount the virtual partition

    mount -t YourFS /dev/diskK /Path/To/ParitionMountPoint


 OneDrive - Not allowing you to Sign-in on MacOS


That issue may be related to keychain of OneDrive. Regarding you have deleted keychain of OneDrive, please check the steps below to make sure you have removed keychain of OneDrive rightly.


  1. Open keychain access.
  2. If keychains are hidden, choose View > Show Keychains.
  3. Select a keychain in the Keychains list.
  4. Choose File > Delete Keychain [OneDrive Cached Credential].




If you remove keychain rightly, we’d like to suggest you lock and unlock OneDrive login keychain to check if this issue persists. You can follow the steps below to do that:


  1. Open Keychain Access.
  2. Find keychain of OneDrive.
  3. Click keychain of OneDrive>Click the Lock icon on the top-left corner.
  4. Click the Lock icon again and type login password to unlock the keychain of OneDrive.
  5. Restart OneDrive.



The pros of mirroring with QuickTime are many. It doesn't cost anything extra, the responsiveness is almost instant, and setting it up couldn't be easier. 


The only con is that it requires a wired connection between the Mac and iOS device.



Connect the iOS device to the Mac via a Lightning-to-USB cable. Note: This connection may cause iTunes and/or Image Capture to automatically launch. Those programs may start trying to syncing with the iDevice, and create lag. So be sure to close those applications before moving forward.


Once the device is connected, launch QuickTimeQuickTime will bring up a filepicker menu. The goal here isn't to play an existing file, so click Done


From the menu bar, click File, then New Movie Recording.

Setting iPhone as a QuickTime input

Setting iPhone as a QuickTime input

The default input device will be set to the iSight camera. To change it to the iOS device, click the down arrow next to the record button. Then select the iOS device from the camera list. The device's screen will instantly appear and any actions taken on the device will be mirrored to the Mac's display.




ACER Switch - No bootable device when trying to boot from USB/CD

You needto enable legacy boot.

  1. Start the machine and hit F2 to get to BIOS.
  2. Disable secure boot in the boot options screen.
  3. Enable the load legacy option ROM.
  4. Keep the boot list option set to UEFI.
  5. Press F10 to save and exit.
  6. Shut down the machine and start it again with the USB device attached.
  7. Press F12 on boot to get the legacy boot options.
  8. Pick USB from the list, and off you go.

- DellEMC: VMware vSphere Data Protection

1. Set your IP address to match the IP of the allocated IP from the Virtual Machine most likely, so set your IP as (proterties of your ethernet card, double click IPv4/Internet Protocol Version 4 (TCP/IPv4) -> Advanced TCP/IP Settings -> under the IP Settings tab -> select Add _> add your IP range that will be able to communicate).

2. Navigate to the address bar of your browser to https://IPADDRESS:8543/vdp-configure/

3. Continue setup until you get: IP/DNS could not be resolved during vSphere Data Protection (VDP) ref:

4. Go back to Virtual machine (launch remote session if you have to (vmrc://clone:), login with root and changeme. type vim /etc/resolv.conf, insert the following (hit insert key or 'i' or F2' to edit)

  • domain XXXX.XXX
  • search XXXX.XXX
  • nameserver YYY.YYY.YYY.YYY

or domain and IPaddress, example:


Hit 'esc' and ':wq' to write and quite.

5. modify /etc/hosts

vim /etc/hosts

remove 10.4.14 address, replace with YOUDESIREDIP like in the example below vdp

Where VDP is the name you have entered into your DNS in both primary and secondary locations.

IF you make a MISTAKE editing the files just hit 'esc' and ':q!'

To modify the IP you need to:

vim /etc/sysconfig/network/ifcfg-eth0

(f1 to edit)


'esc' and 'wq'

now modify:



insert the default gateway. and write and quit (wq!)

reboot and continue the setup wizard.








Dell EqualLogic PS Series Group Manager error:


"attempted to open sandboxed jar http://IPADDRESS/lib/equallogic.jar as Trusted-Only"

SOLUTION is to add /welcome.html to the end of your URL, this will give you the option to launch the application through the browser or standAlone.

in my case, I was still presented with a "General Exception"

Name: com.equallogic.eqlgroupmgr.EqlGroupM.....

ExitException: Unsigned application requesting unrestricted access to the system

The following resource is signed with a weak signature algorithm MD5withRSA and is treated as unsigned.

A quick (but temporary) solution:

Just comment out the setting of “jdk.jar.disabledAlgorithms” in the file of”lib/security/” (which is located at “/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/lib/security/, on my MacOS 10.12)

jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024

After that, the JNLP file will be running as usual again.

If on a windows machine, you'll have to navigate to C:|program files etc (your install directory) change the file needed and save the file (if opened with notepad, with talking marks around java.securityif it asks to save to the desktop just save to the desktop and drag and drop/copy and paste the file into the correct location, replacing the current file).

You may also need to add w and http://IPADDRESS/ to your trusted site list: Control Panel->Java->Security Tab and click 'Edit site List..' button.

If you see something like:  "JGoodies fonts being disabled" just wait :)


How to save Media inside from inside a Microsoft Office Powerpoint?

At the time of this post, you couldnt just right click on the video inside of a powerpoint and 'Save Media as..." so here is another solution:

Step 1
Make a copy of the pptx file (known as a Powerpoint file). If you cannot see this file extension name after the title, you may need to turn this option on.


Windows 10:
  1. Click Start and then click File Explorer.
  2. Click the View tab in File Explorer and then click the Options button (or click the drop-down menu and click Change folder and search options)
  3. Click the View tab at the top of Folder Options.
  4. Click OK.

Step 2
rename-zipRename the pptx file – change the extension from ‘pptx’ to ‘zip’.

You will probably get a message warning you about the change of extension. Make sure you allow the change so that the file name will end in ‘.zip’.


Step 3
Extract the zip file (or browse the zip file contents). You will see a directory structure now present in the folder. Navigate to ppt > media and all your image and media files will be present. You can now copy these files (and convert, if necessary) for use in other presentation mediums.



Windows Scheduled Task - Error (0x41306)

Check to make sure Power Options is not ticked preventing the task to run when on battery.


Python - IndentationError: expected an indented block

Check your spacing, you may need the famous 4 blank spacing ;)

Regex - Useful tools


How to install Python3 on MacOS High Sierra

install python3 with homebrew (brew instructions found in a previous post)

if you run into the following errors: 

Linking/usr/local/Cellar/python3/3.6.3...Error:Permission denied @ dir_s_mkdir -/usr/local/lib 


Create the folders I needed using sudo mkdir inside /usr/local:


sudo mkdir lib 
sudo mkdir Frameworks


Change the permissions inside /usr/local so that homebrew can access them:


sudo chown -R $(whoami) $(brew --prefix)/*


Now install python3


1. brew install python3
2. curl | python3
3. python3


Use pip3 to install modules

 alias pip3="python3 -m pip"

1. pip3 install ipython
2. python3 -m IPython



Pip3 error install Package behind frewall/Proxy

There was a problem confirming the ssl certificate: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661) - skipping


1. you can specify cert: 

pip3 --cert /etc/ssl/certs/FOO_Root_CA.pem install

2. pip3 install --index-url= <package_name>



Selenium - How to install ChromeDriver

Selenium - Run headless Firefox & run in a Windows Task Scheduler:

You may have ran into the problem where you Python script will work normally but not as a scheduled task even when youve made a bat file to be called rather than python itself. One reason could be the need for the security sandbox option. Python script below:

from selenium.webdriver.firefox.options import Options
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

os.environ['MOZ_HEADLESS'] = '1'
firefox_profile = webdriver.FirefoxProfile()
capabilities = DesiredCapabilities.FIREFOX.copy()
capabilities["moz:firefoxOptions"] = {
      "prefs": {
            "security.sandbox.content.level": 5,
mydriver = Firefox(capabilities=capabilities)

How to - Use wget to download HTTP directory Listing (MacOS High Sierra):

Note: This method does not download XHR documents (JSON, BJSON etc)

First, install wget by either method mentioned below:

Install wget with homebrew
*First you need Brew if you dont already have it:
ruby -e "$(curl -fsSL"

then install wget
brew install wget --with-libressl
or brew install wget

If you dont wanrt to use brew, alternative method is:

curl -O

tar -xzf wget-1.17.tar.gz

cd wget-1.17

./configure --with-ssl=openssl


To Dowload a HTTP directory listing files
wget -m -A * -pk -e robots=off

This will download all type of files locally and point to them from the html file
and it will ignore robots file

wget -rkpN -e robots=off

-r means recursively

-k means convert links. So links on the webpage will be localhost instead of

-p means to get all webpage resources so obtain images and javascript files to make the website work properly.

-N is to retrieve timestamps so if local files are newer than files on remote website skip them.

-e is a flag option it needs to be there for the robots=off to work.

robots=off means ignore robots file.

 -A,  --accept=LIST               comma-separated list of accepted extensions

  -m,  --mirror                    shortcut for -N -r -l inf --no-remove-listing

-k,  --convert-links             make links in downloaded HTML or CSS point to

                                     local file

 --user-agent "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Ubuntu Chromium/25.0.1364.160 Chrome/25.0.1364.160 Safari/537.22"



If you want to get the size of the HTTP Directory before downloading try the following script

#!/bin/bash# Info: Prepare wget logfile

# Do the spider magic
echo "### Crawling ${!#} website... ###"
sleep 2s
echo "### This will take some time to finish, please wait. ###"

wget \
  --recursive --level=inf \
  --spider --server-response \
  --no-directories \
  --output-file="$log""[email protected]"

echo "Finished with crawling!"
sleep 1s# Check if prepared logfile is usedif[-f "$log"];then# Calculate and print estimated website size
    echo "Estimated size: $(\
        grep -e "Content-Length" "$log" | \
        awk '{sum+=$2} END {printf("%.0f", sum / 1024 / 1024)}'\
    ) Mb"# Delete wget log file
    rm "$log"else
    echo "Unable to calculate estimated size."fi  


You can also download the script from here:

open up the terminal, click and drag the and include after the .sh file followed by the site you want to know the size of

0. /Users/USERNAME/Downloads/website-size-master/ -m -A* -pk -e robots=off



wget -m -A* -pk -e robots=off

4 Level argessive continue downloads

wget -m -r -l4 -H -t1 -nd -N -np -A* -c -e robots=off 

1. Download a single file from the Internet

2. Download a file but save it locally under a different name
wget ‐‐output-document=filename.html

3. Download a file and save it in a specific folder
wget ‐‐directory-prefix=folder/subfolder

4. Resume an interrupted download previously started by wget itself
wget ‐‐continue

5. Download a file but only if the version on server is newer than your local copy
wget ‐‐continue ‐‐timestamping

6. Download multiple URLs with wget. Put the list of URLs in another text file on separate lines and pass it to wget.
wget ‐‐input list-of-file-urls.txt

7. Download a list of sequentially numbered files from a server

8. Download a web page with all assets – like stylesheets and inline images – that are required to properly display the web page offline.
wget ‐‐page-requisites ‐‐span-hosts ‐‐convert-links ‐‐adjust-extension 


9. Download an entire website including all the linked pages and files
wget ‐‐execute robots=off ‐‐recursive ‐‐no-parent ‐‐continue ‐‐no-clobber

10. Download all the MP3 files from a sub directory
wget ‐‐level=1 ‐‐recursive ‐‐no-parent ‐‐accept mp3,MP3

11. Download all images from a website in a common folder
wget ‐‐directory-prefix=files/pictures ‐‐no-directories ‐‐recursive ‐‐no-clobber ‐‐accept jpg,gif,png,jpeg

12. Download the PDF documents from a website through recursion but stay within specific domains.
wget ‐‐mirror ‐‐,, ‐‐accept=pdf

13. Download all files from a website but exclude a few directories.
wget ‐‐recursive ‐‐no-clobber ‐‐no-parent ‐‐exclude-directories /forums,/support


14. Download files from websites that check the User Agent and the HTTP Referer
wget ‐‐refer= ‐‐user-agent=”Mozilla/5.0 Firefox/4.0.1″

15. Download files from a password protected sites
wget ‐‐http-user=labnol ‐‐http-password=hello123

16. Fetch pages that are behind a login page. You need to replace user and password with the actual form fields while the URL should point to the Form Submit (action) page.
wget ‐‐cookies=on ‐‐save-cookies cookies.txt ‐‐keep-session-cookies ‐‐post-data ‘user=labnol&password=123’
wget ‐‐cookies=on ‐‐load-cookies cookies.txt ‐‐keep-session-cookies


17. Find the size of a file without downloading it (look for Content Length in the response, the size is in bytes)
wget ‐‐spider ‐‐server-response

18. Download a file and display the content on screen without saving it locally.
wget ‐‐output-document – ‐‐quiet




How to change wget default directory

wget will download files where it is launched from: 

1. Change to the directory you wish it to be downloaded to first then run your wget command.

cd /home/yourname/Downloads

Then run your wget command


2.Add the directory to the wget command like this.

wget -O /home/yourname/Downloads


Make a Bootable USB from an ISO File


Extract 7zip on MacOS


Solution to no Telnet available in High Sierra

Even know you have telnet as an option in Terminal (Shell -> New Remote Connection) you still get this lovely message once you select "Connect"

[Command not found: telnet]

[Could not create a new process and open a pseudo-tty.]

Solution provided by Insomniac86  (be sure to right click and run on the binaries after extraction)

Just copy the Telnet and FTP binaries from macOS 10.12 located in /usr/bin/telnet & /usr/bin/ftp and copy to /usr/local/bin/ in macOS 10.13. Here’s a zip of the binaries if you don’t have a previous install to copy from.



Aptana Studio 3 - Will not load on Mac OS High Sierra.


  1. Open Finder and navigate to "Applications -> Aptana"
  2. Right-click on the Aptana executable and click show contents
  3. Navigate to "Content -> MacOS"
  4. Double click on AptanaStudio3
  5. You will get a popup saying you need legacy Java SE 6
  6. Click "More Info..." button and download and install it (very slow download, just wait it out)
  7. Once installed double click the AptanaStudio icon in step 4 and Aptana Studio 3 will open
  8. You will need to use that as the shortcut as the Aptana icon from the installation will still not work.



WIM file mounted by another User? How to unmount?

dism /get-MountedWiminfo

dism /cleanup-wim


 SSL installation & Handshake failure:

ERROR (54) Connection reset by peer (TLS code: SQUID_ERR_SSL_HANDSHAKE)

The first step to install an SSL first requires a CSR and Key generated at the same time from your Web Host.

Then you need an SSL authority to generate your CA files, sslTrust or ComodoSSL are some examples of SSL authorities. Then you need to add the cert and privateKey to your web hosting platforms like cPanel or Odin.

The handshake SSL failure comes from a failed trust. In the case where a DMZ may be used in this case pfsense you will have to make sure the issued CA certificates are installed in the System -> Certification Manager -> CA’s and the main domain issues cert from your SSL issuer is in the Certificates section. You then have to make sure that certificate is selected in the System -> Advanced -> Admin Access for the pfsense box and the reverse proxy ‘Reverse SSL Certificate‘ area. 

For a local DNS you need to install the certificate on the machine (Windows->Start->Run->mmc->file>add & remove snap-in > Certificates local machine>import cert)

If the problem still arises you’ll need to make sure the certificate is in the server certificate location and the binding for secure port 445 is using the SSL certificate.                                                  


How to install pip on Windows (Python):

The official steps to install pip on windows is to download the file and run it (python

however, the steps provided on can throw out some annoying errors at you like:

"Could not find version that satisfies the requirement wheel (from versions: ) No matching distribution found for wheel"

From what I can make out this could be a proxy related issue, however, there are also other options as well and I would like to list them to help you out:

1. Try get some prepared versions of popular Python packages here: and #pip (replace #setuptools with #pip)

2. For me, the method was to add C:\Python27\Scripts to the environmental variables (make sure you can see the pip.exe in the scripts folder in your python directory). You can test this variable works by launching CMD (right click 'run as Administrator') and typing in 'pip'. How to set environmental variables? Right Click on the 'start menu/Windows logo usually bottom left corner', select 'System', 'Advanced system settings' -> 'Advanced' -> 'Environment Variables', under 'System variables', you will find the variable 'Path', add the folder with the required python exe file like ":C:\Python27\Scripts" I find a "\" before and after the : and end of the line can have an impact on Windows 10. Adding a Proxy to the commandline: If you're behind a PROXY server such as a hotel or in your work environment you can add the proxy adds into your System Variables in environment variables by adding one like so (click New):

Variable Name: http_proxy

Variable value: http://proxy_address:portnumber 

SECURE sessions use:

Variable Name: https_proxy

Variable value: http://username:[email protected]_address:portnumber

Replace username, password, proxy_address and portnumber with what applies to your network. A simple test could be to install Django: pip install Django==1.5.8


wxPython on Mac

Trying to install youtube-dl-gui on a Mac

example: get an error like the following:

Macintosh:youtube-dl-gui-master username$ python

“No module named wx”


You need to run the following:

sudo easy_install pip


You should get something like this:

Searching for pip


Best match: pip 8.1.2


All your python packages should be located here: /Library/Python/2.7/site-packages

After downloading wxPython, in this case it was wxPython3.0-osx-coca-py2.7.pkg, I got the following error:

 wxPython3.0-osx-cocoa-py2.7.pkg is damaged and can’t be opened. You should eject the disk image.


According to #14523 this is caused because the package is not signed. Work around for some was to turn off gatekeeper (System Preferences, Security & Privacy, General, select “Allow apps downloaded from: Anywhere radio button”.

Via Terminal sudo installer -pkg /path/to/wxPython.pkg -target /


In my case this did not work, I got the error that there was no software to install. This lead me to install ‘Homebrew’ the bellow command installs Homebrew from

/usr/bin/ruby -e "$(curl -fsSL"


I could then run the following command: brew install --python wxmac

I then ran the following to create a symbolic link between wx to the python library: sudo ln -s /usr/local/Cellar/wxmac/ /Library/Python/2.7/site-packages/wx 

‘brew link wxpython’ is another way to create the link.


AGAIN, this didn’t work, so I downloaded and installed MacPorts and ran the following command in a new terminal window:

sudo port install python27 py27-wxpython

 then: xcode-select --install


Then I get the next error:

Error: Port py27-wxpython not found


SOLUTION wxPython on macOS Sierra

So the last option was to download Xcode (xcode-select --install) & download wxPython-src-

 Extract the tarball and replace

#include <WebKit/WebKit.h> (in src/osx/ with #include <WebKit/WebKitLegacy.h>.


Then navigate to the src code and run the following commands (all after $)

1. Change into your extracted directory: cd wxPython-src-

2. PREFIX=/usr/local

3. ,/configure --prefix=$PREFIX --enable-shared --enable-monolithic --enable-unicode --enable-std_string --enable-display --with-opengl --with-osx_cocoa --with-libjpeg --with-libtiff --with-libpng --with-zlib --enable-dnd --enable-clipboard --enable-webkit --enable-svg --with-expat --with-macosx-version-min=10.11 --enable-universal_binary=i386,x86_64 --disable-precomp-headers

4. sudo make install

5. cd wxPython




If you then run: python -c "import wx; print wx.version()"

you will hopefully get a return like this: osx-cocoa (classic)


After all this I was able to run the youtube-dl-gui installer: sudo python install

 Then I could launch the program by typing in the command prompt: youtube-gl-gui


Alternative untested options:

Use : conda install -c noaa-orr-erd wxpython=

Try this script:


Other References:


How to Run Python in 32bit mode:

#!/usr/bin/env python-32


Find out wx version:

python -c "import wx; print wx.version()"


Find out code-select path:

xcode-select -print-path

result is: /Applications/




Excel Visual Basic Applications (VBA) on a MAC not reading .removeduplicate command:

Example code that will not work on a mac: Sheets("example sheet name").Range("A1:J250").RemoveDuplicates Columns:=Array(1, 2, 3, 4), Header:=xl

No Solution, try the folowing code: Dim LR As Long, i As Long LR = Range("A" & Rows.Count).End(xlUp).Row For i = LR To 1 Step -1 If WorksheetFunction.CountIf(Columns("A"), Range("A" & i).Value) > 1 Then Range("A" & i).Delete shift:=xlShiftUpNext i



Recover an Office 2016 document on a Windows Machine that didnt Autosave:

Have you ever been working on a file to have it just vanish. Here are some things you can do. Navigate to your profiles root directory. C:\Users\YOURUSER and do a seach for %temp%\pub*.temp (in this case, pub is for Microsoft Publisher). Usually, if you arrange by date in here: C:\Users\USERPROFILE\appdata\local\temp the extention will have .temp or tmp after it if you have file extentions enabled


Lync Password Prompt constantly when Lync has started and logged in (Mac OS X, commonly experienced after a Mac Upgrade).

Solution: Finder -> Go - Folder:/Users/USERNAME/Keychain delete OC_KeyContainer__'[email protected]'


Group Policy results To find out what policies are getting applied to your work station

You can run the following commands: Gpresult or Rsop.msc If you would like a nice snap-in like look & feel: Gpresult /h report.html /f (the HTML file will usually get stored in your root director of your profile C:\Users\USERNAME\report.html) If you want to generate a result for another user: Gpresult /h report.html /user:DOMAIN\USERNAME /f


Install Sierra with Mac App Store:


Safari: "Could not open the page, too many redirects"

  1. Safari, choose Safari > Preferences.
  2. Click the Privacy icon to view Privacy settings.
  3. Click the Details button that appears under the Remove All Website Data button.
  4. Search for the name of the website that you are trying to view.
  5. Click the Remove button.
  6. Close the Safari Preferences window.
  7. Download and install Onyx

Modx Infinite save loop (stuck at Saving)

1. Update Modx

2. Files -> Open up index.php and save

Otherwise you may be getting 403 forbidden error, whitelisting mod_security rules


Modx - Formit extension not sending emails:


QuickEmail is a package that can preview the resource it installs. It can help diagnose email problems.

Go to System -> System Settings and put SMTP in the search filter box at the upper right.

these settings will work with Gmail:

SMTP Authentication: Yes
SMTP Connection Prefix: tls
SMTP Hosts:
SMTP Password: yourGmailPassword
SMTP Port: 465
SMTP User: yourGmailUsername
Use SMTP: Yes

Example Form:

"index.php?id=2" method="post" id="contact-form">
        "text" name="name" maxlength="60"  value="" />
        "text" name="email" size="40" maxlength="40"  value="" />
        "hidden" name="phone" value="" />