Skip to content

Instantly share code, notes, and snippets.

// Google sheets to calendar.
function myFunction() {
var sheets = SpreadsheetApp.getActive().getSheets();
var cal = CalendarApp.getCalendarsByName('Meal Plan')[0];
if (cal) {
cal.deleteCalendar();
}
cal = CalendarApp.createCalendar('Meal Plan', {
FROM azul/zulu-openjdk-alpine:11 AS builder
WORKDIR /
RUN jlink --no-header-files --no-man-pages --compress=2 --strip-debug --add-modules java.base,java.compiler,java.desktop,java.instrument,java.logging,java.management,java.naming,java.scripting,java.security.jgss,java.sql,java.xml,jdk.attach,jdk.jdi,jdk.management,jdk.unsupported,jdk.crypto.ec --output /build/jre
FROM alpine:3
COPY --from=builder /build/jre /usr/local/java
RUN ln -sf /usr/local/java/bin/java /usr/bin/java
@richmidwinter
richmidwinter / Dockerfile
Last active January 13, 2020 14:36
Slim JDK container on Alpine Linux with non-root user
FROM azul/zulu-openjdk-alpine:11 AS builder
WORKDIR /
RUN /usr/lib/jvm/default-jvm/bin/jlink --no-header-files --no-man-pages --compress=2 --strip-debug --add-modules java.base,java.compiler,java.desktop,java.instrument,java.logging,java.management,java.naming,java.scripting,java.security.jgss,java.sql,java.xml,jdk.attach,jdk.jdi,jdk.management,jdk.unsupported,jdk.crypto.ec --output /build/jre
FROM alpine
COPY --from=builder /build/jre /usr/local/java
COPY ld-musl-x86_64.path /etc/ld-musl-x86_64.path
RUN apk add --no-cache libcap
RUN adduser -S java
RUN ln -sf /usr/local/java/bin/java /usr/bin/java
@richmidwinter
richmidwinter / index.html
Created April 30, 2026 13:22
Review your obligations as proposed under the Cyber Security and Resilience (Network and Information Systems) Bill — the UK government's proposed update to the NIS 2018 regulations.
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>UK Cyber Compliance Explorer</title>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link
href="https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700&family=Epilogue:ital,wght@0,300;0,400;0,500;1,300&display=swap"
rel="stylesheet"