mirror of
https://github.com/nickolaj-jepsen/nixos.git
synced 2026-01-22 00:01:58 +01:00
feat: add llm
This commit is contained in:
parent
5fac4b3984
commit
f905444ccf
15 changed files with 60 additions and 26 deletions
|
|
@ -9,5 +9,6 @@ _: {
|
|||
./neovim.nix
|
||||
./zellij.nix
|
||||
./zoxide.nix
|
||||
./llm.nix
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
50
modules/programs/llm.nix
Normal file
50
modules/programs/llm.nix
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
{pkgs, config, username, pkgsUnstable, ...}: let
|
||||
llmConfig = if pkgs.stdenv.isDarwin then
|
||||
"Library/Application Support/io.datasette.llm"
|
||||
else
|
||||
".config/io.datasette.llm";
|
||||
pythonEnv = pkgsUnstable.python3.withPackages (pp: with pp; [
|
||||
llm
|
||||
llm-anthropic
|
||||
llm-gemini
|
||||
llm-tools-sqlite
|
||||
llm-fragments-github
|
||||
llm-cmd
|
||||
llm-jq
|
||||
llm-github-copilot
|
||||
llm-git
|
||||
]);
|
||||
llmPkgWithPlugins = pkgs.writeShellScriptBin "llm" ''
|
||||
unset PYTHONPATH # Otherwise it breaks in Python devenvs
|
||||
export $(grep -v '^#' ${config.age.secrets.llm-api-key.path} | xargs)
|
||||
exec ${pythonEnv}/bin/llm "''${@}"
|
||||
'';
|
||||
in
|
||||
{
|
||||
age.secrets.llm-api-key = {
|
||||
rekeyFile = ../../secrets/llm-api-key.env.age;
|
||||
mode = "0600";
|
||||
owner = username;
|
||||
};
|
||||
|
||||
environment.systemPackages = [
|
||||
llmPkgWithPlugins
|
||||
];
|
||||
|
||||
fireproof.home-manager = {
|
||||
home.file = {
|
||||
"${llmConfig}/templates/cli.yaml".text = builtins.toJSON {
|
||||
model = "gpt-5-nano";
|
||||
prompt = ''
|
||||
Please help the user with a question regarding the linux cli.
|
||||
|
||||
- Be concise and informative
|
||||
- If you recommend any commands or tools, make sure to explain their usage.
|
||||
|
||||
This is the users question:
|
||||
$input
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,8 +0,0 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 UqEUow ZTWzzn7Ra3xjMUJkRm+lK+HMdqxCM1XiDneKWk6IoUY
|
||||
7HIwLVhsJftGWMjhCQddz/MMqnpv7UoR1QzEXUfqVqo
|
||||
-> ;7rhkFK-grease
|
||||
2fBbpwA7
|
||||
--- Dj4NFjzl0zb+Wxl+j2eChRWowe4PAGkag//fwnjiiAs
|
||||
Æ%®„ÿÞŒéÐ?èÅŠ¬øò$qU1Pk%]Cì:ýODŠxÉ¡yŽóÌy†,[´Dm NZÑc *Å
pÑ;è˜Þ †3R}"P8Šáö
|
||||
öö¬¬³<C2AC>q UP/0X9q2Õ ŽÙh}¾è<C2BE>Èòvåºó!‹©ñPŒG#OŸëËö½¤4Œh¦öÕ‚lÊ^@^J÷ ¨<>/2K
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 uxq+Zw f1R1uOBfZIdPn5BQ+5ZniaLhcNIjCJLsSF1k7D8RIls
|
||||
qJJnInZeCvwBIMm5X1MzhwbGZ/592JqNmtAfbwSCYhw
|
||||
-> }o?y|l-grease cX)/~: `n \j
|
||||
0E48K80STlC5k6I+c+BXFV/ZaSc3VuYSnnJVrtaqloq8GjOJabQGpz2kJVecRN1y
|
||||
foetmkjWhOvTB9f5UmMvQhL3G8G4hqjJubwMrTTvW3t3
|
||||
--- dtdOrXsFxRkgVsjwAFFe32rOregwJ21fU1wFwwO6+kw
|
||||
¢OîX6*ªôûÞ?äDõ’Gùm#ûB‘,3o[±&¢¿1¶cn¬b>(SÂÑèÎH…¢u7ÏGa:ɾHB”¥( žVá<56>Ò‚ŸÚÚÊ0›Ÿ‘-ã®,@†[í‘=Ésß6ç8r9cìîìbG
|
||||
ÜãSäß+™Íœõ£" zÒït½Ò‹õi—׎‚ç·„sÝ<73>gÊÞrN:IÖ<04>é|`й
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 uxq+Zw /8gmkIvDLrzwMr3XyUlVji+st35d1fT6YZDCxSRPWkM
|
||||
tf9Hl+UAlYUWBvtUsSmVcTkjjrHQa3cUgIKa81xiyYA
|
||||
-> >rf&x@Sl-grease
|
||||
kUUirnVM0mh3+S9KGWoeL4PhgIXVCd7FQQ+tjwySVoFtJrlFC335TwccCLHaU+nw
|
||||
l0Hta7Xfj5JGr80AXvhACRN7JkNF0bseJPoCyiG1hPrpspUGh3im9A
|
||||
--- DJlEK7SM/SUwiYXD/tpfxpEvmpsqchdYSUaZfOe93Fo
|
||||
y<EFBFBD>vÕ®¯ë*R¢NG‹aÈ̼“ª£ñ¡ç»ô {,Á„§€Ùã[zqùÀØl÷'þp_¨~”£|©'eOºÃÛ”v䮕(`—3¤ËGˆÀ„á`ÙBLÖb—´˜Î<CB9C>¬š²…6›ÿÝéÛÎSÕsWqZÏÇs¨‘K>|
|
||||
Binary file not shown.
|
|
@ -0,0 +1,8 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 uxq+Zw xJfwiPtM4UuD4jHX7LTnVoJ7WvbRetMbQAMRftWS7G4
|
||||
okbXmKw7BNIP01K7yIBQj7Duz4C+186946aozyZgxzU
|
||||
-> !ZS`7#-grease v{TUL6cR
|
||||
FatxbUj85d1GQQ
|
||||
--- 3zSSw89xn4Vr62mDTFLNpDgmSosb2TIKUddCrdfuRzg
|
||||
™×Œöï¨.Á–„Ѓ4Žy5j–ÝÊââ>‡×˜-ªære{ÑÊ4fyc>ÁÜè\\ŒT{}˜–¿cÏ=Κ†8Qúk瀧™9|¡J€¹›]™*Õ¾rô#ÃÀm¢ã‡}ú:õÚÁ®Ç® eØÜ§<C39C>5i©ìÚPÀ~³õ„¢xœ‹R<E280B9>Â>YÛäÎ:N7³…¨Yót.p—dá›âŠEÊ_'‡y žZöS„ŠèÜCžw¾õ´õ[ˆ{²¡Ú¼%Ô°µ<>…°Qq=1Áæ¶~u;3XzüÀ玥–
|
||||
Á.àªïÉ \Œ§AìZÍw™ê6§ÝW&Côçku¸-‹Ó¬ä›¦ îZzC<7A>œpü);ÈE>‡[¡÷çi×<>¸|yB;²µ×>¡Gìö¬J’G‚4½ÎIt‚`¡“#:÷k¤Ü+ÄF–(Þ>húÁ
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue