Skip to content

Instantly share code, notes, and snippets.

Michael Neil mneil

Block or report user

Report or block mneil

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
mneil / Dockerfile
Created Apr 19, 2019
MCUXpress Docker Build
View Dockerfile
FROM ubuntu:16.04
LABEL Description="Image for buiding arm project with mcuxpresso"
ENV IDE_VERSION 10.3.0_2200
COPY ./mcuxpressoide-${IDE_VERSION}.x86_64.deb.bin /work
mneil / Upstart Twistd Server
Last active May 8, 2017
Upstart Twistd Server
View Upstart Twistd Server
# /etc/init/{taskname}.conf
# This task is run on startup to run miniweb which is a tiny static server
description "Run the miniweb web form"
start on (filesystem and net-device-up IFACE!=lo)
exec sudo twistd -no web --path /path/to/web/dir --port="tcp:8000"
mneil /
Created May 3, 2017
Python Static Server w/SSL
import BaseHTTPServer, SimpleHTTPServer
import ssl, os, sys
port = int(sys.argv[1]) if len(sys.argv) > 1 else 4443
cwd = os.path.dirname(os.path.realpath(__file__))
pem = os.path.join( cwd, 'mycert.pem' )
class MyHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
def end_headers(self):
mneil / Basic Upstart
Created Apr 4, 2017
Upstart script to launch miniweb static server at boot time and serve a folder.
View Basic Upstart
# /etc/init/{taskname}.conf
# This task is run on startup to run miniweb which is a tiny static server
description "Run the miniweb web form"
start on (filesystem and net-device-up IFACE!=lo)
exec /usr/bin/miniweb -p 8000 -r /home/helios/Documents/ticket-config
mneil / kioskmode.bat
Created Feb 15, 2016
Kill chrome and open a new page in kiosk mode
View kioskmode.bat
taskkill /F /IM Chrome.exe /T
### Open a local index.html file in the same directory as this batch file
# start chrome --kiosk --profile-directory=Default --app="%~dp0/index.html"
### Open a website URL
start chrome --kiosk --profile-directory=Default --app=""
mneil / gist:11c9d355ea8c39e186ba
Last active Aug 29, 2015
Muut Ruby Federated Identites Example
View gist:11c9d355ea8c39e186ba
@user = {
:user => {
:id => 'johndoe', # required
:displayname => 'John Doe', # required
:email => '',
:avatar => '//',
:is_admin => true
require 'digest/sha1'
mneil / gist:044bf07cc4fa9b237ac7
Created Feb 13, 2015
Muut modify display time for FF and Chrome
View gist:044bf07cc4fa9b237ac7
MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
function time(target){
target.innerHTML = target.time;
moot("format", function(body, post) {
var $ = jQuery;
var $post = $(body).parents('.m-post')[0];
mneil / mootloader.php
Created Feb 4, 2015
moot joomla loader muut patch
View mootloader.php
* MootLoader
* @version $Id: mootloader.php 1.0.1
* @date 04/15/2013
* @sikumbang @erwinschro @mneil
* @site
* @package Joomla 2.5.x
* @license GNU General Public License version 2 or later; see LICENSE.txt
mneil / gist:58555011ed3ab3b8a0c7
Last active Mar 16, 2016
Muut Google Sites Widget
View gist:58555011ed3ab3b8a0c7
<ModulePrefs title="Preferences for __UP_forum__" height="400"/>
<UserPref name="myforum" display_name="Muut Playground" default_value="playground" datatype="string"/>
<Content type="html">
<div id="muut-gadget"> <script type="text/javascript">
var prefs = new gadgets.Prefs();
var forum = prefs.getString("myforum");
document.write('<a class="muut" href="'+forum+'">'+forum+'</a>');
mneil / gist:d34885206e4c8cc7a7a7
Last active Aug 29, 2015
Validate Muut Federated Identity Embed
View gist:d34885206e4c8cc7a7a7
function sha1(e){var t=function(e,t){var n=e<<t|e>>>32-t;return n};var n=function(e){var t="";var n;var r;for(n=7;n>=0;n--){r=e>>>n*4&15;t+=r.toString(16)}return t};var r;var i,s;var o=new Array(80);var u=1732584193;var a=4023233417;var f=2562383102;var l=271733878;var c=3285377520;var h,p,d,v,m;var g;e=Base64._utf8_encode(e);var y=e.length;var b=[];for(i=0;i<y-3;i+=4){s=e.charCodeAt(i)<<24|e.charCodeAt(i+1)<<16|e.charCodeAt(i+2)<<8|e.charCodeAt(i+3);b.push(s)}switch(y%4){case 0:i=2147483648;break;case 1:i=e.charCodeAt(y-1)<<24|8388608;break;case 2:i=e.charCodeAt(y-2)<<24|e.charCodeAt(y-1)<<16|32768;break;case 3:i=e.charCodeAt(y-3)<<24|e.charCodeAt(y-2)<<16|e.charCodeAt(y-1)<<8|128;break}b.push(i);while(b.length%16!=14){b.push(0)}b.push(y>>>29);b.push(y<<3&4294967295);for(r=0;r<b.length;r+=16){for(i=0;i<16;i++){o[i]=b[r+i]}for(i=16;i<=79;i++){o[i]=t(o[i-3]^o[i-8]^o[i-14]^o[i-16],1)}h=u;p=a;d=f;v=l;m=c;for(i=0;i<=19;i++){g=t(h,5)+(p&d|~p&v)+m+o[i]+1518500249&4294967295;m=v;v=d;d=t(p,30);
You can’t perform that action at this time.