Instantly share code, notes, and snippets.

View layered-examples.nix
grahamc@Morbo> docker run --user 1000:1000 -it --rm layered-on-top:latest ~/projects/nixpkgs
total 36
drwxr-xr-x 1 0 0 4096 Dec 4 17:39 .
drwxr-xr-x 1 0 0 4096 Dec 4 17:39 ..
-rwxr-xr-x 1 0 0 0 Dec 4 17:39 .dockerenv
dr-xr-xr-x 2 0 0 4096 Jan 1 1970 bin
drwxr-xr-x 5 0 0 360 Dec 4 17:39 dev
drwxr-xr-x 2 0 0 4096 Dec 4 17:39 etc
drwxrwxrwx 1 0 0 4096 Dec 4 17:39 example-output
dr-xr-xr-x 3 0 0 4096 Jan 1 1970 lib
View example.nix
let pkgs = import <nixpkgs> {}; in
# 11. Create an image on top of a layered image
pkgs.dockerTools.buildImage {
name = "mutable-directory";
tag = "latest";
extraCommands = ''
mkdir ./example-output
chmod 777 ./example-output
'';
config.Cmd = [ "${pkgs.bash}/bin/bash"
View gist:f1ffb71edcb0e5d6214bac201c67cc51
-------- Doc test execution failure --------
ID: function-library-lib.attrsets.getOutput-example
Evaluating the Nix expression:
{
actual = let
lib = import /home/grahamc/projects/nixpkgs/lib;
context = (
{
View org.nixos.bootup.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.nixos.bootup</string>
<key>ProgramArguments</key>
<array>
<string>bash</string>
View ex.nix
shellcheckHook = makeSetupHook {
name = "shellcheck-hook";
substitutions = {};
}
(pkgs.writeText "foo" ''
(
# lol
filename=$(cat "$0" | tail -n1 | ${pkgs.utillinux}/bin/rev | cut -d' ' -f2 | ${pkgs.utillinux}/bin/rev)
${pkgs.shellcheck}/bin/shellcheck -s bash "$filename"
View gist:3c26dd37c619e4f34f6304a1e066c8a5
[1] grahamc@Morbo> cat /nix/store/r6fx7f861dba25mks70lcidwjc9hxqdi-autorandr-1.1/lib/systemd/system/autorandr.service
[Unit]
Description=autorandr execution hook
After=sleep.target
# Note: StartLimitInterval was renamed to StartLimitIntervalSec in systemd-230.
# See autorandr bug #69. Do not rename for now, as the old name is kept for
# compatibility.
StartLimitInterval=5
StartLimitBurst=1
View gist:62b7b1370659ad94aa5643d01151bd38
[1] grahamc@Morbo> ./result/bin/daps ~/projects
Usage:
1. daps -d DC-file [--options] <subcommand> [--subcommand-options]
2. daps -m MAIN file [--options] <subcommand> [--subcommand-options]
Global Options:
--builddir=BUILD_DIR Directory where every output daps generates will
end up.
Default: <doc dir>/build/
View some.nix
emacs = {
buildOrg = {emacs ? emacs25-nox, init ? ./init.org}:
runCommand "init.el"
{ buildInputs = [ emacs ]; }
''
mkdir -p $out;
ln -s "${init}" ./init.org;
emacs -Q --script "${./assets/org-build.el}" -f make-init-el;
cp init.el $out;
'';
View keybase.md

Keybase proof

I hereby claim:

  • I am grahamc on github.
  • I am graham (https://keybase.io/graham) on keybase.
  • I have a public key ASAC4QV3QF3tHxELFdSoMZfq3w19D4ODgBfoTesOz_4kQgo

To claim this, I am signing this object:

View 0_reuse_code.js
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console