aboutsummaryrefslogtreecommitdiff
path: root/flake.nix
diff options
context:
space:
mode:
authorChris Wells <chris@mathematicaster.org>2025-03-22 12:26:11 -0500
committerChris Wells <chris@mathematicaster.org>2025-03-22 12:26:11 -0500
commitb66fa26eaad3fcbf92af680b686f3d2680539128 (patch)
tree0dfd7acd75087f3791325c134911723cc18fa3c4 /flake.nix
downloadcooklang-nix-b66fa26eaad3fcbf92af680b686f3d2680539128.tar
cooklang-nix-b66fa26eaad3fcbf92af680b686f3d2680539128.tar.gz
cooklang-nix-b66fa26eaad3fcbf92af680b686f3d2680539128.tar.bz2
cooklang-nix-b66fa26eaad3fcbf92af680b686f3d2680539128.tar.lz
cooklang-nix-b66fa26eaad3fcbf92af680b686f3d2680539128.tar.xz
cooklang-nix-b66fa26eaad3fcbf92af680b686f3d2680539128.tar.zst
cooklang-nix-b66fa26eaad3fcbf92af680b686f3d2680539128.zip
Adding to repo
Diffstat (limited to 'flake.nix')
-rw-r--r--flake.nix62
1 files changed, 62 insertions, 0 deletions
diff --git a/flake.nix b/flake.nix
new file mode 100644
index 0000000..ce7fc5c
--- /dev/null
+++ b/flake.nix
@@ -0,0 +1,62 @@
+{
+ description = "cooklang utilities";
+
+ inputs = {
+ nixpkgs.url = github:nixos/nixpkgs;
+ flake-utils.url = github:numtide/flake-utils;
+ poetry2nix = {
+ url = github:nix-community/poetry2nix;
+ inputs = {
+ nixpkgs.follows = "nixpkgs";
+ flake-utils.follows = "flake-utils";
+ };
+ };
+ };
+
+ outputs = inputs@{ self, nixpkgs, flake-utils, poetry2nix, ... }: {
+
+ overlays = {
+ default = import ./overlays;
+ };
+
+ nixosModules = {
+ default = import ./modules/nixos;
+ };
+
+ homeManagerModules = {
+ default = import ./modules/home-manager;
+ };
+
+ } // flake-utils.lib.eachDefaultSystem (system:
+ let
+ pkgs = import nixpkgs {
+ inherit system;
+ overlays = [
+ self.overlays.default
+ (prev: final: {
+ poetry2nix = poetry2nix.lib.mkPoetry2Nix { pkgs = prev; };
+ })
+ ];
+ };
+ in {
+ packages = {
+ inherit (pkgs) cooklang-chef cook-cli;
+ inherit (pkgs.vimPlugins) vim-cooklang;
+ };
+
+ apps = {
+ chef = {
+ type = "app";
+ program = pkgs.lib.getExe pkgs.cooklang-chef;
+ };
+ cookcli = {
+ type = "app";
+ program = pkgs.lib.getExe pkgs.cook-cli;
+ };
+ cook-import = {
+ type = "app";
+ program = pkgs.lib.getExe pkgs.cook-import;
+ };
+ };
+ });
+}