Skip to content

Instantly share code, notes, and snippets.

View trev-dev's full-sized avatar
:electron:
Free as in Freedom

Trev trev-dev

:electron:
Free as in Freedom
View GitHub Profile
@trev-dev
trev-dev / motivation.sh
Created April 5, 2023 15:29
Motivational Cowsay
lastIncident=20230114
days_since=$(( ($(date +%s) - $(date -d $lastIncident +%s)) / (60*60*24) ))
sayings=(
"Don't be sorry, be better."
"Don't get caught up in the details."
"Deliver something every day."
"${days_since} days since last Emacs incident."
)
@trev-dev
trev-dev / shell.nix
Created March 3, 2023 21:19
Java 18 with Lombok nix shell
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
buildInputs = with pkgs; [
jdk18
maven
lombok
];
JAVA_HOME="${pkgs.jdk18}";
LOMBOK_JAR="${pkgs.lombok}/share/java/lombok.jar";
@trev-dev
trev-dev / aliases.muttrc
Created October 1, 2022 04:51 — forked from guiniol/aliases.muttrc
neomutt configuration with notmuch
alias YOU YOUR NAME <email@somewhere.com>
@trev-dev
trev-dev / config.scm
Created June 23, 2022 16:40
Home mcron setup
;; This "home-environment" file can be passed to 'guix home reconfigure'
;; to reproduce the content of your profile. This is "symbolic": it only
;; specifies package names. To reproduce the exact same profile, you also
;; need to capture the channels being used, as returned by "guix describe".
;; See the "Replicating Guix" section in the manual.
(add-to-load-path (dirname (current-filename)))
(use-modules
(srfi srfi-171 meta)
(gnu home)
(gnu packages)
@trev-dev
trev-dev / mailsync.scm
Created June 21, 2022 21:05
Notmuch sync script
#!/run/current-system/profile/bin/guile -s
!#
(define (nm-tag terms)
(system* "notmuch" "tag" (car terms) "--" (cdr terms)))
(define %post-sync-terms '(("+inbox" . "path:/.*\\/INBOX/")
("+draft" . "path:/.*\\/Drafts/")
("+sent" . "path:/.*\\/Sent/")
("+trash" . "path:/.*\\/Trash/")
@trev-dev
trev-dev / add-to-existing-namespaces.js
Created February 18, 2022 22:55 — forked from idettman/add-to-existing-namespaces.js
JavaScript: JSDoc Advanced Tips
/* https://leahayes.wordpress.com/2011/08/28/documenting-javascript-with-jsdoc3/
Namespaces can still be documented when a more abstract mechanism is used. @lends allows members to be added to an existing namespace:
*/
/**
* Root namespace
* @namespace root
*/
$namespace('root', /** @lends root **/ {
/**

Keybase proof

I hereby claim:

  • I am trev-dev on github.
  • I am trev_dev (https://keybase.io/trev_dev) on keybase.
  • I have a public key ASDNC-db0OmFfkkBntl20Lwqro8iArTpycwiynH5KLOt0wo

To claim this, I am signing this object:

@trev-dev
trev-dev / rollup.config.js
Last active July 17, 2021 01:52
Svelte Rollup
import path from 'path'
import ts from '@rollup/plugin-typescript'
import svelte from 'rollup-plugin-svelte'
import sveltePreprocess from 'svelte-preprocess'
import scss from 'rollup-plugin-scss'
import commonjs from '@rollup/plugin-commonjs'
import css from 'rollup-plugin-css-only'
import resolve from '@rollup/plugin-node-resolve'
import filesize from 'rollup-plugin-filesize'
@trev-dev
trev-dev / .xinitrc
Last active June 17, 2021 22:12
Super Simple "Display Manager" for X11
eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)
export SSH_AUTH_SOCK
CHOICE="${SESSION_CHOICE:-i3}";
exec $CHOICE