about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--nix/buildLisp/default.nix3
-rw-r--r--third_party/arion/OWNERS3
-rw-r--r--third_party/arion/default.nix10
-rw-r--r--third_party/overlays/haskell/.skip-subtree1
-rw-r--r--third_party/overlays/haskell/default.nix19
-rw-r--r--third_party/overlays/haskell/extra-pkgs/random-fu-0.2.nix41
-rw-r--r--third_party/overlays/haskell/extra-pkgs/rvar-0.2.nix25
-rw-r--r--third_party/overlays/haskell/patches/generic-arbitrary-export-garbitrary.patch12
-rw-r--r--third_party/overlays/tvl.nix26
-rw-r--r--third_party/sources/sources.json24
-rw-r--r--users/grfn/system/home/modules/development.nix11
-rw-r--r--users/grfn/xanthous/default.nix2
-rw-r--r--users/grfn/xanthous/shell.nix2
-rw-r--r--users/grfn/xanthous/src/Xanthous/Data.hs1
-rw-r--r--users/grfn/xanthous/src/Xanthous/Data/EntityMap.hs1
-rw-r--r--users/grfn/xanthous/src/Xanthous/Entities/Character.hs1
-rw-r--r--users/grfn/xanthous/src/Xanthous/Entities/Creature/Hippocampus.hs1
-rw-r--r--users/grfn/xanthous/src/Xanthous/Game/Memo.hs2
-rw-r--r--users/grfn/xanthous/src/Xanthous/Game/State.hs1
-rw-r--r--users/grfn/xanthous/src/Xanthous/Orphans.hs5
-rw-r--r--users/grfn/xanthous/src/Xanthous/Util/QuickCheck.hs10
-rw-r--r--users/tazjin/default.nix3
-rw-r--r--users/wpcarro/website/sandbox/learnpianochords/src/server/App.hs2
-rw-r--r--users/wpcarro/zoo/Main.hs2
24 files changed, 119 insertions, 89 deletions
diff --git a/nix/buildLisp/default.nix b/nix/buildLisp/default.nix
index a8168334a7..66d6dbf6ae 100644
--- a/nix/buildLisp/default.nix
+++ b/nix/buildLisp/default.nix
@@ -154,7 +154,8 @@ let
           let
             implementation = old.implementation or defaultImplementation;
             brokenOn = old.brokenOn or [ ];
-            targets = lib.subtractLists (brokenOn ++ [ implementation.name ])
+            # TODO(sterni): https://github.com/Clozure/ccl/issues/405#issuecomment-1085241805
+            targets = lib.subtractLists (brokenOn ++ [ "ccl" implementation.name ])
               (builtins.attrNames impls);
           in
           {
diff --git a/third_party/arion/OWNERS b/third_party/arion/OWNERS
deleted file mode 100644
index 79a422fcde..0000000000
--- a/third_party/arion/OWNERS
+++ /dev/null
@@ -1,3 +0,0 @@
-inherit: true
-owners:
- - grfn
diff --git a/third_party/arion/default.nix b/third_party/arion/default.nix
deleted file mode 100644
index 7b0aa4ee33..0000000000
--- a/third_party/arion/default.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ pkgs, ... }:
-
-(import
-  (pkgs.fetchFromGitHub {
-    owner = "hercules-ci";
-    repo = "arion";
-    rev = "db6d4d7490dff363de60cebbece3ae9361e3ce43";
-    sha256 = "0d8nqmc7fjshigax2g47ips262v8ml27x0ksq59kmprgb7ckzi5l";
-  })
-  { inherit pkgs; }).arion
diff --git a/third_party/overlays/haskell/.skip-subtree b/third_party/overlays/haskell/.skip-subtree
new file mode 100644
index 0000000000..2a528eaa8a
--- /dev/null
+++ b/third_party/overlays/haskell/.skip-subtree
@@ -0,0 +1 @@
+extra-pkgs need to be callPackage-ed
diff --git a/third_party/overlays/haskell/default.nix b/third_party/overlays/haskell/default.nix
index 8ea57f2096..6e18752f52 100644
--- a/third_party/overlays/haskell/default.nix
+++ b/third_party/overlays/haskell/default.nix
@@ -7,13 +7,26 @@
 self: super: # overlay parameters for the nixpkgs overlay
 
 let
-  overrides = hsSelf: hsSuper: with super.haskell.lib; {
-    generic-arbitrary = appendPatch hsSuper.generic-arbitrary
-      [ ./patches/generic-arbitrary-export-garbitrary.patch ];
+  overrides = hsSelf: hsSuper: with self.haskell.lib.compose; {
+    # No overrides for the default package set necessary at the moment
   };
 in
 {
   haskellPackages = super.haskellPackages.override {
     inherit overrides;
   };
+
+  haskell = lib.recursiveUpdate super.haskell {
+    packages.ghc8107 = super.haskell.packages.ghc8107.override {
+      overrides = hsSelf: hsSuper: with self.haskell.lib.compose; {
+        # TODO(sterni): TODO(grfn): patch xanthous to work with random-fu 0.3.*,
+        # so we can use GHC 9.0.2 and benefit from upstream binary cache.
+        random-fu = hsSelf.callPackage ./extra-pkgs/random-fu-0.2.nix { };
+        rvar = hsSelf.callPackage ./extra-pkgs/rvar-0.2.nix { };
+
+        # TODO(sterni): upstream this
+        universe-base = addBuildDepend hsSelf.OneTuple hsSuper.universe-base;
+      };
+    };
+  };
 }
diff --git a/third_party/overlays/haskell/extra-pkgs/random-fu-0.2.nix b/third_party/overlays/haskell/extra-pkgs/random-fu-0.2.nix
new file mode 100644
index 0000000000..1626eca7be
--- /dev/null
+++ b/third_party/overlays/haskell/extra-pkgs/random-fu-0.2.nix
@@ -0,0 +1,41 @@
+{ mkDerivation
+, base
+, erf
+, lib
+, math-functions
+, monad-loops
+, mtl
+, random
+, random-shuffle
+, random-source
+, rvar
+, syb
+, template-haskell
+, transformers
+, vector
+}:
+mkDerivation {
+  pname = "random-fu";
+  version = "0.2.7.7";
+  sha256 = "8466bcfb5290bdc30a571c91e1eb526c419ea9773bc118996778b516cfc665ca";
+  revision = "1";
+  editedCabalFile = "16nhymfriygqr2by9v72vdzv93v6vhd9z07pgaji4zvv66jikv82";
+  libraryHaskellDepends = [
+    base
+    erf
+    math-functions
+    monad-loops
+    mtl
+    random
+    random-shuffle
+    random-source
+    rvar
+    syb
+    template-haskell
+    transformers
+    vector
+  ];
+  homepage = "https://github.com/mokus0/random-fu";
+  description = "Random number generation";
+  license = lib.licenses.publicDomain;
+}
diff --git a/third_party/overlays/haskell/extra-pkgs/rvar-0.2.nix b/third_party/overlays/haskell/extra-pkgs/rvar-0.2.nix
new file mode 100644
index 0000000000..c00f5a1a8d
--- /dev/null
+++ b/third_party/overlays/haskell/extra-pkgs/rvar-0.2.nix
@@ -0,0 +1,25 @@
+{ mkDerivation
+, base
+, lib
+, MonadPrompt
+, mtl
+, random-source
+, transformers
+}:
+mkDerivation {
+  pname = "rvar";
+  version = "0.2.0.6";
+  sha256 = "01e18875ffde43f9591a8acd9f60c9c51704a026e51c1a6797faecd1c7ae8cd3";
+  revision = "1";
+  editedCabalFile = "1jn9ivlj3k65n8d9sfsp882m5lvni1ah79mk0cvkz91pgywvkiyq";
+  libraryHaskellDepends = [
+    base
+    MonadPrompt
+    mtl
+    random-source
+    transformers
+  ];
+  homepage = "https://github.com/mokus0/random-fu";
+  description = "Random Variables";
+  license = lib.licenses.publicDomain;
+}
diff --git a/third_party/overlays/haskell/patches/generic-arbitrary-export-garbitrary.patch b/third_party/overlays/haskell/patches/generic-arbitrary-export-garbitrary.patch
deleted file mode 100644
index f0c936bfca..0000000000
--- a/third_party/overlays/haskell/patches/generic-arbitrary-export-garbitrary.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/Test/QuickCheck/Arbitrary/Generic.hs b/src/Test/QuickCheck/Arbitrary/Generic.hs
-index fed6ab3..91f59f1 100644
---- a/src/Test/QuickCheck/Arbitrary/Generic.hs
-+++ b/src/Test/QuickCheck/Arbitrary/Generic.hs
-@@ -23,6 +23,7 @@ The generated 'arbitrary' method is equivalent to
- 
- module Test.QuickCheck.Arbitrary.Generic
-   ( Arbitrary(..)
-+  , GArbitrary
-   , genericArbitrary
-   , genericShrink
-   ) where
diff --git a/third_party/overlays/tvl.nix b/third_party/overlays/tvl.nix
index a51035d0c6..caf0998a0a 100644
--- a/third_party/overlays/tvl.nix
+++ b/third_party/overlays/tvl.nix
@@ -75,21 +75,15 @@ self: super: {
     });
   });
 
-  # Temporary workaround until the following commit is in channels:
-  # https://github.com/nixos/nixpkgs/commit/5819b99350d7ac6e20f91adce38e7bb22e4d6fc4
-  ocamlPackages = super.ocamlPackages.overrideScope' (oself: osuper: {
-    uutf =
-      let
-        expectedUrls = [
-          "https://erratique.ch/software/uutf/releases/uutf-${osuper.uutf.version}.tbz"
-        ];
-      in
-      assert osuper.uutf.src.urls != expectedUrls;
-      osuper.uutf.overrideAttrs (old: {
-        src = self.fetchurl {
-          urls = expectedUrls;
-          sha256 = old.src.outputHash;
-        };
-      });
+  # upgrade home-manager until the service-generation fix has landed upstream
+  # https://github.com/nix-community/home-manager/issues/2846
+  home-manager = super.home-manager.overrideAttrs (old: rec {
+    version = assert super.home-manager.version == "2021-12-25"; "2022-04-08";
+    src = self.fetchFromGitHub {
+      owner = "nix-community";
+      repo = "home-manager";
+      rev = "f911ebbec927e8e9b582f2e32e2b35f730074cfc";
+      sha256 = "07qa2qkbjczj3d0m03jpw85hfj35cbjm48xhifz3viy4khjw88vl";
+    };
   });
 }
diff --git a/third_party/sources/sources.json b/third_party/sources/sources.json
index 29f6f6286e..e2417d8767 100644
--- a/third_party/sources/sources.json
+++ b/third_party/sources/sources.json
@@ -5,10 +5,10 @@
         "homepage": "",
         "owner": "nix-community",
         "repo": "emacs-overlay",
-        "rev": "26da73dd9129d267f0c8c26b591ab91050c4cdc9",
-        "sha256": "0sd868br1jqmihgm97ma1jv8r78x1n7s7bqjk5dl4v6s2rhzy3br",
+        "rev": "e0f4bc33ca1776c1103d15a63f022e29486d9455",
+        "sha256": "1jci75bs4cz46wbkmhlf07sys75i524bi1jgf49b7glp6z8857cw",
         "type": "tarball",
-        "url": "https://github.com/nix-community/emacs-overlay/archive/26da73dd9129d267f0c8c26b591ab91050c4cdc9.tar.gz",
+        "url": "https://github.com/nix-community/emacs-overlay/archive/e0f4bc33ca1776c1103d15a63f022e29486d9455.tar.gz",
         "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
     },
     "nixpkgs": {
@@ -17,10 +17,10 @@
         "homepage": "",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "ce8cbe3c01fd8ee2de526ccd84bbf9b82397a510",
-        "sha256": "19xfad7pxsp6nkrkjhn36w77w92m60ysq7njn711slw74yj6ibxv",
+        "rev": "fd364d268852561223a5ada15caad669fd72800e",
+        "sha256": "133i5fsx0gix37q4nxm1vfsl9hqbfzv458xykilqhgxmv45jmfl2",
         "type": "tarball",
-        "url": "https://github.com/NixOS/nixpkgs/archive/ce8cbe3c01fd8ee2de526ccd84bbf9b82397a510.tar.gz",
+        "url": "https://github.com/NixOS/nixpkgs/archive/fd364d268852561223a5ada15caad669fd72800e.tar.gz",
         "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
     },
     "nixpkgs-stable": {
@@ -29,10 +29,10 @@
         "homepage": "",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "9b168e5e62406fa2e55e132f390379a6ba22b402",
-        "sha256": "16baazcid93afjg75mf8w3hihyc4wilcq0mawxfrilm1xqm52265",
+        "rev": "715dc137b08213aabbbe0965b78ab938e5d8d3b7",
+        "sha256": "1q5pxys0s6nb3h1vbmmcr27frf1i5j8pzgc2gm1908yy0himi9ap",
         "type": "tarball",
-        "url": "https://github.com/NixOS/nixpkgs/archive/9b168e5e62406fa2e55e132f390379a6ba22b402.tar.gz",
+        "url": "https://github.com/NixOS/nixpkgs/archive/715dc137b08213aabbbe0965b78ab938e5d8d3b7.tar.gz",
         "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
     },
     "rustsec-advisory-db": {
@@ -41,10 +41,10 @@
         "homepage": "https://rustsec.org",
         "owner": "RustSec",
         "repo": "advisory-db",
-        "rev": "1aca83f114ddf1e94b754a475c40b93fd764a867",
-        "sha256": "1kfrl2qlzg5miwhf83vf63hxizvib9a34h0jlfycfc7zp8sbdy0m",
+        "rev": "ce150ef8cbed58f21f235c267cd5f501ffa56756",
+        "sha256": "11fmzfnawg2prjl4s8z1p7xans3pnpb4gy91v0qcq3fskhsldahr",
         "type": "tarball",
-        "url": "https://github.com/RustSec/advisory-db/archive/1aca83f114ddf1e94b754a475c40b93fd764a867.tar.gz",
+        "url": "https://github.com/RustSec/advisory-db/archive/ce150ef8cbed58f21f235c267cd5f501ffa56756.tar.gz",
         "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
     }
 }
diff --git a/users/grfn/system/home/modules/development.nix b/users/grfn/system/home/modules/development.nix
index 5e677a8555..18a851d149 100644
--- a/users/grfn/system/home/modules/development.nix
+++ b/users/grfn/system/home/modules/development.nix
@@ -59,16 +59,7 @@ with lib;
     lldb
     hyperfine
     clang-tools_11
-    (rr.overrideAttrs (_: rec {
-      version = "f25671d094edac8059cec56b98d7f10f2c740697";
-      src = pkgs.fetchFromGitHub {
-        owner = "rr-debugger";
-        repo = "rr";
-        rev = version;
-        sha256 = "149s4mw8vl8d3nx15sfp62z0izp2dibz99k720j75rjnkwk2bq2z";
-        fetchSubmodules = true;
-      };
-    }))
+    rr
 
     clj2nix
     clojure
diff --git a/users/grfn/xanthous/default.nix b/users/grfn/xanthous/default.nix
index e8a1eb14eb..049c92fb4c 100644
--- a/users/grfn/xanthous/default.nix
+++ b/users/grfn/xanthous/default.nix
@@ -15,7 +15,7 @@ let
       || builtins.baseNameOf path == "package.yaml");
   };
   # generated by cabal2nix
-  basePkg = pkgs.haskellPackages.callPackage ./pkg.nix { };
+  basePkg = pkgs.haskell.packages.ghc8107.callPackage ./pkg.nix { };
 in
 
 pkgs.haskell.lib.overrideCabal basePkg (default: {
diff --git a/users/grfn/xanthous/shell.nix b/users/grfn/xanthous/shell.nix
index 53fbd7a7c1..b114671716 100644
--- a/users/grfn/xanthous/shell.nix
+++ b/users/grfn/xanthous/shell.nix
@@ -4,7 +4,7 @@ let
   pkgs = third_party.nixpkgs;
 in
 
-(pkgs.haskellPackages.extend (pkgs.haskell.lib.packageSourceOverrides {
+(pkgs.haskell.packages.ghc8107.extend (pkgs.haskell.lib.packageSourceOverrides {
   xanthous = third_party.gitignoreSource ./.;
 })).shellFor {
   packages = p: [ p.xanthous ];
diff --git a/users/grfn/xanthous/src/Xanthous/Data.hs b/users/grfn/xanthous/src/Xanthous/Data.hs
index 1b67e0f160..c11ceb55aa 100644
--- a/users/grfn/xanthous/src/Xanthous/Data.hs
+++ b/users/grfn/xanthous/src/Xanthous/Data.hs
@@ -131,7 +131,6 @@ import           Data.Coerce
 import           Data.Proxy (Proxy(Proxy))
 --------------------------------------------------------------------------------
 import           Xanthous.Util (EqEqProp(..), EqProp, between)
-import           Xanthous.Util.QuickCheck (GenericArbitrary(..))
 import           Xanthous.Orphans ()
 import           Xanthous.Util.Graphics
 import qualified Linear.Metric as Metric
diff --git a/users/grfn/xanthous/src/Xanthous/Data/EntityMap.hs b/users/grfn/xanthous/src/Xanthous/Data/EntityMap.hs
index 1d9c4d46cd..33a98f1ae5 100644
--- a/users/grfn/xanthous/src/Xanthous/Data/EntityMap.hs
+++ b/users/grfn/xanthous/src/Xanthous/Data/EntityMap.hs
@@ -133,7 +133,6 @@ instance FunctorWithIndex EntityID EntityMap
 instance FoldableWithIndex EntityID EntityMap
 
 instance TraversableWithIndex EntityID EntityMap where
-  itraversed = byID . itraversed . rmap sequenceA . distrib
   itraverse = itraverseOf itraversed
 
 type instance Element (EntityMap a) = a
diff --git a/users/grfn/xanthous/src/Xanthous/Entities/Character.hs b/users/grfn/xanthous/src/Xanthous/Entities/Character.hs
index d405cb40d3..0a993a2f47 100644
--- a/users/grfn/xanthous/src/Xanthous/Entities/Character.hs
+++ b/users/grfn/xanthous/src/Xanthous/Entities/Character.hs
@@ -45,7 +45,6 @@ import           Test.QuickCheck.Checkers (EqProp)
 import           Control.Monad.State.Lazy (execState)
 import           Control.Monad.Trans.State.Lazy (execStateT)
 --------------------------------------------------------------------------------
-import           Xanthous.Util.QuickCheck
 import           Xanthous.Game.State
 import           Xanthous.Entities.Item
 import           Xanthous.Entities.Common
diff --git a/users/grfn/xanthous/src/Xanthous/Entities/Creature/Hippocampus.hs b/users/grfn/xanthous/src/Xanthous/Entities/Creature/Hippocampus.hs
index 9d5cc13451..d13ea8055c 100644
--- a/users/grfn/xanthous/src/Xanthous/Entities/Creature/Hippocampus.hs
+++ b/users/grfn/xanthous/src/Xanthous/Entities/Creature/Hippocampus.hs
@@ -25,7 +25,6 @@ import           Test.QuickCheck
 import           Test.QuickCheck.Arbitrary.Generic
 --------------------------------------------------------------------------------
 import           Xanthous.Data
-import           Xanthous.Util.QuickCheck
 --------------------------------------------------------------------------------
 
 
diff --git a/users/grfn/xanthous/src/Xanthous/Game/Memo.hs b/users/grfn/xanthous/src/Xanthous/Game/Memo.hs
index 9e483a8d4a..154063b5dd 100644
--- a/users/grfn/xanthous/src/Xanthous/Game/Memo.hs
+++ b/users/grfn/xanthous/src/Xanthous/Game/Memo.hs
@@ -45,7 +45,7 @@ emptyMemoState :: MemoState
 emptyMemoState = MemoState { _characterVisiblePositions = UnMemoized }
 {-# INLINE emptyMemoState #-}
 
-clear :: Lens' MemoState (Memoized k v) -> MemoState -> MemoState
+clear :: ASetter' MemoState (Memoized key val) -> MemoState -> MemoState
 clear = flip set UnMemoized
 {-# INLINE clear #-}
 
diff --git a/users/grfn/xanthous/src/Xanthous/Game/State.hs b/users/grfn/xanthous/src/Xanthous/Game/State.hs
index 3025eb15be..13b1ba1588 100644
--- a/users/grfn/xanthous/src/Xanthous/Game/State.hs
+++ b/users/grfn/xanthous/src/Xanthous/Game/State.hs
@@ -100,7 +100,6 @@ import qualified Graphics.Vty.Attributes as Vty
 import qualified Graphics.Vty.Image as Vty
 --------------------------------------------------------------------------------
 import           Xanthous.Util (KnownBool(..))
-import           Xanthous.Util.QuickCheck (GenericArbitrary(..))
 import           Xanthous.Data
 import           Xanthous.Data.App
 import           Xanthous.Data.Levels
diff --git a/users/grfn/xanthous/src/Xanthous/Orphans.hs b/users/grfn/xanthous/src/Xanthous/Orphans.hs
index e9cfddc0e6..a8274bf0aa 100644
--- a/users/grfn/xanthous/src/Xanthous/Orphans.hs
+++ b/users/grfn/xanthous/src/Xanthous/Orphans.hs
@@ -11,7 +11,8 @@ module Xanthous.Orphans
 --------------------------------------------------------------------------------
 import           Xanthous.Prelude hiding (elements, (.=))
 --------------------------------------------------------------------------------
-import           Data.Aeson
+import           Data.Aeson hiding (Key)
+import qualified Data.Aeson.KeyMap as KM
 import           Data.Aeson.Types (typeMismatch)
 import           Data.List.NonEmpty (NonEmpty(..))
 import           Graphics.Vty.Attributes
@@ -461,7 +462,7 @@ instance forall a. (FromJSON a, Ord a) => FromJSON (Interval a) where
         upper <- parseBound $ arr ^?! ix 1
         pure $ interval lower upper
       parseBound = withObject "Bound" $ \obj -> do
-        when (length obj /= 1) $ fail "Expected an object with a single key"
+        when (KM.size obj /= 1) $ fail "Expected an object with a single key"
         let [(k, v)] = obj ^@.. ifolded
         boundary <- case k of
           "Excluded" -> pure Open
diff --git a/users/grfn/xanthous/src/Xanthous/Util/QuickCheck.hs b/users/grfn/xanthous/src/Xanthous/Util/QuickCheck.hs
index be12bc2945..aa881b3227 100644
--- a/users/grfn/xanthous/src/Xanthous/Util/QuickCheck.hs
+++ b/users/grfn/xanthous/src/Xanthous/Util/QuickCheck.hs
@@ -14,7 +14,6 @@ import Test.QuickCheck.Function
 import Test.QuickCheck.Instances.ByteString ()
 import Test.QuickCheck.Arbitrary.Generic
 import Data.Aeson
-import GHC.Generics (Rep)
 --------------------------------------------------------------------------------
 
 newtype FunctionShow a = FunctionShow a
@@ -31,12 +30,3 @@ newtype FunctionJSON a = FunctionJSON a
 
 instance (ToJSON a, FromJSON a) => Function (FunctionJSON a) where
   function = functionJSON
-
---------------------------------------------------------------------------------
-
-newtype GenericArbitrary a = GenericArbitrary a
-  deriving newtype Generic
-
-instance (Generic a, GArbitrary rep, Rep a ~ rep)
-  => Arbitrary (GenericArbitrary a) where
-  arbitrary = genericArbitrary
diff --git a/users/tazjin/default.nix b/users/tazjin/default.nix
index 0c1baf14c8..8359b2de32 100644
--- a/users/tazjin/default.nix
+++ b/users/tazjin/default.nix
@@ -10,6 +10,9 @@ let
 
 in
 rustfmt.overrideAttrs (_: {
+  # rustfmt not respecting config atm, disable
+  meta.ci.skip = true;
+
   meta.ci.extraSteps.rustfmt = {
     command = rustfmt;
   };
diff --git a/users/wpcarro/website/sandbox/learnpianochords/src/server/App.hs b/users/wpcarro/website/sandbox/learnpianochords/src/server/App.hs
index e23757b015..b7a31457b7 100644
--- a/users/wpcarro/website/sandbox/learnpianochords/src/server/App.hs
+++ b/users/wpcarro/website/sandbox/learnpianochords/src/server/App.hs
@@ -43,7 +43,7 @@ run = do
   ctx@T.Context{..} <- ask
   ctx
     |> server
-    |> serve (Proxy @ API)
+    |> serve (Proxy @API)
     |> cors (const $ Just corsPolicy)
     |> Warp.run contextServerPort
     |> liftIO
diff --git a/users/wpcarro/zoo/Main.hs b/users/wpcarro/zoo/Main.hs
index 407d29e61e..c18edbed96 100644
--- a/users/wpcarro/zoo/Main.hs
+++ b/users/wpcarro/zoo/Main.hs
@@ -157,4 +157,4 @@ parseInput x =
     _ -> Nothing
 
 main :: IO ()
-main = Warp.run 8000 $ serve (Proxy @ Api) server
+main = Warp.run 8000 $ serve (Proxy @Api) server