It's Chicken Time
This commit is contained in:
parent
0b17384f73
commit
9eefbce8cf
5 changed files with 123 additions and 84 deletions
3
Makefile
3
Makefile
|
@ -26,4 +26,7 @@ install-system: configuration.nix
|
||||||
cp disko-config.nix /mnt/etc/nixos
|
cp disko-config.nix /mnt/etc/nixos
|
||||||
nixos-install
|
nixos-install
|
||||||
|
|
||||||
|
install:
|
||||||
|
env NIXPKGS_ALLOW_BROKEN=1 nixos-rebuild switch --flake . --impure
|
||||||
|
|
||||||
# end
|
# end
|
||||||
|
|
14
chicken/chicken.nix
Normal file
14
chicken/chicken.nix
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{ config, libs, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
config.home.packages = with pkgs.chickenPackages_5.chickenEggs; [
|
||||||
|
chicken-update
|
||||||
|
csm
|
||||||
|
edn
|
||||||
|
lsp-server
|
||||||
|
mistie
|
||||||
|
nanomsg
|
||||||
|
r7rs
|
||||||
|
srfi-197
|
||||||
|
] ++ [ pkgs.chicken ];
|
||||||
|
}
|
|
@ -51,6 +51,7 @@
|
||||||
moe-theme
|
moe-theme
|
||||||
nerd-icons-completion
|
nerd-icons-completion
|
||||||
nerd-icons-corfu
|
nerd-icons-corfu
|
||||||
|
nix-mode
|
||||||
nix-ts-mode
|
nix-ts-mode
|
||||||
orderless
|
orderless
|
||||||
org
|
org
|
||||||
|
|
|
@ -7,7 +7,11 @@
|
||||||
;; Created: November 13, 2023
|
;; Created: November 13, 2023
|
||||||
;; Modified: November 13, 2023
|
;; Modified: November 13, 2023
|
||||||
;; Version: 0.0.1
|
;; Version: 0.0.1
|
||||||
;; Keywords: abbrev bib c calendar comm convenience data docs emulations extensions faces files frames games hardware help hypermedia i18n internal languages lisp local maint mail matching mouse multimedia news outlines processes terminals tex tools unix vc wp
|
;; Keywords: abbrev bib c calendar comm convenience data docs
|
||||||
|
;; emulations extensions faces files frames games hardware help
|
||||||
|
;; hypermedia i18n internal languages lisp local maint mail matching
|
||||||
|
;; mouse multimedia news outlines processes terminals tex tools unix
|
||||||
|
;; vc wp
|
||||||
;; Homepage: https://github.com/dziltener@lyrion.ch/init
|
;; Homepage: https://github.com/dziltener@lyrion.ch/init
|
||||||
;; Package-Requires: ((emacs "24.3"))
|
;; Package-Requires: ((emacs "24.3"))
|
||||||
;;
|
;;
|
||||||
|
@ -53,12 +57,19 @@
|
||||||
(use-package emacs
|
(use-package emacs
|
||||||
:custom
|
:custom
|
||||||
(completion-cycle-threshold 10)
|
(completion-cycle-threshold 10)
|
||||||
(read-extended-command-predicate #'command-completion-default-include-p)
|
(read-extended-command-predicate
|
||||||
|
#'command-completion-default-include-p)
|
||||||
|
(minibuffer-prompt-properties
|
||||||
|
(read-only t cursor-intangible t face minibuffer-prompt))
|
||||||
(tab-always-indent 'complete)
|
(tab-always-indent 'complete)
|
||||||
|
(enable-recursive-minibuffers t)
|
||||||
(global-hl-line-mode t)
|
(global-hl-line-mode t)
|
||||||
(menu-bar-mode nil)
|
(menu-bar-mode nil)
|
||||||
(scroll-bar-mode nil)
|
(scroll-bar-mode nil)
|
||||||
(tool-bar-mode nil))
|
(tool-bar-mode nil)
|
||||||
|
(recentf-mode t)
|
||||||
|
:hook
|
||||||
|
(minibuffer-setup . cursor-intangible-mode))
|
||||||
|
|
||||||
;;;; Org Mode
|
;;;; Org Mode
|
||||||
(use-package org
|
(use-package org
|
||||||
|
@ -157,8 +168,10 @@
|
||||||
(savehist-mode))
|
(savehist-mode))
|
||||||
|
|
||||||
(use-package orderless
|
(use-package orderless
|
||||||
:after eglot
|
:after consult
|
||||||
:config
|
:config
|
||||||
|
(eval-after-load 'eglot
|
||||||
|
(lambda () (setq completion-category-defaults nil)))
|
||||||
(setq completion-styles '(orderless basic)
|
(setq completion-styles '(orderless basic)
|
||||||
completion-category-defaults nil
|
completion-category-defaults nil
|
||||||
completion-category-overrides '((file (styles partial-completion)))))
|
completion-category-overrides '((file (styles partial-completion)))))
|
||||||
|
@ -167,8 +180,9 @@
|
||||||
:bind
|
:bind
|
||||||
(:map evil-normal-state-map
|
(:map evil-normal-state-map
|
||||||
("<leader><SPC>" . 'consult-find)
|
("<leader><SPC>" . 'consult-find)
|
||||||
("<leader>es" . 'consult-eglot-symbols)
|
("<leader>gs" . 'consult-eglot-symbols)
|
||||||
("<leader>b" . 'consult-buffer)
|
("<leader>b" . 'consult-buffer)
|
||||||
|
("<leader>gb" . 'consult-project-buffer)
|
||||||
("<leader>g/" . 'consult-git-grep)
|
("<leader>g/" . 'consult-git-grep)
|
||||||
("<leader>/" . 'consult-grep)
|
("<leader>/" . 'consult-grep)
|
||||||
("/" . 'consult-line)))
|
("/" . 'consult-line)))
|
||||||
|
@ -239,14 +253,7 @@
|
||||||
:commands
|
:commands
|
||||||
global-corfu-mode
|
global-corfu-mode
|
||||||
:init
|
:init
|
||||||
(global-corfu-mode)
|
(global-corfu-mode))
|
||||||
;:bind
|
|
||||||
;; (:map corfu-map
|
|
||||||
;; ("TAB" . corfu-next)
|
|
||||||
;; ([tab] . corfu-next)
|
|
||||||
;; ("S-TAB" . corfu-previous)
|
|
||||||
;; ([backtab] . corfu-previous))
|
|
||||||
)
|
|
||||||
|
|
||||||
(use-package corfu-history
|
(use-package corfu-history
|
||||||
:config
|
:config
|
||||||
|
@ -269,13 +276,12 @@
|
||||||
(add-to-list 'corfu-margin-formatters 'nerd-icons-corfu-formatter))
|
(add-to-list 'corfu-margin-formatters 'nerd-icons-corfu-formatter))
|
||||||
|
|
||||||
(use-package corfu-terminal
|
(use-package corfu-terminal
|
||||||
:if (display-graphic-p)
|
:if (not (display-graphic-p))
|
||||||
:after corfu
|
:after corfu
|
||||||
:commands
|
:commands
|
||||||
corfu-terminal-mode
|
corfu-terminal-mode
|
||||||
:init
|
:init
|
||||||
(corfu-terminal-mode +1))
|
(corfu-terminal-mode +1))
|
||||||
|
|
||||||
(use-package tempel)
|
(use-package tempel)
|
||||||
|
|
||||||
;;;; Basic Navigation
|
;;;; Basic Navigation
|
||||||
|
@ -327,11 +333,17 @@
|
||||||
:init
|
:init
|
||||||
(editorconfig-mode 1))
|
(editorconfig-mode 1))
|
||||||
|
|
||||||
|
(use-package flymake)
|
||||||
|
|
||||||
|
(use-package consult-flymake
|
||||||
|
:after (consult flymake))
|
||||||
|
|
||||||
(defun my/eglot-capf ()
|
(defun my/eglot-capf ()
|
||||||
(setq-local completion-at-point-functions
|
(setq-local completion-at-point-functions
|
||||||
(list (cape-super-capf
|
(list (cape-super-capf
|
||||||
#'eglot-completion-at-point
|
#'eglot-completion-at-point
|
||||||
#'tempel-complete
|
#'tempel-complete
|
||||||
|
#'cape-dabbrev
|
||||||
#'cape-file
|
#'cape-file
|
||||||
#'cape-dict))))
|
#'cape-dict))))
|
||||||
|
|
||||||
|
@ -391,10 +403,14 @@
|
||||||
:hook
|
:hook
|
||||||
((clojure-ts-mode . eglot-ensure)
|
((clojure-ts-mode . eglot-ensure)
|
||||||
(clojure-ts-mode . rainbow-delimiters-mode)
|
(clojure-ts-mode . rainbow-delimiters-mode)
|
||||||
(clojure-ts-mode . (lambda () (setq-local sesman-system 'CIDER)))
|
(clojure-ts-mode . (lambda ()
|
||||||
(clojure-ts-mode . (lambda () (sesman-install-menu clojure-mode-map)))
|
(setq-local sesman-system 'CIDER)))
|
||||||
(clojurec-ts-mode . (lambda () (sesman-install-menu clojurec-mode-map)))
|
(clojure-ts-mode . (lambda ()
|
||||||
(clojurescript-ts-mode . (lambda () (sesman-install-menu clojurescript-mode-map))))
|
(sesman-install-menu clojure-mode-map)))
|
||||||
|
(clojurec-ts-mode . (lambda ()
|
||||||
|
(sesman-install-menu clojurec-mode-map)))
|
||||||
|
(clojurescript-ts-mode . (lambda ()
|
||||||
|
(sesman-install-menu clojurescript-mode-map))))
|
||||||
:mode
|
:mode
|
||||||
("\\.clj\\'" . #'clojure-ts-mode)
|
("\\.clj\\'" . #'clojure-ts-mode)
|
||||||
("\\.cljc\\'" . #'clojurec-ts-mode)
|
("\\.cljc\\'" . #'clojurec-ts-mode)
|
||||||
|
@ -403,9 +419,12 @@
|
||||||
(add-to-list 'lispy-clojure-modes 'clojure-ts-mode)
|
(add-to-list 'lispy-clojure-modes 'clojure-ts-mode)
|
||||||
(add-to-list 'lispy-clojure-modes 'clojurec-ts-mode)
|
(add-to-list 'lispy-clojure-modes 'clojurec-ts-mode)
|
||||||
(add-to-list 'lispy-clojure-modes 'clojurescript-ts-mode)
|
(add-to-list 'lispy-clojure-modes 'clojurescript-ts-mode)
|
||||||
(add-to-list 'tree-sitter-major-mode-language-alist '(clojure-ts-mode . clojure))
|
(add-to-list 'tree-sitter-major-mode-language-alist
|
||||||
(add-to-list 'tree-sitter-major-mode-language-alist '(clojurec-ts-mode . clojure))
|
'(clojure-ts-mode . clojure))
|
||||||
(add-to-list 'tree-sitter-major-mode-language-alist '(clojurescript-ts-mode . clojure)))
|
(add-to-list 'tree-sitter-major-mode-language-alist
|
||||||
|
'(clojurec-ts-mode . clojure))
|
||||||
|
(add-to-list 'tree-sitter-major-mode-language-alist
|
||||||
|
'(clojurescript-ts-mode . clojure)))
|
||||||
|
|
||||||
(use-package cider
|
(use-package cider
|
||||||
:hook
|
:hook
|
||||||
|
@ -418,7 +437,8 @@
|
||||||
|
|
||||||
;;;;; Chicken Scheme
|
;;;;; Chicken Scheme
|
||||||
(defun flymake-chicken-init ()
|
(defun flymake-chicken-init ()
|
||||||
(add-hook 'flymake-diagnostic-functions #'flymake-chicken-backend nil t)
|
(add-hook 'flymake-diagnostic-functions
|
||||||
|
#'flymake-chicken-backend nil t)
|
||||||
(flymake-mode))
|
(flymake-mode))
|
||||||
|
|
||||||
(use-package geiser
|
(use-package geiser
|
||||||
|
@ -432,7 +452,8 @@
|
||||||
:custom
|
:custom
|
||||||
(lsp-scheme-implementation "chicken")
|
(lsp-scheme-implementation "chicken")
|
||||||
:config
|
:config
|
||||||
(progn (add-to-list 'eglot-server-programs '(scheme-mode . ("chicken-lsp-server"))))
|
(progn (add-to-list 'eglot-server-programs
|
||||||
|
'(scheme-mode . ("chicken-lsp-server"))))
|
||||||
(require 'lsp-scheme))
|
(require 'lsp-scheme))
|
||||||
|
|
||||||
;; (use-package flymake-chicken
|
;; (use-package flymake-chicken
|
||||||
|
@ -445,10 +466,10 @@
|
||||||
;; (add-hook 'flymake-diagnostic-functions #'flymake-chicken-backend nil t))
|
;; (add-hook 'flymake-diagnostic-functions #'flymake-chicken-backend nil t))
|
||||||
|
|
||||||
;;;; Other Languages
|
;;;; Other Languages
|
||||||
(use-package nix-ts-mode
|
(use-package nix-mode
|
||||||
:hook
|
:hook
|
||||||
eglot-ensure
|
eglot-ensure
|
||||||
:mode ("\\.nix\\'" . nix-ts-mode))
|
:mode ("\\.nix\\'" . nix-mode))
|
||||||
|
|
||||||
;; (use-package lsp-tailwindcss
|
;; (use-package lsp-tailwindcss
|
||||||
;; :init
|
;; :init
|
||||||
|
@ -478,7 +499,8 @@
|
||||||
(use-package forge
|
(use-package forge
|
||||||
:after magit
|
:after magit
|
||||||
:config
|
:config
|
||||||
(advice-add 'magit :after (lambda (&rest _args) (call-interactively #'forge-pull))))
|
(advice-add 'magit :after (lambda (&rest _args)
|
||||||
|
(call-interactively #'forge-pull))))
|
||||||
|
|
||||||
(use-package code-review
|
(use-package code-review
|
||||||
:after forge
|
:after forge
|
||||||
|
@ -490,7 +512,8 @@
|
||||||
|
|
||||||
;;;; LaTeX
|
;;;; LaTeX
|
||||||
;; https://github.com/politza/pdf-tools/#known-problems
|
;; https://github.com/politza/pdf-tools/#known-problems
|
||||||
(add-hook 'TeX-after-compilation-finished-functions #'TeX-revert-document-buffer)
|
(add-hook 'TeX-after-compilation-finished-functions
|
||||||
|
#'TeX-revert-document-buffer)
|
||||||
|
|
||||||
;;;; Communication
|
;;;; Communication
|
||||||
;;;;; IRC
|
;;;;; IRC
|
||||||
|
@ -506,7 +529,8 @@
|
||||||
:tls t
|
:tls t
|
||||||
:nick "zilti"
|
:nick "zilti"
|
||||||
:sasl-username "zilti/irc.libera.chat"
|
:sasl-username "zilti/irc.libera.chat"
|
||||||
:sasl-password (lambda (_) (password-store-get "Privat/Soju"))))))
|
:sasl-password (lambda (_)
|
||||||
|
(password-store-get "Privat/Soju"))))))
|
||||||
|
|
||||||
(provide 'init)
|
(provide 'init)
|
||||||
;;; init.el ends here
|
;;; init.el ends here
|
||||||
|
|
107
home.nix
107
home.nix
|
@ -5,74 +5,71 @@ args@{ config, pkgs, hyprland, split-monitor-workspaces, flatpaks, ... }:
|
||||||
home.homeDirectory = "/home/zilti";
|
home.homeDirectory = "/home/zilti";
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
pwvucontrol
|
SDL2
|
||||||
sysstat
|
babashka
|
||||||
lm_sensors
|
bitwarden
|
||||||
pciutils
|
|
||||||
usbutils
|
|
||||||
coreutils-full
|
|
||||||
unzip
|
|
||||||
(nerdfonts.override { fonts = [ "VictorMono" "MPlus" ]; })
|
|
||||||
lagrange
|
|
||||||
stow
|
|
||||||
nixfmt
|
|
||||||
pinentry-qt
|
|
||||||
libsForQt5.ksshaskpass
|
|
||||||
swappy
|
|
||||||
grim
|
|
||||||
slurp
|
|
||||||
hyprpaper
|
|
||||||
gamescope
|
|
||||||
git-cola
|
|
||||||
fossil
|
|
||||||
nil
|
|
||||||
gcc
|
|
||||||
libgccjit
|
|
||||||
chicken
|
chicken
|
||||||
|
clj-kondo
|
||||||
clojure
|
clojure
|
||||||
clojure-lsp
|
clojure-lsp
|
||||||
clj-kondo
|
coreutils-full
|
||||||
babashka
|
|
||||||
podman-compose
|
|
||||||
sqlite
|
|
||||||
nodejs_20
|
|
||||||
sqlite
|
|
||||||
tofi
|
|
||||||
pinentry-qt
|
|
||||||
wlr-randr
|
|
||||||
nwg-displays
|
|
||||||
libsForQt5.okular
|
|
||||||
libsForQt5.dolphin
|
|
||||||
kteatime
|
|
||||||
discord
|
discord
|
||||||
bitwarden
|
fossil
|
||||||
freetube
|
freetube
|
||||||
space-cadet-pinball
|
|
||||||
qtpass
|
|
||||||
ungoogled-chromium
|
|
||||||
slack
|
|
||||||
signal-desktop
|
|
||||||
telegram-desktop
|
|
||||||
zoom-us
|
|
||||||
git-filter-repo
|
|
||||||
git-doc
|
|
||||||
# For pharo
|
|
||||||
freetype
|
freetype
|
||||||
pixman
|
gamescope
|
||||||
SDL2
|
gcc
|
||||||
|
git-cola
|
||||||
|
git-doc
|
||||||
|
git-filter-repo
|
||||||
|
grim
|
||||||
|
hyprpaper
|
||||||
|
iconv
|
||||||
|
kteatime
|
||||||
|
lagrange
|
||||||
libffi
|
libffi
|
||||||
libuuid
|
libgccjit
|
||||||
|
libsForQt5.dolphin
|
||||||
libsForQt5.ksshaskpass
|
libsForQt5.ksshaskpass
|
||||||
perl538Packages.IOSocketSSL
|
libsForQt5.okular
|
||||||
|
libuuid
|
||||||
|
lm_sensors
|
||||||
|
(nerdfonts.override { fonts = [ "VictorMono" "MPlus" ]; })
|
||||||
|
nil
|
||||||
|
nixfmt
|
||||||
|
nodejs_20
|
||||||
|
nwg-displays
|
||||||
|
pciutils
|
||||||
perl538Packages.DigestHMAC
|
perl538Packages.DigestHMAC
|
||||||
perl538Packages.TermReadKey
|
|
||||||
perl538Packages.MIMELite
|
|
||||||
perl538Packages.FileLibMagic
|
perl538Packages.FileLibMagic
|
||||||
perl538Packages.IOSocketINET6
|
perl538Packages.IOSocketINET6
|
||||||
iconv
|
perl538Packages.IOSocketSSL
|
||||||
|
perl538Packages.MIMELite
|
||||||
|
perl538Packages.TermReadKey
|
||||||
|
pinentry-qt
|
||||||
|
pixman
|
||||||
|
podman-compose
|
||||||
|
pwvucontrol
|
||||||
|
qtpass
|
||||||
|
signal-desktop
|
||||||
|
slack
|
||||||
|
slurp
|
||||||
|
space-cadet-pinball
|
||||||
|
sqlite
|
||||||
|
stow
|
||||||
|
swappy
|
||||||
|
sysstat
|
||||||
|
telegram-desktop
|
||||||
|
tofi
|
||||||
|
ungoogled-chromium
|
||||||
|
unzip
|
||||||
|
usbutils
|
||||||
|
wlr-randr
|
||||||
|
zoom-us
|
||||||
];
|
];
|
||||||
|
|
||||||
imports = [ ./hyprland/hyprland.nix ./waybar/settings.nix ./emacs/emacs.nix ];
|
imports = [ ./hyprland/hyprland.nix ./waybar/settings.nix ./emacs/emacs.nix
|
||||||
|
./chicken/chicken.nix ];
|
||||||
|
|
||||||
home.stateVersion = "23.11";
|
home.stateVersion = "23.11";
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
Loading…
Reference in a new issue