Skip to content

Instantly share code, notes, and snippets.

@dd-han
dd-han / README.md
Last active January 15, 2022 19:12
using Cloudflare as DDNS in ASUSWRT-Merlin firmware

ASUSWRT-MERLIN custom DDNS Script for Cloudflare

for Cloudflare as DDNS

using Cloudflare API v4

Using

put ddns-start at /jffs/scripts/, setting values and set DDNS type to Custom at web Admin panel.

@dd-han
dd-han / nginx-mobile-redirect
Last active October 22, 2021 11:09 — forked from dangayle/nginx-mobile-redirect
NGINX Mobile redirect
#with regex from http://detectmobilebrowsers.com/
#map suggestion via kolbyjack
#not tested
map $http_user_agent $mobile_agent{
default 0;
~* "android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino" 1;
~* "^(1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibr
@dd-han
dd-han / build-nginx.ps1
Last active March 30, 2021 04:57
Build Nginx on Windows Script (PowerShell)
$PCRE_VERSION='8.42'
$ZLIB_VERSION='1.2.11'
$OPENSSL_VERSION='1.0.2p'
$NGINX_VERSION='release-1.15.3'
$NGINX_RTMP_VERSION='master'
# using standlone minGW
#$MSYS_PATH='C:\MinGW\msys\1.0\bin'
# using gitbash
$MSYS_PATH='C:\Program Files\Git\usr\bin'
@dd-han
dd-han / ddns-start
Last active January 25, 2021 15:03
put file in /jffs/ after flash MERLIN firmware
#!/bin/sh
EMAIL="username@gmail.com"
ZONEID="your_zone_id"
RECORDID="to_update_record_id"
RECORDNAME="to_update_name"
RECORDTTL="1"
API="your_api_key"
IP=${1}
@dd-han
dd-han / cloudflare_update.script
Created February 6, 2018 05:52 — forked from kiler129/cloudflare_update.script
Automatic script for Mikrotik RouterOS updating record on CloudFlare.
#########################################################################
# ================================================== #
# $ Mikrotik RouterOS update script for CloudFlare $ #
# ================================================== #
# #
# - You need a CloudFlare account & api key (look under settings), #
# a zone and A record in it #
# - All variables in first section are obvious, except CFid, #
# To obtain CFid use following command in any unix shell: #
# curl https://www.cloudflare.com/api_json.html -d 'a=rec_load_all' -d 'tkn=YOUR_API_KEY' -d 'email=email@example.com' -d 'z=domain.com'|python -mjson.tool
@dd-han
dd-han / README.md
Created August 17, 2018 16:09
新版的 KanColle Viewer 工具,配合 1366x768 的螢幕 +Firefox

KanColle Custom Viewer

因為之前用 VBS 寫給 IE 的 Scritp 不能用(IE11跑不出畫面),Chrome 在沒有顯卡的 VM 裡面超慢,所以就用 Firefox 把系統兜起來了。

設定

Firefox 需要調整 about:config 裡面的幾個參數:

  • dom.disable_window_open_feature.status
  • dom.disable_window_open_feature.resizable
  • dom.disable_window_open_feature.location
@dd-han
dd-han / jsScript.js
Last active August 17, 2018 13:51
kancolle-best-window
document.getElementById('area-game').style['text-align'] = 'left';
var borderX = (window.outerWidth - window.innerWidth);
var borderY = (window.outerHeight - window.innerHeight);
var frame = document.getElementById('game_frame');
var rectHeight = frame.getBoundingClientRect().top;
var toY = rectHeight + 16 + window.pageYOffset;
/*
var toX = (document.getElementById('adFlashWrap').style.width - document.getElementById('maintenanceswf').style.width) / 2;
@dd-han
dd-han / script.sh
Last active June 3, 2017 08:31
ArchInstall
#!/bin/bash
function main() {
if curl www.google.com > /dev/null ; then
echo net OK
else
echo no net && exit 3
fi
if mount | grep /mnt; then
echo mnt OK
@dd-han
dd-han / minecraft@.service
Last active April 30, 2017 14:45 — forked from winny-/gist:bb17853ffc76fbb9b039
Minecraft systemd unit file that uses tmux instead of screen
root@dd-han-minecrafts:~# cat /etc/systemd/system/minecraft@.service
[Unit]
Description=Minecraft Server %i
After=network.target
[Service]
#PrivateTmp=true
WorkingDirectory=/home/dd-han/minecraft/%i
User=dd-han
Type=oneshot
@dd-han
dd-han / sed_file
Last active April 9, 2017 09:14
Taiwan Phone Number formater
# Cellphone and 080X-XXX-XXX free/paid phone number
s/^09[0-9][0-9]/&-/g; s/^09[0-9][0-9]-[0-9][0-9][0-9]/&-/g;
s/^0[1-7]0/_&-/g;
s/^080[0-9]/&-/g; s/^080[0-9]-[0-9][0-9][0-9]/&-/g;
# ref: https://zh.wikipedia.org/wiki/中華民國長途電話區號表
# normal home phone number
s/^037/(037) /g;
s/^049/(&) /g;
s/^0826/(&) /g;