forked from jan-leila/nix-config
		
	main #5
					 4 changed files with 3 additions and 105 deletions
				
			
		|  | @ -82,31 +82,5 @@ | ||||||
|         # EDITOR = "emacs"; |         # EDITOR = "emacs"; | ||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
| 
 |  | ||||||
|     user = { |  | ||||||
|       continue = { |  | ||||||
|         enable = true; |  | ||||||
|         docs = { |  | ||||||
|           "Continue Docs" = { |  | ||||||
|             startUrl = "https://docs.continue.dev"; |  | ||||||
|           }; |  | ||||||
|           "Nixpkgs" = { |  | ||||||
|             startUrl = "https://ryantm.github.io/nixpkgs/#preface"; |  | ||||||
|           }; |  | ||||||
|           "Nix Manual" = { |  | ||||||
|             startUrl = "https://nixos.org/manual/nixos/stable/"; |  | ||||||
|           }; |  | ||||||
|           "Home manager Manual" = { |  | ||||||
|             startUrl = "https://nix-community.github.io/home-manager/"; |  | ||||||
|           }; |  | ||||||
|           "Nix Docs" = { |  | ||||||
|             startUrl = "https://nix.dev/index.html"; |  | ||||||
|           }; |  | ||||||
|           "Linux Man Page" = { |  | ||||||
|             startUrl = "https://linux.die.net/man/"; |  | ||||||
|           }; |  | ||||||
|         }; |  | ||||||
|       }; |  | ||||||
|     }; |  | ||||||
|   }; |   }; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -6,7 +6,7 @@ | ||||||
|   ... |   ... | ||||||
| }: let | }: let | ||||||
|   nix-development-enabled = osConfig.host.nix-development.enable; |   nix-development-enabled = osConfig.host.nix-development.enable; | ||||||
|   ai-tooling-enabled = config.user.continue.enable && osConfig.host.ai.enable; |   ai-tooling-enabled = osConfig.host.ai.enable; | ||||||
| in { | in { | ||||||
|   config = lib.mkIf config.user.isDesktopUser { |   config = lib.mkIf config.user.isDesktopUser { | ||||||
|     programs = { |     programs = { | ||||||
|  | @ -46,7 +46,6 @@ in { | ||||||
|               }; |               }; | ||||||
|             }) |             }) | ||||||
|             (lib.mkIf ai-tooling-enabled { |             (lib.mkIf ai-tooling-enabled { | ||||||
|               "continue.telemetryEnabled" = false; |  | ||||||
|               }) |               }) | ||||||
|           ]; |           ]; | ||||||
| 
 | 
 | ||||||
|  | @ -98,7 +97,6 @@ in { | ||||||
|                     karyfoundation.nearley |                     karyfoundation.nearley | ||||||
|                   ] |                   ] | ||||||
|                   ++ (lib.lists.optionals ai-tooling-enabled [ |                   ++ (lib.lists.optionals ai-tooling-enabled [ | ||||||
|                     continue.continue |  | ||||||
|                     ]) |                     ]) | ||||||
|               ) |               ) | ||||||
|           ); |           ); | ||||||
|  |  | ||||||
|  | @ -1,73 +0,0 @@ | ||||||
| { |  | ||||||
|   lib, |  | ||||||
|   pkgs, |  | ||||||
|   config, |  | ||||||
|   osConfig, |  | ||||||
|   ... |  | ||||||
| }: let |  | ||||||
|   ai-tooling-enabled = config.user.continue.enable && osConfig.host.ai.enable; |  | ||||||
| in { |  | ||||||
|   options.user.continue = { |  | ||||||
|     enable = lib.mkEnableOption "should continue be enabled on this machine"; |  | ||||||
|     docs = lib.mkOption { |  | ||||||
|       type = lib.types.attrsOf (lib.types.submodule ({name, ...}: { |  | ||||||
|         options = { |  | ||||||
|           name = lib.mkOption { |  | ||||||
|             type = lib.types.str; |  | ||||||
|             default = name; |  | ||||||
|           }; |  | ||||||
|           startUrl = lib.mkOption { |  | ||||||
|             type = lib.types.str; |  | ||||||
|           }; |  | ||||||
|         }; |  | ||||||
|       })); |  | ||||||
|     }; |  | ||||||
|     context = lib.mkOption { |  | ||||||
|       type = lib.types.attrsOf (lib.types.submodule ({name, ...}: { |  | ||||||
|         options = { |  | ||||||
|           provider = lib.mkOption { |  | ||||||
|             type = lib.types.str; |  | ||||||
|             default = name; |  | ||||||
|           }; |  | ||||||
|         }; |  | ||||||
|       })); |  | ||||||
|       default = { |  | ||||||
|         "code" = {}; |  | ||||||
|         "docs" = {}; |  | ||||||
|         "diff" = {}; |  | ||||||
|         "terminal" = {}; |  | ||||||
|         "problems" = {}; |  | ||||||
|         "folder" = {}; |  | ||||||
|         "codebase" = {}; |  | ||||||
|       }; |  | ||||||
|     }; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   config = |  | ||||||
|     lib.mkIf ai-tooling-enabled |  | ||||||
|     (lib.mkMerge [ |  | ||||||
|       { |  | ||||||
|         home = { |  | ||||||
|           file = { |  | ||||||
|             ".continue/config.yaml".source = (pkgs.formats.yaml {}).generate "continue-config" { |  | ||||||
|               name = "Assistant"; |  | ||||||
|               version = "1.0.0"; |  | ||||||
|               schema = "v1"; |  | ||||||
|               models = lib.attrsets.attrValues osConfig.host.ai.models; |  | ||||||
|               context = lib.attrsets.attrValues config.user.continue.context; |  | ||||||
|               docs = lib.attrsets.attrValues config.user.continue.docs; |  | ||||||
|             }; |  | ||||||
|           }; |  | ||||||
|         }; |  | ||||||
|       } |  | ||||||
|       (lib.mkIf osConfig.host.impermanence.enable { |  | ||||||
|         home.persistence."/persist${config.home.homeDirectory}" = { |  | ||||||
|           directories = [ |  | ||||||
|             ".continue/index" |  | ||||||
|             ".continue/sessions" |  | ||||||
|           ]; |  | ||||||
|           allowOther = true; |  | ||||||
|         }; |  | ||||||
|       }) |  | ||||||
|     ]); |  | ||||||
| } |  | ||||||
|  | @ -6,7 +6,6 @@ | ||||||
|     ./flipperzero.nix |     ./flipperzero.nix | ||||||
|     ./i18n.nix |     ./i18n.nix | ||||||
|     ./openssh.nix |     ./openssh.nix | ||||||
|     ./continue.nix |  | ||||||
|     ./gnome.nix |     ./gnome.nix | ||||||
|     ./programs |     ./programs | ||||||
|   ]; |   ]; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue