This tutorial will show you how to install the Let's Encrypt ACME client dehydrated.
To install dehydrated we simply clone it's repository:
git clone https://github.com/lukas2511/dehydrated.git /opt/dehydrated
#include <windows.h> | |
#ifndef VK_MEDIA_NEXT_TRACK | |
#define VK_MEDIA_NEXT_TRACK 0xB0 | |
#endif | |
#ifndef VK_MEDIA_PREV_TRACK | |
#define VK_MEDIA_PREV_TRACK 0xB1 | |
#endif | |
#ifndef VK_MEDIA_STOP | |
#define VK_MEDIA_STOP 0xB2 |
This tutorial will show you how to install the Let's Encrypt ACME client dehydrated.
To install dehydrated we simply clone it's repository:
git clone https://github.com/lukas2511/dehydrated.git /opt/dehydrated
# send logs for all traffic (including non-html) to google analytics | |
# | |
# in server block: | |
# set $google_analytics_id "UA-THECORRECT-ID"; | |
# include /srv/nginx/google_analytics; | |
# | |
# in location blocks: | |
# post_action @ga; | |
# | |
# notes: post_action has been referred to by nginx devs as a "dirty hack" and this approach may stop working one day. |
// ==UserScript== | |
// @name Open YouTube App | |
// @version 1.0.2 | |
// @author asportnoy | |
// @match *://*.youtube.com/* | |
// @downloadURL https://gist.github.com/asportnoy/628b820184297f5fe296c1a5b79c8000/raw/open-youtube-app.user.js | |
// @updateURL https://gist.github.com/asportnoy/628b820184297f5fe296c1a5b79c8000/raw/open-youtube-app.user.js | |
// @homepage https://gist.github.com/asportnoy/628b820184297f5fe296c1a5b79c8000/ | |
// ==/UserScript== | |
if (window.location.pathname === '/redirect') return; |
// xorEncode.js - Topcat Software LLC. 2011 | |
// bitwise XOR cipher for javascript | |
// http://www.topcat.hypermart.net/index.html | |
// | |
// referencing the script in your HTML: | |
// | |
// <html> | |
// <head> | |
// <script type="text/javascript" src="xorEncode.js"></script> | |
// </head> |
#include <stdint.h> | |
#include <stdio.h> | |
#include <stdlib.h> | |
// munged from https://github.com/simontime/Resead | |
namespace sead | |
{ | |
class Random | |
{ |
This document is research for the selection of a communication platform for robot-net.
The purpose of this component is to enable rapid, reliable, and elegant communication between the various nodes of the network, including controllers, sensors, and actuators (robot drivers). It will act as the core of robot-net to create a standardized infrastructure for robot control.
Requirements:
When the directory structure of your Node.js application (not library!) has some depth, you end up with a lot of annoying relative paths in your require calls like:
const Article = require('../../../../app/models/article');
Those suck for maintenance and they're ugly.
With the addition of ES modules, there's now no fewer than 24 ways to load your JS code: (inline|not inline) x (defer|no defer) x (async|no async) x (type=text/javascript | type=module | nomodule) -- and each of them is subtly different.
This document is a comparison of various ways the <script>
tags in HTML are processed depending on the attributes set.
If you ever wondered when to use inline <script async type="module">
and when <script nomodule defer src="...">
, you're in the good place!
Note that this article is about <script>
s inserted in the HTML; the behavior of <script>
s inserted at runtime is slightly different - see Deep dive into the murky waters of script loading by Jake Archibald (2013)
#!/bin/bash | |
# A bash script to update a Cloudflare DNS A record with the external IP of the source machine | |
# Used to provide DDNS service for my home | |
# Needs the DNS record pre-creating on Cloudflare | |
# Proxy - uncomment and provide details if using a proxy | |
#export https_proxy=http://<proxyuser>:<proxypassword>@<proxyip>:<proxyport> | |
# Cloudflare zone is the zone which holds the record |