Skip to content

Instantly share code, notes, and snippets.

Avatar

Daniel Harper djhworld

View GitHub Profile
View fix-suspend.sh
#!/bin/bash
# could probably get this to work with GNU grep but using ripgrep for now
check=$(cat /proc/acpi/wakeup | /usr/bin/rg XHC1 | /usr/bin/rg disabled)
if [[ $check == '' ]]; then
echo "Wakeup from XHC1 is enabled - disabling!"
echo XHC1 > /proc/acpi/wakeup
else
@djhworld
djhworld / count.rs
Created Dec 30, 2018
improved version
View count.rs
use std::collections::HashMap;
use std::io;
use std::io::BufRead;
struct Counter {
items: HashMap<String, usize>,
}
impl Counter {
fn new() -> Counter {
View count.go
package main
import (
"bufio"
"fmt"
"os"
)
type Counter struct {
uniqueItems map[string]int
View keybase.md

Keybase proof

I hereby claim:

  • I am djhworld on github.
  • I am djhworld (https://keybase.io/djhworld) on keybase.
  • I have a public key ASBuDsFo40OPjQUbBHDIr1dXS_7QOXG7NGajhjKYUIzVnQo

To claim this, I am signing this object:

View test-gpio-pi-zero.sh
#!/bin/bash
RED=`tput setaf 1`
GREEN=`tput setaf 2`
RESET=`tput sgr0`
# test devised by gordonDrogon
function testpin {
pin=$1
echo -n "Testing GPIO pin #$pin..."
gpio mode $pin in
View BeadSort.java
public class BeadSort {
private static final int BEAD = 1;
public void sort(int[] array) {
int[][] abacus = populateAbacusAndWipeInput(array);
for (int pole = 0; pole < abacus[0].length; pole++) {
int poleRow = abacus.length - 1;
for (int currentRow = poleRow; currentRow >= 0; currentRow--) {
if (abacus[currentRow][pole] == BEAD) {
@djhworld
djhworld / nexus-android-update.sh
Created Oct 24, 2015
flash nexus 5 to newer android version
View nexus-android-update.sh
function prompt {
echo $1
read -p "Ready? " -n 1 -r
echo # (optional) move to a new line
if [[ $REPLY =~ ^[Yy]$ ]]
then
echo
else
echo "Quitting"
exit
View hammerhead-from-ktu84p-to-lrx21o.md
  UPDATE `NEXUS 5` 
     SET `VERSION`='5.0', `BUILD`='LRX21O', `RECOVERY`='CUSTOM', `ROOTED`=1 
   WHERE `VERSION`='4.4.4' && `BUILD`='KTU84P' && `RECOVERY`='CUSTOM' && `ROOTED`=1 
         && `WANNA_KEEP_USERDATA`=1;

A manual OTA for rooted hammerheads, quasi.

@djhworld
djhworld / ngrams.go
Created Apr 11, 2014
Ngrams algorithm
View ngrams.go
package main
import (
"fmt"
"os"
"strconv"
"strings"
)
func main() {
View seesaw-repl-tutorial.clj
; A REPL-based, annotated Seesaw tutorial
; Please visit https://github.com/daveray/seesaw for more info
;
; This is a very basic intro to Seesaw, a Clojure UI toolkit. It covers
; Seesaw's basic features and philosophy, but only scratches the surface
; of what's available. It only assumes knowledge of Clojure. No Swing or
; Java experience is needed.
;
; This material was first presented in a talk at @CraftsmanGuild in
; Ann Arbor, MI.