Skip to content

Commit

Permalink
Init
Browse files Browse the repository at this point in the history
  • Loading branch information
declantsien committed May 13, 2024
0 parents commit 7e74656
Show file tree
Hide file tree
Showing 61 changed files with 2,797 additions and 0 deletions.
201 changes: 201 additions & 0 deletions .dir-locals.el
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
;; Per-directory local variables for GNU Emacs 23 and later.

((nil
. ((fill-column . 78)
(tab-width . 8)
(sentence-end-double-space . t)

;; For use with 'bug-reference-prog-mode'.
(bug-reference-bug-regexp
. "\\(<https?://\\bugs\\.gnu\\.org/\\([0-9]+\\)>\\)")
(bug-reference-url-format . "https://bugs.gnu.org/%s")

(eval . (add-to-list 'completion-ignored-extensions ".go"))

;; Emacs-Guix
(eval . (setq-local guix-directory
(locate-dominating-file default-directory
".dir-locals.el")))

;; YASnippet
(eval . (with-eval-after-load
'yasnippet
(let ((guix-yasnippets
(expand-file-name
"etc/snippets/yas"
(locate-dominating-file default-directory
".dir-locals.el"))))
(unless (member guix-yasnippets yas-snippet-dirs)
(add-to-list 'yas-snippet-dirs guix-yasnippets)
(yas-reload-all)))))

;; Geiser
;; This allows automatically setting the `geiser-guile-load-path'
;; variable when using various Guix checkouts (e.g., via git worktrees).
(eval . (let ((root-dir-unexpanded (locate-dominating-file
default-directory ".dir-locals.el")))
;; While Guix should in theory always have a .dir-locals.el
;; (we are reading this file, after all) there seems to be a
;; strange problem where this code "escapes" to some other buffers,
;; at least vc-mode. See:
;; https://lists.gnu.org/archive/html/guix-devel/2020-11/msg00296.html
;; Upstream report: <https://bugs.gnu.org/44698>
;; Hence the following "when", which might otherwise be unnecessary;
;; it prevents causing an error when root-dir-unexpanded is nil.
(when root-dir-unexpanded
(let* ((root-dir (expand-file-name root-dir-unexpanded))
;; Workaround for bug https://issues.guix.gnu.org/43818.
(root-dir* (directory-file-name root-dir)))

(unless (boundp 'geiser-guile-load-path)
(defvar geiser-guile-load-path '()))
(make-local-variable 'geiser-guile-load-path)
(require 'cl-lib)
(cl-pushnew root-dir* geiser-guile-load-path
:test #'string-equal)))))))

(c-mode . ((c-file-style . "gnu")))
(scheme-mode
.
((indent-tabs-mode . nil)
(eval . (put 'eval-when 'scheme-indent-function 1))
(eval . (put 'call-with-prompt 'scheme-indent-function 1))
(eval . (put 'test-assert 'scheme-indent-function 1))
(eval . (put 'test-assertm 'scheme-indent-function 1))
(eval . (put 'test-equalm 'scheme-indent-function 1))
(eval . (put 'test-equal 'scheme-indent-function 1))
(eval . (put 'test-eq 'scheme-indent-function 1))
(eval . (put 'call-with-input-string 'scheme-indent-function 1))
(eval . (put 'call-with-port 'scheme-indent-function 1))
(eval . (put 'guard 'scheme-indent-function 1))
(eval . (put 'lambda* 'scheme-indent-function 1))
(eval . (put 'substitute* 'scheme-indent-function 1))
(eval . (put 'match-record 'scheme-indent-function 2))

;; 'modify-inputs' and its keywords.
(eval . (put 'modify-inputs 'scheme-indent-function 1))
(eval . (put 'replace 'scheme-indent-function 1))

;; 'modify-phases' and its keywords.
(eval . (put 'modify-phases 'scheme-indent-function 1))
(eval . (put 'replace 'scheme-indent-function 1))
(eval . (put 'add-before 'scheme-indent-function 2))
(eval . (put 'add-after 'scheme-indent-function 2))

(eval . (put 'modify-services 'scheme-indent-function 1))
(eval . (put 'with-directory-excursion 'scheme-indent-function 1))
(eval . (put 'with-file-lock 'scheme-indent-function 1))
(eval . (put 'with-file-lock/no-wait 'scheme-indent-function 1))
(eval . (put 'with-profile-lock 'scheme-indent-function 1))
(eval . (put 'with-writable-file 'scheme-indent-function 2))

(eval . (put 'package 'scheme-indent-function 0))
(eval . (put 'package/inherit 'scheme-indent-function 1))
(eval . (put 'origin 'scheme-indent-function 0))
(eval . (put 'build-system 'scheme-indent-function 0))
(eval . (put 'bag 'scheme-indent-function 0))
(eval . (put 'gexp->derivation 'scheme-indent-function 1))
(eval . (put 'graft 'scheme-indent-function 0))
(eval . (put 'operating-system 'scheme-indent-function 0))
(eval . (put 'file-system 'scheme-indent-function 0))
(eval . (put 'manifest-entry 'scheme-indent-function 0))
(eval . (put 'manifest-pattern 'scheme-indent-function 0))
(eval . (put 'substitute-keyword-arguments 'scheme-indent-function 1))
(eval . (put 'with-store 'scheme-indent-function 1))
(eval . (put 'with-external-store 'scheme-indent-function 1))
(eval . (put 'with-error-handling 'scheme-indent-function 0))
(eval . (put 'with-mutex 'scheme-indent-function 1))
(eval . (put 'with-atomic-file-output 'scheme-indent-function 1))
(eval . (put 'call-with-compressed-output-port 'scheme-indent-function 2))
(eval . (put 'call-with-decompressed-port 'scheme-indent-function 2))
(eval . (put 'call-with-gzip-input-port 'scheme-indent-function 1))
(eval . (put 'call-with-gzip-output-port 'scheme-indent-function 1))
(eval . (put 'call-with-lzip-input-port 'scheme-indent-function 1))
(eval . (put 'call-with-lzip-output-port 'scheme-indent-function 1))
(eval . (put 'signature-case 'scheme-indent-function 1))
(eval . (put 'emacs-batch-eval 'scheme-indent-function 0))
(eval . (put 'emacs-batch-edit-file 'scheme-indent-function 1))
(eval . (put 'emacs-substitute-sexps 'scheme-indent-function 1))
(eval . (put 'emacs-substitute-variables 'scheme-indent-function 1))
(eval . (put 'with-derivation-narinfo 'scheme-indent-function 1))
(eval . (put 'with-derivation-substitute 'scheme-indent-function 2))
(eval . (put 'with-status-report 'scheme-indent-function 1))
(eval . (put 'with-status-verbosity 'scheme-indent-function 1))
(eval . (put 'with-build-handler 'scheme-indent-function 1))

(eval . (put 'mlambda 'scheme-indent-function 1))
(eval . (put 'mlambdaq 'scheme-indent-function 1))
(eval . (put 'syntax-parameterize 'scheme-indent-function 1))
(eval . (put 'with-monad 'scheme-indent-function 1))
(eval . (put 'mbegin 'scheme-indent-function 1))
(eval . (put 'mwhen 'scheme-indent-function 1))
(eval . (put 'munless 'scheme-indent-function 1))
(eval . (put 'mlet* 'scheme-indent-function 2))
(eval . (put 'mlet 'scheme-indent-function 2))
(eval . (put 'mparameterize 'scheme-indent-function 2))
(eval . (put 'run-with-store 'scheme-indent-function 1))
(eval . (put 'run-with-state 'scheme-indent-function 1))
(eval . (put 'wrap-program 'scheme-indent-function 1))
(eval . (put 'wrap-script 'scheme-indent-function 1))
(eval . (put 'with-imported-modules 'scheme-indent-function 1))
(eval . (put 'with-extensions 'scheme-indent-function 1))
(eval . (put 'with-parameters 'scheme-indent-function 1))
(eval . (put 'let-system 'scheme-indent-function 1))
(eval . (put 'with-build-variables 'scheme-indent-function 2))

(eval . (put 'with-database 'scheme-indent-function 2))
(eval . (put 'call-with-database 'scheme-indent-function 1))
(eval . (put 'call-with-transaction 'scheme-indent-function 1))
(eval . (put 'with-statement 'scheme-indent-function 3))
(eval . (put 'call-with-retrying-transaction 'scheme-indent-function 1))
(eval . (put 'call-with-savepoint 'scheme-indent-function 1))
(eval . (put 'call-with-retrying-savepoint 'scheme-indent-function 1))

(eval . (put 'call-with-container 'scheme-indent-function 1))
(eval . (put 'container-excursion 'scheme-indent-function 1))
(eval . (put 'eventually 'scheme-indent-function 1))

(eval . (put 'call-with-progress-reporter 'scheme-indent-function 1))
(eval . (put 'with-repository 'scheme-indent-function 2))
(eval . (put 'with-temporary-git-repository 'scheme-indent-function 2))
(eval . (put 'with-environment-variables 'scheme-indent-function 1))
(eval . (put 'with-fresh-gnupg-setup 'scheme-indent-function 1))

(eval . (put 'with-paginated-output-port 'scheme-indent-function 1))

(eval . (put 'with-shepherd-action 'scheme-indent-function 3))

(eval . (put 'with-http-server 'scheme-indent-function 1))

;; This notably allows '(' in Paredit to not insert a space when the
;; preceding symbol is one of these.
(eval . (modify-syntax-entry ?~ "'"))
(eval . (modify-syntax-entry ?$ "'"))
(eval . (modify-syntax-entry ?+ "'"))

;; Emacs 28 changed the behavior of 'lisp-fill-paragraph', which causes the
;; first line of package descriptions to extrude past 'fill-column', and
;; somehow that is deemed more correct upstream (see:
;; https://issues.guix.gnu.org/56197).
(eval . (progn
(require 'lisp-mode)
(defun emacs27-lisp-fill-paragraph (&optional justify)
(interactive "P")
(or (fill-comment-paragraph justify)
(let ((paragraph-start
(concat paragraph-start
"\\|\\s-*\\([(;\"]\\|\\s-:\\|`(\\|#'(\\)"))
(paragraph-separate
(concat paragraph-separate "\\|\\s-*\".*[,\\.]$"))
(fill-column (if (and (integerp emacs-lisp-docstring-fill-column)
(derived-mode-p 'emacs-lisp-mode))
emacs-lisp-docstring-fill-column
fill-column)))
(fill-paragraph justify))
;; Never return nil.
t))
(setq-local fill-paragraph-function #'emacs27-lisp-fill-paragraph)))))

(emacs-lisp-mode . ((indent-tabs-mode . nil)))
(texinfo-mode . ((indent-tabs-mode . nil)
(fill-column . 72))))
16 changes: 16 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
root = true

[*.{c,h,cpp,hpp,el,scm,ac,am,m4,po}{,.in}]
end_of_line = lf
insert_final_newline = true
charset = utf-8
trim_trailing_whitespace = true

[*.{c,h,cpp,hpp,ac,am,m4,el,scm}{,.in}]
max_line_length = 85

[*.{c,h,cpp,hpp,ac,m4,el,scm}{,.in}]
indent_style = space

[*.{c,h,cpp,hpp}{,.in}]
indent_size = 4
4 changes: 4 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
use guix

export GUILE_LOAD_PATH="$(pwd):$HOME/.config/guix/current/share/guile/site/3.0"
export RUSTUP_DIST_SERVER="https://mirrors.ustc.edu.cn/rust-static"
Empty file added .gitattributes
Empty file.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*~
1 change: 1 addition & 0 deletions BUG
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Too many root sets
1 change: 1 addition & 0 deletions data/aliases
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
(define aliases (quote (("nightly" . "nightly-2024-05-10") ("beta" . "beta-2024-05-04") ("1.79.0-beta.3" . "beta-2024-05-04") ("1.79.0-beta.2" . "beta-2024-05-03") ("1.79.0-beta.1" . "beta-2024-04-29") ("1.78.0-beta.10" . "beta-2024-04-28") ("1.79.0-beta.3" . "beta") ("stable" . "stable-2024-05-02") ("1.78.0" . "stable-2024-05-02") ("1.77.2" . "stable-2024-04-09") ("1.77.1" . "stable-2024-03-28") ("1.77.0" . "stable-2024-03-21") ("1.76.0" . "stable-2024-02-08") ("1.75.0" . "stable-2023-12-28") ("1.74.1" . "stable-2023-12-07") ("1.74.0" . "stable-2023-11-16") ("1.73.0" . "stable-2023-10-05") ("1.72.1" . "stable-2023-09-19") ("1.72.0" . "stable-2023-08-24") ("1.71.1" . "stable-2023-08-03") ("1.71.0" . "stable-2023-07-13") ("1.70.0" . "stable-2023-06-01") ("1.69.0" . "stable-2023-04-20") ("1.68.2" . "stable-2023-03-28") ("1.68.1" . "stable-2023-03-23") ("1.68.0" . "stable-2023-03-09") ("1.67.1" . "stable-2023-02-09") ("1.67.0" . "stable-2023-01-26") ("1.66.1" . "stable-2023-01-10") ("1.66.0" . "stable-2022-12-15") ("1.65.0" . "stable-2022-11-03") ("1.64.0" . "stable-2022-09-22") ("1.63.0" . "stable-2022-08-11") ("1.62.1" . "stable-2022-07-19") ("1.62.0" . "stable-2022-06-30") ("1.61.0" . "stable-2022-05-19") ("1.60.0" . "stable-2022-04-07") ("1.59.0" . "stable-2022-02-24") ("1.58.1" . "stable-2022-01-20") ("1.58.0" . "stable-2022-01-13") ("1.57.0" . "stable-2021-12-02") ("1.56.1" . "stable-2021-11-01") ("1.56.0" . "stable-2021-10-21") ("1.55.0" . "stable-2021-09-09") ("1.54.0" . "stable-2021-07-29") ("1.53.0" . "stable-2021-06-17") ("1.52.1" . "stable-2021-05-10") ("1.52.0" . "stable-2021-05-06") ("1.51.0" . "stable-2021-03-25") ("1.50.0" . "stable-2021-02-11") ("1.49.0" . "stable-2020-12-31") ("1.48.0" . "stable-2020-11-19") ("1.78.0" . "stable"))))
1 change: 1 addition & 0 deletions data/channels
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
(define %channels '(1.48.0 1.49.0 1.50.0 1.51.0 1.52.0 1.52.1 1.53.0 1.54.0 1.55.0 1.56.0 1.56.1 1.57.0 1.58.0 1.58.1 1.59.0 1.60.0 1.61.0 1.62.0 1.62.1 1.63.0 1.64.0 1.65.0 1.66.0 1.66.1 1.67.0 1.67.1 1.68.0 1.68.1 1.68.2 1.69.0 1.70.0 1.71.0 1.71.1 1.72.0 1.72.1 1.73.0 1.74.0 1.74.1 1.75.0 1.76.0 1.77.0 1.77.1 1.77.2 1.78.0 1.78.0-beta.10 1.79.0-beta.1 1.79.0-beta.2 1.79.0-beta.3 beta beta-2024-04-28 beta-2024-04-29 beta-2024-05-03 beta-2024-05-04 nightly nightly-2024-04-29 nightly-2024-04-30 nightly-2024-05-01 nightly-2024-05-02 nightly-2024-05-03 nightly-2024-05-04 nightly-2024-05-05 nightly-2024-05-06 nightly-2024-05-07 nightly-2024-05-08 nightly-2024-05-09 nightly-2024-05-10 stable stable-2020-11-19 stable-2020-12-31 stable-2021-02-11 stable-2021-03-25 stable-2021-05-06 stable-2021-05-10 stable-2021-06-17 stable-2021-07-29 stable-2021-09-09 stable-2021-10-21 stable-2021-11-01 stable-2021-12-02 stable-2022-01-13 stable-2022-01-20 stable-2022-02-24 stable-2022-04-07 stable-2022-05-19 stable-2022-06-30 stable-2022-07-19 stable-2022-08-11 stable-2022-09-22 stable-2022-11-03 stable-2022-12-15 stable-2023-01-10 stable-2023-01-26 stable-2023-02-09 stable-2023-03-09 stable-2023-03-23 stable-2023-03-28 stable-2023-04-20 stable-2023-06-01 stable-2023-07-13 stable-2023-08-03 stable-2023-08-24 stable-2023-09-19 stable-2023-10-05 stable-2023-11-16 stable-2023-12-07 stable-2023-12-28 stable-2024-02-08 stable-2024-03-21 stable-2024-03-28 stable-2024-04-09 stable-2024-05-02))
2 changes: 2 additions & 0 deletions etc/rust-toolchain
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
nightly-2024-01-25

5 changes: 5 additions & 0 deletions etc/rust-toolchain.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[toolchain]
channel = "nightly-2024-01-25"
components = [ "rustfmt", "rustc-dev", "rust-analyzer" ]
targets = [ "wasm32-unknown-unknown", "thumbv2-none-eabi" ]
profile = "minimal"
Loading

0 comments on commit 7e74656

Please sign in to comment.