The popular open-source contract for web professionals by Stuff & Nonsense
- Originally published: 23rd December 2008
- Revised date: March 15th 2016
- Revised by Totallag : Aug 10th 2017
| When/If you run into the following when trying to install @vue/cli similar: | |
| Maximum call stack size exceeded on npm install | |
| Reinstall NPM: | |
| https://github.com/brock/node-reinstall | |
| Do perms if installed as root | |
| https://stackoverflow.com/questions/51811564/sh-1-node-permission-denied |
| sudo apt install -y apt-transport-https lsb-release ca-certificates | |
| sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg | |
| sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' | |
| sudo apt update | |
| sudo apt-get install -y php7.3 php7.3-common | |
| sudo apt-get install -y php7.3-curl php7.3-xml php7.3-zip php7.3-gd php7.3-mysql php7.3-mbstring php7.3-sqlite3 | |
| sudo apt-get purge -y php7.0 php7.0-common |
| <# | |
| .SYNOPSIS | |
| Sets a known folder's path using SHSetKnownFolderPath. | |
| .PARAMETER KnownFolder | |
| The known folder whose path to set. | |
| .PARAMETER Path | |
| The target path to redirect the folder to. | |
| .NOTES | |
| Forked from: https://gist.github.com/semenko/49a28675e4aae5c8be49b83960877ac5 | |
| #> |
| #!/bin/bash | |
| HOSTNAME=$1 | |
| LOGFILE=$HOSTNAME.log | |
| Current_IP=$(host $HOSTNAME | head -n1 | cut -f4 -d ' ') | |
| if [ ! -f $LOGFILE ]; then | |
| /usr/sbin/ufw allow from $Current_IP to any app DNS | |
| echo $Current_IP > $LOGFILE | |
| else |
| #!/bin/bash | |
| createTunnel() { | |
| /usr/bin/ssh -N -R 2222:localhost:22 [email protected] | |
| if [[ $? -eq 0 ]]; then | |
| echo Tunnel to jumpbox created successfully | |
| else | |
| echo An error occurred creating a tunnel to jumpbox. RC was $? | |
| fi | |
| } | |
| /bin/pidof ssh |
| Set the environment variable `CHOKIDAR_USEPOLLING=1` and Chokidar will switch to polling mode. | |
| i.e. | |
| "scripts": { | |
| "lint:js": "eslint --ignore-path .gitignore --fix .", | |
| "lint:css": "stylelint \"src/**/*.css\"", | |
| "lint": "npm-run-all --parallel lint:*", | |
| "start": "CHOKIDAR_USEPOLLING=1 phenomic start", | |
| "build": "phenomic build", | |
| "pretest": "npm run lint", | |
| "test": "npm run build" |
| apt-get install unattended-upgrades apt-listchanges | |
| dpkg-reconfigure -plow unattended-upgrades |
| firewall { | |
| all-ping enable | |
| broadcast-ping disable | |
| group { | |
| address-group Chromecast { | |
| address 239.255.255.250 | |
| description "Use /32" | |
| } | |
| address-group Private-RFC-Ranges { | |
| address 10.0.0.0/8 |
| set traffic-control advanced-queue root queue 1 bandwidth 50mbit | |
| set traffic-control advanced-queue root queue 1 attach-to global | |
| set traffic-control advanced-queue queue-type sfq SFQ_DOWN | |
| set traffic-control advanced-queue queue-type fq-codel FQCODEL_UP ecn disable | |
| set traffic-control advanced-queue queue-type fq-codel FQCODEL_DOWN target 5ms | |
| set traffic-control advanced-queue queue-type fq-codel FQCODEL_DOWN quantum 1514 | |
| set traffic-control advanced-queue queue-type fq-codel FQCODEL_DOWN limit 1001 | |
| set traffic-control advanced-queue queue-type fq-codel FQCODEL_DOWN interval 50ms | |
| set traffic-control advanced-queue queue-type fq-codel FQCODEL_DOWN flows 1024 | |
| set traffic-control advanced-queue queue-type fq-codel FQCODEL_DOWN ecn enable |