@@ -73,6 +73,7 @@ postProcess deriv@(MkDerivation {..})
7373 | pname == "SDL-image" = deriv { extraLibs = "SDL_image":extraLibs }
7474 | pname == "SDL-mixer" = deriv { extraLibs = "SDL_mixer":extraLibs }
7575 | pname == "SDL-ttf" = deriv { extraLibs = "SDL_ttf":extraLibs }
76+ | pname == "structured-haskell-mode" = deriv { buildTools = "emacs":buildTools, phaseOverrides = structuredHaskellModePostInstall }
7677 | pname == "svgcairo" = deriv { extraLibs = "libc":extraLibs }
7778 | pname == "terminfo" = deriv { extraLibs = "ncurses":extraLibs }
7879 | pname == "threadscope" = deriv { configureFlags = "--ghc-options=-rtsopts":configureFlags }
@@ -253,3 +254,12 @@ agdaPostInstall = unlines
253254 , " $out/bin/agda-mode compile"
254255 , "'';"
255256 ]
257+
258+structuredHaskellModePostInstall :: String
259+structuredHaskellModePostInstall = unlines
260+ [ "postInstall = ''"
261+ , " emacs -L elisp --batch -f batch-byte-compile \"elisp/\"*.el"
262+ , " install -d $out/share/emacs/site-lisp"
263+ , " install \"elisp/\"*.elc $out/share/emacs/site-lisp"
264+ , "'';"
265+ ]