diff --git a/flake.nix b/flake.nix index 37f4d35..49847a2 100644 --- a/flake.nix +++ b/flake.nix @@ -19,19 +19,19 @@ packages = perSystem (system: let pkgs = pkgsFor system; + genPackage = name: pkgs.callPackage ./packages/${name}.nix { }; + packages = [ "cookcli" "cook-docs" "cook-mode" ]; in - rec { - cookcli = pkgs.callPackage ./packages/cookcli.nix { }; - cook-docs = pkgs.callPackage ./packages/cook-docs.nix { }; - default = cookcli; + pkgs.lib.genAttrs packages genPackage // { + default = self.packages.${system}.cookcli; }); apps = perSystem (system: rec { - cookcli = mkApp { - drv = self.packages.${system}.cookcli; - exePath = "/bin/cook"; - }; - cook-docs = mkApp { drv = self.packages.${system}.cook-docs; }; - default = cookcli; - }); + cookcli = mkApp { + drv = self.packages.${system}.cookcli; + exePath = "/bin/cook"; + }; + cook-docs = mkApp { drv = self.packages.${system}.cook-docs; }; + default = cookcli; + }); }; } diff --git a/packages/cook-mode.nix b/packages/cook-mode.nix new file mode 100644 index 0000000..3d01c57 --- /dev/null +++ b/packages/cook-mode.nix @@ -0,0 +1,27 @@ +{ lib +, emacsPackages +, fetchFromGitHub +, emacs +}: + +emacsPackages.trivialBuild { + pname = "cook-mode"; + version = "unstable-2022-05-10"; + + src = fetchFromGitHub { + owner = "cooklang"; + repo = "cook-mode"; + rev = "fac1adacd58db877df0e13108c23e6c415e081cf"; + sha256 = ""; + }; + + buildInputs = [ emacs ]; + + meta = with lib; { + description = "Emacs syntax highlighting for Cooklang"; + homepage = "https://github.com/cooklang/cook-mode"; + license = licenses.mit; + maintainers = with maintainers; [ MoritzBoehme ]; + inherit (emacs.meta) platforms; + }; +}