Compare commits
62 Commits
165646b395
...
elpaca-mig
| Author | SHA1 | Date | |
|---|---|---|---|
| 0899a9a264 | |||
| fb671d1401 | |||
| a18188d3b1 | |||
| 4515ea2e05 | |||
| 60e1947dd8 | |||
| 0305fa4683 | |||
| 84a1f22326 | |||
| 4cb057109f | |||
| 51d2863cdc | |||
| 0c1cd15391 | |||
| cef3b04ebd | |||
| b9f87ac490 | |||
| 3b55c26a2c | |||
| dcd38e777a | |||
| 2116f650f7 | |||
| 00139ef2fe | |||
| 2af8204750 | |||
| cd64244bd8 | |||
| 4cc68dedea | |||
| 77fe614b7b | |||
| 6bbe7f186a | |||
| 77fc296e9e | |||
| 807944f182 | |||
| 97c2779d1b | |||
| 9d900057f6 | |||
| 86b545761f | |||
| a8a66916f4 | |||
| 32d68061a5 | |||
| 94e7e738fb | |||
| 77cf8d46a3 | |||
| b5fb07519c | |||
| 0f7e3596de | |||
| 7aeed13a34 | |||
| 7f87156a58 | |||
| 8a7cec11cf | |||
| da865671ad | |||
| 3004f57c1a | |||
| f82c4fb659 | |||
| a4d6664b77 | |||
| dd256a24f4 | |||
| 03829b74ce | |||
| 29e68d1714 | |||
| c0c51f571d | |||
| 9c54be10e1 | |||
| eb69712a7c | |||
| b86cce1c12 | |||
| 1b44c66902 | |||
| b54cb9fceb | |||
| 5fae69b391 | |||
| b8d4cf59b8 | |||
| 9ab7b41780 | |||
| 4f37050c1c | |||
| 49d98cbca1 | |||
| 47ecc2a0c4 | |||
| 149de8faae | |||
| 487aae9a58 | |||
| fde42131d2 | |||
| ddbe91c669 | |||
| 74a6e98e90 | |||
| 1aaeeaedf0 | |||
| e66a48a311 | |||
| ce1ba6dd90 |
@@ -1,63 +0,0 @@
|
|||||||
# Beware! This file is rewritten by htop when settings are changed in the interface.
|
|
||||||
# The parser is also very primitive, and not human-friendly.
|
|
||||||
htop_version=3.3.0
|
|
||||||
config_reader_min_version=3
|
|
||||||
fields=0 48 17 18 38 39 40 2 46 47 49 1
|
|
||||||
hide_kernel_threads=1
|
|
||||||
hide_userland_threads=1
|
|
||||||
hide_running_in_container=0
|
|
||||||
shadow_other_users=0
|
|
||||||
show_thread_names=0
|
|
||||||
show_program_path=1
|
|
||||||
highlight_base_name=0
|
|
||||||
highlight_deleted_exe=1
|
|
||||||
shadow_distribution_path_prefix=0
|
|
||||||
highlight_megabytes=1
|
|
||||||
highlight_threads=0
|
|
||||||
highlight_changes=0
|
|
||||||
highlight_changes_delay_secs=5
|
|
||||||
find_comm_in_cmdline=1
|
|
||||||
strip_exe_from_cmdline=1
|
|
||||||
show_merged_command=0
|
|
||||||
header_margin=1
|
|
||||||
screen_tabs=0
|
|
||||||
detailed_cpu_time=0
|
|
||||||
cpu_count_from_one=1
|
|
||||||
show_cpu_usage=1
|
|
||||||
show_cpu_frequency=0
|
|
||||||
show_cpu_temperature=0
|
|
||||||
degree_fahrenheit=0
|
|
||||||
update_process_names=0
|
|
||||||
account_guest_in_cpu_meter=0
|
|
||||||
color_scheme=0
|
|
||||||
enable_mouse=1
|
|
||||||
delay=15
|
|
||||||
hide_function_bar=0
|
|
||||||
header_layout=two_50_50
|
|
||||||
column_meters_0=AllCPUs Memory Swap
|
|
||||||
column_meter_modes_0=1 1 1
|
|
||||||
column_meters_1=Tasks LoadAverage Uptime
|
|
||||||
column_meter_modes_1=2 2 2
|
|
||||||
tree_view=0
|
|
||||||
sort_key=48
|
|
||||||
tree_sort_key=46
|
|
||||||
sort_direction=1
|
|
||||||
tree_sort_direction=-1
|
|
||||||
tree_view_always_by_pid=0
|
|
||||||
all_branches_collapsed=0
|
|
||||||
screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command
|
|
||||||
.sort_key=USER
|
|
||||||
.tree_sort_key=PERCENT_CPU
|
|
||||||
.tree_view_always_by_pid=0
|
|
||||||
.tree_view=0
|
|
||||||
.sort_direction=1
|
|
||||||
.tree_sort_direction=-1
|
|
||||||
.all_branches_collapsed=0
|
|
||||||
screen:I/O=PID USER IO_PRIORITY IO_RATE IO_READ_RATE IO_WRITE_RATE PERCENT_SWAP_DELAY PERCENT_IO_DELAY Command
|
|
||||||
.sort_key=IO_RATE
|
|
||||||
.tree_sort_key=PID
|
|
||||||
.tree_view_always_by_pid=0
|
|
||||||
.tree_view=0
|
|
||||||
.sort_direction=-1
|
|
||||||
.tree_sort_direction=1
|
|
||||||
.all_branches_collapsed=0
|
|
||||||
@@ -226,12 +226,14 @@ main = do
|
|||||||
, startWidgets = [myWorkspaces, myLayout]
|
, startWidgets = [myWorkspaces, myLayout]
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
, ( "strixi-minaj"
|
||||||
|
, baseConfig { endWidgets = laptopEndWidgets }
|
||||||
|
)
|
||||||
, ( "jay-lenovo"
|
, ( "jay-lenovo"
|
||||||
, baseConfig { endWidgets = laptopEndWidgets }
|
, baseConfig { endWidgets = laptopEndWidgets }
|
||||||
),
|
)
|
||||||
( "nixquick"
|
, ( "nixquick"
|
||||||
, baseConfig { endWidgets = [ myTray , myMpris ]
|
, baseConfig { endWidgets = [ myTray , myMpris ] }
|
||||||
}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -54,12 +54,14 @@
|
|||||||
sp-remove-active-pair-overlay
|
sp-remove-active-pair-overlay
|
||||||
sp-splice-sexp
|
sp-splice-sexp
|
||||||
sp-splice-sexp-killing-backward
|
sp-splice-sexp-killing-backward
|
||||||
|
string-inflection-all-cycle
|
||||||
string-inflection-toggle
|
string-inflection-toggle
|
||||||
tern-ac-dot-complete
|
tern-ac-dot-complete
|
||||||
transpose-sexps
|
transpose-sexps
|
||||||
transpose-words
|
transpose-words
|
||||||
undo-redo
|
undo-redo
|
||||||
universal-argument-minus
|
universal-argument-minus
|
||||||
|
upcase-region
|
||||||
wdired-finish-edit
|
wdired-finish-edit
|
||||||
yaml-electric-backspace
|
yaml-electric-backspace
|
||||||
yaml-electric-dash-and-dot
|
yaml-electric-dash-and-dot
|
||||||
|
|||||||
@@ -361,6 +361,8 @@ but provide support for writing custom elisp.
|
|||||||
*** shut-up
|
*** shut-up
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package shut-up
|
(use-package shut-up
|
||||||
|
:demand t
|
||||||
|
:ensure (:inherit t :wait t)
|
||||||
:config
|
:config
|
||||||
(defun imalison:shut-up-around (function &rest args)
|
(defun imalison:shut-up-around (function &rest args)
|
||||||
(shut-up (apply function args))))
|
(shut-up (apply function args))))
|
||||||
@@ -856,6 +858,7 @@ details.
|
|||||||
(directory-files filepath))))
|
(directory-files filepath))))
|
||||||
|
|
||||||
(use-package eshell
|
(use-package eshell
|
||||||
|
:ensure nil
|
||||||
:commands (eshell-parse-colon-path imalison:get-executables-on-path)
|
:commands (eshell-parse-colon-path imalison:get-executables-on-path)
|
||||||
:config
|
:config
|
||||||
(defun imalison:get-executables-on-path ()
|
(defun imalison:get-executables-on-path ()
|
||||||
@@ -1233,6 +1236,7 @@ This makes ~forward-word~ and ~backward-word~ understand snake and camel case.
|
|||||||
proced is an top like utility that runs inside of emacs. The following sets auto updating automatically and makes the update interval faster.
|
proced is an top like utility that runs inside of emacs. The following sets auto updating automatically and makes the update interval faster.
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package proced
|
(use-package proced
|
||||||
|
:ensure nil
|
||||||
:defer t
|
:defer t
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
@@ -1376,6 +1380,7 @@ Paradox is a package.el extension. I have no use for it now that I use straight.
|
|||||||
** server
|
** server
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package server
|
(use-package server
|
||||||
|
:ensure nil
|
||||||
:demand t
|
:demand t
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
@@ -1444,19 +1449,6 @@ The file server file for this emacs instance no longer exists.")
|
|||||||
(use-package refine
|
(use-package refine
|
||||||
:disabled t)
|
:disabled t)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** winner
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package winner
|
|
||||||
:commands (winner-undo winner-redo)
|
|
||||||
:bind ("C-c q" . imalison:winner-hydra/body)
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(defhydra imalison:winner-hydra ()
|
|
||||||
"Winner"
|
|
||||||
("p" winner-undo "back")
|
|
||||||
("n" winner-redo "forward" :exit t))
|
|
||||||
(winner-mode 1)))
|
|
||||||
#+END_SRC
|
|
||||||
** eyebrowse
|
** eyebrowse
|
||||||
I don't have any use for this now that I use frames mode, but its an interesting idea.
|
I don't have any use for this now that I use frames mode, but its an interesting idea.
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -1521,11 +1513,10 @@ custom-set-faces in your custom file.
|
|||||||
(use-package highlight-indent-guides
|
(use-package highlight-indent-guides
|
||||||
:commands highlight-indent-guides-mode
|
:commands highlight-indent-guides-mode
|
||||||
:diminish highlight-indent-guides-mode
|
:diminish highlight-indent-guides-mode
|
||||||
:preface
|
:demand t
|
||||||
(progn
|
|
||||||
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode))
|
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode)
|
||||||
(setq highlight-indent-guides-method 'fill)))
|
(setq highlight-indent-guides-method 'fill)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** man-mode
|
** man-mode
|
||||||
@@ -1534,6 +1525,7 @@ fixes that, but for now, it needs to be run manually, since I haven't figured
|
|||||||
out how to detect that a buffer is a man mode buffer.
|
out how to detect that a buffer is a man mode buffer.
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package man
|
(use-package man
|
||||||
|
:ensure nil
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
(defun imalison:fontify-man-page-buffer ()
|
(defun imalison:fontify-man-page-buffer ()
|
||||||
@@ -1759,6 +1751,7 @@ bind-key and global-set-key forms.
|
|||||||
#+END_SRC
|
#+END_SRC
|
||||||
** projectile
|
** projectile
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
|
|
||||||
(use-package projectile
|
(use-package projectile
|
||||||
:demand t
|
:demand t
|
||||||
:bind (:map projectile-mode-map
|
:bind (:map projectile-mode-map
|
||||||
@@ -1772,7 +1765,7 @@ bind-key and global-set-key forms.
|
|||||||
(projectile-git-submodule-command nil)
|
(projectile-git-submodule-command nil)
|
||||||
(project-vc-merge-submodules nil)
|
(project-vc-merge-submodules nil)
|
||||||
(projectile-current-project-on-switch 'keep))
|
(projectile-current-project-on-switch 'keep))
|
||||||
:preface
|
:config
|
||||||
(progn
|
(progn
|
||||||
(defmacro imalison:projectile-do-in-project (project-dir &rest forms)
|
(defmacro imalison:projectile-do-in-project (project-dir &rest forms)
|
||||||
`(imalison:with-default-directory ,project-dir
|
`(imalison:with-default-directory ,project-dir
|
||||||
@@ -1804,9 +1797,7 @@ bind-key and global-set-key forms.
|
|||||||
(write-region "" nil
|
(write-region "" nil
|
||||||
(expand-file-name
|
(expand-file-name
|
||||||
(concat directory "/"
|
(concat directory "/"
|
||||||
(nth 0 file-info) "/.projectile")))))))
|
(nth 0 file-info) "/.projectile"))))))
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(projectile-global-mode)
|
(projectile-global-mode)
|
||||||
(diminish 'projectile-mode)))
|
(diminish 'projectile-mode)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
@@ -1855,7 +1846,8 @@ bind-key and global-set-key forms.
|
|||||||
** avy
|
** avy
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package avy
|
(use-package avy
|
||||||
:preface
|
:after emit
|
||||||
|
:config
|
||||||
(progn
|
(progn
|
||||||
(emit-prefix-selector imalison:avy
|
(emit-prefix-selector imalison:avy
|
||||||
avy-goto-word-1
|
avy-goto-word-1
|
||||||
@@ -1867,11 +1859,13 @@ bind-key and global-set-key forms.
|
|||||||
** ace-window
|
** ace-window
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package ace-window
|
(use-package ace-window
|
||||||
:preface
|
:after emit
|
||||||
(emit-prefix-selector imalison:ace-window
|
:config
|
||||||
ace-select-window
|
(progn
|
||||||
ace-swap-window)
|
(emit-prefix-selector imalison:ace-window
|
||||||
:config (setq aw-keys '(?a ?s ?d ?f ?g ?h ?j ?k ?l))
|
ace-select-window
|
||||||
|
ace-swap-window)
|
||||||
|
(setq aw-keys '(?a ?s ?d ?f ?g ?h ?j ?k ?l)))
|
||||||
:bind ("C-c w" . imalison:ace-window))
|
:bind ("C-c w" . imalison:ace-window))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** neotree
|
** neotree
|
||||||
@@ -1897,41 +1891,41 @@ Neotree is useless with frame mode for now, so I've disabled it.
|
|||||||
* Completion
|
* Completion
|
||||||
** vertico
|
** vertico
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package vertico
|
(use-package vertico
|
||||||
:demand t
|
:demand t
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
(defmacro imalison:use-vertico-extension (extension-name &rest forms)
|
(defmacro imalison:use-vertico-extension (extension-name &rest forms)
|
||||||
(let ((extension-symbol (intern (concat "vertico-" (symbol-name extension-name)))))
|
(let ((extension-symbol (intern (concat "vertico-" (symbol-name extension-name)))))
|
||||||
`(use-package ,extension-symbol
|
`(use-package ,extension-symbol
|
||||||
:after vertico
|
:after vertico
|
||||||
:straight (,extension-symbol
|
:straight (,extension-symbol
|
||||||
:repo "emacs-straight/vertico"
|
:repo "emacs-straight/vertico"
|
||||||
:host github
|
:host github
|
||||||
:files ,(list (concat "extensions/" (symbol-name extension-symbol) ".el")))
|
:files ,(list (concat "extensions/" (symbol-name extension-symbol) ".el")))
|
||||||
,@forms)))
|
,@forms)))
|
||||||
|
|
||||||
(put 'imalison:use-vertico-extension 'lisp-indent-function 'defun)
|
(put 'imalison:use-vertico-extension 'lisp-indent-function 'defun)
|
||||||
|
|
||||||
(imalison:use-vertico-extension directory
|
(imalison:use-vertico-extension directory
|
||||||
:bind (:map vertico-map
|
:bind (:map vertico-map
|
||||||
("RET" . vertico-directory-enter)
|
("RET" . vertico-directory-enter)
|
||||||
("DEL" . vertico-directory-delete-char)
|
("DEL" . vertico-directory-delete-char)
|
||||||
("M-DEL" . vertico-directory-delete-word)
|
("M-DEL" . vertico-directory-delete-word)
|
||||||
("TAB" . embark-act)))
|
("TAB" . embark-act)))
|
||||||
|
|
||||||
(imalison:use-vertico-extension grid)
|
(imalison:use-vertico-extension grid)
|
||||||
(imalison:use-vertico-extension buffer)
|
(imalison:use-vertico-extension buffer)
|
||||||
(imalison:use-vertico-extension flat)
|
(imalison:use-vertico-extension flat)
|
||||||
(imalison:use-vertico-extension multiform
|
(imalison:use-vertico-extension multiform
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
(vertico-multiform-mode +1)
|
(vertico-multiform-mode +1)
|
||||||
(setq vertico-multiform-commands
|
(setq vertico-multiform-commands
|
||||||
'((consult-imenu grid)
|
'((consult-imenu grid)
|
||||||
(consult-ripgrep buffer)))))
|
(consult-ripgrep buffer)))))
|
||||||
|
|
||||||
(vertico-mode +1)))
|
(vertico-mode +1)))
|
||||||
#+end_src
|
#+end_src
|
||||||
** orderless
|
** orderless
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
@@ -2026,10 +2020,12 @@ Neotree is useless with frame mode for now, so I've disabled it.
|
|||||||
** company
|
** company
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package company
|
(use-package company
|
||||||
|
:after emit
|
||||||
:commands company-mode imalison:company
|
:commands company-mode imalison:company
|
||||||
:bind (("C-\\" . imalison:company))
|
:bind (("C-\\" . imalison:company))
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
(add-hook 'prog-mode-hook (lambda () (company-mode t)))
|
||||||
(emit-prefix-selector imalison:company
|
(emit-prefix-selector imalison:company
|
||||||
company-complete
|
company-complete
|
||||||
company-yasnippet)
|
company-yasnippet)
|
||||||
@@ -2039,9 +2035,7 @@ Neotree is useless with frame mode for now, so I've disabled it.
|
|||||||
:demand t
|
:demand t
|
||||||
:config (company-prescient-mode +1))
|
:config (company-prescient-mode +1))
|
||||||
(global-company-mode)
|
(global-company-mode)
|
||||||
(diminish 'company-mode))
|
(diminish 'company-mode)))
|
||||||
:init
|
|
||||||
(add-hook 'prog-mode-hook (lambda () (company-mode t))))
|
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
*** company-flx
|
*** company-flx
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -2214,6 +2208,7 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
|
|||||||
** align
|
** align
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package align
|
(use-package align
|
||||||
|
:ensure nil
|
||||||
:bind ("C-c C-a" . imalison:align-regexp-hydra/body)
|
:bind ("C-c C-a" . imalison:align-regexp-hydra/body)
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
@@ -2242,9 +2237,10 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
|
|||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package flycheck
|
(use-package flycheck
|
||||||
:commands flycheck-mode
|
:commands flycheck-mode
|
||||||
:init (add-hook 'prog-mode-hook 'flycheck-mode)
|
:defer 1
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
(add-hook 'prog-mode-hook 'flycheck-mode)
|
||||||
(use-package flycheck-package
|
(use-package flycheck-package
|
||||||
:disabled t
|
:disabled t
|
||||||
:config (flycheck-package-setup))
|
:config (flycheck-package-setup))
|
||||||
@@ -2261,12 +2257,6 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
|
|||||||
(global-flycheck-mode))
|
(global-flycheck-mode))
|
||||||
:diminish flycheck-mode)
|
:diminish flycheck-mode)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
* straight
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package straight
|
|
||||||
:config
|
|
||||||
(setq straight-vc-git-auto-fast-forward t))
|
|
||||||
#+END_SRC
|
|
||||||
* auth-source
|
* auth-source
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package auth-source
|
(use-package auth-source
|
||||||
@@ -2318,96 +2308,96 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
|
|||||||
#+END_SRC
|
#+END_SRC
|
||||||
*** go
|
*** go
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package go-mode
|
;; (use-package go-mode
|
||||||
:mode (("\\.go\\'" . go-mode))
|
;; :mode (("\\.go\\'" . go-mode))
|
||||||
:preface
|
;; :after emit
|
||||||
(progn
|
;; :config
|
||||||
(defun imalison:glide-novendor ()
|
;; (progn
|
||||||
(projectile-with-default-dir (projectile-project-root)
|
;; (defun imalison:glide-novendor ()
|
||||||
(shell-command-to-string "glide novendor")))
|
;; (projectile-with-default-dir (projectile-project-root)
|
||||||
|
;; (shell-command-to-string "glide novendor")))
|
||||||
|
|
||||||
(defun imalison:go-mode-create-imenu-index ()
|
;; (defun imalison:go-mode-create-imenu-index ()
|
||||||
"Create and return an imenu index alist. Unlike the default
|
;; "Create and return an imenu index alist. Unlike the default
|
||||||
alist created by go-mode, this method creates an alist where
|
;; alist created by go-mode, this method creates an alist where
|
||||||
items follow a style that is consistent with other prog-modes."
|
;; items follow a style that is consistent with other prog-modes."
|
||||||
(let* ((patterns '(("type" "^type *\\([^ \t\n\r\f]*\\)" 1)))
|
;; (let* ((patterns '(("type" "^type *\\([^ \t\n\r\f]*\\)" 1)))
|
||||||
(type-index (imenu--generic-function patterns))
|
;; (type-index (imenu--generic-function patterns))
|
||||||
(func-index))
|
;; (func-index))
|
||||||
(save-excursion
|
;; (save-excursion
|
||||||
(goto-char (point-min))
|
;; (goto-char (point-min))
|
||||||
(while (re-search-forward go-func-meth-regexp (point-max) t)
|
;; (while (re-search-forward go-func-meth-regexp (point-max) t)
|
||||||
(let* ((var (match-string-no-properties 1))
|
;; (let* ((var (match-string-no-properties 1))
|
||||||
(func (match-string-no-properties 2))
|
;; (func (match-string-no-properties 2))
|
||||||
(name (if var
|
;; (name (if var
|
||||||
(concat (substring var 0 -1) "." func)
|
;; (concat (substring var 0 -1) "." func)
|
||||||
func))
|
;; func))
|
||||||
(beg (match-beginning 0))
|
;; (beg (match-beginning 0))
|
||||||
(marker (copy-marker beg))
|
;; (marker (copy-marker beg))
|
||||||
(item (cons name marker)))
|
;; (item (cons name marker)))
|
||||||
(setq func-index (cons item func-index)))))
|
;; (setq func-index (cons item func-index)))))
|
||||||
(nconc type-index (list (cons "func" func-index)))))
|
;; (nconc type-index (list (cons "func" func-index)))))
|
||||||
|
|
||||||
(defun imalison:go-workspace-path ()
|
;; (defun imalison:go-workspace-path ()
|
||||||
(file-relative-name (projectile-project-root)
|
;; (file-relative-name (projectile-project-root)
|
||||||
(concat (file-name-as-directory
|
;; (concat (file-name-as-directory
|
||||||
(imalison:get-go-path)) "src")))
|
;; (imalison:get-go-path)) "src")))
|
||||||
|
|
||||||
(defun imalison:install-current-go-project ()
|
;; (defun imalison:install-current-go-project ()
|
||||||
(interactive)
|
;; (interactive)
|
||||||
(start-process
|
;; (start-process
|
||||||
"go install" "go install log" "go" "install"
|
;; "go install" "go install log" "go" "install"
|
||||||
(concat (file-name-as-directory (imalison:go-workspace-path)) "...")))
|
;; (concat (file-name-as-directory (imalison:go-workspace-path)) "...")))
|
||||||
|
|
||||||
(defun imalison:get-go-path ()
|
;; (defun imalison:get-go-path ()
|
||||||
(let ((environment-go-path (getenv "GOPATH")))
|
;; (let ((environment-go-path (getenv "GOPATH")))
|
||||||
(if environment-go-path
|
;; (if environment-go-path
|
||||||
(file-name-as-directory (car (s-split ":" environment-go-path)))
|
;; (file-name-as-directory (car (s-split ":" environment-go-path)))
|
||||||
"~/go")))
|
;; "~/go")))
|
||||||
|
|
||||||
(defmacro imalison:get-go-src (&rest paths)
|
;; (defmacro imalison:get-go-src (&rest paths)
|
||||||
`(imalison:join-paths (imalison:get-go-path) "src" ,@paths))
|
;; `(imalison:join-paths (imalison:get-go-path) "src" ,@paths))
|
||||||
|
|
||||||
(imalison:let-advise-around imalison:advise-normal-go-command
|
;; (imalison:let-advise-around imalison:advise-normal-go-command
|
||||||
(go-command "go"))
|
;; (go-command "go"))
|
||||||
|
|
||||||
(defun imalison:go-mode-hook ()
|
;; (defun imalison:go-mode-hook ()
|
||||||
(go-eldoc-setup)
|
;; (go-eldoc-setup)
|
||||||
(set (make-local-variable 'company-backends) '(company-go))
|
;; (set (make-local-variable 'company-backends) '(company-go))
|
||||||
(make-local-variable 'projectile-globally-ignored-files)
|
;; (make-local-variable 'projectile-globally-ignored-files)
|
||||||
(add-hook 'after-save-hook 'imalison:install-current-go-project nil
|
;; (add-hook 'after-save-hook 'imalison:install-current-go-project nil
|
||||||
'yes-do-local)
|
;; 'yes-do-local)
|
||||||
(add-to-list 'projectile-globally-ignored-files
|
;; (add-to-list 'projectile-globally-ignored-files
|
||||||
"vendor")))
|
;; "vendor"))
|
||||||
:config
|
;; (use-package gotest
|
||||||
(progn
|
;; :demand t
|
||||||
(use-package gotest
|
;; :after emit
|
||||||
:demand t
|
;; :bind (:map go-mode-map
|
||||||
:bind (:map go-mode-map
|
;; ("C-c t" . imalison:gotest))
|
||||||
("C-c t" . imalison:gotest))
|
;; :preface
|
||||||
:preface
|
;; (progn
|
||||||
(progn
|
;; (emit-prefix-selector imalison:gotest
|
||||||
(emit-prefix-selector imalison:gotest
|
;; go-test-current-test
|
||||||
go-test-current-test
|
;; go-test-current-file)
|
||||||
go-test-current-file)
|
|
||||||
|
|
||||||
(defun imalison:add-expected-test-name-for-suite (suite-name test-name)
|
;; (defun imalison:add-expected-test-name-for-suite (suite-name test-name)
|
||||||
(if (> (length suite-name) 0)
|
;; (if (> (length suite-name) 0)
|
||||||
(concat " -run Test" suite-name)
|
;; (concat " -run Test" suite-name)
|
||||||
"")))
|
;; "")))
|
||||||
:config
|
;; :config
|
||||||
(progn
|
;; (progn
|
||||||
(setq go-test-verbose t
|
;; (setq go-test-verbose t
|
||||||
go-test-additional-arguments-function
|
;; go-test-additional-arguments-function
|
||||||
'imalison:add-expected-test-name-for-suite)))
|
;; 'imalison:add-expected-test-name-for-suite)))
|
||||||
(use-package company-go
|
;; (use-package company-go
|
||||||
:config (setq company-go-show-annotation t))
|
;; :config (setq company-go-show-annotation t))
|
||||||
|
|
||||||
(advice-add 'go-import-add :around 'imalison:advise-normal-go-command)
|
;; (advice-add 'go-import-add :around 'imalison:advise-normal-go-command)
|
||||||
|
|
||||||
(setq gofmt-command "goimports")
|
;; (setq gofmt-command "goimports")
|
||||||
|
|
||||||
(add-hook 'go-mode-hook 'imalison:go-mode-hook)
|
;; (add-hook 'go-mode-hook 'imalison:go-mode-hook)
|
||||||
(add-hook 'before-save-hook 'gofmt-before-save t)))
|
;; (add-hook 'before-save-hook 'gofmt-before-save t)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
**** Show diffs of testify output
|
**** Show diffs of testify output
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -2449,13 +2439,25 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
|
|||||||
**** elisp-slime-nav
|
**** elisp-slime-nav
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package elisp-slime-nav
|
(use-package elisp-slime-nav
|
||||||
|
:after emit
|
||||||
:commands elisp-slime-nav-mode
|
:commands elisp-slime-nav-mode
|
||||||
:config
|
:config
|
||||||
(diminish 'elisp-slime-nav-mode)
|
(progn
|
||||||
:preface
|
(defvar imalison:check-parens nil)
|
||||||
(emit-prefix-selector imalison:elisp-slime-nav
|
|
||||||
elisp-slime-nav-find-elisp-thing-at-point
|
(defun imalison:maybe-check-parens ()
|
||||||
elisp-slime-nav-describe-elisp-thing-at-point)
|
(if imalison:check-parens
|
||||||
|
(check-parens)))
|
||||||
|
|
||||||
|
(defun imalison:emacs-lisp-hook ()
|
||||||
|
(elisp-slime-nav-mode t)
|
||||||
|
(add-hook 'write-file-functions 'imalison:maybe-check-parens nil t))
|
||||||
|
|
||||||
|
(add-hook 'emacs-lisp-mode-hook 'imalison:emacs-lisp-hook)
|
||||||
|
(diminish 'elisp-slime-nav-mode)
|
||||||
|
(emit-prefix-selector imalison:elisp-slime-nav
|
||||||
|
elisp-slime-nav-find-elisp-thing-at-point
|
||||||
|
elisp-slime-nav-describe-elisp-thing-at-point))
|
||||||
:bind (:map elisp-slime-nav-mode-map
|
:bind (:map elisp-slime-nav-mode-map
|
||||||
("M-." . imalison:elisp-slime-nav)))
|
("M-." . imalison:elisp-slime-nav)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
@@ -2465,6 +2467,7 @@ it's supposed to do, but instead uses its own collection of functions to control
|
|||||||
where the definition is popped up. This fixes that.
|
where the definition is popped up. This fixes that.
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package find-func
|
(use-package find-func
|
||||||
|
:ensure nil
|
||||||
:preface
|
:preface
|
||||||
(progn
|
(progn
|
||||||
(defun imalison:find-function-display-buffer (function)
|
(defun imalison:find-function-display-buffer (function)
|
||||||
@@ -2484,14 +2487,6 @@ Macrostep is an indespensible tool for writing emacs lisp macros. It lets you se
|
|||||||
:bind (:map lisp-mode-shared-map
|
:bind (:map lisp-mode-shared-map
|
||||||
("C-c e" . macrostep-expand)))
|
("C-c e" . macrostep-expand)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
**** emr
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package emr
|
|
||||||
:bind ("M-RET" . emr-show-refactor-menu)
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(add-hook 'prog-mode-hook 'emr-initialize)))
|
|
||||||
#+END_SRC
|
|
||||||
**** Editing configuration
|
**** Editing configuration
|
||||||
Reduce indentation for some functions
|
Reduce indentation for some functions
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -2505,6 +2500,7 @@ Reduce indentation for some functions
|
|||||||
**** edebug
|
**** edebug
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package edebug
|
(use-package edebug
|
||||||
|
:ensure nil
|
||||||
:defer t
|
:defer t
|
||||||
:config
|
:config
|
||||||
(progn (setq edebug-trace t)))
|
(progn (setq edebug-trace t)))
|
||||||
@@ -2543,6 +2539,7 @@ Reduce indentation for some functions
|
|||||||
:commands (eros-mode)
|
:commands (eros-mode)
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
(add-hook 'emacs-lisp-mode-hook 'eros-mode)
|
||||||
(advice-add 'eval-defun :around 'eros-around-eval-defun)
|
(advice-add 'eval-defun :around 'eros-around-eval-defun)
|
||||||
(advice-add 'eval-last-sexp :around 'eros-around-eval-last-sexp))
|
(advice-add 'eval-last-sexp :around 'eros-around-eval-last-sexp))
|
||||||
:preface
|
:preface
|
||||||
@@ -2563,9 +2560,7 @@ Reduce indentation for some functions
|
|||||||
(save-excursion
|
(save-excursion
|
||||||
(end-of-defun)
|
(end-of-defun)
|
||||||
(point))))
|
(point))))
|
||||||
result))
|
result))))
|
||||||
|
|
||||||
(add-hook 'emacs-lisp-mode-hook 'eros-mode)))
|
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
**** Reevalute defvars when running eval-last-sexp
|
**** Reevalute defvars when running eval-last-sexp
|
||||||
We noflet elisp--preceding-sexp to munge defvars into sexps only for
|
We noflet elisp--preceding-sexp to munge defvars into sexps only for
|
||||||
@@ -2583,27 +2578,10 @@ eval-last-sexp.
|
|||||||
#+END_SRC
|
#+END_SRC
|
||||||
**** Init hook
|
**** Init hook
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(defvar imalison:check-parens nil)
|
|
||||||
|
|
||||||
(defun imalison:maybe-check-parens ()
|
|
||||||
(if imalison:check-parens
|
|
||||||
(check-parens)))
|
|
||||||
|
|
||||||
(defun imalison:emacs-lisp-hook ()
|
|
||||||
(elisp-slime-nav-mode t)
|
|
||||||
(add-hook 'write-file-functions 'imalison:maybe-check-parens nil t))
|
|
||||||
|
|
||||||
(add-hook 'emacs-lisp-mode-hook 'imalison:emacs-lisp-hook)
|
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
**** Keybinds
|
**** Keybinds
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(emit-compose
|
|
||||||
imalison:copy-eval-last-sexp kill-new prin1-to-string eval-last-sexp)
|
|
||||||
|
|
||||||
(emit-prefix-selector imalison:eval-last-sexp
|
|
||||||
eval-region-or-last-sexp
|
|
||||||
imalison:copy-eval-last-sexp)
|
|
||||||
|
|
||||||
(define-key lisp-mode-shared-map (kbd "C-c C-c") 'eval-defun)
|
(define-key lisp-mode-shared-map (kbd "C-c C-c") 'eval-defun)
|
||||||
(define-key lisp-mode-shared-map (kbd "C-x C-e") 'imalison:eval-last-sexp)
|
(define-key lisp-mode-shared-map (kbd "C-x C-e") 'imalison:eval-last-sexp)
|
||||||
(unbind-key "C-j" lisp-interaction-mode-map)
|
(unbind-key "C-j" lisp-interaction-mode-map)
|
||||||
@@ -2704,11 +2682,6 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
|
|||||||
cider-preferred-build-tool "boot")
|
cider-preferred-build-tool "boot")
|
||||||
(add-hook 'clojure-mode-hook 'cider-mode)))
|
(add-hook 'clojure-mode-hook 'cider-mode)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
**** clj-refactor
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package clj-refactor
|
|
||||||
:commands clj-refactor-mode)
|
|
||||||
#+END_SRC
|
|
||||||
*** scala
|
*** scala
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package scala-mode
|
(use-package scala-mode
|
||||||
@@ -2908,7 +2881,7 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
|
|||||||
#+END_SRC
|
#+END_SRC
|
||||||
*** C/C++
|
*** C/C++
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package cc-mode)
|
(use-package cc-mode :ensure nil)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
*** C--
|
*** C--
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -3113,9 +3086,10 @@ My org-mode configuration now lives in its own file org-config.org.
|
|||||||
** magit
|
** magit
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package magit
|
(use-package magit
|
||||||
|
:after emit
|
||||||
:commands magit-status
|
:commands magit-status
|
||||||
:bind (("C-x g" . imalison:magit-status))
|
:bind (("C-x g" . imalison:magit-status))
|
||||||
:preface
|
:config
|
||||||
(progn
|
(progn
|
||||||
(emit-let-around imalison:magit-status-traditional
|
(emit-let-around imalison:magit-status-traditional
|
||||||
magit-status
|
magit-status
|
||||||
@@ -3126,9 +3100,7 @@ My org-mode configuration now lives in its own file org-config.org.
|
|||||||
imalison:magit-status-traditional)
|
imalison:magit-status-traditional)
|
||||||
(defun imalison:after-magit-visit-file (&rest args)
|
(defun imalison:after-magit-visit-file (&rest args)
|
||||||
(when (derived-mode-p 'org-mode)
|
(when (derived-mode-p 'org-mode)
|
||||||
(org-show-context 'magit-goto))))
|
(org-show-context 'magit-goto)))
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(when frame-mode
|
(when frame-mode
|
||||||
(setq magit-commit-show-diff t))
|
(setq magit-commit-show-diff t))
|
||||||
(unbind-key "C-j" magit-status-mode-map)
|
(unbind-key "C-j" magit-status-mode-map)
|
||||||
@@ -3139,7 +3111,6 @@ My org-mode configuration now lives in its own file org-config.org.
|
|||||||
magit-display-buffer-function
|
magit-display-buffer-function
|
||||||
'magit-display-buffer-same-window-except-diff-v1)
|
'magit-display-buffer-same-window-except-diff-v1)
|
||||||
(magit-auto-revert-mode)
|
(magit-auto-revert-mode)
|
||||||
|
|
||||||
(add-to-list 'org-show-context-detail '(magit-goto . lineage))
|
(add-to-list 'org-show-context-detail '(magit-goto . lineage))
|
||||||
(advice-add 'magit-diff-visit-file :after 'imalison:after-magit-visit-file)
|
(advice-add 'magit-diff-visit-file :after 'imalison:after-magit-visit-file)
|
||||||
(add-hook 'magit-popup-mode-hook 'imalison:disable-show-trailing-whitespace)))
|
(add-hook 'magit-popup-mode-hook 'imalison:disable-show-trailing-whitespace)))
|
||||||
@@ -3150,20 +3121,6 @@ My org-mode configuration now lives in its own file org-config.org.
|
|||||||
:disabled t
|
:disabled t
|
||||||
:after magit)
|
:after magit)
|
||||||
#+end_src
|
#+end_src
|
||||||
** vc
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(use-package vc
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(defun vc-find-revision-of-file (revision)
|
|
||||||
(interactive
|
|
||||||
(list (vc-read-revision
|
|
||||||
"Revision to visit: "
|
|
||||||
(list (imalison:join-paths (magit-toplevel) (car (magit-list-files)))))))
|
|
||||||
(let* ((file (completing-read "Select file to visit: " (magit-revision-files revision)))
|
|
||||||
(full-file (imalison:join-paths (magit-toplevel) file)))
|
|
||||||
(switch-to-buffer (vc-find-revision full-file revision))))))
|
|
||||||
#+end_src
|
|
||||||
** git-link
|
** git-link
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package git-link
|
(use-package git-link
|
||||||
@@ -3288,14 +3245,6 @@ modeline and with excessive http requests to github.
|
|||||||
gist-unstar gist-list-starred gist-fork))
|
gist-unstar gist-list-starred gist-fork))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
* Programming
|
* Programming
|
||||||
** emr
|
|
||||||
emr (emacs refactor) provides support for refactoring in many programming languages
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package emr
|
|
||||||
:bind (:map prog-mode-map
|
|
||||||
("M-RET" . emr-show-refactor-menu))
|
|
||||||
:config (emr-initialize))
|
|
||||||
#+END_SRC
|
|
||||||
** semantic
|
** semantic
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package semantic
|
(use-package semantic
|
||||||
@@ -3331,6 +3280,29 @@ emr (emacs refactor) provides support for refactoring in many programming langua
|
|||||||
(setq lsp-ui-doc-position 'bottom)))))
|
(setq lsp-ui-doc-position 'bottom)))))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
* Utility
|
* Utility
|
||||||
|
** eat
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package eat
|
||||||
|
:preface
|
||||||
|
(progn
|
||||||
|
(defun imalison:avy-eat (arg)
|
||||||
|
(interactive "P")
|
||||||
|
(eat-emacs-mode)
|
||||||
|
(imalison:avy arg)))
|
||||||
|
:bind
|
||||||
|
(:map eat-mode-map
|
||||||
|
("C-c C-k" . eat-semi-char-mode)
|
||||||
|
:map eat-semi-char-mode-map
|
||||||
|
("C-c C-j" . eat-emacs-mode)
|
||||||
|
("C-j" . imalison:avy-eat))
|
||||||
|
:config
|
||||||
|
(progn
|
||||||
|
(setq eat--install-path
|
||||||
|
(file-name-directory
|
||||||
|
(file-truename (imalison:join-paths eat--install-path "eat.el"))))
|
||||||
|
(eat-compile-terminfo)
|
||||||
|
(setq eat-term-shell-integration-directory (imalison:join-paths eat--install-path "integration"))))
|
||||||
|
#+end_src
|
||||||
** term
|
** term
|
||||||
The main thing I do here is restore a bunch of keybindings that are eliminated
|
The main thing I do here is restore a bunch of keybindings that are eliminated
|
||||||
in term-mode. This makes term-mode 1000% more useful
|
in term-mode. This makes term-mode 1000% more useful
|
||||||
@@ -3338,6 +3310,7 @@ in term-mode. This makes term-mode 1000% more useful
|
|||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package term
|
(use-package term
|
||||||
:demand t
|
:demand t
|
||||||
|
:ensure nil
|
||||||
:preface
|
:preface
|
||||||
(progn
|
(progn
|
||||||
(defun imalison:avy-term (arg)
|
(defun imalison:avy-term (arg)
|
||||||
@@ -3402,6 +3375,7 @@ in term-mode. This makes term-mode 1000% more useful
|
|||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package term-projectile
|
(use-package term-projectile
|
||||||
:bind ("C-c 7" . imalison:term-hydra-global/body)
|
:bind ("C-c 7" . imalison:term-hydra-global/body)
|
||||||
|
:after emit
|
||||||
:commands
|
:commands
|
||||||
(term-projectile-backward
|
(term-projectile-backward
|
||||||
term-projectile-create-new
|
term-projectile-create-new
|
||||||
@@ -3412,6 +3386,12 @@ in term-mode. This makes term-mode 1000% more useful
|
|||||||
term-projectile-switch)
|
term-projectile-switch)
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
(use-package term-manager-eat
|
||||||
|
:demand t
|
||||||
|
:straight
|
||||||
|
(term-manager-eat :type git :files ("term-manager-eat.el")
|
||||||
|
:host github :repo "colonelpanic8/term-manager"))
|
||||||
|
(setq term-projectile-term-manager (term-projectile :build-term 'term-manager-eat-build-term))
|
||||||
(emit-prefix-selector imalison:term
|
(emit-prefix-selector imalison:term
|
||||||
term-projectile-forward
|
term-projectile-forward
|
||||||
term-projectile-create-new)
|
term-projectile-create-new)
|
||||||
@@ -3567,6 +3547,7 @@ I don't use iedit directly, but it is used by [[*emr][emr]] and I need to disabl
|
|||||||
** narrow-indirect
|
** narrow-indirect
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package narrow-indirect
|
(use-package narrow-indirect
|
||||||
|
:ensure nil
|
||||||
:init
|
:init
|
||||||
(progn
|
(progn
|
||||||
(define-key ctl-x-4-map "nd" 'ni-narrow-to-defun-indirect-other-window)
|
(define-key ctl-x-4-map "nd" 'ni-narrow-to-defun-indirect-other-window)
|
||||||
@@ -3602,9 +3583,9 @@ I had to disable this mode because something that it does messes with coding set
|
|||||||
(interactive)
|
(interactive)
|
||||||
(setq dtrt-indent-original-indent nil)
|
(setq dtrt-indent-original-indent nil)
|
||||||
(dtrt-indent-adapt)))
|
(dtrt-indent-adapt)))
|
||||||
:init (add-hook 'prog-mode-hook 'dtrt-indent-mode)
|
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
|
(add-hook 'prog-mode-hook 'dtrt-indent-mode)
|
||||||
(setq dtrt-indent-active-mode-line-info " [⟼]")))
|
(setq dtrt-indent-active-mode-line-info " [⟼]")))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** indent-guide
|
** indent-guide
|
||||||
@@ -3645,7 +3626,9 @@ Disabled because it makes it hard to redo things
|
|||||||
** recentf
|
** recentf
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package recentf
|
(use-package recentf
|
||||||
|
:ensure nil
|
||||||
:demand t
|
:demand t
|
||||||
|
:after shut-up
|
||||||
:config
|
:config
|
||||||
(progn
|
(progn
|
||||||
(setq recentf-max-saved-items 1000
|
(setq recentf-max-saved-items 1000
|
||||||
@@ -3741,6 +3724,7 @@ Not really sure what this is
|
|||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package epg
|
(use-package epg
|
||||||
:after shut-up
|
:after shut-up
|
||||||
|
:ensure nil
|
||||||
:config
|
:config
|
||||||
(shut-up
|
(shut-up
|
||||||
(epa-file-enable)))
|
(epa-file-enable)))
|
||||||
@@ -3763,113 +3747,6 @@ Not really sure what this is
|
|||||||
:disabled t ;; fails to load eieio on startup
|
:disabled t ;; fails to load eieio on startup
|
||||||
)
|
)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** mu4e
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
;; (eval-when-compile
|
|
||||||
;; (require 's)
|
|
||||||
;; (defvar mu4e-elisp-directory
|
|
||||||
;; (s-trim (shell-command-to-string "mu4e_directory"))))
|
|
||||||
(use-package mu4e
|
|
||||||
:disabled t
|
|
||||||
:load-path mu4e-elisp-directory
|
|
||||||
:straight nil
|
|
||||||
:commands (mu4e mu4e-view-message-with-msgid mu4e-update-index email)
|
|
||||||
:bind ("C-c 0" . email)
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(defun email (&optional arg)
|
|
||||||
(interactive "P")
|
|
||||||
(if (string-equal (persp-name persp-curr) "email")
|
|
||||||
(progn (delete-other-windows) (mu4e))
|
|
||||||
(progn
|
|
||||||
(persp-switch "email")
|
|
||||||
(when (or (not (mu4e-running-p)) arg)
|
|
||||||
(delete-other-windows) (mu4e)))))
|
|
||||||
;; enable inline images
|
|
||||||
(setq mu4e-view-show-images t)
|
|
||||||
;; show images
|
|
||||||
(setq mu4e-show-images t)
|
|
||||||
;; Try to display html as text
|
|
||||||
(setq mu4e-view-prefer-html nil)
|
|
||||||
|
|
||||||
(setq mu4e-html2text-command "html2text -width 80 -nobs -utf8")
|
|
||||||
|
|
||||||
;; use imagemagick, if available
|
|
||||||
(when (fboundp 'imagemagick-register-types)
|
|
||||||
(imagemagick-register-types))
|
|
||||||
(setq mail-user-agent 'mu4e-user-agent)
|
|
||||||
(require 'org-mu4e)
|
|
||||||
(setq mu4e-compose-complete-only-after nil)
|
|
||||||
(setq mu4e-maildir "~/Mail")
|
|
||||||
|
|
||||||
(setq mu4e-drafts-folder "/[Gmail].Drafts")
|
|
||||||
(setq mu4e-sent-folder "/[Gmail].Sent Mail")
|
|
||||||
(setq mu4e-trash-folder "/[Gmail].Trash")
|
|
||||||
|
|
||||||
(setq mu4e-sent-messages-behavior 'delete)
|
|
||||||
(setq mu4e-headers-skip-duplicates t)
|
|
||||||
(setq mu4e-update-interval (* 60 20))
|
|
||||||
(setq message-kill-buffer-on-exit t)
|
|
||||||
(setq mail-user-agent 'mu4e-user-agent) ;; make mu4e the default mail client
|
|
||||||
|
|
||||||
;; don't save message to Sent Messages, Gmail/IMAP takes care of this
|
|
||||||
(setq mu4e-sent-messages-behavior 'delete)
|
|
||||||
|
|
||||||
;; allow for updating mail using 'U' in the main view:
|
|
||||||
(setq mu4e-get-mail-command "timeout 60 offlineimap")
|
|
||||||
|
|
||||||
(add-hook 'mu4e-compose-mode-hook
|
|
||||||
(defun my-do-compose-stuff () (flyspell-mode)))
|
|
||||||
|
|
||||||
(add-to-list 'mu4e-headers-actions '("view in browser" . mu4e-action-view-in-browser))
|
|
||||||
(add-to-list 'mu4e-view-actions '("view in browser" . mu4e-action-view-in-browser))
|
|
||||||
|
|
||||||
(defun mu4e-view (msg headersbuf)
|
|
||||||
"Display the message MSG in a new buffer, and keep in sync with HDRSBUF.
|
|
||||||
'In sync' here means that moving to the next/previous message in
|
|
||||||
the the message view affects HDRSBUF, as does marking etc.
|
|
||||||
|
|
||||||
As a side-effect, a message that is being viewed loses its 'unread'
|
|
||||||
marking if it still had that."
|
|
||||||
(let* ((embedded ;; is it as an embedded msg (ie. message/rfc822 att)?
|
|
||||||
(when (gethash (mu4e-message-field msg :path)
|
|
||||||
mu4e~path-parent-docid-map) t))
|
|
||||||
(buf
|
|
||||||
(if embedded
|
|
||||||
(mu4e~view-embedded-winbuf)
|
|
||||||
(get-buffer-create mu4e~view-buffer-name))))
|
|
||||||
;; note: mu4e~view-mark-as-read will pseudo-recursively call mu4e-view again
|
|
||||||
;; by triggering mu4e~view again as it marks the message as read
|
|
||||||
(with-current-buffer buf
|
|
||||||
(switch-to-buffer buf)
|
|
||||||
(setq mu4e~view-msg msg)
|
|
||||||
;;(or embedded (not (mu4e~view-mark-as-read msg)))
|
|
||||||
(when (or (mu4e~view-mark-as-read msg) t)
|
|
||||||
(let ((inhibit-read-only t))
|
|
||||||
(erase-buffer)
|
|
||||||
(mu4e~delete-all-overlays)
|
|
||||||
(insert (mu4e-view-message-text msg))
|
|
||||||
(goto-char (point-min))
|
|
||||||
(mu4e~fontify-cited)
|
|
||||||
(mu4e~fontify-signature)
|
|
||||||
(mu4e~view-make-urls-clickable)
|
|
||||||
(mu4e~view-show-images-maybe msg)
|
|
||||||
(setq
|
|
||||||
mu4e~view-buffer buf
|
|
||||||
mu4e~view-headers-buffer headersbuf)
|
|
||||||
(when embedded (local-set-key "q" 'kill-buffer-and-window))
|
|
||||||
(mu4e-view-mode))))))
|
|
||||||
|
|
||||||
(require 'smtpmail)
|
|
||||||
|
|
||||||
;; alternatively, for emacs-24 you can use:
|
|
||||||
(setq message-send-mail-function 'smtpmail-send-it
|
|
||||||
smtpmail-stream-type 'starttls
|
|
||||||
smtpmail-default-smtp-server "smtp.gmail.com"
|
|
||||||
smtpmail-smtp-server "smtp.gmail.com"
|
|
||||||
smtpmail-smtp-service 587)))
|
|
||||||
|
|
||||||
#+END_SRC
|
|
||||||
** gmail-message-mode
|
** gmail-message-mode
|
||||||
This is useful with server mode when editing gmail messages. I think that it is not currently working, or it may need to be manually enabled.
|
This is useful with server mode when editing gmail messages. I think that it is not currently working, or it may need to be manually enabled.
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -3904,56 +3781,6 @@ This is useful with server mode when editing gmail messages. I think that it is
|
|||||||
:notifier 'imalison:windows-toast-notify)
|
:notifier 'imalison:windows-toast-notify)
|
||||||
(setq alert-default-style 'windows-toast))))
|
(setq alert-default-style 'windows-toast))))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** sauron
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package sauron
|
|
||||||
:disabled t
|
|
||||||
:defer 5
|
|
||||||
:commands (sauron-start sauron-start-hidden)
|
|
||||||
:init
|
|
||||||
(progn
|
|
||||||
(when (eq system-type 'darwin)
|
|
||||||
(setq sauron-modules '(sauron-erc sauron-org sauron-notifications
|
|
||||||
sauron-twittering sauron-jabber sauron-identica))
|
|
||||||
(defun sauron-dbus-start ()
|
|
||||||
nil)
|
|
||||||
(makunbound 'dbus-path-emacs)))
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(sauron-start-hidden)
|
|
||||||
;; This should really check (featurep 'dbus) but for some reason
|
|
||||||
;; this is always true even if support is not there.
|
|
||||||
(setq sauron-prio-sauron-started 2)
|
|
||||||
(setq sauron-min-priority 3)
|
|
||||||
;; (setq sauron-dbus-cookie t) ;; linux only?
|
|
||||||
(setq sauron-separate-frame nil)
|
|
||||||
(setq sauron-nick-insensitivity 1)
|
|
||||||
(defun sauron:jabber-notify (origin priority message &optional properties)
|
|
||||||
(funcall notify-function "gtalk" message))
|
|
||||||
(defun sauron:erc-notify (origin priority message &optional properties)
|
|
||||||
(let ((event (plist-get properties :event)))
|
|
||||||
(funcall notify-function "IRC" message)))
|
|
||||||
(defun sauron:mu4e-notify (origin priority message &optional properties)
|
|
||||||
nil)
|
|
||||||
(defun sauron:dbus-notify (origin priority message &optional properties)
|
|
||||||
(funcall notify-function "GMail" message))
|
|
||||||
(defun sauron:dispatch-notify (origin priority message &optional properties)
|
|
||||||
(let ((handler (cond ((string= origin "erc") 'sauron:erc-notify)
|
|
||||||
((string= origin "jabber") 'sauron:jabber-notify)
|
|
||||||
((string= origin "mu4e") 'sauron:mu4e-notify)
|
|
||||||
((string= origin "dbus") 'sauron:dbus-notify)
|
|
||||||
(t (lambda (&rest r) nil)))))
|
|
||||||
(funcall handler origin priority message properties)))
|
|
||||||
;; Prefering alert.el for now ;; (add-hook 'sauron-event-added-functions 'sauron:dispatch-notify)
|
|
||||||
(sauron-start-hidden)
|
|
||||||
(add-hook 'sauron-event-added-functions 'sauron-alert-el-adapter)))
|
|
||||||
|
|
||||||
#+END_SRC
|
|
||||||
** screenshot
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package screenshot
|
|
||||||
:commands screenshot)
|
|
||||||
#+END_SRC
|
|
||||||
** libmpdee
|
** libmpdee
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package libmpdee
|
(use-package libmpdee
|
||||||
@@ -4084,23 +3911,24 @@ This also adds syntax highlighting for gradle
|
|||||||
** jsx-mode
|
** jsx-mode
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package jsx-mode
|
(use-package jsx-mode
|
||||||
|
:ensure nil
|
||||||
:defer t)
|
:defer t)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** css
|
** css
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package css-mode
|
(use-package css-mode
|
||||||
|
:ensure nil
|
||||||
:mode (("\\.css\\'" . css-mode)
|
:mode (("\\.css\\'" . css-mode)
|
||||||
("\\.rasi\\'" . css-mode)))
|
("\\.rasi\\'" . css-mode)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** sgml-mode
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package sgml-mode
|
|
||||||
;; :bind ("C-c b" . web-beautify-html) TODO: mode specific, change binding
|
|
||||||
:commands sgml-mode)
|
|
||||||
#+END_SRC
|
|
||||||
** evil
|
** evil
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package evil :commands (evil-mode))
|
(use-package evil
|
||||||
|
:commands (evil-mode)
|
||||||
|
:config
|
||||||
|
(use-package evil-collection
|
||||||
|
:config
|
||||||
|
(with-eval-after-load 'eat (evil-collection-eat-setup))))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** hackernews
|
** hackernews
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
@@ -4121,6 +3949,9 @@ Ensure all themes that I use are installed:
|
|||||||
(progn
|
(progn
|
||||||
(setq solarized-high-contrast-mode-line t)))
|
(setq solarized-high-contrast-mode-line t)))
|
||||||
|
|
||||||
|
(defun elpaca-function (pkg)
|
||||||
|
(eval `(elpaca ,pkg)))
|
||||||
|
|
||||||
(defvar-setq packages-appearance
|
(defvar-setq packages-appearance
|
||||||
'(monokai-theme zenburn-theme base16-theme molokai-theme moe-theme
|
'(monokai-theme zenburn-theme base16-theme molokai-theme moe-theme
|
||||||
tango-2-theme gotham-theme sublime-themes rainbow-delimiters
|
tango-2-theme gotham-theme sublime-themes rainbow-delimiters
|
||||||
@@ -4129,7 +3960,7 @@ Ensure all themes that I use are installed:
|
|||||||
forest-blue-theme flatland-theme afternoon-theme
|
forest-blue-theme flatland-theme afternoon-theme
|
||||||
cyberpunk-theme dracula-theme))
|
cyberpunk-theme dracula-theme))
|
||||||
|
|
||||||
(mapcar 'straight-use-package packages-appearance)
|
(mapcar 'elpaca-function packages-appearance)
|
||||||
|
|
||||||
(use-package doom-themes
|
(use-package doom-themes
|
||||||
:defer t)
|
:defer t)
|
||||||
@@ -4284,14 +4115,15 @@ load-theme hook (See the heading below).
|
|||||||
(unless imalison:appearance-setup-done
|
(unless imalison:appearance-setup-done
|
||||||
(unless (member imalison:dark-theme custom-enabled-themes)
|
(unless (member imalison:dark-theme custom-enabled-themes)
|
||||||
(load-theme imalison:dark-theme t))
|
(load-theme imalison:dark-theme t))
|
||||||
|
(doom-modeline-mode +1)
|
||||||
(apply 'imalison:appearance args)
|
(apply 'imalison:appearance args)
|
||||||
(message "running appearance")
|
(message "running appearance")
|
||||||
(doom-modeline-mode +1)
|
|
||||||
(setq imalison:default-font-size-pt (face-attribute 'default :height))
|
(setq imalison:default-font-size-pt (face-attribute 'default :height))
|
||||||
(setq imalison:appearance-setup-done t)))
|
(setq imalison:appearance-setup-done t)))
|
||||||
|
|
||||||
(add-hook 'after-make-frame-functions 'imalison:appearance-setup-hook)
|
(add-hook 'elpaca-after-init-hook
|
||||||
(add-hook 'after-init-hook 'imalison:appearance-setup-hook)
|
(lambda () (add-hook 'after-make-frame-functions 'imalison:appearance-setup-hook)))
|
||||||
|
(add-hook 'elpaca-after-init-hook 'imalison:appearance-setup-hook)
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
* Post Init Custom
|
* Post Init Custom
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
|
|||||||
@@ -1,41 +1,28 @@
|
|||||||
;; -*- no-byte-compile: t -*-
|
;; -*- no-byte-compile: t -*-
|
||||||
|
|
||||||
(let ((bootstrap-file (concat user-emacs-directory "straight/bootstrap.el"))
|
|
||||||
(bootstrap-version 2))
|
|
||||||
(unless (file-exists-p bootstrap-file)
|
|
||||||
(with-current-buffer
|
|
||||||
(url-retrieve-synchronously
|
|
||||||
"https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
|
|
||||||
'silent 'inhibit-cookies)
|
|
||||||
(goto-char (point-max))
|
|
||||||
(eval-print-last-sexp)))
|
|
||||||
(load bootstrap-file nil 'nomessage))
|
|
||||||
|
|
||||||
(setq native-comp-deferred-compilation-deny-list '("magit"))
|
(setq native-comp-deferred-compilation-deny-list '("magit"))
|
||||||
(setq native-comp-always-compile t)
|
(setq native-comp-always-compile t)
|
||||||
(setq load-no-native t)
|
(setq load-no-native t)
|
||||||
(setq no-native-compile t)
|
(setq no-native-compile t)
|
||||||
(setq warning-minimum-level :emergency)
|
(setq warning-minimum-level :emergency)
|
||||||
(setq straight-disable-native-compile t)
|
|
||||||
|
|
||||||
;; This is a workaround for an issue in emacs28 with symlinks. See https://github.com/radian-software/straight.el/issues/701
|
|
||||||
(defun my-patch-package-find-file-visit-truename (oldfun &rest r)
|
|
||||||
(let ((find-file-visit-truename nil))
|
|
||||||
(apply oldfun r)))
|
|
||||||
|
|
||||||
(advice-add #'straight--build-autoloads :around
|
|
||||||
#'my-patch-package-find-file-visit-truename)
|
|
||||||
|
|
||||||
(setq package-enable-at-startup nil
|
(setq package-enable-at-startup nil
|
||||||
straight-use-package-by-default t
|
straight-use-package-by-default t
|
||||||
straight-vc-git-default-protocol 'ssh)
|
straight-vc-git-default-protocol 'ssh)
|
||||||
(straight-use-package 'use-package)
|
|
||||||
(require 'use-package)
|
(require 'use-package)
|
||||||
(setq use-package-enable-imenu-support t)
|
(setq use-package-enable-imenu-support t)
|
||||||
(setq use-package-ensure-function 'straight-use-package-ensure-function)
|
(setq use-package-always-ensure t)
|
||||||
|
|
||||||
(defvar imalison:do-benchmark nil)
|
(defvar imalison:do-benchmark nil)
|
||||||
|
|
||||||
|
(defun emacs-directory-filepath (filename)
|
||||||
|
(concat (file-name-directory load-file-name) filename))
|
||||||
|
|
||||||
|
(load (emacs-directory-filepath "elpaca.el"))
|
||||||
|
|
||||||
|
(setq use-package-always-ensure t)
|
||||||
|
|
||||||
(let ((bench-file (concat (file-name-directory user-init-file) "benchmark.el")))
|
(let ((bench-file (concat (file-name-directory user-init-file) "benchmark.el")))
|
||||||
(when (file-exists-p bench-file) (load bench-file)))
|
(when (file-exists-p bench-file) (load bench-file)))
|
||||||
|
|
||||||
@@ -55,6 +42,9 @@
|
|||||||
(setq mac-option-modifier 'meta)
|
(setq mac-option-modifier 'meta)
|
||||||
(setq mac-command-modifier 'super))
|
(setq mac-command-modifier 'super))
|
||||||
|
|
||||||
|
(use-package transient
|
||||||
|
:demand t)
|
||||||
|
|
||||||
;; See https://github.com/magit/magit/discussions/4997 . Without this magit is broken.
|
;; See https://github.com/magit/magit/discussions/4997 . Without this magit is broken.
|
||||||
(use-package magit
|
(use-package magit
|
||||||
:demand t)
|
:demand t)
|
||||||
@@ -62,29 +52,56 @@
|
|||||||
;; This seems to fix issues with helm not explicitly declaring its dependency on async
|
;; This seems to fix issues with helm not explicitly declaring its dependency on async
|
||||||
(use-package async :demand t)
|
(use-package async :demand t)
|
||||||
|
|
||||||
|
(use-package s :demand t)
|
||||||
|
|
||||||
;; Without this, org can behave very strangely
|
;; Without this, org can behave very strangely
|
||||||
(use-package org
|
(use-package org
|
||||||
:straight
|
:ensure
|
||||||
(org :type git :host github :repo "colonelpanic8/org-mode" :local-repo "org"
|
(org :type git :host github :repo "colonelpanic8/org-mode" :local-repo "org"
|
||||||
:branch "my-main"
|
:branch "my-main"
|
||||||
:depth full :pre-build (straight-recipes-org-elpa--build) :build
|
:depth full
|
||||||
|
:build
|
||||||
|
:wait t
|
||||||
(:not autoloads) :files
|
(:not autoloads) :files
|
||||||
(:defaults "lisp/*.el" ("etc/styles/" "etc/styles/*")))
|
(:defaults "lisp/*.el" ("etc/styles/" "etc/styles/*"))))
|
||||||
:defer t)
|
|
||||||
|
|
||||||
(use-package dash :demand t)
|
(use-package dash :demand t)
|
||||||
|
|
||||||
|
(use-package emit
|
||||||
|
:ensure (emit :type git :host github :repo "colonelpanic8/emit")
|
||||||
|
:demand t
|
||||||
|
:config
|
||||||
|
(progn
|
||||||
|
(emit-prefix-selector imalison:mark-ring mark-ring)
|
||||||
|
(emit-prefix-selector imalison:shell-command-on-region
|
||||||
|
imalison:copy-shell-command-on-region
|
||||||
|
imalison:shell-command-on-region-replace
|
||||||
|
imalison:jq-replace)
|
||||||
|
|
||||||
|
(defun imalison:jq-replace (start end)
|
||||||
|
(interactive (region-if-active-otherwise-buffer))
|
||||||
|
(imalison:shell-command-on-region-replace start end "jq ."))
|
||||||
|
(emit-compose
|
||||||
|
imalison:copy-eval-last-sexp kill-new prin1-to-string eval-last-sexp)
|
||||||
|
|
||||||
|
(emit-prefix-selector imalison:eval-last-sexp
|
||||||
|
eval-region-or-last-sexp
|
||||||
|
imalison:copy-eval-last-sexp)))
|
||||||
|
|
||||||
|
(use-package s
|
||||||
|
:ensure (:inherit t :wait t)
|
||||||
|
:config
|
||||||
|
(when (or (equal (s-trim (shell-command-to-string "whoami")) "kat")
|
||||||
|
imalison:kat-mode)
|
||||||
|
(let ((debug-on-error t))
|
||||||
|
(org-babel-load-file
|
||||||
|
(concat (file-name-directory load-file-name) "kat-mode.org")))))
|
||||||
|
|
||||||
(let ((debug-on-error t))
|
(let ((debug-on-error t))
|
||||||
(org-babel-load-file
|
(org-babel-load-file
|
||||||
(concat (file-name-directory load-file-name) "README.org")))
|
(concat (file-name-directory load-file-name) "README.org")))
|
||||||
|
|
||||||
(when (or (equal (s-trim (shell-command-to-string "whoami")) "kat")
|
;; (when imalison:do-benchmark (benchmark-init/deactivate))
|
||||||
imalison:kat-mode)
|
|
||||||
(let ((debug-on-error t))
|
|
||||||
(org-babel-load-file
|
|
||||||
(concat (file-name-directory load-file-name) "kat-mode.org"))))
|
|
||||||
|
|
||||||
(when imalison:do-benchmark (benchmark-init/deactivate))
|
|
||||||
|
|
||||||
;; Local Variables:
|
;; Local Variables:
|
||||||
;; flycheck-disabled-checkers: (emacs-lisp-checkdoc)
|
;; flycheck-disabled-checkers: (emacs-lisp-checkdoc)
|
||||||
|
|||||||
@@ -157,3 +157,14 @@ This makes evil-mode play nice with org-fc
|
|||||||
(setf (alist-get 'python-ts-mode apheleia-mode-alist)
|
(setf (alist-get 'python-ts-mode apheleia-mode-alist)
|
||||||
(alist-get 'python-mode apheleia-mode-alist))))
|
(alist-get 'python-mode apheleia-mode-alist))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
* Packages
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package org-drill)
|
||||||
|
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Disable wild notifactions
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(setq org-wild-notifier-day-wide-alert-times nil)
|
||||||
|
#+end_src
|
||||||
|
|||||||
@@ -803,7 +803,7 @@ alphanumeric characters only."
|
|||||||
** Use org-tempo to allow inserting templates using e.g. <s
|
** Use org-tempo to allow inserting templates using e.g. <s
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package org-tempo
|
(use-package org-tempo
|
||||||
:straight nil
|
:ensure nil
|
||||||
:after org)
|
:after org)
|
||||||
#+end_src
|
#+end_src
|
||||||
* Packages
|
* Packages
|
||||||
@@ -938,9 +938,6 @@ alphanumeric characters only."
|
|||||||
#+end_src
|
#+end_src
|
||||||
***** ui
|
***** ui
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package emacs-http-server
|
|
||||||
:demand t)
|
|
||||||
|
|
||||||
(use-package org-roam-ui
|
(use-package org-roam-ui
|
||||||
:after org-roam
|
:after org-roam
|
||||||
:custom
|
:custom
|
||||||
|
|||||||
5
dotfiles/emacs.d/snippets/python-mode/ign
Normal file
5
dotfiles/emacs.d/snippets/python-mode/ign
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: ign
|
||||||
|
# key: ign
|
||||||
|
# --
|
||||||
|
# type: ignore
|
||||||
5
dotfiles/emacs.d/snippets/python-mode/logg
Normal file
5
dotfiles/emacs.d/snippets/python-mode/logg
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: logg
|
||||||
|
# key: logg
|
||||||
|
# --
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
5
dotfiles/emacs.d/snippets/python-mode/noqa
Normal file
5
dotfiles/emacs.d/snippets/python-mode/noqa
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: 401
|
||||||
|
# key: 401
|
||||||
|
# --
|
||||||
|
# noqa: F401
|
||||||
@@ -50,6 +50,7 @@
|
|||||||
tb = rev-parse --abbrev-ref --symbolic-full-name @{u}
|
tb = rev-parse --abbrev-ref --symbolic-full-name @{u}
|
||||||
untracked = "!u() { git status -s | grep "??" | awk '{print $2}'; }; u"
|
untracked = "!u() { git status -s | grep "??" | awk '{print $2}'; }; u"
|
||||||
which-branch = "!wb() { b="$(git symbolic-ref HEAD)" && echo ${b#refs/heads/}; }; wb"
|
which-branch = "!wb() { b="$(git symbolic-ref HEAD)" && echo ${b#refs/heads/}; }; wb"
|
||||||
|
find-merge = "!sh -c 'commit=$0 && branch=${1:-HEAD} && (git rev-list $commit..$branch --ancestry-path | cat -n; git rev-list $commit..$branch --first-parent | cat -n) | sort -k2 -s | uniq -f1 -d | sort -n | tail -1 | cut -f2'"
|
||||||
|
|
||||||
[core]
|
[core]
|
||||||
# Use custom `.gitignore` and `.gitattributes`
|
# Use custom `.gitignore` and `.gitattributes`
|
||||||
|
|||||||
@@ -6,6 +6,12 @@ import sys
|
|||||||
|
|
||||||
class BrightnessManager(object):
|
class BrightnessManager(object):
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def find_brightness(cls):
|
||||||
|
return cls.from_path(
|
||||||
|
os.path.join("/sys/class/backlight", os.listdir("/sys/class/backlight")[0])
|
||||||
|
)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def from_path(cls, path):
|
def from_path(cls, path):
|
||||||
return cls(
|
return cls(
|
||||||
@@ -46,11 +52,6 @@ class BrightnessManager(object):
|
|||||||
return float(self.current_brightness) / self.max_brightness
|
return float(self.current_brightness) / self.max_brightness
|
||||||
|
|
||||||
|
|
||||||
IntelBrightnessManager = BrightnessManager.from_path(
|
|
||||||
"/sys/class/backlight/intel_backlight",
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def build_parser():
|
def build_parser():
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description='Interact with macbook brightness',
|
description='Interact with macbook brightness',
|
||||||
@@ -70,6 +71,6 @@ def build_parser():
|
|||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
args = build_parser().parse_args()
|
args = build_parser().parse_args()
|
||||||
IntelBrightnessManager.increment_by_proportion(float(args.change) / 100)
|
BrightnessManager.find_brightness().increment_by_proportion(float(args.change) / 100)
|
||||||
if args.do_print:
|
if args.do_print:
|
||||||
print(int(IntelBrightnessManager.current_proportion * 100))
|
print(int(IntelBrightnessManager.current_proportion * 100))
|
||||||
|
|||||||
@@ -33,10 +33,6 @@ makeEnable config "modules.base" true {
|
|||||||
enable = true;
|
enable = true;
|
||||||
enableStrongSwan = true;
|
enableStrongSwan = true;
|
||||||
plugins = [ pkgs.networkmanager-l2tp pkgs.networkmanager-openvpn ];
|
plugins = [ pkgs.networkmanager-l2tp pkgs.networkmanager-openvpn ];
|
||||||
extraConfig = ''
|
|
||||||
[main]
|
|
||||||
rc-manager=resolvconf
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Audio
|
# Audio
|
||||||
|
|||||||
18
nixos/ben.nix
Normal file
18
nixos/ben.nix
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{ pkgs, inputs, config, makeEnable, ... }:
|
||||||
|
makeEnable config "modules.ben" true {
|
||||||
|
home-manager.backupFileExtension = "backup"; # Add this line
|
||||||
|
home-manager.users.ben = {
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
shellAliases = {
|
||||||
|
l = "ls -CF";
|
||||||
|
la = "ls -A";
|
||||||
|
ll = "ls -lh";
|
||||||
|
lla = "ls -alh";
|
||||||
|
ls = "ls --color=auto";
|
||||||
|
gts = "git status";
|
||||||
|
gtl = "git log";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -98,7 +98,7 @@
|
|||||||
inherit inputs machineNames;
|
inherit inputs machineNames;
|
||||||
makeEnable = (import ../make-enable.nix) nixpkgs.lib;
|
makeEnable = (import ../make-enable.nix) nixpkgs.lib;
|
||||||
mapValueToKeys = keys: value: builtins.listToAttrs (map (name: { inherit name value; }) keys);
|
mapValueToKeys = keys: value: builtins.listToAttrs (map (name: { inherit name value; }) keys);
|
||||||
realUsers = [ "root" "imalison" "kat" "dean" "alex" ];
|
realUsers = [ "root" "imalison" "kat" "dean" "alex" "ben"];
|
||||||
forEachUser = mapValueToKeys realUsers;
|
forEachUser = mapValueToKeys realUsers;
|
||||||
} // specialArgs // (import ../keys.nix);
|
} // specialArgs // (import ../keys.nix);
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
imports = [
|
imports = [
|
||||||
./android.nix
|
./android.nix
|
||||||
./base.nix
|
./base.nix
|
||||||
|
./ben.nix
|
||||||
./cache-server.nix
|
./cache-server.nix
|
||||||
./cache.nix
|
./cache.nix
|
||||||
./code.nix
|
./code.nix
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, pkgs, makeEnable, forEachUser, ... }:
|
{ config, pkgs, makeEnable, ... }:
|
||||||
makeEnable config "modules.desktop" true {
|
makeEnable config "modules.desktop" true {
|
||||||
imports = [
|
imports = [
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
@@ -62,10 +62,8 @@ makeEnable config "modules.desktop" true {
|
|||||||
firefox
|
firefox
|
||||||
gnome.cheese
|
gnome.cheese
|
||||||
gnome.gpaste
|
gnome.gpaste
|
||||||
|
|
||||||
kleopatra
|
kleopatra
|
||||||
libnotify
|
libnotify
|
||||||
# Seems to be broken
|
|
||||||
libreoffice
|
libreoffice
|
||||||
lxappearance
|
lxappearance
|
||||||
lxqt.lxqt-powermanagement
|
lxqt.lxqt-powermanagement
|
||||||
@@ -106,5 +104,6 @@ makeEnable config "modules.desktop" true {
|
|||||||
spotify
|
spotify
|
||||||
tor-browser-bundle-bin
|
tor-browser-bundle-bin
|
||||||
vscode
|
vscode
|
||||||
|
zulip
|
||||||
] else []);
|
] else []);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ pkgs, config, makeEnable, forEachUser, ... }:
|
{ pkgs, config, makeEnable, forEachUser, ... }:
|
||||||
makeEnable config "modules.electron" false {
|
makeEnable config "modules.electron" false {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# element-desktop
|
element-desktop
|
||||||
# bitwarden
|
# bitwarden
|
||||||
discord
|
discord
|
||||||
# etcher
|
# etcher
|
||||||
|
|||||||
@@ -27,6 +27,22 @@ with lib;
|
|||||||
do
|
do
|
||||||
autoload "''${file##*/}"
|
autoload "''${file##*/}"
|
||||||
done
|
done
|
||||||
|
fpath+="${pkgs.python-with-my-packages}/lib/python3.11/site-packages/argcomplete/bash_completion.d"
|
||||||
|
'';
|
||||||
|
interactiveShellInit = ''
|
||||||
|
eval "$(register-python-argcomplete prb)"
|
||||||
|
eval "$(register-python-argcomplete prod-prb)"
|
||||||
|
eval "$(register-python-argcomplete railbird)"
|
||||||
|
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/zsh"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.bash = {
|
||||||
|
interactiveShellInit = ''
|
||||||
|
eval "$(register-python-argcomplete prb)"
|
||||||
|
eval "$(register-python-argcomplete prod-prb)"
|
||||||
|
eval "$(register-python-argcomplete railbird)"
|
||||||
|
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/bash"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,19 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
|
||||||
my-python-packages = python-packages: with python-packages; [
|
|
||||||
appdirs
|
|
||||||
ipdb
|
|
||||||
ipython
|
|
||||||
numpy
|
|
||||||
openpyxl
|
|
||||||
pip
|
|
||||||
requests
|
|
||||||
tox
|
|
||||||
virtualenv
|
|
||||||
virtualenvwrapper
|
|
||||||
];
|
|
||||||
python-with-my-packages = pkgs.python311.withPackages my-python-packages;
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
nixpkgs.config.allowBroken = true;
|
nixpkgs.config.allowBroken = true;
|
||||||
|
|
||||||
@@ -31,6 +16,7 @@ in
|
|||||||
emacs
|
emacs
|
||||||
fd
|
fd
|
||||||
ffmpeg
|
ffmpeg
|
||||||
|
bento4
|
||||||
file
|
file
|
||||||
gawk
|
gawk
|
||||||
gcc
|
gcc
|
||||||
|
|||||||
328
nixos/flake.lock
generated
328
nixos/flake.lock
generated
@@ -7,6 +7,30 @@
|
|||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1715290355,
|
||||||
|
"narHash": "sha256-2T7CHTqBXJJ3ZC6R/4TXTcKoXWHcvubKNj9SfomURnw=",
|
||||||
|
"owner": "ryantm",
|
||||||
|
"repo": "agenix",
|
||||||
|
"rev": "8d37c5bdeade12b6479c85acd133063ab53187a0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "ryantm",
|
||||||
|
"repo": "agenix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"agenix_2": {
|
||||||
|
"inputs": {
|
||||||
|
"darwin": "darwin_2",
|
||||||
|
"home-manager": "home-manager_3",
|
||||||
|
"nixpkgs": [
|
||||||
|
"railbird-secrets",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": "systems_4"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1707830867,
|
"lastModified": 1707830867,
|
||||||
"narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=",
|
"narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=",
|
||||||
@@ -43,6 +67,29 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"darwin_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"railbird-secrets",
|
||||||
|
"agenix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1700795494,
|
||||||
|
"narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
|
||||||
|
"owner": "lnl7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "lnl7",
|
||||||
|
"ref": "master",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -108,6 +155,27 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712014858,
|
||||||
|
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"nixified-ai",
|
"nixified-ai",
|
||||||
@@ -128,7 +196,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_2": {
|
"flake-parts_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"nixified-ai",
|
"nixified-ai",
|
||||||
@@ -170,15 +238,12 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_2"
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1705309234,
|
"lastModified": 1667395993,
|
||||||
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -188,6 +253,24 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_3": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_4": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_3"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
@@ -205,10 +288,28 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_4": {
|
"flake-utils_5": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_5"
|
"systems": "systems_5"
|
||||||
},
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709126324,
|
||||||
|
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_6": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_7"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1685518550,
|
"lastModified": 1685518550,
|
||||||
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
|
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
|
||||||
@@ -223,9 +324,9 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_5": {
|
"flake-utils_7": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_6"
|
"systems": "systems_8"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681202837,
|
"lastModified": 1681202837,
|
||||||
@@ -465,7 +566,7 @@
|
|||||||
"haskell-language-server": {
|
"haskell-language-server": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_3",
|
||||||
"flake-utils": "flake-utils_3",
|
"flake-utils": "flake-utils_4",
|
||||||
"fourmolu-011": "fourmolu-011",
|
"fourmolu-011": "fourmolu-011",
|
||||||
"fourmolu-012": "fourmolu-012",
|
"fourmolu-012": "fourmolu-012",
|
||||||
"gitignore": "gitignore",
|
"gitignore": "gitignore",
|
||||||
@@ -500,7 +601,7 @@
|
|||||||
"haskell-language-server_2": {
|
"haskell-language-server_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_4",
|
"flake-compat": "flake-compat_4",
|
||||||
"flake-utils": "flake-utils_4",
|
"flake-utils": "flake-utils_6",
|
||||||
"fourmolu-011": "fourmolu-011_2",
|
"fourmolu-011": "fourmolu-011_2",
|
||||||
"fourmolu-012": "fourmolu-012_2",
|
"fourmolu-012": "fourmolu-012_2",
|
||||||
"gitignore": "gitignore_2",
|
"gitignore": "gitignore_2",
|
||||||
@@ -512,7 +613,7 @@
|
|||||||
"lsp": "lsp_2",
|
"lsp": "lsp_2",
|
||||||
"lsp-test": "lsp-test_2",
|
"lsp-test": "lsp-test_2",
|
||||||
"lsp-types": "lsp-types_2",
|
"lsp-types": "lsp-types_2",
|
||||||
"nixpkgs": "nixpkgs_7",
|
"nixpkgs": "nixpkgs_8",
|
||||||
"ormolu-052": "ormolu-052_2",
|
"ormolu-052": "ormolu-052_2",
|
||||||
"ormolu-07": "ormolu-07_2",
|
"ormolu-07": "ormolu-07_2",
|
||||||
"stylish-haskell-0145": "stylish-haskell-0145_2"
|
"stylish-haskell-0145": "stylish-haskell-0145_2"
|
||||||
@@ -534,7 +635,7 @@
|
|||||||
},
|
},
|
||||||
"hercules-ci-effects": {
|
"hercules-ci-effects": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_3",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixified-ai",
|
"nixified-ai",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
@@ -664,11 +765,33 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710452332,
|
"lastModified": 1715380449,
|
||||||
"narHash": "sha256-+lKOoQ89fD6iz6Ro7Adml4Sx6SqQcTWII4t1rvVtdjs=",
|
"narHash": "sha256-716+f9Rj3wjSyD1xitCv2FcYbgPz1WIVDj+ZBclH99Y=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "096d9c04b3e9438855aa65e24129b97a998bd3d9",
|
"rev": "d7682620185f213df384c363288093b486b2883f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_3": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"railbird-secrets",
|
||||||
|
"agenix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1703113217,
|
||||||
|
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -694,7 +817,7 @@
|
|||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1,
|
"lastModified": 1,
|
||||||
"narHash": "sha256-/j8RpaKS3M26QXE61bqjZPBiaPwEiO5P9pJ2imA1bD4=",
|
"narHash": "sha256-o42629VeuDMu2N76vrw2L8CIawLK3RP10W+M4e8qCCA=",
|
||||||
"path": "../dotfiles/config/taffybar",
|
"path": "../dotfiles/config/taffybar",
|
||||||
"type": "path"
|
"type": "path"
|
||||||
},
|
},
|
||||||
@@ -811,16 +934,18 @@
|
|||||||
"nix": {
|
"nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
|
"flake-parts": "flake-parts",
|
||||||
"libgit2": "libgit2",
|
"libgit2": "libgit2",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixpkgs-regression": "nixpkgs-regression"
|
"nixpkgs-regression": "nixpkgs-regression",
|
||||||
|
"pre-commit-hooks": "pre-commit-hooks"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710366336,
|
"lastModified": 1715361977,
|
||||||
"narHash": "sha256-eJeZ3vMbuC351B6CH4mqcpuZJ9RgtdRcxvhd7X2++Nk=",
|
"narHash": "sha256-j/PLYYGs+Gjge4JGYxMjOhWQEp+GB4Fdicetbpmp6n0=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"rev": "c152c2767a262b772c912287e1c2d85173b4781c",
|
"rev": "87ab3c0ea4e6f85e7b902050365bb75cf2836fbb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -830,7 +955,7 @@
|
|||||||
},
|
},
|
||||||
"nixified-ai": {
|
"nixified-ai": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts_2",
|
||||||
"hercules-ci-effects": "hercules-ci-effects",
|
"hercules-ci-effects": "hercules-ci-effects",
|
||||||
"invokeai-src": "invokeai-src",
|
"invokeai-src": "invokeai-src",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_3",
|
||||||
@@ -868,15 +993,15 @@
|
|||||||
"nixos-wsl": {
|
"nixos-wsl": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_2",
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils_3",
|
||||||
"nixpkgs": "nixpkgs_4"
|
"nixpkgs": "nixpkgs_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709980437,
|
"lastModified": 1715237610,
|
||||||
"narHash": "sha256-rp1MwfRaZl7TPM4E5i1HxQGJCCfMcIa7dOzTX3SW7ro=",
|
"narHash": "sha256-/ZeWQ4mL3DfHsbTZYc80qMrL4vBfENP0RiGv2KrCrEo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NixOS-WSL",
|
"repo": "NixOS-WSL",
|
||||||
"rev": "e0b9e6c8ff35c7a28cb6baa02d85a9737a2ee4e9",
|
"rev": "61fe33f4194bbbc48c090a2e79f4eb61b47c9b75",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -919,11 +1044,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-regression_2": {
|
"nixpkgs-regression_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710455890,
|
"lastModified": 1715484633,
|
||||||
"narHash": "sha256-Ecfz+YhCEtj0KZhI90fiW21QqneOd5HpvMeJGzlN72Y=",
|
"narHash": "sha256-Es5etYksi9VsAZSBKZe4rdyi9L000MEx9lFb3TF6Eo8=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "30ccdc28ecb2060cfe01d679aa8a4304631a41b5",
|
"rev": "25e9a6d07dd142bafd94603208a59c107e8f2905",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -966,11 +1091,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1707514827,
|
"lastModified": 1714782413,
|
||||||
"narHash": "sha256-Y+wqFkvikpE1epCx57PsGw+M1hX5aY5q/xgk+ebDwxI=",
|
"narHash": "sha256-tbg0MEuKaPcUrnmGCu4xiY5F+7LW2+ECPKVAJd2HLwM=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "20f65b86b6485decb43c5498780c223571dd56ef",
|
"rev": "651b4702e27a388f0f18e1b970534162dec09aff",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -982,11 +1107,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710272261,
|
"lastModified": 1715266358,
|
||||||
"narHash": "sha256-g0bDwXFmTE7uGDOs9HcJsfLFhH7fOsASbAuOzDC+fhQ=",
|
"narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "0ad13a6833440b8e238947e47bea7f11071dc2b2",
|
"rev": "f1010e0469db743d14519a1efd37e23f8513d714",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1013,6 +1138,22 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_7": {
|
"nixpkgs_7": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709703039,
|
||||||
|
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_8": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1686874404,
|
"lastModified": 1686874404,
|
||||||
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
|
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
|
||||||
@@ -1028,7 +1169,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_8": {
|
"nixpkgs_9": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682134069,
|
"lastModified": 1682134069,
|
||||||
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
|
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
|
||||||
@@ -1117,6 +1258,58 @@
|
|||||||
"url": "https://hackage.haskell.org/package/ormolu-0.7.1.0/ormolu-0.7.1.0.tar.gz"
|
"url": "https://hackage.haskell.org/package/ormolu-0.7.1.0/ormolu-0.7.1.0.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"pre-commit-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"nix"
|
||||||
|
],
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"gitignore": [
|
||||||
|
"nix"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nix",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-stable": [
|
||||||
|
"nix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712897695,
|
||||||
|
"narHash": "sha256-nMirxrGteNAl9sWiOhoN5tIHyjBbVi5e2tgZUgZlK3Y=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"rev": "40e6053ecb65fcbf12863338a6dcefb3f55f1bf8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"railbird-secrets": {
|
||||||
|
"inputs": {
|
||||||
|
"agenix": "agenix_2",
|
||||||
|
"flake-utils": "flake-utils_5",
|
||||||
|
"nixpkgs": "nixpkgs_7"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718069159,
|
||||||
|
"narHash": "sha256-L66mczMl8BPLwZrTVKrXMZRyxHiPvA3CHywbsQyFHW0=",
|
||||||
|
"ref": "refs/heads/master",
|
||||||
|
"rev": "609f1d32fd1112068d97df0f7d4de82cec878002",
|
||||||
|
"revCount": 52,
|
||||||
|
"type": "git",
|
||||||
|
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"agenix": "agenix",
|
"agenix": "agenix",
|
||||||
@@ -1133,8 +1326,9 @@
|
|||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_5",
|
||||||
"nixpkgs-regression": "nixpkgs-regression_2",
|
"nixpkgs-regression": "nixpkgs-regression_2",
|
||||||
"notifications-tray-icon": "notifications-tray-icon",
|
"notifications-tray-icon": "notifications-tray-icon",
|
||||||
|
"railbird-secrets": "railbird-secrets",
|
||||||
"status-notifier-item": "status-notifier-item",
|
"status-notifier-item": "status-notifier-item",
|
||||||
"systems": "systems_4",
|
"systems": "systems_6",
|
||||||
"taffybar": "taffybar",
|
"taffybar": "taffybar",
|
||||||
"vscode-server": "vscode-server",
|
"vscode-server": "vscode-server",
|
||||||
"xmonad": "xmonad",
|
"xmonad": "xmonad",
|
||||||
@@ -1310,6 +1504,36 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_7": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_8": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"taffybar": {
|
"taffybar": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": [
|
"flake-utils": [
|
||||||
@@ -1334,11 +1558,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1706639324,
|
"lastModified": 1714656757,
|
||||||
"narHash": "sha256-O5T4/1+dERQitmA6pwcP67/tREcJQ7KuATD8kGiB2Es=",
|
"narHash": "sha256-OZNPY2LNBm+NkIHqo8SX2f/BfuwqkQIGYePkiAmz2YA=",
|
||||||
"owner": "taffybar",
|
"owner": "taffybar",
|
||||||
"repo": "taffybar",
|
"repo": "taffybar",
|
||||||
"rev": "9c8540a56432db6555755a9a649b4874833520ed",
|
"rev": "a82a8a0cffb34b5eae38e46d88f02641bf8a8fe5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1366,11 +1590,11 @@
|
|||||||
},
|
},
|
||||||
"unstable": {
|
"unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710272261,
|
"lastModified": 1715266358,
|
||||||
"narHash": "sha256-g0bDwXFmTE7uGDOs9HcJsfLFhH7fOsASbAuOzDC+fhQ=",
|
"narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "0ad13a6833440b8e238947e47bea7f11071dc2b2",
|
"rev": "f1010e0469db743d14519a1efd37e23f8513d714",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1382,15 +1606,15 @@
|
|||||||
},
|
},
|
||||||
"vscode-server": {
|
"vscode-server": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_5",
|
"flake-utils": "flake-utils_7",
|
||||||
"nixpkgs": "nixpkgs_8"
|
"nixpkgs": "nixpkgs_9"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709622318,
|
"lastModified": 1713958148,
|
||||||
"narHash": "sha256-bTscF0366xtoIXgH7Zq+Mn0mpX3w4h/2xKpHiYMyLNc=",
|
"narHash": "sha256-8PDNi/dgoI2kyM7uSiU4eoLBqUKoA+3TXuz+VWmuCOc=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixos-vscode-server",
|
"repo": "nixos-vscode-server",
|
||||||
"rev": "d0ed9b8cf1f0a71f110df9119489ab047e0726bd",
|
"rev": "fc900c16efc6a5ed972fb6be87df018bcf3035bc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1413,11 +1637,11 @@
|
|||||||
"unstable": "unstable"
|
"unstable": "unstable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710184205,
|
"lastModified": 1714229485,
|
||||||
"narHash": "sha256-vcDr/l0dohzk1ZtWdMGK9j7QUNS7RpdwmA1Mku/r6CY=",
|
"narHash": "sha256-AOy87dJL0T9wSe1kM0tTzFlV++JwmoGW4BfBXzIUbsI=",
|
||||||
"owner": "xmonad",
|
"owner": "xmonad",
|
||||||
"repo": "xmonad",
|
"repo": "xmonad",
|
||||||
"rev": "746880e9b9bb4eecc6e89e26f760cfbdf1464fed",
|
"rev": "cde1a25bca9b7aeeb24af73588221f5f54ae770b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
|
railbird-secrets = {
|
||||||
|
url = "git+ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git";
|
||||||
|
};
|
||||||
nixos-hardware = { url = "github:colonelpanic8/nixos-hardware"; };
|
nixos-hardware = { url = "github:colonelpanic8/nixos-hardware"; };
|
||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
@@ -152,7 +155,10 @@
|
|||||||
inherit inputs machineNames;
|
inherit inputs machineNames;
|
||||||
makeEnable = (import ./make-enable.nix) nixpkgs.lib;
|
makeEnable = (import ./make-enable.nix) nixpkgs.lib;
|
||||||
keys = (import ./keys.nix);
|
keys = (import ./keys.nix);
|
||||||
usersInfo = (import ./users.nix) { pkgs = { zsh = "zsh"; }; keys = keys; };
|
usersInfo = (import ./users.nix) {
|
||||||
|
pkgs = { zsh = "zsh"; };
|
||||||
|
inherit keys inputs system;
|
||||||
|
};
|
||||||
realUsers = (builtins.attrNames
|
realUsers = (builtins.attrNames
|
||||||
(nixpkgs.lib.filterAttrs
|
(nixpkgs.lib.filterAttrs
|
||||||
(_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users)
|
(_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users)
|
||||||
@@ -171,7 +177,6 @@
|
|||||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
];
|
];
|
||||||
extra-substituters = [
|
extra-substituters = [
|
||||||
"http://1896Folsom.duckdns.org"
|
|
||||||
"http://192.168.1.26:5050"
|
"http://192.168.1.26:5050"
|
||||||
];
|
];
|
||||||
extra-trusted-public-keys = [
|
extra-trusted-public-keys = [
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ config, makeEnable, ... }:
|
{ config, makeEnable, ... }:
|
||||||
makeEnable config "modules.gnome" false {
|
makeEnable config "modules.gnome" false {
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
desktopManager.gnome3.enable = true;
|
desktopManager.gnome.enable = true;
|
||||||
displayManager.gdm.enable = true;
|
displayManager.gdm.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
rec {
|
rec {
|
||||||
|
giteaSecret = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHRNHlKPGVnOATsbnkPccyK+C15TWGKbBwqNKt0UcQ81 imalison@adele";
|
||||||
hostKeys = [
|
hostKeys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG3UqIYs/NY0okKuiIO+dU2OM7A8vv3b6//GedagvLoX ryzen-shine.local"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG3UqIYs/NY0okKuiIO+dU2OM7A8vv3b6//GedagvLoX ryzen-shine.local"
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINFbM1sL/vlDhrqPV1OMIGi4dKG0tMKhWSXx95ccbfyM biskcomp.local"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINFbM1sL/vlDhrqPV1OMIGi4dKG0tMKhWSXx95ccbfyM biskcomp.local"
|
||||||
@@ -21,10 +22,11 @@ rec {
|
|||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMCJ08qswd3OoApAIHQwojEUJ4sre89vSngbM3x5pBP2 imalison@jay-lenovo.local" # Kat's Lenovo Legion
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMCJ08qswd3OoApAIHQwojEUJ4sre89vSngbM3x5pBP2 imalison@jay-lenovo.local" # Kat's Lenovo Legion
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOVGIGnpkU7HNQ/zl/Ffi562M+laWY9/yIjB63BCMiTS kat@nixcomp.local"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOVGIGnpkU7HNQ/zl/Ffi562M+laWY9/yIjB63BCMiTS kat@nixcomp.local"
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO3tlMePru6ZlSuf8yUii3N1dy3WwJnSQAt3EgETkctK kat@jay-lenovo.local"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO3tlMePru6ZlSuf8yUii3N1dy3WwJnSQAt3EgETkctK kat@jay-lenovo.local"
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFrOYD3ReFc2+xFUylBFHREcm1lO7BRJGW5JrOoY3I8s ivanm@strixy-minaj"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFrOYD3ReFc2+xFUylBFHREcm1lO7BRJGW5JrOoY3I8s ivanm@strixi-minaj"
|
||||||
];
|
];
|
||||||
deanKeys = [
|
deanKeys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan"
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFeXvPyHIYBPtn6QJtOrjlBUsZjDonVRfmWqTTM2ITWx nixos@nixos"
|
||||||
];
|
];
|
||||||
alexKeys = [
|
alexKeys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP2SQkJenAX67Ze99SKOVpKDD1XvAZnxQ8RLP0dL/Ej2 alexm@MALISONSERVER"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP2SQkJenAX67Ze99SKOVpKDD1XvAZnxQ8RLP0dL/Ej2 alexm@MALISONSERVER"
|
||||||
@@ -50,4 +52,7 @@ rec {
|
|||||||
"AAAAB3NzaC1yc2EAAAADAQABAAACAQC4ayU9sly58EHQ2YdrnoJ5o0mFD8I8UiDvN3kVh6oSMMQ9wkVzLUY6wUzlc0uq3P/OYco9mURMt83C+lY4UC+jvN09nIEHV7yVJWsKV3ntmnEqM63e9cOWnpC9XA1MSha7xrf9DaO/doxST4fY6ixZA+nbE0bFgNTqyjzdya7pCamAdnPqKqwUEha+0KfpA8TJlrfgrDLd65f2/+jLU8fhTkU6yhrJ9Piq7C+RwVTu/dlrp50PNirfQRSa7vUPNS8Y973XtK6jzB/xS2Qc6iGJ+4QcCy6lgu2xksO/MNIimZYGOCP2yx6/GDp/gnOlAktrJ3flMycJdEHkZVH61HfQV76O/mY3tck/SiCwhuNxXw0uh9wf4UO8JHlnJcsIsBkSBemJsxQul+G7kV4EV/gqW/iO5U2nKmDqbwNWigO9mN44LqBOwsnAnu78kiSE8sNCEdSy/qVWloBw4VyT/emvmTwP1okh/CKNnu0/HmfSNL6Vib1XuvKSPvrUIOLMrSeRdtu85LrWaS0CvKEoMrIgpvc+3jHtdbxwINE3JBGrbXvfe20CuHl6Fx0ONkhirRmrjG7iUjV/4c6nS2aguPVsGi7q3GYvtz7cNEe3XbfpZaHzrCncnoQPbnSDLjHdeZf4O5Aew6iOwwkpgBBDA3lJO55ujq2vNbgkpH3hmQjltQ=="
|
"AAAAB3NzaC1yc2EAAAADAQABAAACAQC4ayU9sly58EHQ2YdrnoJ5o0mFD8I8UiDvN3kVh6oSMMQ9wkVzLUY6wUzlc0uq3P/OYco9mURMt83C+lY4UC+jvN09nIEHV7yVJWsKV3ntmnEqM63e9cOWnpC9XA1MSha7xrf9DaO/doxST4fY6ixZA+nbE0bFgNTqyjzdya7pCamAdnPqKqwUEha+0KfpA8TJlrfgrDLd65f2/+jLU8fhTkU6yhrJ9Piq7C+RwVTu/dlrp50PNirfQRSa7vUPNS8Y973XtK6jzB/xS2Qc6iGJ+4QcCy6lgu2xksO/MNIimZYGOCP2yx6/GDp/gnOlAktrJ3flMycJdEHkZVH61HfQV76O/mY3tck/SiCwhuNxXw0uh9wf4UO8JHlnJcsIsBkSBemJsxQul+G7kV4EV/gqW/iO5U2nKmDqbwNWigO9mN44LqBOwsnAnu78kiSE8sNCEdSy/qVWloBw4VyT/emvmTwP1okh/CKNnu0/HmfSNL6Vib1XuvKSPvrUIOLMrSeRdtu85LrWaS0CvKEoMrIgpvc+3jHtdbxwINE3JBGrbXvfe20CuHl6Fx0ONkhirRmrjG7iUjV/4c6nS2aguPVsGi7q3GYvtz7cNEe3XbfpZaHzrCncnoQPbnSDLjHdeZf4O5Aew6iOwwkpgBBDA3lJO55ujq2vNbgkpH3hmQjltQ=="
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBEBce6E/XCdo8+dC4PPyyTsO/Z0BZxuz0IrTLaGehrT weitzman.micah@gmail.com"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBEBce6E/XCdo8+dC4PPyyTsO/Z0BZxuz0IrTLaGehrT weitzman.micah@gmail.com"
|
||||||
];
|
];
|
||||||
|
benKeys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com"
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
39
nixos/machines/bencbox.nix
Normal file
39
nixos/machines/bencbox.nix
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
{ lib, pkgs, config, inputs, forEachUser, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../configuration.nix
|
||||||
|
];
|
||||||
|
services.xserver.enable = true;
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
sublime
|
||||||
|
vlc
|
||||||
|
];
|
||||||
|
modules.desktop.enable = false;
|
||||||
|
modules.plasma.enable = false;
|
||||||
|
imalison.nixOverlay.enable = false;
|
||||||
|
modules.wsl.enable = true;
|
||||||
|
|
||||||
|
networking.hostName = "bencbox";
|
||||||
|
|
||||||
|
wsl.defaultUser = "ben";
|
||||||
|
system.stateVersion = "22.05";
|
||||||
|
|
||||||
|
home-manager.users = forEachUser {
|
||||||
|
home.stateVersion = "22.05";
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.ben = {
|
||||||
|
extraGroups = [
|
||||||
|
"audio"
|
||||||
|
"adbusers"
|
||||||
|
"disk"
|
||||||
|
"docker"
|
||||||
|
"networkmanager"
|
||||||
|
"openrazer"
|
||||||
|
"plugdev"
|
||||||
|
"syncthing"
|
||||||
|
"systemd-journal"
|
||||||
|
"video"
|
||||||
|
] ++ ["wheel"];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -72,13 +72,13 @@ in
|
|||||||
enableACME = true;
|
enableACME = true;
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
locations."/" = {
|
locations."/" = {
|
||||||
proxyPass = "http://192.168.1.26:3090";
|
proxyPass = "http://192.168.1.20:3090";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
"syncthing.railbird.ai" = {
|
"syncthing.railbird.ai" = {
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
root = "/var/lib/syncthing/sync";
|
root = "/var/lib/syncthing/railbird";
|
||||||
locations."/" = {
|
locations."/" = {
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
autoindex on;
|
autoindex on;
|
||||||
@@ -98,7 +98,7 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
services.home-assistant = {
|
services.home-assistant = {
|
||||||
enable = true;
|
enable = false;
|
||||||
extraComponents = [
|
extraComponents = [
|
||||||
# Components required to complete the onboarding
|
# Components required to complete the onboarding
|
||||||
"met"
|
"met"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, forEachUser, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
modules.base.enable = true;
|
modules.base.enable = true;
|
||||||
modules.desktop.enable = true;
|
modules.desktop.enable = true;
|
||||||
modules.xmonad.enable = true;
|
modules.xmonad.enable = false;
|
||||||
modules.extra.enable = false;
|
modules.extra.enable = false;
|
||||||
modules.code.enable = true;
|
modules.code.enable = true;
|
||||||
modules.games.enable = false;
|
modules.games.enable = false;
|
||||||
@@ -34,29 +34,15 @@
|
|||||||
services.xserver.libinput.enable = true;
|
services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "/dev/disk/by-uuid/58218a04-3ba1-4295-86bb-ada59f75e3b6";
|
device = "/dev/disk/by-uuid/36864608-8e74-42b8-a075-27b59ef2701d";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/8142784e-45c6-4a2b-91f1-09df741ac00f";
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" = {
|
||||||
device = "/dev/disk/by-uuid/36E1-BE93";
|
device = "/dev/disk/by-uuid/36E1-BE93";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.resume-fix = {
|
|
||||||
description = "Fixes acpi immediate resume after suspend";
|
|
||||||
wantedBy = [ "multi-user.target" "post-resume.target" ];
|
|
||||||
after = [ "multi-user.target" "post-resume.target" ];
|
|
||||||
script = ''
|
|
||||||
if ${pkgs.gnugrep}/bin/grep -q '\bXHC\b.*\benabled\b' /proc/acpi/wakeup; then
|
|
||||||
echo XHC > /proc/acpi/wakeup
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
serviceConfig.Type = "oneshot";
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [
|
swapDevices = [
|
||||||
{
|
{
|
||||||
device = "/swapfile";
|
device = "/swapfile";
|
||||||
@@ -65,10 +51,12 @@
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "ivanm-dfinity-razer";
|
networking.hostName = "david-blade";
|
||||||
|
|
||||||
nix.settings.maxJobs = lib.mkDefault 12;
|
home-manager.users = forEachUser {
|
||||||
|
home.stateVersion = "24.05";
|
||||||
|
};
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
system.stateVersion = "18.03";
|
system.stateVersion = "24.05";
|
||||||
}
|
}
|
||||||
21
nixos/machines/dean-zephyrus.nix
Normal file
21
nixos/machines/dean-zephyrus.nix
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{ lib, pkgs, config, inputs, forEachUser, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../configuration.nix
|
||||||
|
];
|
||||||
|
services.xserver.enable = true;
|
||||||
|
environment.systemPackages = with pkgs; [sublime];
|
||||||
|
modules.desktop.enable = false;
|
||||||
|
modules.plasma.enable = false;
|
||||||
|
imalison.nixOverlay.enable = false;
|
||||||
|
modules.wsl.enable = true;
|
||||||
|
|
||||||
|
networking.hostName = "dean-zephyrus";
|
||||||
|
|
||||||
|
wsl.defaultUser = "dean";
|
||||||
|
system.stateVersion = "22.05";
|
||||||
|
|
||||||
|
home-manager.users = forEachUser {
|
||||||
|
home.stateVersion = "22.05";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -33,8 +33,6 @@
|
|||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
libinput.enable = true;
|
libinput.enable = true;
|
||||||
displayManager.sddm.enable = true;
|
|
||||||
desktopManager.plasma5.enable = true;
|
|
||||||
videoDrivers = [ "amdgpu" ];
|
videoDrivers = [ "amdgpu" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -45,6 +45,10 @@
|
|||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{ device = "/dev/disk/by-uuid/598e9aa1-4940-4410-a2fa-3dfd8b7d2c0d"; }
|
||||||
|
];
|
||||||
|
|
||||||
home-manager.users = forEachUser {
|
home-manager.users = forEachUser {
|
||||||
home.stateVersion = "23.11";
|
home.stateVersion = "23.11";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,8 +5,12 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
features.full.enable = true;
|
features.full.enable = true;
|
||||||
modules.cache-server.enable = true;
|
modules.cache-server = {
|
||||||
|
enable = true;
|
||||||
|
port = 3090;
|
||||||
|
};
|
||||||
modules.gitea-runner.enable = true;
|
modules.gitea-runner.enable = true;
|
||||||
|
modules.vscode.enable = true;
|
||||||
|
|
||||||
networking.hostName = "nixquick";
|
networking.hostName = "nixquick";
|
||||||
|
|
||||||
|
|||||||
@@ -30,29 +30,6 @@
|
|||||||
|
|
||||||
services.autorandr = {
|
services.autorandr = {
|
||||||
enable = true;
|
enable = true;
|
||||||
profiles = {
|
|
||||||
"1896Office" = {
|
|
||||||
fingerprint = {
|
|
||||||
DP-0 = "00ffffffffffff0010ace4a153364b300c200104b55123783bfce1b04d3bb8250e505421080001010101010101010101010101010101e77c70a0d0a029503020150829623100001a000000ff0023473749594d78677741413052000000fd0001afffff63010a202020202020000000fc0044656c6c20415733343233445702d8020320f12309070183010000654b04000101e305c000e2006ae6060501634b004ed470a0d0a046503020e50c29623100001a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009970127903000f000aa4140e0e07012045000002010d310cdb4dbd13b85b620e01455403013c520101046f0d9f002f801f009f0554004c000400663801046f0d9f002f801f009f0566005e0004008b8101046f0d9f002f801f009f057e007600040000000000000000000000000000000000000000000000000000000000005f90";
|
|
||||||
HDMI-0 = "00ffffffffffff0010ac67d0534d39312d1a0103803c2278ee4455a9554d9d260f5054a54b00b300d100714fa9408180778001010101565e00a0a0a029503020350055502100001a000000ff00483759434336423831394d530a000000fc0044454c4c205532373135480a20000000fd0038561e711e000a202020202020019e020322f14f1005040302071601141f1213202122230907078301000065030c001000023a801871382d40582c250055502100001e011d8018711c1620582c250055502100009e011d007251d01e206e28550055502100001e8c0ad08a20e02d10103e9600555021000018483f00ca808030401a50130055502100001e00000094";
|
|
||||||
};
|
|
||||||
config = {
|
|
||||||
DP-0 = {
|
|
||||||
enable = true;
|
|
||||||
mode = "3440x1440";
|
|
||||||
rate = "143.97";
|
|
||||||
position = "0x1440";
|
|
||||||
primary = true;
|
|
||||||
};
|
|
||||||
HDMI-0 = {
|
|
||||||
enable = true;
|
|
||||||
rate = "59.95";
|
|
||||||
mode = "2560x1440";
|
|
||||||
position = "440x0";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
@@ -97,7 +74,7 @@
|
|||||||
options = [ "nofail" ];
|
options = [ "nofail" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices =[
|
swapDevices = [
|
||||||
{ device = "/dev/disk/by-uuid/f719b44e-295a-4909-9a60-84f87acb7f77"; }
|
{ device = "/dev/disk/by-uuid/f719b44e-295a-4909-9a60-84f87acb7f77"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
34
nixos/machines/strixi-minaj-wsl.nix
Normal file
34
nixos/machines/strixi-minaj-wsl.nix
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{ lib, pkgs, config, inputs, forEachUser, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
modules.wsl.enable = true;
|
||||||
|
|
||||||
|
networking.hostName = "strixi-minaj-wsl";
|
||||||
|
|
||||||
|
wsl.defaultUser = "imalison";
|
||||||
|
system.stateVersion = "23.11"; # Did you read the comment?
|
||||||
|
|
||||||
|
home-manager.users = forEachUser {
|
||||||
|
home.stateVersion = "23.11";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.gnupg = {
|
||||||
|
agent = {
|
||||||
|
pinentryPackage = pkgs.pinentry-curses;
|
||||||
|
enable = true;
|
||||||
|
enableSSHSupport = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs.config.permittedInsecurePackages = [
|
||||||
|
"openssl-1.0.2u"
|
||||||
|
"electron-12.2.3"
|
||||||
|
"etcher"
|
||||||
|
"electron-19.1.9"
|
||||||
|
"openssl-1.1.1w"
|
||||||
|
"nix-2.16.2"
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
[ { device = "/dev/disk/by-uuid/27f277a0-b552-43a0-904d-625e48922bb9"; }
|
[ { device = "/dev/disk/by-uuid/27f277a0-b552-43a0-904d-625e48922bb9"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "strixy-minaj";
|
networking.hostName = "strixi-minaj";
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "performance";
|
powerManagement.cpuFreqGovernor = lib.mkDefault "performance";
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
@@ -29,10 +29,11 @@
|
|||||||
keep-derivations = true;
|
keep-derivations = true;
|
||||||
substituters = [
|
substituters = [
|
||||||
"https://cache.nixos.org"
|
"https://cache.nixos.org"
|
||||||
"https://cache.railbird.ai?priority=45"
|
"https://cuda-maintainers.cachix.org"
|
||||||
];
|
];
|
||||||
trusted-public-keys = [
|
trusted-public-keys = [
|
||||||
"cache.railbird.ai:KhnvcouxtIU2zxUcjJsm4bUK3o1S3p8xMf9qfZGF7/A="
|
"cache.railbird.ai:KhnvcouxtIU2zxUcjJsm4bUK3o1S3p8xMf9qfZGF7/A="
|
||||||
|
"cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
|
||||||
];
|
];
|
||||||
nix-path = nixPath;
|
nix-path = nixPath;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
final: prev: {
|
final: prev: {
|
||||||
rofi-systemd = prev.rofi-systemd.overrideAttrs(_: {
|
rofi-systemd = prev.rofi-systemd.overrideAttrs (_: {
|
||||||
src = prev.fetchFromGitHub {
|
src = prev.fetchFromGitHub {
|
||||||
repo = "rofi-systemd";
|
repo = "rofi-systemd";
|
||||||
owner = "IvanMalison";
|
owner = "IvanMalison";
|
||||||
@@ -8,7 +8,7 @@ final: prev: {
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
git-sync = prev.git-sync.overrideAttrs(_: {
|
git-sync = prev.git-sync.overrideAttrs (_: {
|
||||||
src = prev.fetchFromGitHub {
|
src = prev.fetchFromGitHub {
|
||||||
repo = "git-sync";
|
repo = "git-sync";
|
||||||
owner = "IvanMalison";
|
owner = "IvanMalison";
|
||||||
@@ -17,24 +17,24 @@ final: prev: {
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
picom = prev.picom.overrideAttrs(old: {
|
picom = prev.picom.overrideAttrs (old: {
|
||||||
src = prev.fetchFromGitHub {
|
src = prev.fetchFromGitHub {
|
||||||
repo = "picom";
|
repo = "picom";
|
||||||
owner = "dccsillag";
|
owner = "dccsillag";
|
||||||
rev = "51b21355696add83f39ccdb8dd82ff5009ba0ae5";
|
rev = "51b21355696add83f39ccdb8dd82ff5009ba0ae5";
|
||||||
sha256 = "sha256-crCwRJd859DCIC0pEerpDqdX2j8ZrNAzVaSSB3mTPN8==";
|
sha256 = "sha256-crCwRJd859DCIC0pEerpDqdX2j8ZrNAzVaSSB3mTPN8==";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = old.nativeBuildInputs ++ [ final.pcre ];
|
nativeBuildInputs = old.nativeBuildInputs ++ [final.pcre];
|
||||||
});
|
});
|
||||||
|
|
||||||
expressvpn = prev.expressvpn.overrideAttrs(_: {
|
expressvpn = prev.expressvpn.overrideAttrs (_: {
|
||||||
src = prev.fetchurl {
|
src = prev.fetchurl {
|
||||||
url = "https://www.expressvpn.works/clients/linux/expressvpn_3.46.0.7-1_amd64.deb";
|
url = "https://www.expressvpn.works/clients/linux/expressvpn_3.46.0.7-1_amd64.deb";
|
||||||
hash = "sha256-v0rr1s32jj79A8IGfJgSGJVlz7rSnZYn4ealOpqee0w=";
|
hash = "sha256-v0rr1s32jj79A8IGfJgSGJVlz7rSnZYn4ealOpqee0w=";
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
gnupg_2_4_0 = prev.gnupg.overrideAttrs(_: rec {
|
gnupg_2_4_0 = prev.gnupg.overrideAttrs (_: rec {
|
||||||
pname = "gnupg";
|
pname = "gnupg";
|
||||||
# 2.4.1 breaks emacs
|
# 2.4.1 breaks emacs
|
||||||
version = "2.4.0";
|
version = "2.4.0";
|
||||||
@@ -49,6 +49,24 @@ final: prev: {
|
|||||||
withTreeSitter = true;
|
withTreeSitter = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
python-with-my-packages = let
|
||||||
|
my-python-packages = python-packages:
|
||||||
|
with python-packages; [
|
||||||
|
argcomplete
|
||||||
|
appdirs
|
||||||
|
ipdb
|
||||||
|
ipython
|
||||||
|
numpy
|
||||||
|
openpyxl
|
||||||
|
pip
|
||||||
|
requests
|
||||||
|
tox
|
||||||
|
virtualenv
|
||||||
|
virtualenvwrapper
|
||||||
|
];
|
||||||
|
in
|
||||||
|
final.python311.withPackages my-python-packages;
|
||||||
|
|
||||||
# gitea = prev.gitea.overrideAttrs(_: {
|
# gitea = prev.gitea.overrideAttrs(_: {
|
||||||
# src = prev.fetchFromGitHub {
|
# src = prev.fetchFromGitHub {
|
||||||
# repo = "gitea";
|
# repo = "gitea";
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ config, makeEnable, ... }:
|
{ config, makeEnable, ... }:
|
||||||
makeEnable config "modules.plasma" true {
|
makeEnable config "modules.plasma" true {
|
||||||
|
services.displayManager.sddm.enable = true;
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
desktopManager.plasma5.enable = true;
|
desktopManager.plasma5.enable = true;
|
||||||
displayManager.sddm.enable = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
security.pam.sshAgentAuth.enable = true;
|
||||||
services.avahi = {
|
services.avahi = {
|
||||||
enable = true;
|
enable = true;
|
||||||
nssmdns4 = true;
|
nssmdns4 = true;
|
||||||
@@ -19,13 +20,15 @@
|
|||||||
services.openssh = {
|
services.openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
AllowAgentForwarding = true;
|
||||||
|
AllowTcpForwarding = true;
|
||||||
PasswordAuthentication = false;
|
PasswordAuthentication = false;
|
||||||
X11Forwarding = true;
|
X11Forwarding = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
forwardX11 = true;
|
forwardX11 = false;
|
||||||
setXAuthLocation = true;
|
setXAuthLocation = true;
|
||||||
knownHosts = {
|
knownHosts = {
|
||||||
github = {
|
github = {
|
||||||
|
|||||||
@@ -15,8 +15,8 @@ let
|
|||||||
railbird-sf = { id = "5F4FPJM-KRBFVIH-CTTB2NC-7CPVGAM-CONMH2Q-SQPRODO-CWKRFPF-HVN4AAD"; };
|
railbird-sf = { id = "5F4FPJM-KRBFVIH-CTTB2NC-7CPVGAM-CONMH2Q-SQPRODO-CWKRFPF-HVN4AAD"; };
|
||||||
dean = { id = "RIVW4FP-NZNGGGD-4ET26IC-R6CZHEU-4EBIDHX-U756VWB-W7EM3LE-3YQ6YA3"; };
|
dean = { id = "RIVW4FP-NZNGGGD-4ET26IC-R6CZHEU-4EBIDHX-U756VWB-W7EM3LE-3YQ6YA3"; };
|
||||||
mixos = { id = "7DMMUDT-CO33EMS-LQW65MX-3BVYDBT-ZZWDJC6-SWEF6SW-ICUMWOE-ZC4IBQK"; };
|
mixos = { id = "7DMMUDT-CO33EMS-LQW65MX-3BVYDBT-ZZWDJC6-SWEF6SW-ICUMWOE-ZC4IBQK"; };
|
||||||
strixi-minaj = { id = "DOAEFFI-W6EZY3K-GDUHDLX-6DQPVFC-XU3G65X-5KX6RKK-EMF7ZT7-YKKKOAM"; };
|
strixi-minaj-wsl = { id = "DOAEFFI-W6EZY3K-GDUHDLX-6DQPVFC-XU3G65X-5KX6RKK-EMF7ZT7-YKKKOAM"; };
|
||||||
strixi-minaj-wsl = { id = "IF76WOS-WVYFAQG-ZZMIT3R-ZR6EQQH-YQP3FGZ-BJ3LJKO-56FK2XA-UREADQM"; };
|
strixi-minaj = { id = "IF76WOS-WVYFAQG-ZZMIT3R-ZR6EQQH-YQP3FGZ-BJ3LJKO-56FK2XA-UREADQM"; };
|
||||||
};
|
};
|
||||||
allDevices = builtins.attrNames devices;
|
allDevices = builtins.attrNames devices;
|
||||||
in
|
in
|
||||||
@@ -29,6 +29,12 @@ makeEnable config "modules.syncthing" true {
|
|||||||
mkdir -p /var/lib/syncthing/railbird
|
mkdir -p /var/lib/syncthing/railbird
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
systemd.services.syncthing = {
|
||||||
|
serviceConfig = {
|
||||||
|
AmbientCapabilities = "CAP_CHOWN";
|
||||||
|
CapabilityBoundingSet = "CAP_CHOWN";
|
||||||
|
};
|
||||||
|
};
|
||||||
services.syncthing = {
|
services.syncthing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
@@ -37,11 +43,13 @@ makeEnable config "modules.syncthing" true {
|
|||||||
sync = {
|
sync = {
|
||||||
path = "~/sync";
|
path = "~/sync";
|
||||||
devices = allDevices;
|
devices = allDevices;
|
||||||
|
ignorePerms = true;
|
||||||
copyOwnershipFromParent = true;
|
copyOwnershipFromParent = true;
|
||||||
};
|
};
|
||||||
railbird = {
|
railbird = {
|
||||||
path = "~/railbird";
|
path = "~/railbird";
|
||||||
devices = allDevices;
|
devices = allDevices;
|
||||||
|
ignorePerms = true;
|
||||||
copyOwnershipFromParent = true;
|
copyOwnershipFromParent = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, keys, ... }:
|
{ pkgs, keys, inputs, system, ... }:
|
||||||
let
|
let
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
"audio"
|
"audio"
|
||||||
@@ -27,6 +27,7 @@ in
|
|||||||
extraGroups = [ "syncthing" "wheel" ];
|
extraGroups = [ "syncthing" "wheel" ];
|
||||||
home = "/var/lib/syncthing";
|
home = "/var/lib/syncthing";
|
||||||
createHome = true;
|
createHome = true;
|
||||||
|
openssh.authorizedKeys.keys = [giteaSecret] ++ kanivanKeys;
|
||||||
};
|
};
|
||||||
ivanm = userDefaults // {
|
ivanm = userDefaults // {
|
||||||
extraGroups = extraGroupsWithWheel;
|
extraGroups = extraGroupsWithWheel;
|
||||||
@@ -78,6 +79,21 @@ in
|
|||||||
name = "micah";
|
name = "micah";
|
||||||
openssh.authorizedKeys.keys = kanivanKeys ++ micahKeys;
|
openssh.authorizedKeys.keys = kanivanKeys ++ micahKeys;
|
||||||
};
|
};
|
||||||
|
unprivileged = userDefaults // {
|
||||||
|
extraGroups = ["syncthing"];
|
||||||
|
name = "unprivileged";
|
||||||
|
openssh.authorizedKeys.keys = [giteaSecret] ++ kanivanKeys;
|
||||||
|
};
|
||||||
|
ben = userDefaults // {
|
||||||
|
inherit extraGroups;
|
||||||
|
name = "ben";
|
||||||
|
openssh.authorizedKeys.keys = benKeys ++ kanivanKeys;
|
||||||
|
};
|
||||||
|
railbird = userDefaults // {
|
||||||
|
inherit extraGroups;
|
||||||
|
name = "railbird";
|
||||||
|
openssh.authorizedKeys.keys = inputs.railbird-secrets.keys.railbirdDevKeys;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
nix.sshServe = {
|
nix.sshServe = {
|
||||||
|
|||||||
@@ -7,15 +7,16 @@ makeEnable config "modules.wsl" false {
|
|||||||
modules.base.enable = false;
|
modules.base.enable = false;
|
||||||
modules.desktop.enable = false;
|
modules.desktop.enable = false;
|
||||||
modules.xmonad.enable = false;
|
modules.xmonad.enable = false;
|
||||||
|
modules.plasma.enable = false;
|
||||||
|
|
||||||
# Update timezone automatically
|
# Update timezone automatically
|
||||||
services.tzupdate.enable = true;
|
services.tzupdate.enable = true;
|
||||||
|
|
||||||
|
wsl.wslConf.automount.root = "/mnt";
|
||||||
|
|
||||||
wsl = {
|
wsl = {
|
||||||
enable = true;
|
enable = true;
|
||||||
automountPath = "/mnt";
|
|
||||||
startMenuLaunchers = true;
|
startMenuLaunchers = true;
|
||||||
nativeSystemd = true;
|
nativeSystemd = true;
|
||||||
docker-native.enable = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, pkgs, options, inputs, forEachUser, makeEnable, ... }:
|
{ config, pkgs, inputs, forEachUser, makeEnable, ... }:
|
||||||
makeEnable config "modules.xmonad" true {
|
makeEnable config "modules.xmonad" true {
|
||||||
nixpkgs.overlays = with inputs; [
|
nixpkgs.overlays = with inputs; [
|
||||||
xmonad.overlay
|
xmonad.overlay
|
||||||
@@ -104,7 +104,6 @@ makeEnable config "modules.xmonad" true {
|
|||||||
};
|
};
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
inactive-dim = 0.2;
|
|
||||||
focus-exclude = ["class_g ?= 'rofi'" "class_g ?= 'Steam'"];
|
focus-exclude = ["class_g ?= 'rofi'" "class_g ?= 'Steam'"];
|
||||||
rounded-corners-exclude = [
|
rounded-corners-exclude = [
|
||||||
"! name~=''" # Qtile == empty wm_class..
|
"! name~=''" # Qtile == empty wm_class..
|
||||||
|
|||||||
Reference in New Issue
Block a user