~jack/misc

fc18319887e274897264bb352ccd33f20c42db4b — Jack Kelly a month ago 0d0fdcc
nix
M .build.yml => .build.yml +3 -0
@@ 17,6 17,9 @@ tasks:
  - ergodox: |
      cd misc
      nix-build --no-out-link -A ergodox
  - lambda-c: |
      cd misc
      nix-build --no-out-link -A lambda-c
  - metscrape: |
      cd misc
      nix-build --no-out-link -A metscrape

M README.md => README.md +1 -0
@@ 16,6 16,7 @@ All paths are relative to repository root.
* `cabinsheets` - Make HTML sheets to print & hang outside each cabin on a ship.
* `codeworld-raycaster` - Draw a blocky labyrinth like it's 1992.
* `ergodox` - Firmware config for my [Infinity Ergodox](https://input.club/devices/infinity-ergodox/).
* `lambda-c` - Toy lambda calculus interpreter, written in reasonably strict C99.
* `metscrape` - Batch-download wind forecasts from MetVUW (broken, unmaintained).
* `metscrape2` - Batch-download marine weather forecasts.
* `photoscripts` - Some shell scripts I use to manage my photos.

M bunkplan-ml/bunkplan.nix => bunkplan-ml/bunkplan.nix +3 -3
@@ 1,4 1,4 @@
{ stdenv, ocaml, csv, findlib, ocaml_extlib }:
{ stdenv, lib, ocaml, csv, findlib, ocaml_extlib }:

stdenv.mkDerivation {
  name = "bunkplan";


@@ 8,8 8,8 @@ stdenv.mkDerivation {

  installPhase = "install -D -m 755 bunkplan $out/bin/bunkplan";

  meta = with stdenv.lib; {
    homepage = https://git.sr.ht/~jack/misc;
  meta = with lib; {
    homepage = "https://git.sr.ht/~jack/misc";
    description = "Generate a bunkplan from a CSV";
    license = licenses.agpl3Plus;
    maintainers = [ maintainers.endgame ];

M bunkplan/bunkplan.cabal => bunkplan/bunkplan.cabal +2 -2
@@ 1,10 1,10 @@
cabal-version:       >=1.10
cabal-version:       2.2

name:                bunkplan
version:             0.1.0.0
synopsis:            Generate a HTML bunkplan from a CSV
description:         Generate a HTML bunkplan from a CSV.
license:             AGPL-3-or-later
license:             AGPL-3.0-or-later
license-file:        COPYING
author:              Jack Kelly
maintainer:          jack@jackkelly.name

M cabinsheets/cabinsheets.cabal => cabinsheets/cabinsheets.cabal +2 -2
@@ 1,10 1,10 @@
cabal-version:       2.0
cabal-version:       2.2

name:                cabinsheets
version:             0.1.0.0
synopsis:            Generate cabin sheets from a CSV
description:         Generate cabin sheets from a CSV.
license:             AGPL-3-or-later
license:             AGPL-3.0-or-later
license-file:        COPYING
author:              Jack Kelly
maintainer:          jack@jackkelly.name

M default.nix => default.nix +2 -0
@@ 5,6 5,7 @@ let
  cabinsheets = import ./cabinsheets { inherit nixpkgs; };
  codeworld-raycaster = import ./codeworld-raycaster { inherit nixpkgs; };
  ergodox = import ./ergodox { inherit nixpkgs; };
  lambda-c = import ./lambda-c { inherit nixpkgs; };
  metscrape = import ./metscrape { inherit nixpkgs; };
  metscrape2 = import ./metscrape2 { inherit nixpkgs; };
in {


@@ 14,6 15,7 @@ in {
    cabinsheets
    codeworld-raycaster
    ergodox
    lambda-c
    metscrape
    metscrape2;
}

M ergodox/default.nix => ergodox/default.nix +1 -1
@@ 60,7 60,7 @@ in
      cp ICED-R.gcc/kiibohd.dfu.bin $out/right.dfu.bin
    '';

    meta = with pkgs.stdenv.lib; {
    meta = with pkgs.lib; {
      description = "Firmware for my Infinity Ergodox";
      license = licenses.agpl3Plus;
      maintainers = [ maintainers.endgame ];

A lambda-c/README.md => lambda-c/README.md +8 -0
@@ 0,0 1,8 @@
# lambda-c

Playing around with lambda calculus interpreters in C99.

When finished, it should compile cleanly under `./configure
CFLAGS='-std=c99 -pedantic -Wall -Wextra'`.

Run `autoreconf -i` to generate the autotooling.

A lambda-c/default.nix => lambda-c/default.nix +2 -0
@@ 0,0 1,2 @@
{ nixpkgs ? import ../nix/nixpkgs.nix }:
nixpkgs.callPackage (import ./lambda-c.nix) {}

A lambda-c/lambda-c.nix => lambda-c/lambda-c.nix +16 -0
@@ 0,0 1,16 @@
{ autoreconfHook, lib, stdenv }:

stdenv.mkDerivation {
  name = "lambda-c";
  src = ./.;

  buildInputs = [ autoreconfHook ];

  meta = with lib; {
    homepage = "https://git.sr.ht/~jack/misc";
    description = "Toy lambda calculus interpreter";
    license = licenses.agpl3Plus;
    maintainers = [ maintainers.endgame ];
    platforms = platforms.all;
  };
}

M metscrape/metscrape.nix => metscrape/metscrape.nix +3 -3
@@ 1,4 1,4 @@
{ stdenv, curl, libxml2, pkgconfig }:
{ stdenv, curl, lib, libxml2, pkgconfig }:

stdenv.mkDerivation {
  name = "metscrape";


@@ 9,8 9,8 @@ stdenv.mkDerivation {

  installPhase = "install -D -m 755 metscrape $out/bin/metscrape";

  meta = with stdenv.lib; {
    homepage = https://git.sr.ht/~jack/misc;
  meta = with lib; {
    homepage = "https://git.sr.ht/~jack/misc";
    description = "Batch-download MetVUW forecasts";
    license = licenses.agpl3Plus;
    maintainers = [ maintainers.endgame ];

M metscrape2/metscrape.cabal => metscrape2/metscrape.cabal +2 -2
@@ 1,11 1,11 @@
Cabal-Version:          >= 1.10
Cabal-Version:          2.2

Name:                   metscrape
Version:                0.1.0.0
Synopsis:               Batch-download marine weather forecasts
Description:            Batch-download marine weather forecasts.
Category:               Application
License:                AGPL-3-or-later
License:                AGPL-3.0-or-later
License-File:           COPYING
Author:                 Jack Kelly
Maintainer:             jack@jackkelly.name