Things
All checks were successful
/ test (push) Successful in 14s

This commit is contained in:
Andrea Ciceri 2024-08-21 12:47:16 +02:00
parent 0afba6526f
commit 0043273db6
Signed by: aciceri
SSH key fingerprint: SHA256:/AagBweyV4Hlfg9u092n8hbHwD5fcB6A3qhDiDA65Rg
4 changed files with 37 additions and 124 deletions

110
flake.lock generated
View file

@ -7,11 +7,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1723799695,
"narHash": "sha256-8W/xxCpwQC9LOnwUO0Q7aGAF463ozaxcwQ6/toqtz0M=",
"lastModified": 1724231640,
"narHash": "sha256-1FnV0jk8GAItH71zVTzrhULylMKyXsb4FNmtn9b46Ug=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "3b4f8179de2b4950540d70161854e43fe1010eae",
"rev": "758aa1deb09d8d2dce7bd3a016434e8fcedfab89",
"type": "github"
},
"original": {
@ -20,38 +20,6 @@
"type": "github"
}
},
"extra-package-agenix-el": {
"flake": false,
"locked": {
"lastModified": 1722968702,
"narHash": "sha256-npdFsig2UmLcyTg6gaoPfpBfFjaTJ5vhbhx2zeDJ6B8=",
"owner": "t4ccer",
"repo": "agenix.el",
"rev": "1ef747135401ed4b905acc2b3ec3f909d9cb62e1",
"type": "github"
},
"original": {
"owner": "t4ccer",
"repo": "agenix.el",
"type": "github"
}
},
"extra-package-combobulate": {
"flake": false,
"locked": {
"lastModified": 1710175386,
"narHash": "sha256-rww0/6304xZWTFRo1BVcfSDdXOXtlgmfZOxAoOIjYsk=",
"owner": "mickeynp",
"repo": "combobulate",
"rev": "ee82c568ad639605518f62f82fae4bcc0dfdbb81",
"type": "github"
},
"original": {
"owner": "mickeynp",
"repo": "combobulate",
"type": "github"
}
},
"extra-package-copilot": {
"flake": false,
"locked": {
@ -68,30 +36,14 @@
"type": "github"
}
},
"extra-package-gptel": {
"flake": false,
"locked": {
"lastModified": 1723651088,
"narHash": "sha256-5uu9v8vqadAhFldMnMSyE5FUF5QNN5LlU++hLq34Mvg=",
"owner": "karthink",
"repo": "gptel",
"rev": "17f39f6a8144496252eacc012ef7f1d6a2ac883a",
"type": "github"
},
"original": {
"owner": "karthink",
"repo": "gptel",
"type": "github"
}
},
"extra-package-indent-bars": {
"flake": false,
"locked": {
"lastModified": 1723492886,
"narHash": "sha256-U/rzvl2EKT/ia0hvoy0c9muPvJ/5UXhsrO4yiOaaJQI=",
"lastModified": 1724025552,
"narHash": "sha256-xBwtj991wy2O764ATBEILsGk597f7pkCmDfbF+tbjns=",
"owner": "jdtsmith",
"repo": "indent-bars",
"rev": "209817a622e2fbf9201a6c756928c9f320431449",
"rev": "b72fa098d7c48d61fb4b508071bd77d054268f4e",
"type": "github"
},
"original": {
@ -100,39 +52,6 @@
"type": "github"
}
},
"extra-package-meow-tree-sitter": {
"flake": false,
"locked": {
"lastModified": 1719843724,
"narHash": "sha256-XdTeUq1J/zKoYaIDbl86LYuhJZJbaLFEpz7i5CxE8js=",
"owner": "skissue",
"repo": "meow-tree-sitter",
"rev": "d8dce964fac631a6d44b650a733075e14854159c",
"type": "github"
},
"original": {
"owner": "skissue",
"repo": "meow-tree-sitter",
"type": "github"
}
},
"extra-package-nix-ts-mode": {
"flake": false,
"locked": {
"lastModified": 1705596103,
"narHash": "sha256-jEUmhfLE7cFan4/PF4qBiEOLsjM3Q4iSDTlM+0CYwZg=",
"owner": "antifuchs",
"repo": "nix-ts-mode",
"rev": "0ef4e663add03d026a1804f57ac7d5453a635b15",
"type": "github"
},
"original": {
"owner": "antifuchs",
"ref": "improve-indented-string-indentation",
"repo": "nix-ts-mode",
"type": "github"
}
},
"extra-package-notmuch-notify": {
"flake": false,
"locked": {
@ -226,11 +145,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1723637854,
"narHash": "sha256-med8+5DSWa2UnOqtdICndjDAEjxr5D7zaIiK4pn0Q7c=",
"lastModified": 1723991338,
"narHash": "sha256-Grh5PF0+gootJfOJFenTTxDTYPidA3V28dqJ/WV7iis=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c3aa7b8938b17aebd2deecf7be0636000d62a2b9",
"rev": "8a3354191c0d7144db9756a74755672387b702ba",
"type": "github"
},
"original": {
@ -254,11 +173,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1723688146,
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=",
"lastModified": 1724098845,
"narHash": "sha256-D5HwjQw/02fuXbR4LCTo64koglP2j99hkDR79/3yLOE=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c3d4ac725177c030b1e289015989da2ad9d56af0",
"rev": "f1bad50880bae73ff2d82fafc22010b4fc097a9c",
"type": "github"
},
"original": {
@ -287,13 +206,8 @@
"root": {
"inputs": {
"emacs-overlay": "emacs-overlay",
"extra-package-agenix-el": "extra-package-agenix-el",
"extra-package-combobulate": "extra-package-combobulate",
"extra-package-copilot": "extra-package-copilot",
"extra-package-gptel": "extra-package-gptel",
"extra-package-indent-bars": "extra-package-indent-bars",
"extra-package-meow-tree-sitter": "extra-package-meow-tree-sitter",
"extra-package-nix-ts-mode": "extra-package-nix-ts-mode",
"extra-package-notmuch-notify": "extra-package-notmuch-notify",
"flake-parts": "flake-parts",
"hercules-ci-effects": "hercules-ci-effects",

View file

@ -10,33 +10,12 @@
url = "github:jdtsmith/indent-bars";
flake = false;
};
extra-package-nix-ts-mode = {
url = "github:antifuchs/nix-ts-mode/improve-indented-string-indentation";
flake = false;
};
extra-package-combobulate = {
url = "github:mickeynp/combobulate";
flake = false;
};
extra-package-agenix-el = {
url = "github:t4ccer/agenix.el";
flake = false;
};
extra-package-copilot = {
url = "github:zerolfx/copilot.el";
flake = false;
};
extra-package-notmuch-notify = {
url = "github:firmart/notmuch-notify";
flake = false;
};
extra-package-meow-tree-sitter = {
url = "github:skissue/meow-tree-sitter";
flake = false;
};
# TODO remove when there will be a new release including GPT-4o
extra-package-gptel = {
url = "github:karthink/gptel";
extra-package-copilot = {
url = "github:zerolfx/copilot.el";
flake = false;
};
};

18
init.el
View file

@ -784,7 +784,13 @@ This is meant to be an helper to be called from the window manager."
(use-package gptel
:custom
(gptel-api-key (getenv "OPENAI_API_KEY"))
(gptel-model "gpt-4o")
:config
(require 'gptel-curl)
(add-hook 'gptel-post-response-functions 'gptel-end-of-response)
(add-hook 'gptel-post-stream-hook 'gptel-auto-scroll)
(defun ccr/suggest-eshell-command ()
(interactive)
(save-excursion
@ -803,6 +809,18 @@ This is meant to be an helper to be called from the window manager."
(message "ChatGPT response failed with: %s" (plist-get info :status))
(kill-region start-pos end-pos)
(insert response)))))))
(add-to-list 'display-buffer-alist
'("^\\*ChatGPT\\*"
(display-buffer-full-frame)
(name . "floating")))
(defun ccr/start-chatgpt () ;; Used from outside Emacs by emacsclient --eval
(display-buffer (gptel "*ChatGPT*"))
(set-frame-name "floating")
;; (delete-other-windows)
;; (add-hook 'kill-buffer-hook 'delete-frame nil 't)
) ;; destroy frame on exit
)
(use-package copilot

View file

@ -4,10 +4,8 @@ pkgs: epkgs: let
depsPerPackage = {
indent-bars = [elpaPackages.compat];
copilot = [melpaPackages.editorconfig melpaPackages.dash melpaPackages.s melpaPackages.f];
notmuch-notify = [melpaPackages.alert melpaPackages.notmuch];
gptel = [pkgs.emacsPackages.transient elpaPackages.compat];
meow-tree-sitter = [melpaPackages.meow];
copilot = [melpaPackages.editorconfig melpaPackages.dash melpaPackages.s melpaPackages.f];
};
overrideAttrsPerPackage = {
@ -40,6 +38,7 @@ pkgs: epkgs: let
(package: ! builtins.elem package.pname (builtins.attrNames extraPackages))
(with epkgs.melpaPackages; [
meow
meow-tree-sitter
dracula-theme
nord-theme
catppuccin-theme
@ -75,6 +74,7 @@ pkgs: epkgs: let
cape
which-key
nix-mode
nix-ts-mode
agenix
unisonlang-mode
purescript-mode
@ -101,6 +101,8 @@ pkgs: epkgs: let
consult-notmuch
poly-org
casual-calc
gptel
agenix
# org-re-reveal # FIXME very not nice hash mismatch when building
# gptel # TODO uncomment when there will be a new release including GPT-4o
]) ++ (with elpaPackages; [