try to enable codex

This commit is contained in:
2023-12-28 21:03:38 +08:00
parent f23f7101e4
commit 3867469fc5
3 changed files with 108 additions and 58 deletions

View File

@@ -5,63 +5,73 @@ inputs:
inherit (inputs.lib) mkIf;
in mkIf (builtins.elem "server" inputs.config.nixos.packages._packageSets)
{
nixos.users.sharedModules = [(home-inputs: { config.programs.zsh =
nixos.users.sharedModules = [(home-inputs:
{
enable = true;
initExtraBeforeCompInit =
''
# p10k instant prompt
P10K_INSTANT_PROMPT="$XDG_CACHE_HOME/p10k-instant-prompt-''${(%):-%n}.zsh"
[[ ! -r "$P10K_INSTANT_PROMPT" ]] || source "$P10K_INSTANT_PROMPT"
HYPHEN_INSENSITIVE="true"
export PATH=~/bin:$PATH
function br
{
local cmd cmd_file code
cmd_file=$(mktemp)
if broot --outcmd "$cmd_file" "$@"; then
cmd=$(<"$cmd_file")
command rm -f "$cmd_file"
eval "$cmd"
else
code=$?
command rm -f "$cmd_file"
return "$code"
fi
}
alias todo="todo.sh"
'';
plugins =
[
{
file = "powerlevel10k.zsh-theme";
name = "powerlevel10k";
src = "${inputs.pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k";
}
{
file = "p10k.zsh";
name = "powerlevel10k-config";
src = ./p10k-config;
}
{
name = "zsh-lsd";
src = inputs.pkgs.fetchFromGitHub
{
owner = "z-shell";
repo = "zsh-lsd";
rev = "65bb5ac49190beda263aae552a9369127961632d";
hash = "sha256-JSNsfpgiqWhtmGQkC3B0R1Y1QnDKp9n0Zaqzjhwt7Xk=";
};
}
];
history =
config =
{
path = "${home-inputs.config.xdg.dataHome}/zsh/zsh_history";
extended = true;
save = 100000000;
size = 100000000;
programs.zsh =
{
enable = true;
initExtraBeforeCompInit =
''
# p10k instant prompt
P10K_INSTANT_PROMPT="$XDG_CACHE_HOME/p10k-instant-prompt-''${(%):-%n}.zsh"
[[ ! -r "$P10K_INSTANT_PROMPT" ]] || source "$P10K_INSTANT_PROMPT"
HYPHEN_INSENSITIVE="true"
export PATH=~/bin:$PATH
function br
{
local cmd cmd_file code
cmd_file=$(mktemp)
if broot --outcmd "$cmd_file" "$@"; then
cmd=$(<"$cmd_file")
command rm -f "$cmd_file"
eval "$cmd"
else
code=$?
command rm -f "$cmd_file"
return "$code"
fi
}
alias todo="todo.sh"
bindkey '^X' create_completion
'';
plugins =
[
{
file = "powerlevel10k.zsh-theme";
name = "powerlevel10k";
src = "${inputs.pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k";
}
{
file = "p10k.zsh";
name = "powerlevel10k-config";
src = ./p10k-config;
}
{
name = "zsh-lsd";
src = inputs.pkgs.fetchFromGitHub
{
owner = "z-shell";
repo = "zsh-lsd";
rev = "65bb5ac49190beda263aae552a9369127961632d";
hash = "sha256-JSNsfpgiqWhtmGQkC3B0R1Y1QnDKp9n0Zaqzjhwt7Xk=";
};
}
];
history =
{
path = "${home-inputs.config.xdg.dataHome}/zsh/zsh_history";
extended = true;
save = 100000000;
size = 100000000;
};
};
home.file.".config/openaiapirc".source =
home-inputs.config.lib.file.mkOutOfStoreSymlink inputs.config.sops.templates."zsh/codex".path;
};
};})];
})];
programs.zsh =
{
enable = true;
@@ -71,8 +81,46 @@ inputs:
ohMyZsh =
{
enable = true;
plugins = [ "git" "colored-man-pages" "extract" "history-substring-search" "autojump" ];
plugins = [ "git" "colored-man-pages" "extract" "history-substring-search" "autojump" "zsh_codex" ];
customPkgs =
[
(
let python = inputs.pkgs.python3.withPackages (ps: with ps; [ ps.openai ]);
in inputs.pkgs.stdenv.mkDerivation
{
name = "zsh-codex";
src = inputs.pkgs.fetchFromGitHub
{
owner = "tom-doerr";
repo = "zsh_codex";
rev = "ce547d610222d98f46f3b496df52c21f13074108";
hash = "sha256-pQWEj1PbKVd/+UMT+4JhyJUrLO1aAdbnPRQR0DJ/Iao=";
};
dontBuild = true;
buildInputs = [ python ];
installPhase =
''
mkdir -p $out/share/zsh/plugins/zsh_codex
cp -r * $out/share/zsh/plugins/zsh_codex
'';
}
)
];
};
};
sops =
{
templates."zsh/codex" =
{
mode = "0444";
content =
''
[openai]
organization_id=
secret_key=${inputs.config.sops.placeholder."zsh/codex-key"}
'';
};
secrets."zsh/codex-key" = {};
};
};
}

View File

@@ -46,7 +46,7 @@ inputs:
];
_pythonPackages = [(pythonPackages: with pythonPackages;
[
phonopy tensorflow keras openai scipy scikit-learn jupyterlab autograd
phonopy tensorflow keras scipy scikit-learn jupyterlab autograd
# localPackages.pix2tex
inquirerpy requests python-telegram-bot tqdm fastapi pypdf2 pandas matplotlib plotly gunicorn redis jinja2
certifi charset-normalizer idna orjson psycopg2 localPackages.eigengdb

View File

@@ -20,6 +20,8 @@ nebula:
key: ENC[AES256_GCM,data:kNm9hwMa/EhDeOCeZw1jEnroolTkeEeAxpSEDko6tHSDHwHbhfjr01ZzHKE=,iv:q2qCi99XgZJvRuF1dm16sK6BFIoa9QUN8p4LSiZq28o=,tag:ApOKdA91LBiWHv6TuXMkpA==,type:str]
wireguard:
privateKey: ENC[AES256_GCM,data:oIpiXJvEoyryS4eEutoe85Af0L5a5iNuOsCWCat9KEhr2ecY/vRimk/1fbA=,iv:dm2hTSNX7Q38yASon5o1jxEJZbWPXUWYydXYMBHF/sE=,tag:yrANhwIF/wHQGHGA1bfPgw==,type:str]
zsh:
codex-key: ENC[AES256_GCM,data:m7l5jMW/sMtAhfZ9OOOC0t7C/BYmbAHAFtGz5Tsrke6ge1DMHaCA5mafuuVLH7EgPYNu,iv:mR5vDBcIz/LkXbiKy9DQLryqedMqnXtGgp8KGkHMrvk=,tag:ixGbwOir2fLix/48KRwGFg==,type:str]
sops:
kms: []
gcp_kms: []
@@ -44,8 +46,8 @@ sops:
OUlxNjdQaXdXMkZ6bnV1ek4yZ2dpbkEKpKGOAxo5Eef2jtGrg4iSzmGCeg+vTgvu
+K8b+O19MIkGMDBm6UbYUPtc/7eqoEZRiTUzNMTmfkLVS4ul5zou9A==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2023-12-07T08:55:33Z"
mac: ENC[AES256_GCM,data:3WDgwrlyzb0QfhCpGEKSguLZpRE68APpUclQaP4/2O5pX8E/HZ9tXVQNNVeOqozHWIe8sM5/kvY4vXEiXc1t2qrJk4JdPNI7fMIWf7QAYQWcFDNbSquUNp1VSmNp3Aka3xSS1wyVWnQOs6JY9rdbmeOcLQq0jE2sNDvivtBeJJQ=,iv:xt94toLZ91J9Twigu4FiyeYIg27u9oPkzduCUaLIgts=,tag:chf+LnNJMrnMf191BorOvg==,type:str]
lastmodified: "2023-12-28T12:50:49Z"
mac: ENC[AES256_GCM,data:uhnRtXziZx9+SjWfWistb2XTE5hzWiwvkpp8McE6T5k3H2Dfgy3BW23MjreKm7rukGFKa5TSjCgK2QD+/+5fxP5zdYM6O5TNOEOl6rFTZ7Cijiguuk1yBsNGzBpI3HaS8HL/D9xaiukZXN7rwmBd+tWEjP2FmlnwnnZaW5TWUjk=,iv:625O/7tnccvScLPSZx9n2y+M0g1GE3Bl7Lznu53hiJA=,tag:8e39d5lSj+/4LE12O4G1dg==,type:str]
pgp: []
unencrypted_suffix: _unencrypted
version: 3.8.1