.
This commit is contained in:
parent
1b8aca7d3f
commit
9c8e94145f
6 changed files with 277 additions and 193 deletions
4
Makefile
4
Makefile
|
@ -2,6 +2,8 @@
|
||||||
mkdir -p ~/.config/guix
|
mkdir -p ~/.config/guix
|
||||||
cp channels.scm ~/.config/guix/channels.scm
|
cp channels.scm ~/.config/guix/channels.scm
|
||||||
|
|
||||||
install:
|
reconfigure:
|
||||||
guix archive --authorize < signing-key.pub
|
guix archive --authorize < signing-key.pub
|
||||||
guix system reconfigure ./config.scm --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org'
|
guix system reconfigure ./config.scm --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org'
|
||||||
|
make -C /home/zilti/.guix-home/profile/lib/browserpass make hosts-firefox-user
|
||||||
|
flatpak --user remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||||
|
|
14
config.org
14
config.org
|
@ -10,13 +10,13 @@
|
||||||
* Makefile
|
* Makefile
|
||||||
|
|
||||||
#+begin_src makefile :tangle Makefile
|
#+begin_src makefile :tangle Makefile
|
||||||
~/.config/guix/channels.scm:
|
reconfigure:
|
||||||
mkdir -p ~/.config/guix
|
mkdir -p ~/.config/guix
|
||||||
cp channels.scm ~/.config/guix/channels.scm
|
cp channels.scm ~/.config/guix/channels.scm
|
||||||
|
|
||||||
install:
|
|
||||||
guix archive --authorize < signing-key.pub
|
guix archive --authorize < signing-key.pub
|
||||||
guix system reconfigure ./config.scm --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org'
|
guix system reconfigure ./config.scm --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org'
|
||||||
|
make -C /home/zilti/.guix-home/profile/lib/browserpass make hosts-firefox-user
|
||||||
|
flatpak --user remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* System Installation Script
|
* System Installation Script
|
||||||
|
@ -57,6 +57,14 @@ This is to be run after setting up the partitions.
|
||||||
<<list-to-use(use-call="use-modules",entries=module-list,all-parens=1)>>
|
<<list-to-use(use-call="use-modules",entries=module-list,all-parens=1)>>
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
#+RESULTS:
|
||||||
|
: ice-9/boot-9.scm:1685:16: In procedure raise-exception:
|
||||||
|
: Syntax error:
|
||||||
|
: unknown file:13:51: source expression failed to match any pattern in form or
|
||||||
|
:
|
||||||
|
: Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
|
||||||
|
: scheme@(guile-user) [1]>
|
||||||
|
|
||||||
** Service Modules
|
** Service Modules
|
||||||
|
|
||||||
#+NAME: service-module-list
|
#+NAME: service-module-list
|
||||||
|
|
|
@ -95,12 +95,14 @@
|
||||||
(tab-always-indent 'complete)
|
(tab-always-indent 'complete)
|
||||||
(tool-bar-mode nil)
|
(tool-bar-mode nil)
|
||||||
:custom-face
|
:custom-face
|
||||||
(default ((t (:weight bold :height 113 :width normal :family "VictorMono Nerd Font"))))
|
;;(default ((t (:weight bold :height 113 :width normal :family "VictorMono Nerd Font"))))
|
||||||
|
(default ((t (:weight regular :height 105 :width normal :family "MonaspiceXe Nerd Font Mono"))))
|
||||||
:hook
|
:hook
|
||||||
(minibuffer-setup . cursor-intangible-mode)
|
(minibuffer-setup . cursor-intangible-mode)
|
||||||
:config
|
:config
|
||||||
(advice-add 'risky-local-variable-p :override #'ignore)
|
(advice-add 'risky-local-variable-p :override #'ignore)
|
||||||
(global-display-fill-column-indicator-mode t))
|
(global-display-fill-column-indicator-mode t)
|
||||||
|
(pixel-scroll-precision-mode 1))
|
||||||
|
|
||||||
;;;; Org Mode
|
;;;; Org Mode
|
||||||
(use-package org
|
(use-package org
|
||||||
|
@ -165,21 +167,40 @@
|
||||||
;;(load-theme 'catppuccin)
|
;;(load-theme 'catppuccin)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
(use-package unicode-fonts
|
||||||
|
:ensure t
|
||||||
|
:config
|
||||||
|
(unicode-fonts-setup))
|
||||||
|
|
||||||
|
(use-package ligature
|
||||||
|
:config
|
||||||
|
(ligature-set-ligatures
|
||||||
|
't
|
||||||
|
'( ;; SS01
|
||||||
|
"==" "===" "=/=" "!=" "!==" "/=" "/==" "~~" "=~" "!~"
|
||||||
|
;; SS02
|
||||||
|
">=" "<="
|
||||||
|
;; SS03
|
||||||
|
"->" "<-" "=>" "<!--" "-->" "<~" "<~~" "~>" "~~>" "<~>"
|
||||||
|
;; SS04
|
||||||
|
"</" "/>" "</>" "/\\" "\\/"
|
||||||
|
;; SS05
|
||||||
|
"|>" "<|"
|
||||||
|
;; SS06
|
||||||
|
"##" "###"
|
||||||
|
;; SS07
|
||||||
|
"***" "/*" "*/" "/*/" "(*" "*)" "(*)"
|
||||||
|
;; SS08
|
||||||
|
".=" ".-" "..<"
|
||||||
|
;; CALT
|
||||||
|
"//" "///" "&&" "!!" "??" "?." "?:" "||" "::" ":::" ";;" ".." "..." "=!=" "#=" ":=" "=:" "=:="
|
||||||
|
":>" ">:" "<:" ":<" "..=" "..-"
|
||||||
|
))
|
||||||
|
(global-ligature-mode t))
|
||||||
|
|
||||||
(set-frame-parameter nil 'alpha-background 80)
|
(set-frame-parameter nil 'alpha-background 80)
|
||||||
(add-to-list 'default-frame-alist '(alpha-background . 80))
|
(add-to-list 'default-frame-alist '(alpha-background . 80))
|
||||||
|
|
||||||
;; (use-package powerline
|
|
||||||
;; :init
|
|
||||||
;; (require 'powerline)
|
|
||||||
;; :config
|
|
||||||
;; (powerline-default-theme))
|
|
||||||
|
|
||||||
;; (use-package airline-themes
|
|
||||||
;; :after powerline
|
|
||||||
;; :init (require 'airline-themes)
|
|
||||||
;; :config
|
|
||||||
;; (load-theme 'airline-badwolf t))
|
|
||||||
|
|
||||||
(use-package lambda-line
|
(use-package lambda-line
|
||||||
:straight (:type git :host github :repo "lambda-emacs/lambda-line")
|
:straight (:type git :host github :repo "lambda-emacs/lambda-line")
|
||||||
:custom
|
:custom
|
||||||
|
@ -290,6 +311,11 @@
|
||||||
completion-category-defaults nil
|
completion-category-defaults nil
|
||||||
completion-category-overrides '((file (styles basic partial-completion)))))
|
completion-category-overrides '((file (styles basic partial-completion)))))
|
||||||
|
|
||||||
|
(use-package embark-consult
|
||||||
|
:after (embark consult)
|
||||||
|
:hook
|
||||||
|
(embark-collect-mode . consult-preview-at-point-mode))
|
||||||
|
|
||||||
(use-package consult
|
(use-package consult
|
||||||
:config
|
:config
|
||||||
(require 'consult-flymake)
|
(require 'consult-flymake)
|
||||||
|
@ -309,11 +335,6 @@
|
||||||
("C-<SPC>" . 'embark-act)
|
("C-<SPC>" . 'embark-act)
|
||||||
("C-M-<return>" . 'embark-bindings))
|
("C-M-<return>" . 'embark-bindings))
|
||||||
|
|
||||||
(use-package embark-consult
|
|
||||||
:after (embark consult)
|
|
||||||
:hook
|
|
||||||
(embark-collect-mode . consult-preview-at-point-mode))
|
|
||||||
|
|
||||||
(use-package wgrep
|
(use-package wgrep
|
||||||
:config
|
:config
|
||||||
(setq wgrep-auto-save-buffer t))
|
(setq wgrep-auto-save-buffer t))
|
||||||
|
@ -347,10 +368,9 @@
|
||||||
|
|
||||||
;;;;; Code Completion
|
;;;;; Code Completion
|
||||||
(use-package cape
|
(use-package cape
|
||||||
:init
|
:preface
|
||||||
(defun my/capf ()
|
(defun my/capf ()
|
||||||
(interactive)
|
(setq completion-at-point-functions
|
||||||
(setq-local completion-at-point-functions
|
|
||||||
(list (cape-capf-super
|
(list (cape-capf-super
|
||||||
#'tempel-complete
|
#'tempel-complete
|
||||||
#'cape-dabbrev
|
#'cape-dabbrev
|
||||||
|
@ -359,9 +379,11 @@
|
||||||
#'cape-line
|
#'cape-line
|
||||||
#'cape-emoji
|
#'cape-emoji
|
||||||
#'cape-keyword))))
|
#'cape-keyword))))
|
||||||
|
:config
|
||||||
(advice-add 'eglot-completion-at-point :around #'cape-wrap-buster)
|
(advice-add 'eglot-completion-at-point :around #'cape-wrap-buster)
|
||||||
(add-hook 'org-mode-hook #'my/capf)
|
:hook
|
||||||
(add-hook 'prog-mode-hook #'my/capf))
|
(org-mode . my/capf)
|
||||||
|
(prog-mode . my/capf))
|
||||||
|
|
||||||
(defun my/corfu-combined-sort (candidates)
|
(defun my/corfu-combined-sort (candidates)
|
||||||
"Sort CANDIDATES using both display-sort-function and corfu-sort-function."
|
"Sort CANDIDATES using both display-sort-function and corfu-sort-function."
|
||||||
|
@ -472,6 +494,8 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
clojure-ts-mode
|
clojure-ts-mode
|
||||||
emacs-lisp-mode
|
emacs-lisp-mode
|
||||||
scheme-mode
|
scheme-mode
|
||||||
|
:custom
|
||||||
|
(sp-undo-pairs-separately t)
|
||||||
:config
|
:config
|
||||||
(add-to-list 'sp-clojure-modes 'clojure-ts-mode)
|
(add-to-list 'sp-clojure-modes 'clojure-ts-mode)
|
||||||
(add-to-list 'sp-clojure-modes 'clojurec-ts-mode)
|
(add-to-list 'sp-clojure-modes 'clojurec-ts-mode)
|
||||||
|
@ -479,6 +503,10 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
(add-to-list 'sp-lisp-modes 'clojure-ts-mode)
|
(add-to-list 'sp-lisp-modes 'clojure-ts-mode)
|
||||||
(add-to-list 'sp-lisp-modes 'clojurec-ts-mode)
|
(add-to-list 'sp-lisp-modes 'clojurec-ts-mode)
|
||||||
(add-to-list 'sp-lisp-modes 'clojurescript-ts-mode)
|
(add-to-list 'sp-lisp-modes 'clojurescript-ts-mode)
|
||||||
|
(sp-local-pair '(emacs-lisp-mode scheme-mode clojure-ts-mode)
|
||||||
|
"'" nil)
|
||||||
|
(sp-local-pair '(emacs-lisp-mode scheme-mode clojure-ts-mode)
|
||||||
|
"`" nil)
|
||||||
(evil-define-key 'insert smartparens-mode-map
|
(evil-define-key 'insert smartparens-mode-map
|
||||||
(kbd "r") (conditional-keybind #'looking-at-opening-paren
|
(kbd "r") (conditional-keybind #'looking-at-opening-paren
|
||||||
#'sp-raise-sexp)
|
#'sp-raise-sexp)
|
||||||
|
@ -488,6 +516,8 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
#'cc/move-sexp-forward)
|
#'cc/move-sexp-forward)
|
||||||
(kbd "c") (conditional-keybind #'looking-at-opening-paren
|
(kbd "c") (conditional-keybind #'looking-at-opening-paren
|
||||||
#'sp-clone-sexp)
|
#'sp-clone-sexp)
|
||||||
|
(kbd "m") (conditional-keybind #'looking-at-opening-paren
|
||||||
|
#'sp-mark-sexp)
|
||||||
(kbd "DEL") (conditional-keybind #'being-past-closing-paren
|
(kbd "DEL") (conditional-keybind #'being-past-closing-paren
|
||||||
#'sp-backward-delete-sexp
|
#'sp-backward-delete-sexp
|
||||||
#'evil-delete-backward-char-and-join)
|
#'evil-delete-backward-char-and-join)
|
||||||
|
@ -529,8 +559,7 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
(use-package eglot
|
(use-package eglot
|
||||||
:preface
|
:preface
|
||||||
(defun my/eglot-capf ()
|
(defun my/eglot-capf ()
|
||||||
(interactive)
|
(setq completion-at-point-functions
|
||||||
(setq-local completion-at-point-functions
|
|
||||||
(list (cape-capf-super
|
(list (cape-capf-super
|
||||||
#'eglot-completion-at-point
|
#'eglot-completion-at-point
|
||||||
#'tempel-complete
|
#'tempel-complete
|
||||||
|
@ -578,7 +607,7 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
(call-interactively #'eglot-format-buffer))
|
(call-interactively #'eglot-format-buffer))
|
||||||
nil 'local)))
|
nil 'local)))
|
||||||
(eglot-managed-mode . eglot-inlay-hints-mode)
|
(eglot-managed-mode . eglot-inlay-hints-mode)
|
||||||
(eglot-managed-mode . #'my/eglot-capf))
|
(eglot-managed-mode . my/eglot-capf))
|
||||||
|
|
||||||
(use-package consult-eglot
|
(use-package consult-eglot
|
||||||
:after (consult eglot))
|
:after (consult eglot))
|
||||||
|
@ -628,10 +657,24 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
;;;;; Scheme
|
;;;;; Scheme
|
||||||
|
|
||||||
(use-package geiser
|
(use-package geiser
|
||||||
|
:preface
|
||||||
|
(defun my/geiser-capf ()
|
||||||
|
(setq completion-at-point-functions
|
||||||
|
(append geiser-capf--capfs
|
||||||
|
(list (cape-capf-super
|
||||||
|
#'tempel-complete
|
||||||
|
#'cape-dabbrev
|
||||||
|
#'cape-file
|
||||||
|
#'cape-dict
|
||||||
|
#'cape-line
|
||||||
|
#'cape-emoji
|
||||||
|
#'cape-keyword)))))
|
||||||
:custom
|
:custom
|
||||||
(geiser-chicken-match-limit 200)
|
(geiser-chicken-match-limit 200)
|
||||||
:config
|
:config
|
||||||
(defalias 'run-geiser 'geiser))
|
(defalias 'run-geiser 'geiser)
|
||||||
|
:hook
|
||||||
|
(geiser-mode . my/geiser-capf))
|
||||||
|
|
||||||
(use-package paren-face
|
(use-package paren-face
|
||||||
:hook
|
:hook
|
||||||
|
@ -644,10 +687,8 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
;;;;;; Chicken Scheme
|
;;;;;; Chicken Scheme
|
||||||
(use-package scheme
|
(use-package scheme
|
||||||
:config
|
:config
|
||||||
(eval-after-load 'eglot
|
(setq prettify-symbols-alist
|
||||||
'(add-to-list 'eglot-server-programs
|
'(("lambda" . "λ")))
|
||||||
'(scheme-mode
|
|
||||||
. ("chicken-lsp-server"))))
|
|
||||||
:hook
|
:hook
|
||||||
(scheme-mode . eglot-ensure))
|
(scheme-mode . eglot-ensure))
|
||||||
|
|
||||||
|
@ -752,5 +793,10 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
:encryption tls
|
:encryption tls
|
||||||
:channels ()))))
|
:channels ()))))
|
||||||
|
|
||||||
|
;;;; Wrapping Up
|
||||||
|
(use-package envrc
|
||||||
|
:config
|
||||||
|
(envrc-global-mode))
|
||||||
|
|
||||||
(provide 'init)
|
(provide 'init)
|
||||||
;;; init.el ends here
|
;;; init.el ends here
|
||||||
|
|
|
@ -15,6 +15,34 @@ prog-mode
|
||||||
|
|
||||||
scheme-mode
|
scheme-mode
|
||||||
|
|
||||||
|
(crate-dependency
|
||||||
|
"(\"rust-" crate-name "\" ,rust-" (s crate-name) "-" p ")")
|
||||||
|
|
||||||
|
(define-guix-crate
|
||||||
|
"(define-public rust-" (s egg-name) "-" (s maj-version)
|
||||||
|
n> "(package"
|
||||||
|
n> "(name \"rust-" egg-name "\")"
|
||||||
|
n> "(version \"" maj-version "." (s egg-version) "\")"
|
||||||
|
n> "(source"
|
||||||
|
n> "(origin"
|
||||||
|
n> "(method url-fetch)"
|
||||||
|
n> "(uri (crate-uri \"" egg-name "\" version))"
|
||||||
|
n> "(sha256"
|
||||||
|
n> "(base32"
|
||||||
|
n> "\"0z05x7f154n9bgmainrsmncf5i6dil43r9ymr3rdgwbg4wnxmz4s\"))))"
|
||||||
|
n> "(build-system cargo-build-system)"
|
||||||
|
n> "(arguments"
|
||||||
|
n> "`(#:cargo-inputs"
|
||||||
|
n> "(" p ")"
|
||||||
|
n> "#:cargo-development-inputs"
|
||||||
|
n> "(" p ")"
|
||||||
|
n> "#:cargo-build-inputs"
|
||||||
|
n> "(" p ")))"
|
||||||
|
n> "(synopsis \"" (s synopsis) "\")"
|
||||||
|
n> "(home-page \"https://crates.io/crates/" egg-name "\")"
|
||||||
|
n> "(description \"" synopsis ".\")"
|
||||||
|
n> "(license license:" (s license) ")))")
|
||||||
|
|
||||||
(define-guix-egg
|
(define-guix-egg
|
||||||
"(define-public chicken-" (s egg-name)
|
"(define-public chicken-" (s egg-name)
|
||||||
n> "(package"
|
n> "(package"
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
(specifications->packages
|
(specifications->packages
|
||||||
(list "bsd-games"
|
(list "bsd-games"
|
||||||
"bolt"
|
"bolt"
|
||||||
|
"browserpass-native"
|
||||||
"chicken"
|
"chicken"
|
||||||
"chicken-apropos"
|
"chicken-apropos"
|
||||||
"chicken-chicken-doc"
|
"chicken-chicken-doc"
|
||||||
|
@ -37,10 +38,11 @@
|
||||||
"curl"
|
"curl"
|
||||||
"direnv"
|
"direnv"
|
||||||
"emacs"
|
"emacs"
|
||||||
"emacs-direnv"
|
"eternalterminal"
|
||||||
"diff-so-fancy"
|
"diff-so-fancy"
|
||||||
"firefox"
|
"firefox"
|
||||||
"flatpak"
|
"flatpak"
|
||||||
|
"font-nerdfont-monaspice"
|
||||||
"fuzzel"
|
"fuzzel"
|
||||||
"gammastep"
|
"gammastep"
|
||||||
"grim"
|
"grim"
|
||||||
|
@ -49,6 +51,9 @@
|
||||||
"icecat"
|
"icecat"
|
||||||
"icedove-wayland"
|
"icedove-wayland"
|
||||||
"kitty"
|
"kitty"
|
||||||
|
"ksshaskpass"
|
||||||
|
"make"
|
||||||
|
"nm-tray"
|
||||||
#;"nss-certs" ; This package is broken
|
#;"nss-certs" ; This package is broken
|
||||||
"password-store"
|
"password-store"
|
||||||
"pass-otp"
|
"pass-otp"
|
||||||
|
@ -65,6 +70,7 @@
|
||||||
"swayfx"
|
"swayfx"
|
||||||
"swayidle"
|
"swayidle"
|
||||||
"swaylock-effects"
|
"swaylock-effects"
|
||||||
|
"unzip"
|
||||||
"waybar"
|
"waybar"
|
||||||
"wlogout"
|
"wlogout"
|
||||||
"xdg-desktop-portal")))
|
"xdg-desktop-portal")))
|
||||||
|
@ -106,6 +112,7 @@
|
||||||
home-environment-variables-service-type
|
home-environment-variables-service-type
|
||||||
`(("PATH" . "$PATH:~/.local/bin")
|
`(("PATH" . "$PATH:~/.local/bin")
|
||||||
("PASSWORD_STORE_DIR" . "$XDG_DATA_HOME/password-store")
|
("PASSWORD_STORE_DIR" . "$XDG_DATA_HOME/password-store")
|
||||||
|
("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$XDG_DATA_HOME/flatpak/exports/share")
|
||||||
("SSH_ASKPASS" . "ksshaskpass")
|
("SSH_ASKPASS" . "ksshaskpass")
|
||||||
("ELM_DISPLAY" . "wl")
|
("ELM_DISPLAY" . "wl")
|
||||||
("SDL_VIDEODRIVER" . "wayland")
|
("SDL_VIDEODRIVER" . "wayland")
|
||||||
|
|
15
library.org
15
library.org
|
@ -23,24 +23,17 @@ Converting org lists into guix ~use-~ calls.
|
||||||
|
|
||||||
Converting Org lists into Scheme symbol lists.
|
Converting Org lists into Scheme symbol lists.
|
||||||
|
|
||||||
#+NAME: sym-list-sample
|
#+NAME: list-sample
|
||||||
- Entry 1
|
- Entry 1
|
||||||
- Entry 2
|
- Entry 2
|
||||||
|
|
||||||
#+NAME: org-to-scheme-sym-list
|
#+NAME: org-to-scheme-sym-list
|
||||||
#+begin_src scheme :var input=sym-list-sample :results output
|
#+begin_src scheme :var data=list-sample
|
||||||
(pretty-print
|
(pretty-print
|
||||||
`(list
|
(cons 'list
|
||||||
,@(map (lambda (x) (string->symbol x)) input)))
|
(map string->symbol input)))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
#+RESULTS: org-to-scheme-sym-list
|
|
||||||
: ice-9/boot-9.scm:1685:16: In procedure raise-exception:
|
|
||||||
: Wrong type to apply: "Entry 1"
|
|
||||||
:
|
|
||||||
: Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
|
|
||||||
: scheme@(guile-user) [1]>
|
|
||||||
|
|
||||||
* Converting Tables
|
* Converting Tables
|
||||||
|
|
||||||
#+NAME: service-converter
|
#+NAME: service-converter
|
||||||
|
|
Loading…
Reference in a new issue